/* called by: entrance ctrl of the object 'track'3 t' R! }7 R. K- Y2 D# [9 J- J. K
*/
1 M4 u% _% _4 S2 p: q% Ais( I+ r( `1 @/ u% N9 U# U( u
part, GlobalDistObj, assignLObj:object;row,Lan:integer;
1 x% k: `! H: @" Ddo
1 k& k) h7 `+ Z% \0 F Lan := rootfolder.Internal.Tools.AOLlanguage;: l& T% l2 }0 p0 [5 h
if current = @.Destination -- else return
4 P8 d1 } q, t, Y then
) K% z( N2 {) r$ z- Q @.Destination := void;( o! K* C3 |2 ^" g- c1 U
if @.occupied then
?3 Q# {- E: F/ q# U part := @.cont;
% ^' F7 |. Q- _: { @.transpOrder := void;' l* T6 V3 G3 u
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,0 U9 q1 g% [. U
@,root.eventcontroller.simTime);" t4 \, v4 t/ M! M9 h& T7 n
@.HasOrder := false;6 i2 o6 T* i) |( |+ F# a0 {
@.DrivingHome := true;9 [1 m, }6 n6 k
rgManager.tryToStartTransOrder;* Q/ Z6 B3 `! v
if @.Destination = void
! s- R, C4 u6 W, N then -- no transport order for vehicle @
& [: L/ Z5 [: J# D/ ?. U @.Destination :=
& u9 {( Z. T% h3 V: h" X3 W rgManager.nearestFreeStation(@,track.~);# [" I) N* {2 q: R3 m1 x
newDirection(@); 8 ]. n! ]7 y8 N* V! w# p+ S+ ^9 z2 ?$ B
if @.Destination /= void then5 s, R% Z, T7 H& ~. X# X
@.Destination.NumReservation :=
+ }" U0 e' Z, C1 C9 R0 Q0 J @.Destination.NumReservation + 1;
) G9 l9 e2 S, b end;
/ U* ~6 H. W1 D* _' Z6 y* x# z @.CurrIcon := "drivingHome";
: \8 ^ x. d" w+ b @.DrivingHome := true;
( R+ L0 R" Q* v2 w8 m* K$ P5 x end;; q- a @! B6 H
else -- the vehicle @ is empty, both vehicle and part are in the same dock station
2 m3 d) o2 i5 M: d part := @.transpOrder;
% {% h, v6 m5 E) {/ ^ part.move(@);-- load part1 d" a+ B. g! ?
@.CurrIcon := "load";3 ] ]1 s4 Z- ^# }
GlobalDistObj := part.globDestination;% l$ W: l" K- i5 n/ e! D3 S% S+ \
assignLObj := rgmanager.rgAssignL;
$ v$ W Q$ O4 J6 z. r9 @* x0 O a row := assignLObj.getRowNo(GlobalDistObj);
! [! U7 V; `9 G( b- i. \ if Row = -1 then -- since 70
, r7 d8 U% n. I! Y4 V: {, I if lan=1 then
7 F! u' j) Y+ U; B+ R: m5 E$ h promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),/ h2 ?2 i) e# d
to_str("in der Andockstation: \"",?.~.name,"\""));7 Z0 C8 V2 j" C6 C& c: S
else
/ Y U% f3 V6 P5 l promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),$ f# ?; \6 V/ n+ I
to_str("in docking station: \"",?.~.name,"\""));
! [& u+ L2 `* g1 K/ F end;: b1 Q. y( `( c9 r
else R% O9 I& E5 S$ o
@.Destination := assignLObj[1,row];
8 {. U/ L( q% I$ R. G! o end;
5 G; T8 }) s7 A: {) a: K newDirection(@);& ]6 T+ r t9 }% x% \' \; v& P% E
@.HasOrder := true;! R3 z0 a& }0 m/ H b5 m6 s( }
end;6 O% S. ^" j) u! T: J0 I2 Q) p. Q
end;
" h; L: c- K7 I' D2 @end; -- of the method
& q: M/ r7 P4 ^% b6 E- G+ a |