/* called by: entrance ctrl of the object 'track'
; V) v* Z+ I" a1 K2 c! J+ T*/! W6 ?& o; @+ i* k- T _: L w3 H4 j
is
0 y0 \- R* s" _" X& Q1 T part, GlobalDistObj, assignLObj:object;row,Lan:integer;/ q6 |' V) d, v. z
do
( }6 ~) e) ?: u2 u7 ]& w# w; U3 x Lan := rootfolder.Internal.Tools.AOLlanguage;& Z2 ~; }( v) x$ ~9 n# A" d6 w
if current = @.Destination -- else return0 A0 o8 Q& C) T6 [- O1 k( Y/ O
then
@! i" w2 M9 C: y @.Destination := void;
, S h5 n. A5 X5 F- L/ } if @.occupied then3 N$ K% P! @. F% Z6 F3 V/ e* A
part := @.cont;$ ?6 @# Z# X5 o( h3 w$ b
@.transpOrder := void;- P8 L' Z2 ]7 [/ h& C
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1," x8 J9 U7 w/ G% [( N
@,root.eventcontroller.simTime);4 I! l$ u2 F6 p/ M( i6 c
@.HasOrder := false;
6 I$ e) R" l( p" j @.DrivingHome := true;
0 F3 ] q \4 ], Y% B( w, ^2 ~ rgManager.tryToStartTransOrder;1 m/ X2 S6 N& C
if @.Destination = void
* g s6 T$ v @; t" D then -- no transport order for vehicle @% G% D I8 W1 {1 {
@.Destination :=
6 f# C9 }/ g- ]; | rgManager.nearestFreeStation(@,track.~);# [- E% K$ d: d( U K7 i! l- r
newDirection(@);
! Z3 r8 O1 w5 H$ X9 g$ ] if @.Destination /= void then* V4 d( A8 Z+ s) w' J4 R
@.Destination.NumReservation :=
! _- i. P8 c1 y @.Destination.NumReservation + 1;
( } M: k: C/ q% l; D end;$ ~" W/ C7 Y% b/ \ ?
@.CurrIcon := "drivingHome";
3 R5 Z8 ^4 r: X: g5 P3 C: |8 O0 O @.DrivingHome := true;! i& M2 t0 e, m$ @$ }
end;
6 L) |# Z) Y. F* ]" D+ i5 Y else -- the vehicle @ is empty, both vehicle and part are in the same dock station
1 \7 Q8 }* F. J part := @.transpOrder;
`9 j1 {) V/ S" g$ Y: @ part.move(@);-- load part' I& _0 ?, l Q |) d/ k$ E4 o
@.CurrIcon := "load";- ^# p* ~( k$ m7 l
GlobalDistObj := part.globDestination;4 s' \3 V$ B0 h, o
assignLObj := rgmanager.rgAssignL;
# \* A/ _7 u7 X( k. { row := assignLObj.getRowNo(GlobalDistObj);
" n% C; o( x2 n x' |, a ^ if Row = -1 then -- since 70
2 X; R. `3 A* g if lan=1 then
1 c5 S2 X8 A) N" f) m promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),( B$ U. ^ n4 Z. m% a0 l0 k) j
to_str("in der Andockstation: \"",?.~.name,"\""));
- ^) Y3 {5 B/ b else/ l) l$ ^$ D& ?% ]
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
/ z* e5 Z( m5 ^ to_str("in docking station: \"",?.~.name,"\""));
/ l5 \, M# l/ E _. | end;
/ p S3 m2 ?7 |9 O" n else
* i2 a2 Q: W6 z( A3 {7 L @.Destination := assignLObj[1,row];; T/ ?5 P8 i* h' s8 K+ } u% n
end; ; X" k( k+ m7 p2 \' ]
newDirection(@);# N3 ?" f$ @1 d6 v
@.HasOrder := true;4 D. g3 o- p8 v1 R' L
end;) P& ]3 d; A6 L5 k
end;6 C' F# Z7 D% B8 t! g- n* O
end; -- of the method
3 v/ e2 e6 K, [4 {; u+ u |