Einzelnen Beitrag anzeigen
Alt 07.05.2003, 16:48   #17
JensCWilke
Senior Member
 
Registriert seit: 26.04.2001
Alter: 55
Beiträge: 164


Standard

Na bitte, ist doch alles gar nicht so schwer. Jetzt ist auch klar, warum es nicht funktioniert. 4 Zeilen aus dem Text haben die entscheidende Bedeutung:

; %10 = Visibility range

Hier erfahren wir zunächst, daß die Variable "%10" die Sichtweite bezeichnet. Dummerweise kommt irgendwann diese Zeile:

Area( 5 %1 %2 %3 )

Die in diesem Fall entscheidende Bedeutung hat in diesem Fall die Zahl 5: Das ist nämlich die Entfernung in Kilometern, ab der das Objekt in den Speicher geladen wird. Da kann V1 auch 100.000 groß sein, zu sehen ist trotzdem erst ab 5km was.
Die restlichen beiden Zeilen hatte ich schon mal angesprochen:


IfVarRange( :Exit 0346 %12 5 )
PerspectiveCall( :PCall )
ShadowCall( :PC02 )
Jump( :Exit )
:PCall
Perspective
:PC02
mif( %11 )
!!!!! RefPoint( 2 :Skip %4 %1 %2 E= %11 v1= %10 V2= 2 ) !!!!!
melse
!!!!! RefPoint( 7 :Skip %4 %1 %2 v1= %10 v2= 2 ) !!!!!
mifend
RotatedCall( :B 0 0 %5 )
Return


Interessieren tut, was nach v1= und nach v2= kommt: Bei V1 steht die Variable "%10" und aus der Beschreibung wissen wir ja, daß damit die Sichtweite gemeint ist. Daß da eine Variable und kein Wert wie 5000 o.ä. steht, deutet darauf hin, daß man im Design-Programm festlegen kann, wie groß dieser Wert sein soll. Aaaber: Man kann im Programm zwar größer als 5km festlegen, wegen dem Range-Wert wird es aber immer erst ab 5km angezeigt.
Hinter V2 steht in diesem Fall der Wert 2, der vom Programm automatisch berechnet wurde und hier den Durchmesser einer gedachten Halbkugel ums Objekt in Metern angibt.
Jetzt klarer?
____________________________________
Gruß
Jens Wilke

(der jetzt Vadder vonm Sohn geworden ist)
JensCWilke ist offline   Mit Zitat antworten