/* called by: entrance ctrl of the object 'track'
7 ?5 q4 _/ O- n* B4 U7 Q' b* W b1 @*/
l$ X/ q) F0 }/ B1 v- pis
* m+ b% K' `( \, J* T part, GlobalDistObj, assignLObj:object;row,Lan:integer;: M- a) K1 V0 @( u& U( p# a5 e
do
6 d/ l. ~! Q3 ~2 O3 ^2 ^) o, K0 x% w Lan := rootfolder.Internal.Tools.AOLlanguage;
- H l0 u# Q) E; Z# v/ m* R3 _# u if current = @.Destination -- else return1 Q; @( i0 y# o7 q5 Z# [
then
, x% L# J# m. w) v @.Destination := void;
. M4 R: ]5 K0 v: \0 o7 C/ ~ d if @.occupied then
$ N. \. S/ U- S: o6 i. y part := @.cont;. O: e7 L" h% }. }
@.transpOrder := void;
& ^5 J8 C% o* O) G; T part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,+ F5 x/ \5 L% Q9 Z- C$ {! A$ i8 t, {3 g
@,root.eventcontroller.simTime);
% F: E: w) u( [8 M! M4 s @.HasOrder := false;$ R6 R0 h2 n! L; Y# w0 D' x
@.DrivingHome := true;
# G6 c; R. G1 V% u: d* q rgManager.tryToStartTransOrder;
6 [) V3 |$ {0 b5 d if @.Destination = void
0 T& F& R% b- U/ V0 B then -- no transport order for vehicle @9 G& M8 {/ q$ ^1 W
@.Destination :=9 K% P7 y& K+ ~" {1 `
rgManager.nearestFreeStation(@,track.~);" h7 T0 W' B- u6 V6 Q
newDirection(@);
% U: B. O# r. k0 m if @.Destination /= void then: ~( @' ]) `% Z( }* @
@.Destination.NumReservation :=
! [8 k" B [' `! A) i, l @.Destination.NumReservation + 1;# ]2 \( S- R% [7 m% k6 |
end;- R# F; G5 y6 M. A y
@.CurrIcon := "drivingHome"; q; e8 t" @& f4 o& z+ x
@.DrivingHome := true;
' c. ` Z6 w$ o8 s+ a5 { end;% P n$ H5 y/ N6 U( c1 Y' P
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
7 F! f0 C. s, x, ?2 X part := @.transpOrder;* n, { H9 ~6 A4 G- ^& w
part.move(@);-- load part
6 F. |, G* e( ]0 s+ ? @.CurrIcon := "load";
' a) e/ ?! o/ [& s2 i GlobalDistObj := part.globDestination;
* n% i" B6 A. K2 U S1 V4 @& C assignLObj := rgmanager.rgAssignL;% {3 ]9 |- S4 F$ a" V+ L
row := assignLObj.getRowNo(GlobalDistObj);
; @& p6 d' w K! B if Row = -1 then -- since 70
5 d H2 c1 h8 }7 M |% f if lan=1 then
; @& g O8 r6 J6 {$ S' A4 |2 F% T" H% P promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),6 R0 R4 O2 f3 V: q" q0 C0 ?+ o1 `
to_str("in der Andockstation: \"",?.~.name,"\""));
, R$ j. Q+ Y7 U0 T- T; |% r else
4 S: h3 J8 W! [6 I% d promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
3 `% t% E: A5 v4 U( K to_str("in docking station: \"",?.~.name,"\""));
8 o$ _/ z. e- i5 U( W end;9 U1 d* q5 z' S3 R% ^
else
3 e; l7 u9 v7 H2 v- x0 v* M7 J) ` @.Destination := assignLObj[1,row];- |8 E8 l n$ z& h4 c `
end; + ~! Q0 q9 _4 t
newDirection(@);& Q; w3 T# R1 w7 v+ }7 T
@.HasOrder := true;8 F4 ~ i! K, W
end;4 W# S# z0 j" N1 L% y, @
end;
+ r3 S6 A1 ]" Y9 ?end; -- of the method
2 T/ Q b2 D0 B' X; |0 B |