/* called by: entrance ctrl of the object 'track'
" U0 c* |# k, z*/6 Z3 Y8 \* C+ }/ X, n, }( \
is
) g- J" G0 z$ C" D part, GlobalDistObj, assignLObj:object;row,Lan:integer;7 d8 _" {9 F1 o3 p) Q4 O/ t
do
. L d4 i/ `4 E6 O) k, d# W Lan := rootfolder.Internal.Tools.AOLlanguage;! X( K% N+ _2 {% u" q4 t
if current = @.Destination -- else return6 S% R5 n+ v( C2 I- J% [
then
0 Y* M+ N/ ?0 i2 m- V. r; A @.Destination := void;/ z5 G% {( _ h; ~% ^& X
if @.occupied then
! H# s6 a/ J$ z0 h6 ^ part := @.cont;
( y9 k8 e, m4 T" X* h& u' L @.transpOrder := void;
2 s. z# a+ T. b5 ]2 E X$ C F part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
$ w, ^; F; l" h @,root.eventcontroller.simTime);
1 _+ {: F0 X1 l0 o @.HasOrder := false;
) N' q; U {/ o* T# w. X @.DrivingHome := true;
% d4 `! B) _) Z, u rgManager.tryToStartTransOrder;
3 `7 v( A) m! {+ c* t4 O; E if @.Destination = void
' d- J: z6 D- g$ _8 \" d8 T! j then -- no transport order for vehicle @( C) I! E- S" A# u5 Q% N) r
@.Destination :=
) m3 }9 I0 Y2 @5 Q p rgManager.nearestFreeStation(@,track.~);
! D6 c5 ^6 `2 s: L+ d newDirection(@);
7 {; i- c( J9 w2 k- F if @.Destination /= void then
/ H, w+ \: {) c @.Destination.NumReservation :=
' W) p' u% t, v) J @.Destination.NumReservation + 1;
/ E, m# J$ L2 y+ h6 X" x& |3 B% x end;& I& _% ?' f, `7 I, Q0 e
@.CurrIcon := "drivingHome";" s. S: G5 @8 Y7 K; y6 ?
@.DrivingHome := true;' {1 P, p/ I* ]3 a7 l9 B
end;# Z: j1 G5 z/ `
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
9 J8 p& C* i/ p& \ part := @.transpOrder;
! {' Y* \; ~5 w1 Q part.move(@);-- load part
: V7 p0 Q1 a9 H# ?& i& _, s @.CurrIcon := "load"; T7 D- }& C8 j' a2 N8 Q5 C: ~/ k
GlobalDistObj := part.globDestination;
+ m+ D J a/ }, q assignLObj := rgmanager.rgAssignL;
$ N: h, p; y( J, X5 B# O' M* _ row := assignLObj.getRowNo(GlobalDistObj);
8 O g4 \" `; S8 o6 w6 h if Row = -1 then -- since 70$ f! h& N6 n' Z$ u! f
if lan=1 then4 c1 b+ S$ H- E! V% {, B
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
6 h: R! j+ S4 N6 G to_str("in der Andockstation: \"",?.~.name,"\""));
% t. R8 T, V, N I& | else
1 M: e' w* v8 U/ m7 y, H. ] promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
' c' @2 ]% A; Q8 t to_str("in docking station: \"",?.~.name,"\"")); * b/ f: B7 W/ k/ @
end;8 @+ H, y5 K y6 |* p3 s
else4 i$ q( m6 Q$ ^& I8 ?7 b5 U1 K
@.Destination := assignLObj[1,row];$ T# s0 Z! p7 t t: H+ B* t
end;
8 g( L8 A: E/ g2 g1 n: h newDirection(@);
! y7 Y" n5 X* I4 I; ?- L @.HasOrder := true;% H% z+ M# ]6 c4 D: z& x" ~' C
end;) Q$ k$ d+ h8 k
end;
: k* @- d: E; e# F+ w5 U% y. ]end; -- of the method
_# q& I3 E& R$ O4 v |