/* called by: entrance ctrl of the object 'track'# c q+ \2 Y4 W) q
*/" K/ ~6 C# S, U: z: l( k: Q* c
is
$ p5 ?8 e* i; i, Q, _0 {6 f part, GlobalDistObj, assignLObj:object;row,Lan:integer;4 H/ j. z' r6 b* J, n; W
do
- A* C/ T0 D7 V- h2 ]8 V0 T" I Lan := rootfolder.Internal.Tools.AOLlanguage;" K1 s2 p* N8 Q9 h1 B# y: ~7 Y
if current = @.Destination -- else return
" A+ n, P, s, J: e then
z7 k" @) U8 @3 c @.Destination := void;
p3 N A3 r \) P! n9 _ if @.occupied then
) T! N. ?! A; }$ H0 w part := @.cont;# l$ `# G0 o3 R1 q4 a. d+ W% |9 m- H
@.transpOrder := void;) {) e4 f/ A( o( P8 X
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,9 ^; Y7 w; R7 U# D- B5 X: i" l% K
@,root.eventcontroller.simTime);; Z' F3 |* W8 V2 j
@.HasOrder := false;; k9 n. g) Q8 o; c( p: \
@.DrivingHome := true;+ O& W D ^- i' e; V# J* s
rgManager.tryToStartTransOrder;
6 L: k2 w8 h0 f3 s# |/ J" V5 ? if @.Destination = void, W& a2 W# u$ i) N4 v0 U% O
then -- no transport order for vehicle @& B# U; q! z% E9 q0 Q. y' f
@.Destination :=
8 |2 Q. d8 {1 x& ~ M; @4 c rgManager.nearestFreeStation(@,track.~);; p+ y) s2 v8 i% f' ~7 ~ k# m
newDirection(@);
, \1 h) ] l% \ if @.Destination /= void then: `8 ?8 ?' L0 Z0 o8 w) ^
@.Destination.NumReservation :=/ O6 L7 W/ x! ?* X$ C/ u2 C
@.Destination.NumReservation + 1;
7 O: z3 F- M2 D end;' z: q/ Q$ P$ E( } f" e% H/ g" Z
@.CurrIcon := "drivingHome";+ j |. A5 V% W
@.DrivingHome := true;
' m" h' e# s; z* I end;
% H/ i9 i/ G L% Y$ Q1 ?3 c9 u2 R* l else -- the vehicle @ is empty, both vehicle and part are in the same dock station3 Z( R) E/ S" N1 E
part := @.transpOrder;) J4 L- H+ h" D) F4 }/ u. p+ q
part.move(@);-- load part+ z" w: f5 ~/ D! e& R2 H8 ~0 c
@.CurrIcon := "load";
9 Q# y d2 W* r+ T2 ?) M+ h3 G GlobalDistObj := part.globDestination;
3 j( v7 l; T, F/ L7 q) F assignLObj := rgmanager.rgAssignL;
; X* L' _8 N7 z. Q, r, W/ n row := assignLObj.getRowNo(GlobalDistObj);
3 ]* V: ?% J& P$ a9 e0 y5 G' ^9 N if Row = -1 then -- since 70
6 `" Y7 c3 E1 j if lan=1 then( q4 y) q+ ]% @
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
. ~8 L! Y. v8 Q2 t+ W to_str("in der Andockstation: \"",?.~.name,"\""));! w/ N+ Y' [6 V: l' d
else' n: T, Q4 X$ @+ r; K! c; ]
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),1 ]" h2 Q% C$ k1 {( m
to_str("in docking station: \"",?.~.name,"\""));
5 O0 {4 _8 @" g0 m5 Z5 y) y ~2 `) H end;
$ c5 ?9 S0 I' Y0 F' h# D4 e else
% O+ t9 z8 W$ s+ t, e z4 n @.Destination := assignLObj[1,row];
6 a! x) h. g( h0 A! \3 v! {/ x end; ' G1 ^ r2 F# x4 `, h
newDirection(@);
1 F; F) b8 e/ t# S$ D; W* B! G @.HasOrder := true;
; K, B% s* q( X- P/ @: P8 i0 Z end;
- V9 j2 V: t. V end;0 [% c$ z1 g7 ^7 Q4 J. j3 j, H
end; -- of the method
9 u' G4 M- [! q7 k1 h \+ k |