/* called by: entrance ctrl of the object 'track'
6 `) u) s2 L; J4 N6 Y*/' b, W# x. ~6 T: W, w h. g- o
is
) e9 n! s/ [% ?) P& {5 O; g7 I( o part, GlobalDistObj, assignLObj:object;row,Lan:integer; B: ~8 D% p5 ~! M7 ^
do) U5 b t7 g( M* q
Lan := rootfolder.Internal.Tools.AOLlanguage;: S0 F! `$ ^, W0 ?/ y- I+ w
if current = @.Destination -- else return
9 T3 I- M7 V, ]6 D then# q5 i5 [; y8 T8 e0 J2 e
@.Destination := void;; M. V; X; }, E$ o( l \8 d% @ N4 s
if @.occupied then
2 Z3 R4 d Z" X; w+ R8 d* H part := @.cont;, }# h) B" U$ c8 z, Z- C
@.transpOrder := void;8 v( d: n: k. L( m! V, d4 B
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,4 @9 f6 t) X0 N' \
@,root.eventcontroller.simTime);
+ x; ?* I5 _" D3 f" i @.HasOrder := false;. F) w* O, Q$ v: F8 w
@.DrivingHome := true;
* @ X4 v1 n+ ?# \6 \6 Q rgManager.tryToStartTransOrder;: d, N) I0 J; ]) f! I1 D5 W
if @.Destination = void2 G3 [* g T: ? P/ n: g
then -- no transport order for vehicle @ o/ q' j# I+ E3 u8 ?' ?9 B" s
@.Destination :=
- I) h; n; W' k( T7 J6 R1 G rgManager.nearestFreeStation(@,track.~);2 S# V( O! K# B2 d
newDirection(@); 0 C% N. _7 b( j
if @.Destination /= void then
: v' o( f: c* l# o% h4 g( v+ O; p @.Destination.NumReservation :=
5 Y1 X( f( O( ^; D7 ~+ m @.Destination.NumReservation + 1;
- A0 f7 V0 J9 |$ b end;) S6 {" W* i3 p2 ]! r1 p- e" h9 [
@.CurrIcon := "drivingHome";
9 i/ F( M- v! d' A1 O# P @.DrivingHome := true;
) _* ^$ q$ e5 X+ X9 o5 } end;6 p, j, s9 x% q6 L* F6 `. h
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
: P |/ T9 @, X4 V; H! ]6 X part := @.transpOrder;5 a5 j$ s! n4 N c
part.move(@);-- load part1 t, \" E# L! R
@.CurrIcon := "load";! t' j+ T" r# V4 z9 P J
GlobalDistObj := part.globDestination;
7 k$ P! g) x4 l6 | assignLObj := rgmanager.rgAssignL;4 k$ }& [$ k* v8 X6 U, y3 J
row := assignLObj.getRowNo(GlobalDistObj);
1 A4 u5 t6 g# i2 q, w if Row = -1 then -- since 70/ S4 @. s! v$ I B* \ r6 i' q
if lan=1 then3 [1 q- N; q! Y+ K9 a+ w4 D
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
: w; _* {5 {" x% h to_str("in der Andockstation: \"",?.~.name,"\""));
2 p! O9 K% ~. u" s* O7 O; ] else7 y. g/ L8 `7 T0 i
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),1 f: x! p& m! M8 {2 G/ @. D
to_str("in docking station: \"",?.~.name,"\""));
, z& }0 J- t. p7 N8 D end;
, n7 ~5 q6 m0 r; v/ L6 F$ J; W1 [ else
( q- k9 |" t5 O @.Destination := assignLObj[1,row];* U. F5 q H: f) j3 z# J
end;
4 J# d2 w c$ K' [1 { newDirection(@);" {8 m: y3 s5 _6 W6 a2 M0 D5 X* W
@.HasOrder := true;. S' O5 e# G* }
end;
' i4 C+ g( s9 W7 h( \1 ] end;% b/ L3 ]8 y9 A( z
end; -- of the method
5 ^4 j9 J- U% ^" { |