/* called by: entrance ctrl of the object 'track'
: \- i5 w m! U2 v*/% E* M$ Z( ?- U8 D9 K" H
is
! [8 E" c, J; P3 t part, GlobalDistObj, assignLObj:object;row,Lan:integer;! o& L) F6 Q* Q: j, X+ N
do" g* E9 _7 T& P% H7 A" C$ {
Lan := rootfolder.Internal.Tools.AOLlanguage;
& y2 G+ v/ R9 U4 [& b) W9 K if current = @.Destination -- else return+ \" ?) k7 s2 \, X
then
' G |: g4 f+ X0 M" x) Q @.Destination := void;; Q7 M) u6 T% t$ g
if @.occupied then
+ E# z+ }7 W* @# K, ~, }: v1 p8 t$ d7 P part := @.cont;" T$ T- z# G5 \
@.transpOrder := void;
. ~5 T2 m1 w! Y2 T+ A" \ part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
/ x7 d; M( ^3 p5 ?+ Q( `, l @,root.eventcontroller.simTime);* l e4 c6 i& u* K; x# `6 X8 D
@.HasOrder := false;
1 m2 _5 `: I8 @- O+ z0 A8 x3 L# \! C @.DrivingHome := true;
9 \( h/ f* \- `& D& Y+ f% v rgManager.tryToStartTransOrder;
8 l+ l1 _5 J: a7 W if @.Destination = void3 w1 A; P; A9 H2 c
then -- no transport order for vehicle @3 L6 i' \ ~1 T* B
@.Destination :=6 s3 _; _9 ~7 u
rgManager.nearestFreeStation(@,track.~);1 P9 X/ r+ k8 C( Y% v
newDirection(@); 6 s& d6 s! z' I
if @.Destination /= void then8 s& x4 D) a# u ?) p7 Y& h. B
@.Destination.NumReservation :=
& T9 T" C2 R5 _* @ @.Destination.NumReservation + 1;
* ]: c+ U2 l* k1 Y, ?+ F" b end;' z5 H2 U! E! Q B7 C! }
@.CurrIcon := "drivingHome";5 Q5 ~1 |5 A5 V+ Z
@.DrivingHome := true;. C" W7 ]. W0 x( q% ?6 m
end;
9 @/ a% @( Y" t' I2 N9 u' N0 z7 K+ X else -- the vehicle @ is empty, both vehicle and part are in the same dock station' w. \6 y p* }, H) E4 p& x
part := @.transpOrder;- [0 q! j4 b2 ^( a" [ L
part.move(@);-- load part
" Y' J. J% y) \ r: f @.CurrIcon := "load";+ V# U( t( q# f) a
GlobalDistObj := part.globDestination;
+ ^5 r6 ?- M ? A assignLObj := rgmanager.rgAssignL;
+ {) m6 z6 H* D6 ]1 F& k9 m; P, Z7 d row := assignLObj.getRowNo(GlobalDistObj);: p1 Y# Y0 b( Y& R. H* t
if Row = -1 then -- since 703 \+ `& R; i+ o- ?; P' @- Y% b
if lan=1 then
* C4 @: P* m7 p( T promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),) I6 U6 Y6 c. H. r1 Q
to_str("in der Andockstation: \"",?.~.name,"\""));% |. }9 Z& V. @2 k3 e4 O
else) J& `" @6 T; X" [9 K9 @
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),5 C6 D. d& s& e; v6 D6 X
to_str("in docking station: \"",?.~.name,"\""));
" g5 S( O9 v8 L/ i: G end;& z: h( e* j$ v6 [4 l
else
1 ] S3 S8 `) a/ D. N( [; g; N @.Destination := assignLObj[1,row];" u; y* t* j' {0 t
end;
9 P% ?6 P8 @/ G% N8 y& R, Y newDirection(@);
4 }! Y' v0 [2 P1 f( ^ @.HasOrder := true;
& o0 A: u9 J& \- }! l. v, r end;
- t( U T" q; Z7 t8 _ end;) [( H2 F/ M# u G
end; -- of the method
+ K0 Z1 u; U/ V% N- U |