/* called by: entrance ctrl of the object 'track'
7 T( ] P$ J) D, F+ q*/' u! o: ]. n; W" U7 x2 p
is
9 k4 l, r; i1 R7 p. @( ] part, GlobalDistObj, assignLObj:object;row,Lan:integer;3 f6 I: j- s# Z& P! Y
do
x* E8 e1 Z& c8 m* b2 W* P Lan := rootfolder.Internal.Tools.AOLlanguage;
% m6 ^. }) @: `0 P2 T1 l- E( b if current = @.Destination -- else return* Q/ H! @. g! n" Q
then
# T( G% X4 b0 e @.Destination := void;% Y+ |+ i8 L+ [7 \
if @.occupied then. a; r5 ~6 \* k6 l
part := @.cont;5 ^- N& x# w/ d
@.transpOrder := void;8 _/ L' A' W2 c c& t P
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,3 A J% V+ \# ?6 R
@,root.eventcontroller.simTime);0 g- C6 H# f8 J# M
@.HasOrder := false;' `- P" l) w( }7 W6 ^7 b
@.DrivingHome := true;
1 x- P% O2 [6 \( S/ b4 D( U& \% ^ rgManager.tryToStartTransOrder;
' R8 d" ^& m( J. g0 e5 B% q if @.Destination = void4 d3 f5 |- z- Z8 w
then -- no transport order for vehicle @
2 |2 [4 e2 h- r; v' o$ q4 U0 U# i @.Destination :=8 L' }. ~2 V P' d+ S3 d y
rgManager.nearestFreeStation(@,track.~);
, W% ?5 l, b$ c Y newDirection(@);
7 T) d7 Q2 N8 ^- n z( K' H if @.Destination /= void then
* L5 x, N' L: }6 P% O- n! Q; H @.Destination.NumReservation :=+ U3 _6 l& X# H* y
@.Destination.NumReservation + 1;+ M1 `, o- b* S! @+ V5 ?
end;
: T: X. l' U8 R$ ^/ k" B @.CurrIcon := "drivingHome";
, L- ], c6 ?; o g7 @! j @.DrivingHome := true;
) O: E9 |) b& L- y3 X1 n end;
* T+ Y. s, {: E3 Y; c else -- the vehicle @ is empty, both vehicle and part are in the same dock station3 `* i+ v! d2 p% E+ ?' ?7 Y9 H
part := @.transpOrder;
- Z) R" t e" H' ]) M- k' p# O- m part.move(@);-- load part
- K5 i5 V, S6 Z) y# ?- f @.CurrIcon := "load";
3 N* @* ^. S8 R; c- w GlobalDistObj := part.globDestination;3 F; v" A: P7 x& w
assignLObj := rgmanager.rgAssignL;
/ a2 T/ t- u) L" B row := assignLObj.getRowNo(GlobalDistObj);: @7 C0 R+ t0 z3 O" U' _* } H
if Row = -1 then -- since 70
8 v, R/ O" ~5 h! l: H% W if lan=1 then
: x3 E Z, e, l" e/ ~ promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\"")," I) c3 g8 [- _
to_str("in der Andockstation: \"",?.~.name,"\""));4 o" W8 h1 @$ I$ U
else
' l; L% V% K6 U8 o promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
& B2 b7 t! r) |: u, D, \& n$ w to_str("in docking station: \"",?.~.name,"\"")); + w0 d- |! r- o
end;7 \8 i) y# P$ D% u; P
else
, z5 \$ k0 A, s. A7 @ @.Destination := assignLObj[1,row];
( n5 |* T0 b$ h end;
0 Y' b; u$ v0 w newDirection(@);
: K7 M7 ~4 s+ G2 w) J @.HasOrder := true;) H' }) `$ ~6 D9 m
end;
1 U: o7 ^/ V* g# T) f. Y end;. j$ U8 Q: ~) f+ |
end; -- of the method
3 Z% E2 F2 o2 V' a |