/* called by: entrance ctrl of the object 'track'
. u1 d" M9 t- @*/
" O9 _2 v. p5 F- F, [is+ x- J9 i- Q) @( c8 `. G$ R4 G
part, GlobalDistObj, assignLObj:object;row,Lan:integer;2 C* Z. C, Z( a) F- B$ U
do
6 v/ Q& w( M# E1 r; S Lan := rootfolder.Internal.Tools.AOLlanguage;
1 }! ^) c0 W S if current = @.Destination -- else return4 X! ^2 F: ?% m% q7 ]" q) T. g( E/ S/ X
then9 U7 C+ p2 l8 q& S' E- ~9 G& Z, p
@.Destination := void;- M1 t% A* _3 o0 }2 B( v
if @.occupied then
, x+ v# d9 L8 D& c) c8 e4 L# U2 M" F/ V" Q part := @.cont;
3 Q4 @+ c# r5 H4 E @.transpOrder := void;
/ N$ c6 s& {- p! k part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,! E" R/ R' P3 u" h5 D
@,root.eventcontroller.simTime);
0 \6 s( |0 ~7 S! E9 { @.HasOrder := false;
& ?/ L: }0 I$ k8 n& @' Z1 c @.DrivingHome := true;) @8 H& e2 g* m, Z: ^" Z
rgManager.tryToStartTransOrder;
* x S/ w, B, w- J- {; o if @.Destination = void
" F$ r/ D+ p; n: \" k+ Z; h then -- no transport order for vehicle @1 `' z+ B6 u1 l& f1 K; e( @
@.Destination :=
1 s. I; e+ t9 `7 l! O/ @5 t- Y% ^6 L rgManager.nearestFreeStation(@,track.~);
. x% \ ]0 p6 }3 g5 z! { newDirection(@);
# y4 h# k' n7 F6 h% P T/ |2 H if @.Destination /= void then
9 u' ]8 W' s) i d4 G @.Destination.NumReservation :=" g# i+ B5 G/ z
@.Destination.NumReservation + 1;
- T. N5 J/ A2 Z9 O end;% R5 O. T0 I# f, U. j# E; s# A$ e
@.CurrIcon := "drivingHome";
% L2 {. r3 K, w& y0 l. R; W @.DrivingHome := true;
+ [) S5 I1 ~' j1 D end;
: B- [; L7 h+ D( `0 E else -- the vehicle @ is empty, both vehicle and part are in the same dock station
1 S- R* c$ L+ _+ k9 S part := @.transpOrder;* t B0 }1 u k9 v
part.move(@);-- load part6 N: C0 Z$ p( m7 _) O8 W4 w. {; o8 o
@.CurrIcon := "load";7 E! V" R* e& i: o
GlobalDistObj := part.globDestination;
- g1 Q7 T$ G3 ]# M* w( O! d7 Q assignLObj := rgmanager.rgAssignL;
: ]. X0 Y d# z row := assignLObj.getRowNo(GlobalDistObj);8 z! U! m: C' E. r
if Row = -1 then -- since 70
$ u8 d: |5 w+ x4 S1 d+ b% ` if lan=1 then
0 {/ _ p$ O3 ~: s promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
8 h. Q. h" v& E to_str("in der Andockstation: \"",?.~.name,"\""));
3 Y( f l) c1 |8 D+ @ else8 S0 u# t7 y& l+ K
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),2 b! C% c6 y A( J1 ^1 i E
to_str("in docking station: \"",?.~.name,"\""));
& a) J9 u$ `( \& K end;
. i1 x& C' |; o/ R8 X* ^ else! s9 j7 Q0 U' m$ ~4 m
@.Destination := assignLObj[1,row];
% @) v5 c7 t" a8 u end;
3 _1 z( g: Y3 x8 N' Q: V newDirection(@);% C3 k; L' O. q$ O
@.HasOrder := true;
. t C4 I6 e7 r/ \# q end;
, t1 r) h9 T: u+ f end;
2 U- f: T) l" `end; -- of the method
1 {% X3 X" \! i2 v# R |