/* called by: entrance ctrl of the object 'track'
+ @$ L; D! m: l+ Y4 ~# n2 Y*// [' ^1 h4 U! G( ^2 L3 Z
is
2 }) r9 A j7 Z9 Q& \ part, GlobalDistObj, assignLObj:object;row,Lan:integer;. t8 a+ z! c% U
do
[' H0 a* o2 d; g) X Lan := rootfolder.Internal.Tools.AOLlanguage;
1 {# F9 |: V/ Z if current = @.Destination -- else return6 N6 f/ K: F) x+ d* X0 b# N
then9 e- I% t" l9 H, \# d* {7 x
@.Destination := void;9 d4 n% {/ N3 j0 V
if @.occupied then
0 Y% N, j$ ^/ Y$ _/ B$ O P/ U% k. F part := @.cont;
6 f% S- b+ I8 G" y' c" s9 O @.transpOrder := void;
" x" h. Q6 l- _/ s3 j part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1," G: U m$ j& j( K8 D
@,root.eventcontroller.simTime);
) |$ w; i2 z$ K& V( S" v6 | @.HasOrder := false;
9 ^9 m1 Q9 Y9 r0 ?( {7 Q @.DrivingHome := true;- G( Z( {' I! I- w- x/ U$ `
rgManager.tryToStartTransOrder;! s, I$ v% [! f( v w! V
if @.Destination = void
& E5 M) a. ~8 m7 o/ R+ @ then -- no transport order for vehicle @
" Q6 ~. ~! f9 _! g% A. W @.Destination :=
4 E, L+ h! Y* K* q! h rgManager.nearestFreeStation(@,track.~);0 T+ P1 h/ K5 S c- r0 H
newDirection(@);
7 }& g# i- K5 A: Q if @.Destination /= void then8 m$ W2 A# w. h
@.Destination.NumReservation :=
/ _- a. k! U) c% H! i4 w @.Destination.NumReservation + 1;
7 K* H% M: o# M5 L0 t6 @( c end;1 X: J; N' R) s, O- @7 Q
@.CurrIcon := "drivingHome";
* y- |, ~' f' A* d! ^- F2 D1 o @.DrivingHome := true;
e$ F* T' x$ v# n2 p$ E& ~% P* X end;- F9 S7 a) u3 ^) z/ b
else -- the vehicle @ is empty, both vehicle and part are in the same dock station- q) U) w2 k* U+ ~7 w
part := @.transpOrder;
# ^( T6 c4 R! | part.move(@);-- load part( i U. i! d$ k- P% n) A
@.CurrIcon := "load";0 |0 G; b" E8 ^* x7 P
GlobalDistObj := part.globDestination;2 N r3 ?* e, n% W
assignLObj := rgmanager.rgAssignL;
( k6 U. b: G/ [4 O; e# J row := assignLObj.getRowNo(GlobalDistObj);" o) _8 |) [1 K) k i! J
if Row = -1 then -- since 70
! ~2 J$ D- E7 j6 C5 v& c4 V if lan=1 then
4 Y( c* ?' B$ N( ]5 J6 b3 j promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),; }1 s; Z# E( g- [. y {
to_str("in der Andockstation: \"",?.~.name,"\""));
9 U1 K) y/ w: f s" K6 G1 J else% F7 r q+ |8 w0 q
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
& Q8 C7 a7 X) A9 ^0 v to_str("in docking station: \"",?.~.name,"\"")); ]& i) T0 x+ h, C/ j- |! P$ F
end;
1 M# L9 K4 B0 @9 z! I else7 w! H' ?4 x$ h
@.Destination := assignLObj[1,row];! `1 l' b! Z* O
end; " I" v4 H* c; I' `
newDirection(@);
% _/ O" N" l( G; ~ @.HasOrder := true;6 _+ D& @6 S& q5 f( ]8 [& w* A4 x+ r& c
end;
/ }! z; |0 @% X0 {( L, l2 b end;! ~6 N( v, q0 ?1 D* ]
end; -- of the method' D3 j u1 _4 ]: Y( {
|