13.07.2008, 10:10 | #21 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Hier findest du ein Beispiel für das Ändern der Fahrzeugbewaffnung:
Fahrzeugbewaffnung ändern |
13.07.2008, 12:15 | #22 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Cool danke
Noch ne Frage: Aber man kann ja nicht einzeln die Bewaffnung ändern, also als Aktioneinträge "Mit Hellfire bewaffnen", "Mit Maverick bewaffnen", "Mit GAU8 bewaffnen" usw. Denn durch das NeuBewaffnen.sqf Skript werden ja immer alle Waffen entfernt. Kann man das so machen, dass entweder alle Waffen beim Auswählen einer Bewaffnung nur einmal entfernt werden und man dann den Rest hinzufügen kann oder jedes Mal nur der Typ von der Waffe entfernt wird und die neue Waffe hinzugefügt wird. Wäre das möglich? |
13.07.2008, 13:57 | #23 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Eine solche Variante findest du jetzt in obigem Link.
Es können so viele Waffen geladen werden, wie Aktionen dazu vorhanden sind (zur Zeit 6). Falls du willst, dass z.B. nur 3 Stück von dieser Auswahl geladen werden dürfen, mußt du noch einen "Zähler" einbauen. |
13.07.2008, 19:32 | #24 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Danke Genauso wollte ich es
Hätte nur noch einen kleinen Vorschlag, ob du das noch miteinbauen könntest ^^ Und zwar ich möchte die Bewaffnung erst bestimmen können, NACHDEM ich mit meinem Flugzeug einen Auslöser (z.b. im Hangar) betreten habe. Wäre das möglich? Hab versucht einfach die Initzeile vom Flieger in den Auslöser zu stecken, aber man bekommt dann keine Waffenauswahl =( |
13.07.2008, 21:48 | #25 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Es geht schneller das zu ändern als zu erklären.
Im Anhang die Beispielmission wo die Waffen-Aktionen im Auslöserbereich aufscheinen. Beachte dass jetzt der Auslöser den Skriptaufruf durchführt und die Aktionen beim Verlassen des Bereichs wieder entfernt werden. Mit dem Auslöser kannst du jede A10 neu bewaffnen. Bei den Fliegern ist kein Eintrag notwendig. Zum Bewaffnen musst du im Flieger sitzen. Die Größe des Auslöserbereichs ist beliebig änderbar. |
13.07.2008, 22:00 | #26 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Ah cool danke Ich hab mir shcon deine letzten 2 Skripte angeschaut und langsam blicke ich durch wie die aufgebaut sind Learning by anschauing
Werde die Missi dann morgen mal antesten, da ich jetzt ins Bett gehe. Morgen noch ne mündliche Prüfung in Mathe. Geändert von Cyborg11 (13.07.2008 um 22:06 Uhr). |
14.07.2008, 10:49 | #28 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Danke Hat aber leider nicht für eine 1 gereicht =( Jetzt hab ich ne 3 in Mathe. Naja, auch nicht sooooo schlimm ^^
Hab jetzt mal dein Skript ausprobiert und finde es genial :> Hab es gleich mal um 7 Waffen, um 3 Flugzeuge und 1 Abfrage für max 3 Waffen erweitert |
14.07.2008, 17:36 | #29 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Wenn du die Routinen auch für Helis verwenden willst, dann ist die Abfrage im Auslöser so zu gestalten, dass er erst "durchschaltet" ( und damit das Skript aufruft), wenn der Heli am Boden steht (Höhe < 1m). Denn das Skript AktionenWaffenliste.sqf aktiviert bei einer Flughöhe von über 10m keine Aktionen, sondern wird abgebrochen.
|
14.07.2008, 18:05 | #30 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Ah ok. Aber wie schaut so eine Abfrage aus, die abfragt, ob der Spieler aufm Boden steht? Code:
If (player height >= 1) then {[] execVM "AktionenWaffenliste.sqf"} |
14.07.2008, 19:02 | #31 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Im Auslöser steht jetzt in der Zeile "Bedingung":
vehicle player in thislist AND typeOf vehicle player == "A10" Dazu mußt du noch anfügen: AND (getpos vehicle player)select 2 < 1 Der Aufruf des Sktipts erfolgt ja bereits in der Zeile "Bei Akt." "A10" natürlich auf die Bezeichnung des Helis ändern. Hinweis: getPos player gibt die Position des Spielers als Array zurück: [x,y,z] z ist dabei die Höhe. Falls noch nicht bekannt, hier der Link zur Befehlsübersicht: Category:Scripting Commands ArmA - Bohemia Interactive Community . Geändert von Vienna (14.07.2008 um 19:05 Uhr). |
04.08.2008, 22:23 | #32 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Also um nochmal auf mein Skript mit den Waffen aufrüsten zurückzukommen.
Ich habe jetzt vor, das Skript mit Waffen aus Addons zu erweitern. Und da will ich es übersichtlicher machen. So schaut es bei mir atm aus: Code:
_waffeSD = weapons player select 0 _waffenSD = ["MP5A5","AKS74U"] If (_waffeSD in _waffenSD AND sdv>0) then {sdas = player addaction ["--Schalldaempfer (Gewehr) aufsetzen", "sd.sqs"]} else {hint "Sie benötigen einen Schalldaempfer um ihre Waffe aufzuruesten."} Kann mir da bitte einer weiterhelfen? |
05.08.2008, 17:40 | #33 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Der Vergleich im Array mit IN unterscheidet zwischen Groß- und Kleinschreibung.
Laß dir eine die Waffenliste ausgeben und schau ob du die Waffenbezeichnungen im Array _waffenSD korrekt geschrieben hast player groupChat format["%1", weapons player]; |
05.08.2008, 18:08 | #34 (permalink) |
Registriert seit: 26.03.2008
Beiträge: 2.822
|
Ja, das Array ist richtig.
Als ich vorhin mal die Waffenliste aufgerufen habe, spuckte mir ArmA folgendes aus: ["NVGOOGLES","MP5A5"] Da ich aber in dem Skript select 0 stehen habe, wird ja eigentlich mit dem NVGoogles weitergemacht, aber das soll ja so nicht sein. Also hab ich mal das Nachtsichtgerät abgelegt und nochmal probiert, aber es ist wieder das Selbe wie oben passiert EDIT: Ok erneut probiert. Nur wenn die Waffe auf dem ersten Platz ist, funktioniert das mit select 0. Sollte man aber die Waffe wechseln und vorher ein Nachtsichtgerät haben, dann switcht das Nachtsichtgerät auf Platz 0 und die Waffe auf Platz 1 => Das Skript funktioniert dann nicht mehr. Kann man das irgendwie auch noch anders abfragen lassen, damit man die Waffen trotzdem noch tauschen kann, sollte man ein/eine Nachtsichgerät/Fernglas/Pistole besitzen? EDIT2: Es funktioniert, wenn man einfach die 4 Positionen nach den Waffen abfragt (select 0 - 3), da NVGoogles, Pistole, Fernglas und Waffe ja 4 Slots besetzen. Also das würde das dann so aussehen: Code:
_waffenSD = ["MP5A5","AKS74U"] _waffeSD = weapons player select 0 _waffeSD1 = weapons player select 1 _waffeSD2 = weapons player select 2 _waffeSD3 = weapons player select 3 If (_waffeSD in _waffenSD OR _waffeSD1 in _waffenSD OR _waffeSD2 in _waffenSD OR _waffeSD3 in _waffenSD) then {sdas = player addaction ["--Schalldaempfer (Gewehr) aufsetzen", "sd.sqs"]} else {hint "Sie benötigen einen Schalldaempfer um ihre Waffe aufzuruesten."} Geändert von Cyborg11 (05.08.2008 um 18:41 Uhr). |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Senden an - Funktion nicht mehr sichtbar | Lee-on | Hilfe | 7 | 23.09.2005 18:20 |
"Eject" funktion auf einer Taste | Lee-on | Hilfe | 7 | 10.06.2005 20:05 |
[EXCEL] Wahrheitsprüfung (Wenn Funktion) | Kompost | Hilfe | 6 | 28.09.2004 21:52 |