/* called by: entrance ctrl of the object 'track'
' \( ?# v% i/ T*/
" ^/ v$ ~1 u$ j( Z9 w; T( sis; o/ g/ \1 t& C. T0 O
part, GlobalDistObj, assignLObj:object;row,Lan:integer;* i, k! Y$ u* q; B
do
0 P h" Q( i7 i( z: z. T Lan := rootfolder.Internal.Tools.AOLlanguage;
8 x/ R0 Y# f6 R- [1 k- K A if current = @.Destination -- else return
) ]3 V3 F, ?- F9 p i then
- z, `* F8 F r, P6 [6 o0 y @.Destination := void;$ ?+ ^2 h. B5 {- M
if @.occupied then! m, w1 J/ Y9 j6 O
part := @.cont;
/ Y( o" A! W. M# ^6 G4 y0 G @.transpOrder := void;. S1 ~2 R( T0 }/ m; S4 @
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,* {- c' J& r. t: w5 a& r, q
@,root.eventcontroller.simTime);
5 u ^4 A6 o: x) ]+ {. r& G @.HasOrder := false;
! @1 z9 d" G. A& ^8 H% S. y @.DrivingHome := true;
. i- w" t' R5 f' @6 Y* p/ x rgManager.tryToStartTransOrder;; G1 {! Z% L; i
if @.Destination = void. ~0 X. s8 C& f- K4 m* m
then -- no transport order for vehicle @
5 m( \- o3 u) I @.Destination :=$ T: Y2 \/ B9 G* v2 t, Z
rgManager.nearestFreeStation(@,track.~);1 ?- {0 p/ G. {; K2 b8 D4 V( Q4 A4 E
newDirection(@);
% [! o* `$ g# |! X3 o+ d7 ? if @.Destination /= void then
5 ~+ K' X: P; b- ?5 G( d @.Destination.NumReservation :=% {9 P' {9 A* I
@.Destination.NumReservation + 1;
5 ^- Y$ s! C, ^; P; J. w, [/ N end;2 L5 e0 b, [ m: h( `6 o
@.CurrIcon := "drivingHome";" u# A @5 x) B* y( X& R5 N
@.DrivingHome := true;5 N/ m# n# F+ K/ A
end;
# e) @7 o3 ]/ f- F else -- the vehicle @ is empty, both vehicle and part are in the same dock station# |& l8 R0 w3 Q' E
part := @.transpOrder;* Y3 \) {& r9 `) ~
part.move(@);-- load part1 J9 t4 v4 |- f; d/ M( V$ Z
@.CurrIcon := "load";" ?; i9 P5 S) C* W& m8 p! z; }
GlobalDistObj := part.globDestination;1 \. j$ J- p/ e! u v
assignLObj := rgmanager.rgAssignL;( Y) s9 W4 X/ n$ ~+ k
row := assignLObj.getRowNo(GlobalDistObj);9 ~( R: O/ T6 k
if Row = -1 then -- since 701 W- l: T: q1 {! w J9 e% |
if lan=1 then
2 A+ x- L$ ]4 A+ E0 {* ?2 S promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
0 ^* ^, o* _5 A" C; q3 g9 } to_str("in der Andockstation: \"",?.~.name,"\""));
]7 F$ m0 x1 ]) [& t$ R" ^( M else, S# O; o/ d: q9 R
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),% ?8 n {) K# x
to_str("in docking station: \"",?.~.name,"\"")); 5 T: Z' ]$ J1 h( Q5 k8 a% ^
end;
+ U1 G( g; q3 } else
2 a$ {" X* w9 `7 p- R7 j @.Destination := assignLObj[1,row];8 e, _1 B- R) j: B* w3 f
end; 8 n. l) ~% r2 h) q' M B+ w
newDirection(@); O2 c- @9 v4 A+ e' n* T- D
@.HasOrder := true;
" r/ V/ c5 I1 C3 ?* m9 c T X% w end;/ p- l( D8 }- ^( L
end;" x4 M+ e9 A* o; ]0 w6 S) A/ R5 N
end; -- of the method
) A% p3 E2 f- ]9 z. i( }3 @: f4 C |