/* called by: entrance ctrl of the object 'track'
! s8 G2 U/ {4 j0 Z) A, l# @*/
2 k- E. g1 ?8 W* k: A3 ~7 Wis
* l6 @' [" [! _2 Y) P part, GlobalDistObj, assignLObj:object;row,Lan:integer;% o \8 e% p. p1 C1 y; ^- \& V m
do
0 W1 |; t6 a5 F2 L2 w Lan := rootfolder.Internal.Tools.AOLlanguage;
! t" i3 o! N" j3 i9 T7 F% t if current = @.Destination -- else return
g I- x- b9 v6 o4 B5 N; t! u# ~ then2 D' h! P/ T% O4 d5 G
@.Destination := void;
' L4 e, `, L, ^ if @.occupied then
/ Y: @) j: K5 m! E1 e2 { part := @.cont;: _+ v( R& [+ ]( E
@.transpOrder := void;
9 h8 Z& ]& E, a$ n' M( ` part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,% F# f7 C, {! b$ B/ Y
@,root.eventcontroller.simTime);
* G) E i+ E( K* f: @ h J, T @.HasOrder := false;
, s- ~; H( O; F" z, J @.DrivingHome := true;
) X: T; I. \8 K* H0 n- z rgManager.tryToStartTransOrder;
4 \: ?! K3 f' G/ ?: e if @.Destination = void
. g6 c3 p; y1 @5 S( {- Q then -- no transport order for vehicle @: v) |1 l+ i5 d' ^3 A7 ]
@.Destination :=
7 ?' l0 U) g P( V; k0 c; Z rgManager.nearestFreeStation(@,track.~);& ^4 H$ ^) i% r) z- c
newDirection(@);
N. h, \5 w/ }, R if @.Destination /= void then3 N! t* J0 G+ c7 ~" O
@.Destination.NumReservation :=
4 Y1 \5 q& A8 c, A8 G1 B @.Destination.NumReservation + 1;
$ F0 V/ R k6 C end;
+ a9 s4 W7 j- S. `- \: W$ m* g7 B @.CurrIcon := "drivingHome";
# S# `& C0 X& Q! k* L- @; ~. e @.DrivingHome := true;
5 ]( c( _8 F- I `/ `) P! @ end;" \. ?' U$ m: d& T1 s# i
else -- the vehicle @ is empty, both vehicle and part are in the same dock station1 Z9 m* Y5 I# M% W7 N8 K
part := @.transpOrder;
& ?+ ?' E* ?5 D part.move(@);-- load part
% ~, \ Y! o5 t @.CurrIcon := "load";1 X+ Z+ R# x. {3 z1 F
GlobalDistObj := part.globDestination;
2 J. b2 ~* L( r" M* N Q& k, D. @ assignLObj := rgmanager.rgAssignL;% V4 U( o f. G. S4 J& k
row := assignLObj.getRowNo(GlobalDistObj);4 C/ a4 r8 ]3 g5 g; x) a! Y6 | P
if Row = -1 then -- since 70
$ t: W' ]; \" |8 ~. t3 Z9 j if lan=1 then/ W% Q+ D4 k% X! e) z" ]9 Y2 a
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
$ j5 d) P- K( D to_str("in der Andockstation: \"",?.~.name,"\""));
4 u, @5 C0 k& p9 x A else
# U5 {. ^7 y o$ `9 q: w6 ` promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),- T6 N* G N0 E+ `0 `
to_str("in docking station: \"",?.~.name,"\""));
& t. z I4 }- n$ i; j1 t4 u2 v end;7 I1 b# u9 _9 z: u" t; g
else
! t4 c9 ^- @$ x8 y7 @) \ @.Destination := assignLObj[1,row];& W9 E0 S: L+ ^+ o8 [) ^8 G
end;
8 j: L g' k1 I, T( Z& ~ r( F' t newDirection(@);& D. S7 u3 P ^: y; q
@.HasOrder := true;
* h" m: N# U8 M# {2 Q end;
9 ~5 h4 H! T, T7 q# ~' u end;/ P2 p. W. Z/ E- H8 G8 B0 R
end; -- of the method
0 d) o3 q# t" [9 m |