/* called by: entrance ctrl of the object 'track'
# v+ Q$ _# [) Y( a* q- v" U*/! U. K3 {) s" S& ^
is. W1 h& _6 o1 N, d7 q* c. e
part, GlobalDistObj, assignLObj:object;row,Lan:integer;
7 g0 Q. W# v; D% R+ m2 v8 {do9 z; a# A4 d2 ?( ^- i: i
Lan := rootfolder.Internal.Tools.AOLlanguage;
6 U F y) U* p: _" Y5 E0 p4 o if current = @.Destination -- else return6 r, c4 c6 D* h7 S
then) n* M) j2 Q* D O5 v% O+ t
@.Destination := void;
# O- M1 P8 k: G9 T5 X. K if @.occupied then) q+ _- i- ^( t6 I* W1 ]* g
part := @.cont;
) D4 j1 W6 ?( t' D' B. V' ` @.transpOrder := void;
$ h0 j- |6 d8 g3 Q" ]' N& b part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,: B% Y" I; m% `# V+ k7 U( b$ _4 S
@,root.eventcontroller.simTime);
, \! Z$ @+ U l! T( P; D @.HasOrder := false;
$ }1 N' o2 ~" W @.DrivingHome := true;% h1 p2 b2 W7 Q$ N+ ?- }
rgManager.tryToStartTransOrder;
$ X0 m, a& {; ?9 B% M- T if @.Destination = void
* x! l0 f" u" u E& X( F. y then -- no transport order for vehicle @
0 k. Q& s% y6 A b8 s& r0 ^ @.Destination :=
6 h8 ~' n3 c; |% d5 L& \ rgManager.nearestFreeStation(@,track.~);4 U9 l; w1 F2 k3 _! l- T: J9 F
newDirection(@);
2 n `( E' C$ h; p' R if @.Destination /= void then
) t, J% X$ j5 d! Y, L# v @.Destination.NumReservation :=
* Q% U9 N; ^' ~+ O7 c @.Destination.NumReservation + 1;# o1 |' u! ~2 S3 e, ]; h" B6 t2 \
end;
9 M( r! _$ R3 ?4 u/ K% G @.CurrIcon := "drivingHome";% F6 c ^ b& @$ t; g
@.DrivingHome := true;
S0 l O' J# \6 i- B p8 n end;
2 |' f9 `! [+ X3 P8 f else -- the vehicle @ is empty, both vehicle and part are in the same dock station) }. j8 A/ r# I2 N2 b
part := @.transpOrder;
1 G% m: t/ X: B& C* R! d" i4 l part.move(@);-- load part
& \# J% X$ Y) c$ R# r @.CurrIcon := "load";
: H4 {8 W( ^8 _3 P& H7 @9 e& e GlobalDistObj := part.globDestination;
) I/ ~$ S/ |: O9 z assignLObj := rgmanager.rgAssignL;7 B* h: a- Z* F* v, u
row := assignLObj.getRowNo(GlobalDistObj);
- B# \: | S' z if Row = -1 then -- since 70, `8 y! N" I- i; L5 J
if lan=1 then9 p, s- x' A5 k8 y
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),* P6 ?0 x" J: B1 F7 m2 U
to_str("in der Andockstation: \"",?.~.name,"\""));/ k. h/ o4 Z* ^; V( l
else
2 `4 `' V- q0 c7 {% R6 w promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
+ T( U7 L7 z/ o0 G5 O7 I) I to_str("in docking station: \"",?.~.name,"\"")); $ H( i8 n( R' p: w$ Z
end;! B3 U6 i; P( _# V
else
q& E# |4 F, \# r X+ g @.Destination := assignLObj[1,row];
: [" W1 Q% d4 m# d% ?, z$ K end; ) R2 y) o, n. D) u h8 g9 \& B
newDirection(@);* S R: Q! K7 C- C
@.HasOrder := true;0 J' y o# B" x% e/ {& ]
end;
) ]" _% \1 X) F7 O3 k6 W end;$ @$ N+ @; t/ A/ Z; p
end; -- of the method
- I! h' G) e) o5 z% B8 x2 h |