/* called by: entrance ctrl of the object 'track'
# h$ E& f5 @5 S' M' G*/
" u- j' U' {( a' `+ R, {is
8 V4 @) K. Z* J1 v+ G6 N8 P5 [( q1 i7 w part, GlobalDistObj, assignLObj:object;row,Lan:integer;+ Q% d) c7 R/ s7 {+ A+ d7 y ~
do
4 K9 ^# f% O9 W" x; q" } Lan := rootfolder.Internal.Tools.AOLlanguage;9 _1 T3 W( j5 ~ K: @9 @+ H
if current = @.Destination -- else return
7 Y+ h* h# o6 h% G6 ^- r then: `7 b2 f' Y# v4 ^2 P
@.Destination := void;$ n0 D, E- M8 U
if @.occupied then
; Q' m4 \# ~; } part := @.cont;, U; e- L$ O( h
@.transpOrder := void;
8 ?2 z6 q* P! I part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,1 S- ?% z7 h* M0 r' x* Q R
@,root.eventcontroller.simTime);
! x# T2 {' c+ V. C+ F6 l @.HasOrder := false;0 k6 ^2 a) ?5 Z( V9 R. n# p8 b
@.DrivingHome := true;
2 n% D- p+ R$ K" n* P1 L: @/ n rgManager.tryToStartTransOrder;: _& a2 H! e3 c# H) k( V9 c! W6 u
if @.Destination = void
. J% ?2 e4 k) f" S$ G then -- no transport order for vehicle @
& o) z6 q( s( s: y4 m5 S @.Destination :=# _7 } d. T. F6 s. Q. K
rgManager.nearestFreeStation(@,track.~);+ V# R8 X) S0 h+ z! u% q+ a
newDirection(@);
& @4 D6 d+ E4 T4 f0 T. K4 k8 A if @.Destination /= void then
. Q/ k/ ?6 s9 D1 N4 P @.Destination.NumReservation :=
% I H) q3 r# g$ i4 x2 U3 {- i1 O @.Destination.NumReservation + 1;
( O; h1 x" z% f3 K0 M5 c end;
- ?7 \& K$ O9 l @.CurrIcon := "drivingHome";
( B: i |* G0 o/ H @.DrivingHome := true;0 n' w7 N9 k4 q/ U
end;
) d$ e3 e1 F: [! |9 C- m else -- the vehicle @ is empty, both vehicle and part are in the same dock station
& l$ e* R4 d! B* t) @ part := @.transpOrder;
2 D; k$ i: f0 G part.move(@);-- load part
9 j. e4 v! }/ H2 D* T7 m5 ^ @.CurrIcon := "load";& a, F% b8 O) A+ r* |/ v0 _* }
GlobalDistObj := part.globDestination; H8 a" j4 s1 J2 c- }3 ?
assignLObj := rgmanager.rgAssignL;2 k) N3 P) g0 E7 E$ y
row := assignLObj.getRowNo(GlobalDistObj);
9 q5 \+ o6 ?) H- G8 n$ e { if Row = -1 then -- since 70
5 y3 x& v7 S/ B4 L: z if lan=1 then
% n$ E4 E" y( d) D5 f promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
: h, C- w; c3 R, } to_str("in der Andockstation: \"",?.~.name,"\""));
2 j0 ?* Y( y4 m5 D4 |3 A8 V else
/ y- p" \' f: l promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
% U& I/ Z3 v$ g+ Y2 ~. E8 F, E to_str("in docking station: \"",?.~.name,"\"")); 3 R6 Q; s T r) q1 V1 U# A
end;. x; f$ I# g4 ~: R T$ ?) ?
else
- }/ O" J" |$ V- B8 b5 g& Y @.Destination := assignLObj[1,row];+ N; q6 M& e% M9 \$ x
end;
. \; L5 R9 h$ Z, @: N* i newDirection(@);$ F5 q* {+ G% J4 w/ b0 Z
@.HasOrder := true;
' F2 ~! b: K+ w9 W4 G' R end;* d7 W# L6 _- ?& h+ q
end;9 K3 w+ z# f* |* e9 ~( f
end; -- of the method( {+ E0 k: r y1 L
|