/* called by: entrance ctrl of the object 'track'
, Q% E3 G8 @0 D) V/ G8 F*/! f7 Z3 G, B) C5 b# }' a. }
is
1 R% N3 M0 M* }; p; {8 E( w: | part, GlobalDistObj, assignLObj:object;row,Lan:integer;) v% G/ [6 C' Q8 ~
do5 g) r% H; z1 r4 W
Lan := rootfolder.Internal.Tools.AOLlanguage;
- A* O" x# p" ]5 ^% ], @6 c if current = @.Destination -- else return
, z* z& c. E, U6 u: _ then8 ~. b$ h/ e6 B4 H+ h" ^; O
@.Destination := void;; b7 O, |/ E# m( W
if @.occupied then
% {! U* k1 l6 a" @1 M- I5 X) B, [ part := @.cont;1 U/ b( `0 O' j+ X8 @
@.transpOrder := void;! y3 F2 n5 Z2 e+ M& a& ]1 Z, ~! O
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,' D% y0 I" z* O+ n/ f8 B5 F9 A1 \: P
@,root.eventcontroller.simTime);
3 M6 ]# ]0 x& X1 X: h) L9 ` @.HasOrder := false;7 W# h- Q3 y7 z, u$ M
@.DrivingHome := true;' }7 W: i* d7 T2 G% ]% V
rgManager.tryToStartTransOrder;+ i3 M. W6 R; k$ x2 [0 n8 V# V
if @.Destination = void4 i& r! Y4 d$ ]6 C' l6 z7 u- d% }
then -- no transport order for vehicle @ J" F9 b0 ~% j8 d! F3 D
@.Destination :=# Q# u8 T' |8 R% b( [4 \
rgManager.nearestFreeStation(@,track.~);& g. x+ T& P% }
newDirection(@); 6 X E; H6 x) k/ W6 l% M+ G
if @.Destination /= void then
, y& d+ W/ H8 V- |; O1 t! e @.Destination.NumReservation :=
2 v5 Z5 j. V: Q" w, `( }6 C% w @.Destination.NumReservation + 1;
- r Y7 C" ~! R: O$ k end;
0 ?& j( G4 e! k @.CurrIcon := "drivingHome";0 Q' f) V V: O8 ~$ Q* M6 @ ^2 C
@.DrivingHome := true;
& L6 o* g: ]7 k end;
& w; r) {7 J, L* N% Y% G else -- the vehicle @ is empty, both vehicle and part are in the same dock station
# ~9 `+ L: {/ i5 a; J part := @.transpOrder;
8 ~( O6 H B1 C4 T+ S @$ U1 _ part.move(@);-- load part9 S/ ^: Y# k& C% l! h
@.CurrIcon := "load";8 \4 Q: K8 \1 |1 b
GlobalDistObj := part.globDestination;
, i; f$ [2 E* z; n5 ]& A' k assignLObj := rgmanager.rgAssignL;
0 Z! {) H' a, m8 D' @0 Z row := assignLObj.getRowNo(GlobalDistObj);
$ Z% _; K0 }$ U; X2 C* A; B4 [ if Row = -1 then -- since 70
- _% c' `% I# o if lan=1 then7 D' \. A4 E- r6 I. C
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
+ b$ Y. C9 V0 E3 e- |8 i to_str("in der Andockstation: \"",?.~.name,"\""));
% x9 [% y* ^/ u( m6 I7 F( f) ] else
' W4 N9 V @8 p" t! d H promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),% G! {; {; X: w( Z" z& b5 c7 Y
to_str("in docking station: \"",?.~.name,"\"")); ' ^5 i+ l" h* ~$ [1 W& m3 N9 a% ]
end;
# a5 N6 t D% a) Z. u4 R d o( z else" }0 U5 f+ ~9 ^, ~6 l+ y% X0 d
@.Destination := assignLObj[1,row];! @" l! d6 ?: T6 D/ H. C
end;
# |# B7 T+ d* E+ @" {* ? newDirection(@);
6 o, J Z: b( a @.HasOrder := true;$ U; ~ H/ e3 V6 {+ G
end;
6 \# f& ^+ J) K- n end;
7 b: f2 J3 C) W/ }; pend; -- of the method
: k* |" o) M$ r- ? |