/* called by: entrance ctrl of the object 'track'
. n# K" U; W* T*/0 q' k5 j6 n, b2 Q+ r0 t! }
is
* x/ |+ J" u$ s1 b8 [3 H- R part, GlobalDistObj, assignLObj:object;row,Lan:integer;! ~2 d% q m- u& Y& i7 H3 s
do
- I1 ]3 |+ i3 F G& @5 w- z Lan := rootfolder.Internal.Tools.AOLlanguage;
- B, A; I' g" A5 r if current = @.Destination -- else return8 s6 s) v* d# ?# m3 ?" T" C+ C" u2 T
then% V& R7 Y* ~) o6 K# n! k' D4 S8 S4 }
@.Destination := void;, _( o/ Z& H: Q: F9 `. x' S4 r5 [
if @.occupied then& U' c& q3 _3 U( E1 _+ r$ b
part := @.cont;1 P9 M: z- |2 Q8 [
@.transpOrder := void;$ I" v U* `1 C( [/ M
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
- }- Z" T% v7 S0 k& h @,root.eventcontroller.simTime);* B- \/ T: U6 u: c
@.HasOrder := false;6 }6 h3 V- I0 N
@.DrivingHome := true;, _0 a* Q% S3 j5 V/ r, Q
rgManager.tryToStartTransOrder;
% H1 h+ {- w( P$ [. Q# x if @.Destination = void: y3 @: u4 h2 U2 t
then -- no transport order for vehicle @0 O5 w: I( g! i4 ?
@.Destination :=0 B+ [# O1 u" q) Z& P: F0 w% H
rgManager.nearestFreeStation(@,track.~);
/ Z |& |" Q/ P# l! T newDirection(@);
8 x$ b1 J- J" Y; K5 G) H if @.Destination /= void then" `' T0 k' K0 ~0 G# G1 P$ R
@.Destination.NumReservation :=5 N4 H4 z5 y. |% R( S% h5 q0 T
@.Destination.NumReservation + 1;+ |4 l- w$ C8 F) j3 ~
end;
/ H9 P1 o F. V @.CurrIcon := "drivingHome";
& N0 e( I- m* ` @.DrivingHome := true;
) } m* T% F+ y3 F end;
6 B- V: b8 x7 i# Z8 x else -- the vehicle @ is empty, both vehicle and part are in the same dock station& B o/ M& w n- S, G% y0 U
part := @.transpOrder;
3 H& Y5 H2 U. `8 L! B+ @( z part.move(@);-- load part! r( A' l: ~& L' X4 c. |
@.CurrIcon := "load";
" r. D; i8 Q6 h) H+ y/ T GlobalDistObj := part.globDestination;
5 P q# `/ X0 _* ` assignLObj := rgmanager.rgAssignL;
+ Y* W6 |8 k$ x( b' G: @+ V0 e6 j B row := assignLObj.getRowNo(GlobalDistObj);* T- S. z3 b. K# G
if Row = -1 then -- since 707 h0 P) x# F$ ?; y# J
if lan=1 then5 q( j9 n" v- G5 w9 R7 F; w
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
! b( S, G, B" H9 T8 f0 T$ g to_str("in der Andockstation: \"",?.~.name,"\""));8 ?; x2 V1 u/ \ v& N2 w8 y! z; S
else2 F- k( ]0 Y7 ]$ Q! V( {
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),- |& Y! X3 n5 I5 M- B/ e/ Y# B
to_str("in docking station: \"",?.~.name,"\""));
! ~% E( E3 Q+ n; C P- D end;/ b" a' L# \, N9 b9 ?3 @: Q1 A8 y
else2 `. @9 K; H+ f/ ~1 a
@.Destination := assignLObj[1,row];
9 P+ `' O* y- h& O end; * r" m% k( y$ M m/ V" h
newDirection(@);
/ c x9 i' L: t @.HasOrder := true;
$ T0 q$ `9 T. k6 x4 M& z+ I6 S end;2 ?; S ?% u; L& `' G
end;
' [" v* z3 { _4 b: v: @; Pend; -- of the method
. r5 f) ~# p& S0 k" M7 e% T0 C6 N |