/* called by: entrance ctrl of the object 'track'
7 Q ^% ?" ~2 f' f1 z*/$ F& t u9 Y% p/ z$ e, {% a
is
8 r3 C' Y, Z" e7 [4 K# \ part, GlobalDistObj, assignLObj:object;row,Lan:integer;
/ r- O& t! ?8 _7 u' e6 `. \/ G: ydo
- E7 B3 f- `. T% k3 t! h Lan := rootfolder.Internal.Tools.AOLlanguage;
( |0 S# t5 d2 X" f' d5 k% Y if current = @.Destination -- else return
2 s/ [1 p1 |' f9 M8 `% | then
! W* W1 N& w3 C% S" N @.Destination := void;
5 h# Y. l6 ]- l6 a if @.occupied then
/ W* J0 k* I1 w( _& ^ part := @.cont;$ `% A' B* c4 ?; ?
@.transpOrder := void;2 B# b5 B( S3 {- }9 N6 G6 e
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,# c) o P) l2 g0 u
@,root.eventcontroller.simTime);
2 R. ~$ p- ^/ I* r5 u" _& A @.HasOrder := false;
/ c2 X8 Q. Y m: G" j0 Y) ?7 F0 O @.DrivingHome := true;
* z: {0 j0 d5 N( D, @4 F' g rgManager.tryToStartTransOrder;
4 e1 G# Y! U( J1 f. w if @.Destination = void# {3 J3 m) |, I' G; H
then -- no transport order for vehicle @- ^9 b( v& c" g8 [( x& } q
@.Destination :=
3 V/ h9 v; k$ u/ y7 [ rgManager.nearestFreeStation(@,track.~);' v4 Q( r6 I4 v g0 H& h, z
newDirection(@); ( F7 Z% [9 K2 C$ \
if @.Destination /= void then, N1 T& X( d/ y: }
@.Destination.NumReservation :=; d" @ g% h7 @3 A3 j
@.Destination.NumReservation + 1;
9 [9 l/ M3 v2 a8 g" J* k end;
7 z* b( G& F$ E1 Z1 |1 p2 X8 p @.CurrIcon := "drivingHome";/ K" @$ I: X& P9 L4 W- q, E
@.DrivingHome := true;7 d8 p! f- ~! t8 v/ a* t
end;8 O: W6 N2 z# U- X3 {6 s9 j
else -- the vehicle @ is empty, both vehicle and part are in the same dock station7 h" K' `& { ?. e5 b4 m) }4 W
part := @.transpOrder;
/ E" J0 w6 K* j( P" z/ | part.move(@);-- load part$ C* w' K7 x9 s& w, C
@.CurrIcon := "load";% ~$ c6 N0 R! N/ a4 l1 M' d; ~: m
GlobalDistObj := part.globDestination;- M b* ^0 i2 W8 m. m s' v
assignLObj := rgmanager.rgAssignL;
- S* E1 @" o0 T' r* X# R, Q4 C row := assignLObj.getRowNo(GlobalDistObj);
, {# q3 a+ N* h# q ^, s if Row = -1 then -- since 70
/ V4 X m0 `) ?: ?( [3 f, b5 a1 d* F! ? if lan=1 then4 Y, q( G1 \4 v' O
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),( O( j+ k2 Y R/ Z' U' ~; n3 j
to_str("in der Andockstation: \"",?.~.name,"\""));5 y' y; H9 V. D' d
else
) w8 Z/ ]# l& }4 X$ n- n1 p' G promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
1 y5 W, K* F1 b1 Q3 U+ u5 p) |% E9 | to_str("in docking station: \"",?.~.name,"\"")); + C+ A3 q4 o) n# b. ^+ y# ^4 _
end;
* E" h; B8 s: `+ N# H' z. g else
/ q) G9 f Q; x* z Y @.Destination := assignLObj[1,row];
}+ ~# v2 T. i- S2 ?3 k end;
1 M( y( c2 Y& h! G6 d! n newDirection(@);9 e. w) t) \8 i6 h. v3 X
@.HasOrder := true;
+ u& _4 `. b8 {2 y6 N+ k. O end;+ ?7 {; \' k# i; G8 m. i/ V
end;1 K) I3 M4 _5 I1 N$ Y$ _
end; -- of the method
) f; c/ L; K6 ]& k |