/* called by: entrance ctrl of the object 'track'- n { s% `9 F5 }. M# Z6 h) M( f
*/. }! d, r/ m9 R" s9 h
is
/ i; E. A* E% E0 b2 r1 ^, y# | part, GlobalDistObj, assignLObj:object;row,Lan:integer;' ]" P1 R2 k7 u+ X0 W O. b
do$ i+ w& z! i, ], J3 W h
Lan := rootfolder.Internal.Tools.AOLlanguage;6 Q) `" w" o9 q7 u
if current = @.Destination -- else return
: N; f1 Y* d( {5 E5 b' O then+ }& d6 H& P8 @& a( E1 i8 v
@.Destination := void;
; C- s5 [4 m, o) n if @.occupied then5 x5 ?" A/ {+ O6 Y. c- I
part := @.cont;
. |% v7 v6 ]6 c5 h s- a r( X @.transpOrder := void;: `0 D: C1 [" [! ?+ F
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
- J1 z0 l% H. O* O @,root.eventcontroller.simTime);
8 y+ ]% p4 M8 o# {2 T1 l, r @.HasOrder := false;+ I4 y: E. @; t3 E: c' W' `/ I/ g! y
@.DrivingHome := true;# X% R5 z! \% C% `
rgManager.tryToStartTransOrder; \# T/ q- {1 Y5 C9 x9 Y. Y
if @.Destination = void; ?9 @- P+ b5 P* e2 _' T" R: d
then -- no transport order for vehicle @
: }9 m' M3 Q9 M: v! G, j @.Destination :=3 j) u$ A- t0 T! v) b U% t
rgManager.nearestFreeStation(@,track.~);7 z* d; [/ {! r, Y' U
newDirection(@);
Y/ R& i+ W, u. e7 Q! l' ^+ Q& e if @.Destination /= void then
& x2 e9 F, s o8 w* U5 m @.Destination.NumReservation :=
% i* ?& W9 u3 p$ J @.Destination.NumReservation + 1;
4 I& a, O2 Z1 ^; r: n" |. l end;
* E: p& w7 P( ~' W4 s @.CurrIcon := "drivingHome";6 x0 W% S! A% H: ]
@.DrivingHome := true;
j( @, u+ ^1 i9 i( n( u end;
2 h+ Q) M1 u1 Z& `" i else -- the vehicle @ is empty, both vehicle and part are in the same dock station
# d# r# g, q- V6 i5 Q: d part := @.transpOrder;6 Q2 t# `4 O n7 z
part.move(@);-- load part, k5 L0 {; h2 e ?: {( Q( ~6 `
@.CurrIcon := "load";. T: h6 ^8 f' b- i2 s
GlobalDistObj := part.globDestination;
$ `" a0 m- Z) i" G8 p assignLObj := rgmanager.rgAssignL;
/ }. O7 m3 V% f8 D6 O& c, o- D6 i row := assignLObj.getRowNo(GlobalDistObj);
2 b, R S1 ~" _& E+ u. T9 | if Row = -1 then -- since 70' H: P: A% E4 k( M4 i
if lan=1 then
" g. `8 @7 f9 T. y promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),% \1 n) S+ M; m! U B
to_str("in der Andockstation: \"",?.~.name,"\""));
9 }; q& b1 T; L0 |* c& [. a else
7 J( g/ I5 n5 s& w3 F4 H promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
0 n3 _# j6 f0 u/ E4 v to_str("in docking station: \"",?.~.name,"\"")); " o. G! G6 n( o# l8 m
end;
+ Q1 ~4 I* O+ a( \- m/ ~ else
( G' d' Q3 a2 R; h' ` @.Destination := assignLObj[1,row];- _1 d a0 a1 O
end; ; o8 Z9 W* t! F% x
newDirection(@);3 f: j4 `2 w4 m# @/ e1 Y4 j7 ~* @8 z
@.HasOrder := true;5 o) }0 n; ~. [, n O3 O0 g
end;) o- u6 I" ?% g9 L% X0 ^/ U1 U( Y
end;% I1 a& q0 k9 w: @
end; -- of the method. I: D4 _3 d w6 r
|