/* called by: entrance ctrl of the object 'track') H. {, [- u- q+ U1 e2 M }
*/) c! j6 V1 G8 t; }: Q9 {9 e9 K$ G
is
* r$ [ a9 V% |4 X! G part, GlobalDistObj, assignLObj:object;row,Lan:integer;
* M% P; n, H$ Y y4 bdo
" j- ?9 `4 O0 |% K% p; V9 v Lan := rootfolder.Internal.Tools.AOLlanguage;
, n- ?; _& \8 b) |5 ] if current = @.Destination -- else return
% A* F( H3 M8 ]$ ^- _) ? then
4 n' B& g6 c2 l" } @.Destination := void;
. c d+ c! u4 L# n) i9 p! s) P if @.occupied then
$ O6 V" Y5 h+ \& H part := @.cont;; d2 {9 v; T4 ?2 F2 u/ Z' G2 T
@.transpOrder := void;
" A8 M1 x$ C$ K9 P# S: E part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,, S3 H' D& t- e$ U2 B/ X, f6 c
@,root.eventcontroller.simTime);
8 p, }9 ]/ q: w$ {0 m$ U @.HasOrder := false;* M; H, y4 l- I w
@.DrivingHome := true;$ P# S! k7 z4 p& W$ Q4 t
rgManager.tryToStartTransOrder;
9 z) ]' M+ }( D4 c6 P7 ` a9 i if @.Destination = void
' J2 k$ @" C: \2 Q/ z then -- no transport order for vehicle @
, j& I) F- r2 u }9 B @.Destination :=. A* I% C9 K' o% X+ }# e3 L
rgManager.nearestFreeStation(@,track.~);1 u7 `5 V! j# _. e& ]& _7 F% w2 N& D
newDirection(@);
/ e& Z* |7 i3 M if @.Destination /= void then
5 ~, F9 i0 Q. f% g- {( W! r @.Destination.NumReservation :=5 e5 \0 v1 X# p& J
@.Destination.NumReservation + 1;
. E( a& L& h" {. q. y ~3 i& b2 @6 v end;
. a6 q7 S, D) W) v9 [# a! T @.CurrIcon := "drivingHome";
1 \$ o% K; ?* i/ u @.DrivingHome := true;6 e# F* u+ ~- x! Y( h
end;
. N, O( P5 b3 F& k" A5 x else -- the vehicle @ is empty, both vehicle and part are in the same dock station m. b8 S) l) e) F, N' D
part := @.transpOrder;
$ s: t3 Z" ~' W9 b h8 h part.move(@);-- load part9 \. c) O R4 F G
@.CurrIcon := "load";8 l5 r" O3 m' J9 b- O, r+ J, t
GlobalDistObj := part.globDestination;& `; b0 ^5 x5 ^' ]8 Z
assignLObj := rgmanager.rgAssignL;
( u: z$ I6 U4 e! L' x9 [: c5 O row := assignLObj.getRowNo(GlobalDistObj);% W/ T7 W- k* o; q+ O; o) R4 y6 S
if Row = -1 then -- since 701 P8 @0 U5 z4 O* D! E, O
if lan=1 then7 n7 v& v0 n- W& `% p; ^
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),' o* r+ I# F; h7 p/ n/ t
to_str("in der Andockstation: \"",?.~.name,"\""));% {4 l0 a( z/ ^. W& C
else
6 l; R7 x, g# L/ r( ]+ T, Y3 m2 [ promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
" Y7 E, q3 H% q/ S to_str("in docking station: \"",?.~.name,"\""));
Z! B3 ~: d) c" ^+ V end;
$ Q3 M* B3 h1 X+ g# O( `: R5 F$ _ else
+ E6 i7 a9 |3 ?7 h1 [ @.Destination := assignLObj[1,row];( _ K; [' h% n9 y) t
end;
" o1 |6 \/ O2 y- X) p( g newDirection(@);
! i4 g, h" N6 z! Y1 m/ V @.HasOrder := true;/ ] z. b0 C9 i& y
end;
: Z* A( p+ U1 V( ? end;
# f$ @* ?( q" s: P: Zend; -- of the method
9 b5 [- T* N. j1 R* U& x: ]$ t5 w* ` |