/* called by: entrance ctrl of the object 'track'$ m Z, b; B7 l
*/- [7 N( h# v$ o- w8 K3 |
is
8 C! G! d8 _0 U7 w part, GlobalDistObj, assignLObj:object;row,Lan:integer;
# I! ^( x) f/ c- {do
0 x$ k. o# [1 I% o; v Lan := rootfolder.Internal.Tools.AOLlanguage;
1 b, ^, |" Z$ a# @ if current = @.Destination -- else return
2 n! g& }, }2 L) y1 |' b' P then
. D6 }0 a: t. G# Z1 v. T0 j7 L4 O @.Destination := void;$ ]5 b+ x, _1 x: B( U& U
if @.occupied then
# t, w& Q* U3 F; R" y, V9 H; p part := @.cont;! B& ~( L7 K% Y i/ H
@.transpOrder := void;
1 ]6 ]; `3 ]; S/ c& [6 v' P part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,, ~ O+ x) U _; I/ n$ M
@,root.eventcontroller.simTime);, u+ t* R( p# z. T8 R/ f ]% M8 x
@.HasOrder := false;" G1 Q5 N8 `' S- I2 g: U9 t- d
@.DrivingHome := true; {0 L# O3 u: N/ E( m# E
rgManager.tryToStartTransOrder;
! J5 @9 q0 J! R- I* E3 M if @.Destination = void
i8 V: e* f+ B- Q7 O1 j- G0 Y then -- no transport order for vehicle @
0 ] j( Y# ?6 @2 L8 {/ H7 U+ Z @.Destination :=; y1 m$ v: ]2 Q8 x( S& t4 @( w
rgManager.nearestFreeStation(@,track.~);
, m0 ?; S% r) ^* A newDirection(@);
4 d: E$ F1 C$ y4 r7 J if @.Destination /= void then* Z. x, K. i/ H: h! W
@.Destination.NumReservation :=: ^. l7 ]0 z$ i; e) P: J3 K
@.Destination.NumReservation + 1;7 n" a) x9 K( S- \% ~
end;- L. m$ z$ l& ~; d
@.CurrIcon := "drivingHome";( r9 x$ B- P" o! S8 B
@.DrivingHome := true;
9 c" m, l5 T5 l) e- W. C end;
4 ?$ m- y+ ^: |. e1 S/ o else -- the vehicle @ is empty, both vehicle and part are in the same dock station' d7 Q3 ]/ \# q+ C+ q& o
part := @.transpOrder;
7 m/ v) M# @, d2 j3 b% Y# j& x part.move(@);-- load part; D9 G% O n u1 _2 v0 I2 b8 Q
@.CurrIcon := "load";9 b' `5 \3 b4 w- r4 B
GlobalDistObj := part.globDestination;1 e. w7 [, C# X' T6 _6 u/ u
assignLObj := rgmanager.rgAssignL;, w; G1 B" Q5 S0 M: G: d1 i' p' m
row := assignLObj.getRowNo(GlobalDistObj);- N" C2 o( l4 O) S7 m0 |
if Row = -1 then -- since 70
) F! t7 n, l2 U* w6 D R# H3 U* F' m if lan=1 then' f. _" c7 l$ K* H3 q0 j5 d- l0 y
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),. L* z! l- D, |1 ^( r
to_str("in der Andockstation: \"",?.~.name,"\""));
. j. ^2 q+ \# l, k" S5 ]1 m$ F! N else
6 D; J q4 ?- A# `/ p2 b: E, g# V) { promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
5 c0 Y. ^3 ^8 j1 T to_str("in docking station: \"",?.~.name,"\"")); , u1 P. w* k# ^9 t- Q) i7 k
end;
" r, @2 Q/ ?. y. h: L" M; V else
1 ]6 ?( M9 l# k( c @.Destination := assignLObj[1,row];
# \* \$ C/ Q. n: g, D) } end;
' N' P" ~; s N9 P; x- r8 A newDirection(@);
; s/ z' I2 Y: h9 ^: H! X @.HasOrder := true;' J$ Z7 l3 q8 v& S; U+ k3 i
end;
9 R9 {+ m0 J; q) k end;: W/ ^, Y- V. _7 W' F
end; -- of the method
& J% R& z7 ]4 g. G& u" \' U7 h |