/* called by: entrance ctrl of the object 'track'( {6 S' y4 q4 F; V5 U1 l8 ^) F
*/4 ~% h* Z% T% B1 Y6 _! ~
is
; e, c* g: l, D [3 k8 }, ~ part, GlobalDistObj, assignLObj:object;row,Lan:integer;
: Y# }5 S9 @8 V7 ~# z, k2 ldo' n7 H1 G4 ]* p6 q0 g1 M0 @
Lan := rootfolder.Internal.Tools.AOLlanguage;& |9 |2 l# j0 V% `2 E
if current = @.Destination -- else return9 B( h1 d5 }/ ^8 Z: N6 P% p& v/ ~5 D
then8 r- m" C7 ~( x/ w& ]
@.Destination := void;
: v, r" K6 m3 S: E1 e; `- V; j if @.occupied then; c* K( C) {3 b- G0 C- q; L6 z
part := @.cont;% P! B0 B$ K) x9 `
@.transpOrder := void;, E- n1 _9 k4 v2 I
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
v, O' Q, W: Y Z+ A @,root.eventcontroller.simTime);. I$ ?5 m6 D0 S- X8 M- g# r
@.HasOrder := false;% B5 Q1 ^$ [+ S) Q$ y+ [
@.DrivingHome := true;
: n0 r/ I8 Z0 K5 b6 }! t; z: U rgManager.tryToStartTransOrder;+ C+ h4 f* }- c- m' H
if @.Destination = void
2 R, g, a- j+ H6 o3 R; k& M+ L then -- no transport order for vehicle @' q; m- m! v4 Q! n. S) K
@.Destination :=( ^+ v) \/ E, R% Y% ~0 r1 v6 P
rgManager.nearestFreeStation(@,track.~);4 k5 Z2 z2 m/ v& F X; u# ^/ I! O
newDirection(@);
2 |. w" u1 E( [' R% V; I j6 y if @.Destination /= void then
: z& ?* ~ I* a @.Destination.NumReservation :=
, i2 W0 }' j5 L( h, L @.Destination.NumReservation + 1;4 N" l, B8 a5 J" G1 [4 {! I6 e% Z
end;
5 c: p8 ^* s7 u Y @.CurrIcon := "drivingHome";
/ c) `) w5 p0 D @.DrivingHome := true;1 U: _1 h& x& J3 ?' o" H. L/ c
end;6 M, s$ O) i/ ^6 f' j+ t
else -- the vehicle @ is empty, both vehicle and part are in the same dock station' {* R3 j F, k+ O& ]
part := @.transpOrder;
( M, ^0 b% N/ O" @! C) D$ C4 z part.move(@);-- load part0 [* a, r1 \/ o. s6 o! f( Y
@.CurrIcon := "load";
; |! Q* T7 P% Z4 F# ]0 B J8 x2 f GlobalDistObj := part.globDestination;
' e' @, S: k$ z$ `0 q8 z: E0 A assignLObj := rgmanager.rgAssignL;& F2 J2 a x4 f# T* B& }* m
row := assignLObj.getRowNo(GlobalDistObj);3 j8 }- r' r6 g, {5 d' q: D4 d% F( C, a
if Row = -1 then -- since 70
$ t2 W) f( D \( P( s if lan=1 then" G: ?$ z( I! Z1 K
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
% i; a$ c1 t. Y( l2 d' R8 x to_str("in der Andockstation: \"",?.~.name,"\""));
; [2 T, U4 y: I else: |+ g3 O7 L/ j) G
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
/ o' d4 G. N1 I. H* r to_str("in docking station: \"",?.~.name,"\"")); 6 a5 N0 f* r' {3 [, N, {! ^
end;+ O- w* o( o. |4 [3 m5 W! _2 l
else' \+ L8 a S4 J2 E0 {- P2 T- D3 p
@.Destination := assignLObj[1,row];
# h7 b) D/ `2 [2 V end; - l. L; m. Z& k7 E% M. _3 ]
newDirection(@);
- H# | Q* o/ ^ @.HasOrder := true;
7 D3 y' ], y* q6 W# x" k end;1 }0 M/ O6 R6 |( p/ X# I
end;$ ]2 G: R: a* w1 }
end; -- of the method; p/ d- J: x5 G- g) D) B
|