/* called by: entrance ctrl of the object 'track'
, m" O8 O% E0 u" i0 H*/
' v6 H7 n) g6 xis0 o% ~, r4 |4 X( F9 ]( [" H, \. E
part, GlobalDistObj, assignLObj:object;row,Lan:integer;9 B: m1 n% W) f
do8 k' Z! A; {! T |5 J
Lan := rootfolder.Internal.Tools.AOLlanguage;
6 h' \. l5 [8 v+ G if current = @.Destination -- else return' Y( C( F) v8 L L: c2 p
then
8 Y* W7 w- |& F. f. G @.Destination := void;
) z; O; |2 |7 T( X7 j; ~) K if @.occupied then. |. [ l5 ]2 h6 n% q
part := @.cont;
% m) W: ] [( z; f: v+ w e* R @.transpOrder := void;9 ~7 {$ J, [, m9 E. {' `, @* m
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,5 X4 F( _7 S: K' A; Z( ~6 a
@,root.eventcontroller.simTime);
. z& q! l; n7 [& i" Z2 v @.HasOrder := false;
- ]# [) E$ X* W( p( o8 P4 Y @.DrivingHome := true;/ H* P5 o0 R' n3 [$ N
rgManager.tryToStartTransOrder;
' b. @; w+ Y6 Z0 @' |; D if @.Destination = void
# a1 O8 E( K- Q8 O1 B then -- no transport order for vehicle @/ x* C3 i; _/ R7 t6 W" Y
@.Destination :=" s3 e |7 W$ ]2 i
rgManager.nearestFreeStation(@,track.~);
, [8 J# a/ v% F* n, @8 S5 h! W newDirection(@); n5 w0 q5 f* {! `% G
if @.Destination /= void then
/ _1 u& J2 p& F! I; \4 W @.Destination.NumReservation :=
% x, n; d3 G9 L @.Destination.NumReservation + 1;
) @) d" u" t8 W end;2 B2 I' Z$ r3 g
@.CurrIcon := "drivingHome"; u7 X. V6 f( X: l" f0 r: L
@.DrivingHome := true;
3 o, M+ l( T8 Z1 A end;, K6 O$ l- n. J& m! y9 O
else -- the vehicle @ is empty, both vehicle and part are in the same dock station; d B7 W9 n* R$ j3 t- g1 z3 w4 A
part := @.transpOrder;
8 w _6 d* p5 G* K2 k part.move(@);-- load part& i- r* a8 f3 j; ^
@.CurrIcon := "load";
$ S. d" r! P, ]% K GlobalDistObj := part.globDestination;( m1 l# d" q8 Z" z, c' e$ {; y) w- m
assignLObj := rgmanager.rgAssignL;2 _0 ~: g1 l1 u9 F3 A* F
row := assignLObj.getRowNo(GlobalDistObj); A3 a; f& Q; |% K( l
if Row = -1 then -- since 70
4 ]4 O% x" [7 a. S9 s2 s if lan=1 then
! E- K. S v3 x: M8 }/ x promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),/ a: b8 L, x- [ A& H
to_str("in der Andockstation: \"",?.~.name,"\""));* M/ h# h2 T7 ?, v/ ?
else9 @' f, h9 {3 `/ D* ]
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),- A$ F7 o7 U4 |1 A6 J, s
to_str("in docking station: \"",?.~.name,"\"")); 3 ^0 m# \& l2 e
end;
7 B/ ^, M- L9 B9 B else
: W* w! q n! c( n/ g6 X3 J @.Destination := assignLObj[1,row];
4 E0 N: M" K$ W: v1 F end; 1 ^2 s3 y q c. \" f$ e5 s- G
newDirection(@);
2 r$ H4 m, B. M- Z9 \. i" _ @.HasOrder := true;
$ b* d/ M% R9 T8 y8 C' Y6 ^ end;% A2 m' P8 [( P, D& M
end;. Z- `' m" ?5 J
end; -- of the method
% @1 p0 S% J3 r& \ |