/* called by: entrance ctrl of the object 'track' z0 N. _: y* e1 Z+ q
*/- o/ ^( d9 u* F% X4 V( I% J
is5 a& s `% }) D ]* i
part, GlobalDistObj, assignLObj:object;row,Lan:integer;
+ |2 L, M3 q4 f9 n4 \do7 ]+ X: ~- T3 Y" _
Lan := rootfolder.Internal.Tools.AOLlanguage;
7 F' R$ I ]" ]! i if current = @.Destination -- else return
8 i! z6 K- @9 w! K _ then
1 M$ p' o# e: v8 y5 `4 D @.Destination := void;0 J* X5 b5 p5 S
if @.occupied then
' |: |9 ?- G$ l part := @.cont;
- p3 |3 a% D+ @ @.transpOrder := void;
. k4 r# c7 ]3 M3 E/ L8 s: T part.move(partExit);-- unload is already possible rgManager.freeVehL.writeRow(0,rgManager.freeVehL.yDim + 1,
1 c3 Q: v. N5 I( e' c @,root.eventcontroller.simTime);
7 Z# l; `8 Y- }" T: I* x- N6 Y @.HasOrder := false;
# M% f! f) {" A& H7 Y7 u% G0 v @.DrivingHome := true;
- E8 k: i* i ^; }( l/ s rgManager.tryToStartTransOrder;
; O0 v; \, _0 r* A" u7 e7 l if @.Destination = void0 c. V% i# H( \1 D# O3 Q3 m
then -- no transport order for vehicle @
4 O, e4 u3 L( E- U( B* ] @.Destination :=- A: o, p0 }& u+ f5 L& e% h1 K* s
rgManager.nearestFreeStation(@,track.~);
% O, q) }) R7 \5 {) v7 y9 l$ _ newDirection(@);
! `: B, i* g5 H if @.Destination /= void then
) V4 Y3 V9 Q% }, N @.Destination.NumReservation :=
$ t( S% t5 h: S0 N @.Destination.NumReservation + 1;
% a6 j& m! b9 w$ r" {0 H1 J( w+ u end;: S# K. G" l: O w, S, z# h
@.CurrIcon := "drivingHome";
+ h! |! u1 R3 K* B. H @.DrivingHome := true;' p/ {# p$ K0 c, c m
end;
9 t3 s# ]- L. r% u else -- the vehicle @ is empty, both vehicle and part are in the same dock station. h/ L" P5 @- s$ T! o2 T
part := @.transpOrder;: E9 |0 A& v* Q$ E. T6 k+ l4 W
part.move(@);-- load part
- |$ n9 G. M V% }+ R! ]3 ?( o5 d+ w @.CurrIcon := "load";' N3 L9 E& f( }$ a: ~+ K i8 _
GlobalDistObj := part.globDestination;
! S3 N/ ^, N2 q0 q9 v assignLObj := rgmanager.rgAssignL;
( I1 U7 v7 i8 ]6 a/ Y4 P. B% |8 _: m row := assignLObj.getRowNo(GlobalDistObj);. _1 \! D# D& c9 A! q% f
if Row = -1 then -- since 70
* X- U& A$ V) G) f if lan=1 then% b+ R, ]$ O( ~+ ^- H# a$ W9 n$ z
promptmessage(to_str("Unbekanntes Ziel: \"",GlobalDistObj,"\""), k7 N$ {: {2 {' g$ S
to_str("in der Andockstation: \"",?.~.name,"\""));
' H! e9 w: g8 Z4 b: H3 q. D. M else G' M/ ~% W' _. z
promptmessage(to_str("Unknown destination: \"",GlobalDistObj,"\"")," C# V/ p4 n. g4 Y
to_str("in docking station: \"",?.~.name,"\""));
6 o$ U: `: b2 ]* J+ e8 z( G end;
$ r I& H7 A+ `: B; J/ P# I2 G else; Y* }9 w. U2 g5 r: D- |0 \
@.Destination := assignLObj[1,row];
. s3 \9 w; G: Y% q# ]+ U/ O end;
6 L& B& d7 L5 Z, F+ [5 V, w newDirection(@);
' B: H I, _- J# `7 c. r M! X @.HasOrder := true;* G# e: @5 F% Z, k* h# _# H2 e: G! h
end;
& S% o/ ?6 F. N) T9 H end;" x% L+ l! P' B v4 K; |
end; -- of the method
7 p" K3 ^% m! l' v) t |