/* called by: entrance ctrl of the object 'track'
- c p8 x; y$ e- q*/& {8 u7 o* O. Z P S; e+ o- p
is4 N) D/ a" b# A& @
part, GlobalDistObj, assignLObj:object;row,Lan:integer;
9 k' x! t- @: ~* e$ Edo
$ _6 a ~7 s8 C; h } Lan := rootfolder.Internal.Tools.AOLlanguage;' o$ }" D/ j5 J) L0 C' W6 N
if current = @.Destination -- else return
0 [7 E+ u5 k; a( ` then! x5 e- ~; b& T( U7 e; a
@.Destination := void;
8 ]! Y) R( a& D5 U/ [$ f* M if @.occupied then
/ S& D7 W: o$ K) J3 q' a) O part := @.cont;6 r/ v* {7 t* w- N, S
@.transpOrder := void;
/ B! M, a& b a# f- l part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,5 ?& m' \! R5 a: [
@,root.eventcontroller.simTime);0 K( k# Z$ }& D+ c# G
@.HasOrder := false;- u7 [ t9 Q% q4 A! y5 [0 @6 C
@.DrivingHome := true;, h6 `( s' U" }' L/ M; [1 U
rgManager.tryToStartTransOrder;5 R# z- t ~3 K& A/ P, E" ^
if @.Destination = void5 G* V- c I3 L* i
then -- no transport order for vehicle @+ w$ T9 P3 X W9 i) T
@.Destination :=
, @) T1 B0 D/ W. T4 ~! h) @/ b rgManager.nearestFreeStation(@,track.~);7 V+ i U) O; @/ ^5 t N; P
newDirection(@);
' L/ S4 `; U) ]. X if @.Destination /= void then3 ~& q1 }1 g4 y
@.Destination.NumReservation :=
7 s1 J# K8 q' q4 I& E2 \9 G @.Destination.NumReservation + 1;: [9 g1 x5 [& Z
end;
1 f0 a: O1 {; F, Z8 k @.CurrIcon := "drivingHome";9 m. l8 R, z! W" m, K9 v. l! }6 ]/ S
@.DrivingHome := true;
1 y, E0 N+ |4 }& m) W% ? end;( o9 W; K8 m2 D" T5 O# r6 V
else -- the vehicle @ is empty, both vehicle and part are in the same dock station/ Y6 Q# _" ]* F# I( m
part := @.transpOrder;
, a5 P$ `* ?) M1 N1 ~ part.move(@);-- load part) [# w0 W% o5 F2 P
@.CurrIcon := "load";6 j2 P# y" S( ?* T- @. O e# c6 [
GlobalDistObj := part.globDestination;2 [/ _% h& X3 z% g4 d+ {% z
assignLObj := rgmanager.rgAssignL;
' U d6 x3 B/ Z& i: a6 f row := assignLObj.getRowNo(GlobalDistObj);
3 m" [# r, L' R0 b5 v if Row = -1 then -- since 709 L, [2 D0 [- f0 B3 V2 S- M
if lan=1 then! s- ~3 j! s3 ]4 `
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),& z+ k7 C9 a: }7 X
to_str("in der Andockstation: \"",?.~.name,"\""));1 `: S- e& l* N; y9 \
else
( g, b X' V; @5 X2 V" I9 ^+ _ promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
1 ], a5 X1 u8 u7 C to_str("in docking station: \"",?.~.name,"\""));
/ v. ]. X, U8 O% ~: q( G; t5 z: g end;& ^7 [$ |% J0 T
else& W: a) E: v0 j% [* ?/ T7 O
@.Destination := assignLObj[1,row];
5 B0 y1 i6 u- w6 K1 S end;
1 G( z8 V# Q. p8 y5 ~ O8 L% T newDirection(@);6 ]3 q- Q( G% A& q; L& I2 U. w
@.HasOrder := true;# W0 Y9 c' _) W) l3 N# c
end;
( j8 h0 j& d2 Q: P end;2 \0 q$ p6 j$ }. Q# i% |3 _( P
end; -- of the method
. R! q8 |& j% j |