/* called by: entrance ctrl of the object 'track'
, f& T+ @; L/ `% x2 u( U: m*/
5 w8 t4 N& m: B8 [is
: S! J2 M J# k6 {* N' H6 g part, GlobalDistObj, assignLObj:object;row,Lan:integer;
- D( w3 t% e J: M% Sdo9 n% I( K c/ K1 l8 q& B, q+ _
Lan := rootfolder.Internal.Tools.AOLlanguage;
7 l# e1 h2 m0 K5 V if current = @.Destination -- else return
& i. J* _& |; M; m( _ then
9 u! V0 E9 S2 @ @.Destination := void;
( d; q: D( A4 }- H if @.occupied then
; O' ?+ E$ ]! x3 a1 a0 t9 j0 u part := @.cont;) I+ ^) _5 }' u7 V: L% L
@.transpOrder := void;# @6 U# n3 w+ @2 f
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,/ o7 e4 Y7 h4 |, C. |* U$ E! l
@,root.eventcontroller.simTime);
5 W3 z; B4 m7 h @.HasOrder := false;- f' B' y/ a% C
@.DrivingHome := true;7 b6 C0 M! h* Y6 K R A' c
rgManager.tryToStartTransOrder;
) C$ D3 p( \+ ^$ _1 l5 J- C+ b& [% | if @.Destination = void8 w Z; h: l: f; a% N) v# l
then -- no transport order for vehicle @
: Z' h8 l: q! q- y @.Destination :=
; }- v: ` E7 \2 M" |2 F rgManager.nearestFreeStation(@,track.~);/ @2 ]* D8 Z/ }
newDirection(@); $ } l6 o- U9 U
if @.Destination /= void then
) u/ a' O2 j* y" P2 m4 r6 r& M @.Destination.NumReservation :=
3 K) t' Z1 O0 h e9 B @.Destination.NumReservation + 1;1 ^; e6 P9 V$ J4 Q5 x( I1 e
end;
# A4 \3 D8 y& I* n9 Q; i @.CurrIcon := "drivingHome";
! H# r4 r3 A9 P! T" r* | @.DrivingHome := true;
4 t" \* O M; s! B: |& o end;# W2 f1 c/ R: B, e. V( O# M
else -- the vehicle @ is empty, both vehicle and part are in the same dock station4 K( O( {4 T V% c1 X
part := @.transpOrder;/ r5 g3 m3 Y* Q9 b8 u
part.move(@);-- load part6 U6 j4 ^9 J7 k* v) x( M. D8 k& U
@.CurrIcon := "load";
7 a) E! j% W t3 t% d GlobalDistObj := part.globDestination;
L1 a6 w/ T4 A- I, y. h assignLObj := rgmanager.rgAssignL;
% F9 f, A: P. b! Y7 E row := assignLObj.getRowNo(GlobalDistObj);
+ t3 o7 p0 a( `& U& L# L' i- y if Row = -1 then -- since 70) b/ s( r8 }/ g2 P0 Q
if lan=1 then
" X# b0 p, t8 G$ {3 E& ?" N- R- z9 H promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),# t1 V; P3 R/ r, M. G4 i- C3 K
to_str("in der Andockstation: \"",?.~.name,"\""));
# a/ B2 Q+ k8 V% Y; E3 o else5 C5 t7 X5 b5 Z
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
; H f: P& X8 R to_str("in docking station: \"",?.~.name,"\"")); 2 B3 \: K' x0 ]
end;' w. y+ J6 E/ l* S! t
else
& Q( P& x( ^' I& K8 M8 d. i8 c @.Destination := assignLObj[1,row];3 \! K- Q3 e! W3 v# j
end;
& b& t w1 z7 c( c newDirection(@);: p. t) g; k5 t0 H& t
@.HasOrder := true;4 O5 g, D+ S; t6 W8 V4 H
end;
7 F& v- W, [, p) _" v* V end;
/ F+ a. `& D# N2 U8 X2 Bend; -- of the method& e( [5 g5 y, Z) f6 _3 t1 ` x% d( B
|