/* called by: entrance ctrl of the object 'track'6 p* K8 D1 i! |* K
*/; ~* c1 ~0 a/ {- i X
is
* A* S# w3 W: i2 K part, GlobalDistObj, assignLObj:object;row,Lan:integer;
: w" O: W: r* |2 B. zdo* L( w; ~# m: ]2 U2 k
Lan := rootfolder.Internal.Tools.AOLlanguage;
% F7 u" u5 O' |4 E% u if current = @.Destination -- else return
) ^. t- N1 A! C9 o then' {/ x0 y, b% z; o+ E" |& ^: \8 C
@.Destination := void;
0 L4 _2 n& [+ Y& m1 u; I! V3 y0 u if @.occupied then3 `# ^& Q! Y$ u2 u8 j
part := @.cont;2 l j6 `5 ~, w4 A- ^, q: f
@.transpOrder := void;2 h% N; S. [6 \! e* Z3 g
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,1 n3 j" m5 K, u& U+ @) o5 n4 H
@,root.eventcontroller.simTime);
6 k) [, N' T( I3 ^4 a! y @.HasOrder := false;
' b* y6 Y& n/ C" l! f! U @.DrivingHome := true;, e+ E8 S, R9 E
rgManager.tryToStartTransOrder;
' L$ ]+ p2 s5 p z. z& p if @.Destination = void
7 \/ C- F8 V1 }. n then -- no transport order for vehicle @& w( |$ O2 T0 w
@.Destination :=
8 i- c3 ^! p/ X5 a6 ~5 R" t. _( r rgManager.nearestFreeStation(@,track.~);
6 m+ T. Y& G0 V% `4 K0 t5 N6 o; _ newDirection(@);
. A$ o |3 U6 |& {( i: w% x! M# P if @.Destination /= void then
5 a* q& U0 ]5 ?2 j* R% @ @.Destination.NumReservation :=* f# g% p! D- l# g9 h9 Q. t; g
@.Destination.NumReservation + 1;5 g9 V. s: d6 h( D0 V8 ]% {: }! ]$ \
end;
: E4 \ ?4 P9 Y& f L i6 V @.CurrIcon := "drivingHome";
& G0 y/ Q# ]6 M* a5 K; e @.DrivingHome := true;+ Z/ j, [, ^3 C. Y. U6 X
end;9 j' S" l `( }+ k: [
else -- the vehicle @ is empty, both vehicle and part are in the same dock station+ ^* K! ~( f6 {4 B
part := @.transpOrder;1 @1 C$ l# }2 w8 z6 N4 J8 g; X+ _6 m
part.move(@);-- load part$ R {0 T5 ^6 F& X
@.CurrIcon := "load";
% e3 Y3 z. I- `0 J, R3 n0 ^) ^ GlobalDistObj := part.globDestination;
+ X! V/ u ^* h2 S. a& U assignLObj := rgmanager.rgAssignL;- m; v. _3 o, l8 s2 M' R: u
row := assignLObj.getRowNo(GlobalDistObj);5 b& l4 {! n- @9 u# R
if Row = -1 then -- since 70; @! p% T0 `7 X9 w: T
if lan=1 then
, P: c# B1 M% E9 {/ k promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
7 v' ]0 F/ \. }1 l5 G6 N, C to_str("in der Andockstation: \"",?.~.name,"\""));" L8 Q6 s% V5 p% ^9 C7 o' ?3 [
else2 x; c/ x" ~" [8 i' M$ x
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),1 H$ X a4 z5 ~" G9 f/ v
to_str("in docking station: \"",?.~.name,"\""));
4 D2 i; k# E1 G0 f" @ end;1 q U1 k) U" l* Q
else
( J, p8 T0 M# v6 f. u- a) x @.Destination := assignLObj[1,row];9 s7 }: I1 j2 r; Y) k/ r, ~
end; 9 \6 u/ q, } l3 Z0 K1 H+ z5 W$ [: V
newDirection(@);
6 \4 Z# l$ @' G# g8 K @.HasOrder := true;
3 U- N) Z# ?/ X# D. J end;# }8 o$ V, l* o7 W8 v7 _, |7 S% o
end;7 n- Q- w# t8 L5 o0 F
end; -- of the method
+ X8 [/ F" i0 j& A |