/* called by: entrance ctrl of the object 'track'" u) u5 [: D0 ]4 L0 ~
*/
- X/ \# j/ z7 o/ U# i, E/ Lis
" {# z7 i* p( k+ _& f part, GlobalDistObj, assignLObj:object;row,Lan:integer;) S: T$ e& H; t$ p
do/ v i* d+ T. T! D( o
Lan := rootfolder.Internal.Tools.AOLlanguage;
3 r3 l5 Q7 J- Y) | if current = @.Destination -- else return
% G' p. j0 G+ a+ E. a+ B' ^3 E then3 n# g+ L5 O( x7 E n& K: L& W. }
@.Destination := void; d8 g5 o) W$ q* a, \9 i; L
if @.occupied then
. }9 A0 W( d8 i0 n0 J3 S7 m7 ` part := @.cont;( ~( q3 y3 N/ ^, ?2 m& G
@.transpOrder := void;
5 Z# h5 K" t" p. G' L! m+ L* { part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,0 c- Q( {# E, f g1 ~. b
@,root.eventcontroller.simTime);
0 v+ M1 ^; w, Q* t ^5 n @.HasOrder := false;! j8 x8 E+ @2 M# _
@.DrivingHome := true;
9 O4 Q2 L. W0 L; q rgManager.tryToStartTransOrder;
9 `" t3 Q+ r% d) a3 i if @.Destination = void6 w4 }, |6 W+ [' w+ f4 [
then -- no transport order for vehicle @- p8 P& r4 k/ s/ j% {$ u& n
@.Destination :=6 [& ]1 r* B9 X( S
rgManager.nearestFreeStation(@,track.~);+ }! f9 }# P& K, u. e5 p% j# A
newDirection(@); ! L, _8 e9 ^$ b! c3 k
if @.Destination /= void then* n7 j% D( E/ \9 q6 _( C& B+ a
@.Destination.NumReservation :=
9 j9 S) P9 a f; C: w @.Destination.NumReservation + 1;( s7 i( n, f' M9 A
end;
! a, S- m3 }+ _3 L5 T, V% i# u @.CurrIcon := "drivingHome";' T, H6 [) S" v# l! u" h. g
@.DrivingHome := true;
6 o/ ? w) x* z ^; }( O$ l end;
' B' B. N4 P$ x- T: \6 T* h else -- the vehicle @ is empty, both vehicle and part are in the same dock station, t9 Q" m/ y2 C s& s0 F
part := @.transpOrder;
' D3 ^; P- _9 z Z, _3 m part.move(@);-- load part
1 \9 S% n# Q0 p# Z/ I; D( c, c @.CurrIcon := "load";4 r1 p5 y5 s Q2 G" g) X2 V5 a
GlobalDistObj := part.globDestination;
0 r: B+ N" S1 ?! y assignLObj := rgmanager.rgAssignL;
/ b" B' j# I) S" } row := assignLObj.getRowNo(GlobalDistObj);
* j3 s+ P# g% q Q( D6 x- G% o/ O if Row = -1 then -- since 701 c9 q0 [; {: W& I ?- t
if lan=1 then
8 ~& y4 T. N3 B2 t( B7 z# ` promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),% d, t7 C6 f8 j2 F1 g3 K- G
to_str("in der Andockstation: \"",?.~.name,"\""));, K5 j/ y; N+ Q/ m
else2 Y) G3 m: l$ E- m
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),! d8 s0 c8 x6 d3 i& d$ D
to_str("in docking station: \"",?.~.name,"\""));
; ^) `& ^1 y7 s3 C3 A end;4 ?* D, U1 c7 Q; x
else
- `4 D+ r/ R2 E: f8 G @.Destination := assignLObj[1,row];
6 f; x; F1 \) C* @ end;
% X1 p- h4 T2 G, _+ _/ _- o5 {* A newDirection(@);, |/ z- k$ a, p- T; a9 `8 a
@.HasOrder := true;
! w0 y+ P# H8 J' J3 Y" K: t end;# E t `* L6 ~8 X2 r5 M
end;
- K& {7 e. \5 j+ send; -- of the method( g; z' e) W$ f
|