09.05.2006, 17:32 | #1 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
distance Befehl
Hallo,
Ich hab ein Script geschrieben in dem steht, dass ein Fahrzeug zu einem bestimmten Punkt fährt, der als Koordinate ( [7470,3914,0] )gegeben ist. Das klappt auch alles Prima, doch wenn ich überprüfen will wie nah das Fahrzeug an dem Punkt ist um es dann zum nächsten Punkt fahren zu lassen will das Spiel beim distance Befehl aufeinmal ein Objekt statt einer Koordinate . Da Ich mit dem Script aber mehrere Einheiten durch die Gegend schicken will wären mir Koordinaten lieber, weil sonst die ganze Map voller Logiken ist.
__________________
SP Mission, coming soon... |
14.05.2006, 15:50 | #6 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
AW: distance Befehl
erstmal danke für die Antworten
Das hier ist das Script: _punkt1=_this select 0 _punkt2=_this select 1 _punkt3=_this select 2 _unit =_this select 3 #safe _unit setspeedmode "limited" _unit setbehaviour "safe" #movea _unit domove getpos _punkt1 ? _unit distance _punkt1 <10: goto "moveb" ? !(alive _unit): goto "exit" ~2 goto "movea" #moveb _unit domove getpos _punkt2 ? _unit distance _punkt2 <10: goto "movec" ? !(alive _unit): goto "exit" ~2 goto "moveb" #movec _unit domove getpos _punkt3 ? _unit distance _punkt3 <10: goto "movea" ? !(alive _unit): goto "exit" ~2 goto "movec" #exit exit _punkt1,... sind dann die Koordinaten das mit dem unsichtbaren H werde ich mal ausprobieren. Und noch was: gibt es einen Befehl mit dem man ein Objekt wieder löschen kann, weil sonst ja irgendwann die map voller H´s ist und das für die performence wahrscheinlich nicht so gut ist...
__________________
SP Mission, coming soon... |
15.05.2006, 18:08 | #9 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
AW: distance Befehl
also mal Danke an euch alle... mein Script funktioniert! es sieht jetzt nach dem Überarbeiten so aus:
_punkt1=_this select 0 _punkt2=_this select 1 _punkt3=_this select 2 _unit =_this select 3 #einstellungen _unit setspeedmode "Limited" _unit setbehaviour "safe" _h3="HeilHEmpty" camcreate _punkt3 _h2="HeliHEmpty" camcreate _punkt2 _h1="HeliHEmpty" camcreate _punkt1 #movea _unit domove getpos _h1 @ _unit distance _h1 <10 ? !(alive _unit): goto "exit" ~2 #moveb _unit domove getpos _h2 @ _unit distance _h2 <10 ? !(alive _unit): goto "exit" ~2 goto "moveb" #movec _unit domove getpos _h3 @ _unit distance _h3 <10 ? !(alive _unit): goto "exit" ~2 goto "movea" #exit exit ein kleines Problem hätte ich aber doch noch: die Einheit läuft zwar zu der Koordinate aber sie ist zu schnell!! Ich hab doch am Anfang des Scripts _unit setspeedmode "limited", aber trotzdem rennt der Soldat sieht vielleicht jemand einen Fehler?
__________________
SP Mission, coming soon... |
15.05.2006, 20:45 | #11 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
AW: distance Befehl
hmm...? eigentlich hat er die Waffe schon geschultert (_unit setbehaviour "safe") und in Mr. Murray´s Editing bibel steht das mit dem setspeedmode "limited". Es kommt auch keine Fehlermeldung wie dass setspeedmode ein unbekannter Operator sei oder so was. Ich hab auch schon ausprobiert auf die Einheit im Editor eine Wegmarke setzen mit geschwindigkeit auf begrenzt. Bringt auch nichts
__________________
SP Mission, coming soon... |
16.05.2006, 20:56 | #12 (permalink) |
Registriert seit: 31.03.2003
Beiträge: 2.533
|
AW: distance Befehl
Hmm müsste eigendlich gehen. Lass dir mal von der betreffenden Einheit die Geschwindigeit auslesen.
Befehl: speed Obj machste dann z.B.: hint format ["%1", speed _unit]; Wenn du alles richtig gemacht hast müsste er dir "limited" anzeigen. |
17.05.2006, 13:52 | #13 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
AW: distance Befehl
also da wird ein Wert angezeigt: 10.1752
wenn ich mir die Geschwindigkeit gleich am Anfang anzeigen lasse, wenn der Soldat gerade erst losläuft, dann steht da 1.1752. Gibts vielleicht einen Befehl mit dem ich die geschwindigkeit in so einem Wert angeben kann
__________________
SP Mission, coming soon... |
19.06.2006, 15:02 | #15 (permalink) |
Registriert seit: 26.08.2004
Ort: Dresden
Beiträge: 106
|
AW: distance Befehl
deletevehicle Einheitenname hier z.B. _h1 unitname setBehaviour "careless" unitname setCombatMode "BLUE" unitname setSpeedMode "LIMITED" Gruß S.D. |
19.06.2006, 15:25 | #16 (permalink) |
Registriert seit: 26.08.2004
Ort: Dresden
Beiträge: 106
|
AW: distance Befehl
Dazu sollte uns Mr. Pythagoras etwas sagen können: http://de.wikipedia.org/wiki/Satz_des_Pythagoras _a = (_punkt1 select 0)-(getpos _unit select 0) _b = (_punkt1 select 1)-(getpos _unit select 1) _distance = sqrt ((_a*_a)+(_b*_b)) Sicherheitshalber habe ich ein paar mehr Klammern gesetzt. Es dürfte auch mit weniger funktionieren. S.D. |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|