/* called by: entrance ctrl of the object 'track'# ~' Y( {' y8 c+ ^
*/) h2 z* R h) w: \. S
is
% J$ M3 H4 s% q: z+ w( Y part, GlobalDistObj, assignLObj:object;row,Lan:integer;
' q6 \# i+ b7 p0 ]3 Y7 X! Mdo
' e, w. e' j: b9 U( y5 f$ l Lan := rootfolder.Internal.Tools.AOLlanguage;5 d) L9 Y* H* n) I6 ^- G+ J
if current = @.Destination -- else return
2 i* Z- m( [9 B: {# n8 Z) z: x then
. P' x8 r- Z. `% X. U @.Destination := void;$ E% F4 A+ r& A: i+ u0 l$ v" g5 k
if @.occupied then! f7 z" X' i7 N/ M
part := @.cont;
|% a- F, J# v5 R' ^$ ] @.transpOrder := void;
" E( d+ q' d; d! p8 h$ j part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,7 ?0 N v9 K2 l' \) g% m5 ~' g) \2 u
@,root.eventcontroller.simTime);
`2 P. g3 `1 o. e3 P @.HasOrder := false;/ `8 N* y+ H m2 y z, s
@.DrivingHome := true;$ B% ~/ y! N& `2 Y! t# V$ x3 i
rgManager.tryToStartTransOrder;/ c% [" K) F ]% g, O$ S
if @.Destination = void
) f7 ~8 }! l. q then -- no transport order for vehicle @
L' S( ?1 J! h' ~* `' c& s. v @.Destination :=4 i- H2 z; P4 o# i5 ^9 D
rgManager.nearestFreeStation(@,track.~);
# J, \$ C! U' ~, d, M! k$ ` newDirection(@);
% v2 A# o4 ~9 S# e; M$ e if @.Destination /= void then: @, E) G* Q5 H+ O1 J
@.Destination.NumReservation :=& O `1 d6 L2 X
@.Destination.NumReservation + 1;
6 z/ L3 V z/ k8 c0 ~ end;. o/ r9 z; D: K4 i) m9 A+ g
@.CurrIcon := "drivingHome";& |5 _5 G0 q k& @1 e# A, T) \
@.DrivingHome := true;
3 f. F) f! H: f6 w2 m end;3 a* L0 B' W$ X! r* O0 P* R! ?
else -- the vehicle @ is empty, both vehicle and part are in the same dock station8 `6 _% |' D2 L+ k- k$ G s1 R
part := @.transpOrder;
0 p' w# A4 B3 e u0 J' ` part.move(@);-- load part
/ ]8 f2 O m4 X; @; b6 f @.CurrIcon := "load";2 F; N* Q3 ^6 I% i
GlobalDistObj := part.globDestination;: Y: M4 v6 m) [4 C- y3 }1 Z
assignLObj := rgmanager.rgAssignL;
. |8 Z, W4 K' I2 r" \ row := assignLObj.getRowNo(GlobalDistObj);' j( V# n, [$ X3 R
if Row = -1 then -- since 70
5 d& f1 O0 _% v5 n if lan=1 then/ H4 N) n+ \* |9 `3 _
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),# S" N! L: e N9 f c. @! {8 Y/ h
to_str("in der Andockstation: \"",?.~.name,"\""));6 x3 H: E" E" P8 y3 X: p
else5 d8 v {7 H' @1 t
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""), m9 x- H( @" ^6 |( h4 q6 T
to_str("in docking station: \"",?.~.name,"\"")); / L( \7 b" H. H& Z# k
end;! G! m; Y9 w7 ~; @0 G. j2 E
else! _9 }! q. v$ C. S& \9 O; J" R
@.Destination := assignLObj[1,row];3 p: P6 z. ^7 y& v# v. N
end;
: Z' a) V* C$ A( @ newDirection(@);& m2 |- q' P, Z) T( a1 H" [3 s
@.HasOrder := true;
" i" v7 d5 e. e! E; X' w end;
8 T; f/ Y/ [- U9 W end;6 r& Q: W$ @; f9 e1 G
end; -- of the method
; }1 }, B' v1 J# y, g |