/* called by: entrance ctrl of the object 'track'8 g! [6 n& j: y7 V
*/! h. j7 Y# v! Q# X
is
+ J# M ^6 {5 p part, GlobalDistObj, assignLObj:object;row,Lan:integer;
# Z I3 p& v1 E$ [do: l- b: Y* w e3 N: h0 a( i0 D7 m# e
Lan := rootfolder.Internal.Tools.AOLlanguage;
: J, ~/ I7 S K/ b, u" t0 h if current = @.Destination -- else return) H/ s8 n8 l% r3 g: A
then
% d/ q* a$ y4 Q% ~ @.Destination := void;+ s: D9 o# D( b+ I. y5 v
if @.occupied then
2 _, `- B0 [6 J# e, Y part := @.cont;
# W8 S) L) M; s4 v- Q0 ] m @.transpOrder := void;; y; M. ~) m7 N
part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,' ]! i6 {3 s$ O8 V. j H( a+ k! e
@,root.eventcontroller.simTime);& L0 I2 v5 Z5 u9 c% Q
@.HasOrder := false;
" \' D- M& j" [) V. M/ i @.DrivingHome := true;
" `7 j9 j1 Z# |- |0 B+ Z rgManager.tryToStartTransOrder;
7 j$ P( q& M; L& K if @.Destination = void
, o% b& ^6 }% D* g3 n- p then -- no transport order for vehicle @) {6 ?1 {3 e; f C
@.Destination := D w3 A" i2 S
rgManager.nearestFreeStation(@,track.~);
1 d" z& V5 c, a0 s# w9 A newDirection(@);
- C( A! g( `: x5 V7 e, F if @.Destination /= void then7 ~6 t7 L5 z% ]& w( @
@.Destination.NumReservation :=* W8 s# c! E0 c/ c& P' X- [' x7 r
@.Destination.NumReservation + 1;
" m. S+ S# d- E2 O end;
5 x3 e: F; M2 Y8 F2 o @.CurrIcon := "drivingHome";
# x- j; t9 i+ v; X( J @.DrivingHome := true;
) \( O' J& ~6 E' v) r end;
+ @" M0 i9 I6 M7 H8 O+ S7 D else -- the vehicle @ is empty, both vehicle and part are in the same dock station; b S6 O% \* I% Y/ g
part := @.transpOrder;. y! Q' o0 j; Q7 w, Y! z& M) M
part.move(@);-- load part
7 o. _4 s9 v8 R: ] @.CurrIcon := "load";
3 T: F& R0 ?( \9 `1 r1 j% ~: Y GlobalDistObj := part.globDestination;
) t7 m4 r4 l" M! k+ r9 Q assignLObj := rgmanager.rgAssignL;. }4 v. D, e* {+ |2 ^
row := assignLObj.getRowNo(GlobalDistObj);
" ]- x, y" y5 z: E: a# Q9 T; G+ N$ m if Row = -1 then -- since 70
$ q U& S; Y$ O9 Z! [) k: Y6 I if lan=1 then
* f1 {8 e* ]( L% U promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""),
+ j0 p. G, W2 y, e' v0 J to_str("in der Andockstation: \"",?.~.name,"\""));
' C' P$ n: H# e9 F C! W' @0 S else0 E0 g) l) } I' l
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\""),
: g, i3 }# A8 _ _) j+ m$ H to_str("in docking station: \"",?.~.name,"\"")); - H4 ~- C; j, J8 p
end;; j& V$ l; [9 f5 ]+ A' p; P
else. q* }! l; G/ Y( L% |
@.Destination := assignLObj[1,row];8 K0 z, k0 |2 g% L
end;
" V3 u( z( a0 X! v newDirection(@);9 t" \3 d- Y! \* r. G* D
@.HasOrder := true;# z+ g5 Z) T# Y; Q
end; p6 J: M; q4 M6 [) `8 A3 s
end;
& {8 o7 i, t: E6 aend; -- of the method
, Z9 | s( K* K1 h7 W) V) z2 {0 T |