/* called by: entrance ctrl of the object 'track'
: [* E @2 k9 b*/, W4 A0 K* A; r. f5 v$ A p
is
) m6 d: j: d( Y2 n part, GlobalDistObj, assignLObj:object;row,Lan:integer;
7 N) p" C8 Q( G& { n( |do
5 M$ r! | t9 ]; r6 O8 a Lan := rootfolder.Internal.Tools.AOLlanguage;' P1 S1 |! V P+ V' U1 Q, v' ]2 t
if current = @.Destination -- else return* @0 }2 w2 Z! j- ~: N
then
# ^+ B/ ~' H* ]) y @.Destination := void;2 H V" \" P5 I, ?# w7 `
if @.occupied then5 z; F* g& Y# J; L/ o! z
part := @.cont;( @1 R% c( I. y4 o/ E
@.transpOrder := void;
4 u6 M/ i& ~8 l2 O; E+ {% K part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,5 G% q2 r: q' {% Q+ U6 q4 A0 O
@,root.eventcontroller.simTime);
: F3 h9 r/ i5 z @.HasOrder := false;" X# N* p7 J' |1 s7 z1 F
@.DrivingHome := true;' M8 d! c) ~/ A" S
rgManager.tryToStartTransOrder;7 @7 ~& i+ l+ j: ?' [
if @.Destination = void, q, u; q8 l2 h U
then -- no transport order for vehicle @) N. V& K4 M$ U2 u" s- k4 s
@.Destination :=
, x. C$ L( h! s5 _4 ? rgManager.nearestFreeStation(@,track.~); }" A4 c/ j/ C
newDirection(@);
f" R- G& O. W if @.Destination /= void then
5 _1 i- A5 s$ N, y* H @.Destination.NumReservation :=
! A) Y9 z j$ q0 O( Z( `% e2 D @.Destination.NumReservation + 1;
1 m& b* A1 u# b- J& S: q- a end;: h- N7 H; ^+ C3 S$ j4 P
@.CurrIcon := "drivingHome";6 r I/ `, I# d$ e0 O6 z. d; i
@.DrivingHome := true;- F3 p) A( y L
end;5 x! s4 ^1 f$ V
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
]/ X. [$ K$ \/ _' X% h. d part := @.transpOrder;
. s2 ]! c! W: V" N# E& a part.move(@);-- load part# U7 p' F3 O: d/ U4 w8 s6 g0 v$ b# c
@.CurrIcon := "load";
2 _$ x7 `: B5 Z- z G. B5 } GlobalDistObj := part.globDestination;; F5 `4 p5 D4 _/ d" b7 Z
assignLObj := rgmanager.rgAssignL;! E/ f# O/ ^8 O3 S+ J$ `
row := assignLObj.getRowNo(GlobalDistObj);) K0 y( {1 I! k$ ]/ \% i* L
if Row = -1 then -- since 709 U) i' T, q& d) R* A9 Z& w: r
if lan=1 then! U6 |0 O# Z S/ z$ P) w$ e
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
) A3 `7 q7 J: P* [ V# U6 ` to_str("in der Andockstation: \"",?.~.name,"\""));
{+ ]7 L" j* y2 A8 l else' J! P3 m7 ]7 `2 {- E
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
; r( ?; [/ d2 |, k1 E to_str("in docking station: \"",?.~.name,"\""));
: W' m: C) L" k3 v end;
`) w4 |7 S5 C L7 g2 `$ x else
\. y! G1 Q `+ X6 D: i @.Destination := assignLObj[1,row];
# T! I Y& d j: J* z6 d! F1 n end;
4 a8 f8 U: _. l( P+ r; W8 Z newDirection(@);! G9 N6 f: l# }- R
@.HasOrder := true;
5 {" G2 W) q# Y- S. _1 z; ^ end;
3 a- f$ r9 y+ m; b- g3 B end;
5 ~! @9 ?7 }% X9 h; rend; -- of the method
& T7 M$ p9 w& y( b |