/* called by: entrance ctrl of the object 'track'$ P! t7 ^2 @8 G- w* B
*/
: W0 k) r* p/ _" C, his
- P) o0 u$ I: \, @/ j8 C$ N- O9 U# T; f part, GlobalDistObj, assignLObj:object;row,Lan:integer;
2 ?0 m/ s! W- U$ ?( o5 C2 s- Pdo
l8 X" G" t$ p1 d3 r, l Lan := rootfolder.Internal.Tools.AOLlanguage;
. {& r$ j2 b, k if current = @.Destination -- else return4 R& x4 G) y0 ?4 o, K+ |6 }, h! c
then! c4 B: R8 [4 q" c9 | E1 ?* P
@.Destination := void;. u9 Z5 b: S, I
if @.occupied then
2 N, s& u1 F1 y5 f- C3 U( W part := @.cont;. h2 B0 [5 k4 h4 L
@.transpOrder := void;4 v. k$ t8 ], D J2 \# r# |1 i5 H
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,! e j! `% Q. W7 b9 w+ K1 J
@,root.eventcontroller.simTime);
$ z% y. E1 j2 D' ^ R) X! c2 w1 H @.HasOrder := false; R5 V7 M7 U5 m C; X5 G+ r
@.DrivingHome := true;+ j' d! G" [/ |! E( u/ f/ \% [/ y
rgManager.tryToStartTransOrder;. j, p# @+ D( I" K1 C
if @.Destination = void
$ r$ @3 I( i: [/ H# F) O; f6 m then -- no transport order for vehicle @
" Z" r+ \/ S1 Y& t v5 y2 s c @.Destination :=2 g, c! c3 |" X9 D2 _) h% [
rgManager.nearestFreeStation(@,track.~);
0 e, ?' T$ i5 r* d. g1 q9 ^# i newDirection(@);
$ A6 a. E( e" A7 l1 T1 o& h if @.Destination /= void then: O5 d6 e& u' S& V9 u
@.Destination.NumReservation :=3 e6 F" T1 k9 G4 k# ]
@.Destination.NumReservation + 1;" y3 c6 ~' T# Z$ |! f
end;7 j3 J: x4 r" ]# p2 L
@.CurrIcon := "drivingHome";
( H5 P. t( K4 p& H& t @.DrivingHome := true;9 n' J$ F5 [# y- i
end;
+ w7 x6 M @3 _# k else -- the vehicle @ is empty, both vehicle and part are in the same dock station
$ @. X5 s; ~3 _ _- u7 n% L part := @.transpOrder;8 ]. R2 F* Z9 A, C! [
part.move(@);-- load part
" O8 g4 ?5 P9 _) |7 Y/ k @.CurrIcon := "load";% k$ W) _, ] F% a% n# w B- g
GlobalDistObj := part.globDestination;
7 K. P' C6 N6 {; S* i5 B: X assignLObj := rgmanager.rgAssignL;
3 \: G) ~) o/ r j: D row := assignLObj.getRowNo(GlobalDistObj);
6 d- Z' {* h, G# K if Row = -1 then -- since 70
3 M; J! o' q9 h6 z if lan=1 then+ a- c# R J; v
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
4 A @7 b: V' T, \% H to_str("in der Andockstation: \"",?.~.name,"\""));, N) Z9 d Q7 R4 J8 G$ }' v: ~
else1 Z5 V* Q, n; z% C) k* B' @* ?
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),2 B; d( X( w, M$ x; F' C6 ^
to_str("in docking station: \"",?.~.name,"\""));
- {( @: r1 J0 W* i; P end;5 v; {( K! I/ m* G' Y
else% Z3 Y4 V. d4 g
@.Destination := assignLObj[1,row];1 }; g0 o1 R( ?6 s
end;
5 ^ ?: T% g" g3 N! z* F/ T$ s newDirection(@);/ l+ ~7 ]; \; ?& u9 ^4 h
@.HasOrder := true;6 [) |- `2 s% s) \' p! _7 O) E
end;3 @+ d( f6 b6 X: g" \; |3 i* X
end;
( t7 G1 V# Y, h# z2 v4 zend; -- of the method
! s% P8 K: {; ^+ E5 _- G |