/* called by: entrance ctrl of the object 'track'
" k' @9 F6 A2 R*/
. K. C! \1 u7 M% |8 J1 eis
- g0 Y* W5 A1 A( F- W/ Y part, GlobalDistObj, assignLObj:object;row,Lan:integer;! s Y; @$ y0 E, o6 r" S5 k
do
8 Y% n+ t% o, x* M, i Lan := rootfolder.Internal.Tools.AOLlanguage;
% y* S. t/ B. j( ]4 X1 z if current = @.Destination -- else return4 f! m, c7 y5 l4 M! R/ S
then
" L, Q7 F% K& `! R, r& i2 s1 A @.Destination := void;& j; d3 A9 ]& C# y S9 P
if @.occupied then
" l" }3 s; h" M: d part := @.cont;0 z% ~5 U# Z$ E- c( J
@.transpOrder := void;! e- C% _+ W5 ]; I" L! b: t
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
( C0 z) e7 q+ w) ]( W- B @,root.eventcontroller.simTime);
9 ^7 g1 M, e, ]; A @.HasOrder := false;5 l; \* Y* I0 F/ a; r# D/ Z
@.DrivingHome := true;+ _) u/ l* f7 V3 V0 k, T& t# h6 ]& I
rgManager.tryToStartTransOrder;
" |! i6 X" S0 O/ V1 k- T' ]- f if @.Destination = void
; B, b* v: I! h- } c) s$ Q then -- no transport order for vehicle @6 A: v6 E4 p) t& A; _. p0 o
@.Destination :=) e# H" e& B! p; t2 V( c
rgManager.nearestFreeStation(@,track.~);$ O" c8 L7 Y) N
newDirection(@); 5 ]- l& X4 p0 q3 _+ C2 p' G9 |
if @.Destination /= void then
+ |- }( a. Y6 K/ }8 V" i @.Destination.NumReservation :=& S- U* I C( P+ S4 r
@.Destination.NumReservation + 1;2 [) U8 [/ r- d6 ~ c
end;5 w& [' i: t3 T9 F" d* H! T$ g
@.CurrIcon := "drivingHome";
; X$ N! \3 v- N/ Q @.DrivingHome := true;
5 a# D: A A8 N" J3 A end;0 F/ U& a6 g9 n4 x: H6 c. H
else -- the vehicle @ is empty, both vehicle and part are in the same dock station! @0 U: s& {4 ^: ]
part := @.transpOrder;; x, b# C! Y/ x
part.move(@);-- load part2 z9 W) ^" B7 j8 t
@.CurrIcon := "load";
* }: y/ d9 {+ n! x1 m1 Y& K8 h GlobalDistObj := part.globDestination;
/ [4 E1 @: G) K assignLObj := rgmanager.rgAssignL;
& e9 h* `+ N0 k. S- _( M row := assignLObj.getRowNo(GlobalDistObj);, R, ~- O" q, D6 q
if Row = -1 then -- since 70
/ U( B( w1 \/ y' i if lan=1 then
* n& |$ G- [, j promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),# y& }) C2 n( ~1 C5 P+ R" a
to_str("in der Andockstation: \"",?.~.name,"\""));) e6 U/ H" |0 R
else
' k1 A7 ]& K6 K1 b* j |# A" T promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
' w) k O7 k1 r( W9 i to_str("in docking station: \"",?.~.name,"\""));
6 ? t. d7 l9 _$ r5 g4 y$ W+ W- [1 o end;
/ C% R9 X/ Y4 \+ y else, y5 x# w# g x4 o4 J
@.Destination := assignLObj[1,row];* P1 U, K8 b% f8 Z& P' L! W
end;
+ W1 X/ Q4 w, G/ C) ^ newDirection(@);
* r. ~6 X8 S" [9 y' Z @.HasOrder := true;$ m3 i+ k! Q4 U
end;
u/ n" V* d/ r! K end;
. Y" l# P1 ^! j p5 c3 V$ Hend; -- of the method+ [/ Q4 q+ H7 x6 G& L1 l) | x+ {
|