/* called by: entrance ctrl of the object 'track'
2 [, S! ]3 K+ ^: k4 X) s0 U; [*/! R" H a) q5 t
is
: H9 @+ q0 c( g part, GlobalDistObj, assignLObj:object;row,Lan:integer;
. [: N0 n8 g) y u$ s* s. J1 pdo
9 k; T# b" }5 ?) \( A Lan := rootfolder.Internal.Tools.AOLlanguage;4 b2 |& j7 f- m3 `7 b
if current = @.Destination -- else return
3 A# N3 w y9 a0 _, ?, a then
: x u# {- \: h9 a5 n% A @.Destination := void;6 T" D9 `- p0 Q2 V. E
if @.occupied then
$ H7 v5 a/ e' u4 `! X part := @.cont;
/ R* \2 u+ U: d% ]/ Q0 L @.transpOrder := void;
) @0 p9 q. x# s0 ~# e* @ part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,5 \+ B1 T8 w) o! j' G
@,root.eventcontroller.simTime);% J# \* I6 `0 H o7 E5 p5 j
@.HasOrder := false;- Y4 j A- `- d( G. z6 S
@.DrivingHome := true;1 j: f! v$ F1 h4 F
rgManager.tryToStartTransOrder;
/ s' z4 B7 Y; m9 k M# n# I if @.Destination = void
. H ~+ y9 L/ K! L then -- no transport order for vehicle @
0 D, f$ U, U t( L5 k @.Destination :=0 d j9 J5 [, p
rgManager.nearestFreeStation(@,track.~);1 ~' E6 _- _/ b7 I f
newDirection(@); ! N; w& w" A; h" s" ?* ]( A
if @.Destination /= void then! X% p( p6 X: A. e% t
@.Destination.NumReservation :=
# H4 u: d9 G0 z8 l- u4 _ @.Destination.NumReservation + 1;
' F# n: C% E% a0 | end;$ j' L2 V+ x/ l/ u* F
@.CurrIcon := "drivingHome";
0 e5 {3 d0 u% }0 R; s% ~/ \ @.DrivingHome := true;6 a4 n; w$ L& @: B' b' F4 S. }
end;
/ J+ `& L8 D; z: l" z M7 U9 L2 l else -- the vehicle @ is empty, both vehicle and part are in the same dock station8 h# ]( d2 `9 ^3 f
part := @.transpOrder;4 T5 a. p* k- z8 ]
part.move(@);-- load part
4 O& G: d) |* M* H! N8 w @.CurrIcon := "load";
6 _ e, O1 u$ M1 R9 J- e% R* f GlobalDistObj := part.globDestination;
, T3 g p1 r, ~" J& }3 _" P5 c2 m assignLObj := rgmanager.rgAssignL;
+ m6 ]2 @: _2 P. m$ ^& K$ l! H row := assignLObj.getRowNo(GlobalDistObj);
3 i# Q4 y0 l( a( @ if Row = -1 then -- since 70
- ?6 c7 K7 q" v0 ?$ o) n0 g# Y! q if lan=1 then
, S$ \) E$ Y7 X7 C% ^- m9 N3 f promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),6 O/ K0 L, h+ O1 }, G, N
to_str("in der Andockstation: \"",?.~.name,"\""));! E& U' i( t+ c4 V4 [
else
$ K8 c; U. c( Q* Q; X$ j promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
0 ?( k5 H9 \. q) I# s* \: R" h! u0 y to_str("in docking station: \"",?.~.name,"\""));
+ g# Y+ \+ [" m, y6 [. }% B end;
; o4 i4 u. v% [7 x7 ~ else2 D* E* h: R! Z4 b5 Z2 A2 x
@.Destination := assignLObj[1,row];
! h Z' p0 I5 v: h end; " u9 x( ~* E) B- A" r
newDirection(@);
/ q {. l+ n4 `4 P$ |/ W @.HasOrder := true;4 m3 H* U( @9 S
end;/ S( ]. M2 _1 l) j% Z6 P: H6 M, U
end;+ U9 p% U" t" Y6 K
end; -- of the method# B; B3 s- h( B1 \" ]
|