/* called by: entrance ctrl of the object 'track'
- `5 o5 k* h" V% w*/8 F5 g3 j& D; @- o E. n
is
5 o5 Z, ~, ~ G% _& ~7 i5 B$ y part, GlobalDistObj, assignLObj:object;row,Lan:integer;
; [0 Q8 y7 F6 c3 i5 \2 L2 udo* V$ R( I7 q+ d# ~3 A; U+ F" C% V
Lan := rootfolder.Internal.Tools.AOLlanguage;
- L' ^# G' @. ?& ^- H- w9 ]$ k. | if current = @.Destination -- else return
# O2 Q8 K* z+ ]* {1 A then5 N8 P! D$ Y; R4 j" R# X
@.Destination := void;
3 T" P1 t3 P9 ?- W3 c5 e if @.occupied then
! [) w6 }9 k9 U3 ~ part := @.cont;4 S# U; H! Q2 a1 G) d% Y( t9 z
@.transpOrder := void;
4 T9 M6 g4 w" W5 e. W% Y part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,% C3 z A' A; B8 G
@,root.eventcontroller.simTime);- N5 B4 K- p3 u3 R
@.HasOrder := false;
/ v7 C4 M/ J r( F8 a @.DrivingHome := true;
, L% X$ N+ K9 x; O( J1 ` rgManager.tryToStartTransOrder;; H1 A9 g) Y$ o
if @.Destination = void
+ G: { M, o# c then -- no transport order for vehicle @. \0 Z2 m# A# N' E6 B' Z
@.Destination :=0 {& _+ g4 t1 |9 e
rgManager.nearestFreeStation(@,track.~);( A* q$ P" s0 P6 \4 N5 o9 q9 J/ u
newDirection(@); 5 v" c1 o2 y/ ]* t0 F4 w" r' @8 _
if @.Destination /= void then
; n/ o ^7 a6 A/ j6 p& p @.Destination.NumReservation :=- [& r# U3 }+ J- `7 ]6 u+ S0 v
@.Destination.NumReservation + 1;
3 P' |' A0 o0 l end; n& p' }; o* H5 }" }7 K5 K: K% O
@.CurrIcon := "drivingHome";7 H/ c" h# g3 {4 Z
@.DrivingHome := true;
) R$ ]/ F" L0 E" D7 [( Q' {" W0 B a end;" V6 @1 \6 H1 x% N! u8 U% S/ u
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
6 B2 b. G; R2 F2 D! D6 c7 \# o# |' K part := @.transpOrder;* w& e- K4 o6 D* v `
part.move(@);-- load part0 J% o' h- w9 b5 C! M2 h+ w
@.CurrIcon := "load";9 W2 G& N$ m& d* e& C# i& H* V
GlobalDistObj := part.globDestination;
- w0 z/ N1 z! s S2 E8 a6 H7 R) o assignLObj := rgmanager.rgAssignL;) f1 _2 X6 z3 W' d
row := assignLObj.getRowNo(GlobalDistObj);
+ b4 X3 J8 g" ^* C0 _ if Row = -1 then -- since 70
' Y% s, e6 E- u if lan=1 then3 W; `/ E4 p6 d! z5 B. E8 V
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
3 \& V8 g9 k, o6 d- W N6 X0 Q3 a- f to_str("in der Andockstation: \"",?.~.name,"\""));1 G7 P, R( L- v( d' Y
else
, D+ }% g" g- t# g" u promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
- i" r" f n! z8 E4 p to_str("in docking station: \"",?.~.name,"\"")); 0 @' ~4 s4 x) Q6 C6 {+ N' l Z" G
end;
- b9 `( {) y' `$ l else- |( r( D/ G' d0 g
@.Destination := assignLObj[1,row];
7 n+ `+ R w, U% [5 ^4 P; y0 p end;
6 W, o: F0 D: H newDirection(@);2 k6 z2 S; ]+ y' P
@.HasOrder := true;
6 w. z4 \2 G8 ~8 m M7 u end;
) ?; c. l W# ?, q, L: Z: O end;
3 a' Y" n- B" J" @/ o; T2 P6 `8 _ w( |end; -- of the method
3 M8 i+ ~3 W% }& {; M |