/* called by: entrance ctrl of the object 'track'
! @' G L: v3 g; ?+ [( `& ^4 @& Q*/; W3 Y: }; S2 X+ r8 e1 G9 Y
is
/ h" @7 N. p, O! g' q& _ part, GlobalDistObj, assignLObj:object;row,Lan:integer;
8 @2 [- |; Z/ t n. sdo, P; Y$ N% |2 M2 k9 h/ g) s
Lan := rootfolder.Internal.Tools.AOLlanguage;
# |/ M$ g# h; A4 @5 K2 ? if current = @.Destination -- else return
" k7 N) T$ z; F3 x. C: V then/ ~8 u, [4 \. w# n: p) t" X
@.Destination := void;2 O6 M( y3 H" g0 _+ m3 ]! M
if @.occupied then
5 I# c/ b9 i0 E+ f8 V) w part := @.cont;3 S/ o% Z- L: v# J
@.transpOrder := void;
, Y5 `) L: s+ S) C0 q6 ?! `6 G( y! n part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,% @ K) s* U8 l, I( g! ~
@,root.eventcontroller.simTime);/ `, a# N3 q# Q1 F4 g7 @
@.HasOrder := false;& B4 H! \& t" m. t
@.DrivingHome := true;0 Y! z1 H/ [* t. F
rgManager.tryToStartTransOrder; F: c; m% H2 h) n; {
if @.Destination = void8 k3 a! B; Y$ N7 U$ c* Y& X
then -- no transport order for vehicle @8 D5 M* L* g: f8 ]' U/ t
@.Destination :=- X/ H5 n; X: ~, d d
rgManager.nearestFreeStation(@,track.~);# B3 U p* M" P& I" J/ f
newDirection(@); ! l# P' [/ H9 V2 `0 ~& w
if @.Destination /= void then
( g1 P' J2 k; G+ m3 Z8 \* x @.Destination.NumReservation :=" K8 d; o& I& a! ] N1 m' O
@.Destination.NumReservation + 1;
4 ]) h8 R) X1 x end;
- ~& [3 u. |' W; K6 W" x @.CurrIcon := "drivingHome";
, b, R" T a) i @.DrivingHome := true;9 t1 x( T& x4 g* a0 b1 N& _
end;! G _: ^6 l, q' F
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
, b7 W7 D, C' H5 R8 n part := @.transpOrder;/ o F, R/ {. V# w* s/ E
part.move(@);-- load part' u% b, V7 q( r0 J& g3 N
@.CurrIcon := "load";
# ^% o( ~' N2 A, t; j GlobalDistObj := part.globDestination;
`1 F" E' @* I) | assignLObj := rgmanager.rgAssignL;
: r- A5 N D. n4 _$ Y* O row := assignLObj.getRowNo(GlobalDistObj);
7 O% d2 P. s4 t6 O8 m if Row = -1 then -- since 70: d- v" [; d( ~1 }
if lan=1 then, M! o; P O" y4 p$ K
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),* y) A0 Z# [. j3 c3 n9 M/ Q
to_str("in der Andockstation: \"",?.~.name,"\""));
! O6 O$ {6 J1 L+ U else- b$ ]8 j$ T5 u7 j
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),: F! f7 G- ?" S* X' M* f. C$ i) T2 u! k; ?
to_str("in docking station: \"",?.~.name,"\""));
. ~" c7 I; o# D end;/ {3 {# H2 w" G$ n
else9 ]5 @9 l( W. P
@.Destination := assignLObj[1,row];6 c( R( h0 }1 w
end; - r& y' \( a- {
newDirection(@);
- ^, o9 F4 I" W% D m0 L! ~ @.HasOrder := true;" c1 E( z4 ]+ I% ]+ f- ]7 c
end;
( i5 I1 @4 [% J- h1 h3 x end;
7 r) H, Q' o+ S8 {end; -- of the method
: V, D4 U2 B$ m; B |