28.06.2016, 08:43 | #1 (permalink) |
Registriert seit: 23.01.2016
Beiträge: 20
|
Wie kann man Einheiten im Triggerradius löschen?
Hallo,
ich spawne in einer Stadt per Trigger einige Einheiten und würde gerne die übrig gebliebene AI löschen sobald der Spieler den Trigger verlässt. Ich habe folgenden Code gefunden: Code:
{if (side _x == EAST AND _x in thisList) then {_x setDamage 1};} foreach allunits; Ich hab den setDamage Befehl auch schon gegen {deleteVehicle _x} getauscht aber auch da klappt es nicht. Könnt ihr mir sagen was daran falsch ist? |
28.06.2016, 09:10 | #2 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
wenn du löschen willst dann solltest du dies auch tun und nicht einfach nur töten.
Code:
{if (side _x == east AND _x in thisList) then {deleteVehicle _x;}; true} count allUnits; Code:
{if (side _x == east) then {deleteVehicle _x;}; true} count thisList;
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints Geändert von Sarogahtyp (28.06.2016 um 09:15 Uhr). |
28.06.2016, 10:55 | #3 (permalink) |
Registriert seit: 15.05.2011
Beiträge: 1.109
|
Ich würde auch die 2 Variante vorschlagen. Warum alle Einheiten zählen lassen, wenn man eh nur die Einheiten aus dem Trigger braucht.
Sarogahtyp, wieso hast ein "true" in deine Count Abfrage gepackt?
__________________
Bewegende Momente bei ArmA 3 Geändert von Drunken Officer (28.06.2016 um 10:57 Uhr). |
28.06.2016, 11:21 | #5 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
mach mal:
Code:
nix = {if (side _x == east) then {deleteVehicle _x;}; true} count thisList; nix = nil;
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 11:30 | #7 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
Nunja, irgendwie stimmt da auch was nicht, die sollten doch bei Deaktivierung gelöscht werden, also wenn der Spieler den Trigger verlässt? Gib mal den Code aus allen Feldern Deines Triggers!
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 12:00 | #9 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
dann müssen wir mal ans debuggen gehen:
Code:
nix = {if (side _x == east) then {deleteVehicle _x;}; true} count thisList; systemChat str nix;
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 12:07 | #11 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
das bedeutet das die thisList leer ist, count zählt jedes Element darin und schiebt es in nix rein.
Der Trigger aktiviert zwar, aber es gibt kein Objekt im Triggerradius was die Bedingung erfüllt... Was steht im Feld Bedingung bzw. Condition ???
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints Geändert von Sarogahtyp (28.06.2016 um 12:09 Uhr). |
28.06.2016, 12:15 | #13 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
Nö... der Trigger guckt ins Bedingungsfeld und schiebt alle Objekte die die BEdingung erfüllen in die thisList. ich denke da muß true drin stehn damit es funktioniert.
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 12:23 | #14 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
Ich sehe da auch noch ein Problem, alle toten Einheiten werden nicht gelöscht weil Sie nicht mehr bei side east sonder civilian sind...
kannst du die nicht beim spawnen alle in ein globales array speichern? Dann wäre das löschen einfacher...
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 12:26 | #15 (permalink) |
Registriert seit: 23.01.2016
Beiträge: 20
|
Nein, auch dann klappt es leider nicht.
Gebe ich das Globale array dann einfach so wie ein normal array ein zum löschen oder muss ich da auf eine bestimmte schreibweise achten? Geändert von niels001 (28.06.2016 um 12:29 Uhr). |
28.06.2016, 12:43 | #16 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
Was mit Deinem Trigger schief läuft weiß iuch jetzt auch nicht, eventuell ist der Radius 0?
Zeig mal wie du spawnst dann sag ich dir wie das mit dem array am besten geht. Ich mach jetzt erstmal Mittagspause, melde mich also ne halbe stunde lang nicht...
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints Geändert von Sarogahtyp (28.06.2016 um 12:47 Uhr). |
28.06.2016, 13:50 | #18 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
okay, ich kann dann vermutlich erst morgen wieder antworten...
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
28.06.2016, 18:18 | #19 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
so funktioniert es, ist aber nicht schön, weil allUnits benutzt wird. das kann unter umständen langsam sein.
Code:
nix = {deleteVehicle _x; true}count (allUnits select {(side _x == east) and (_x inArea thisTrigger)}) besser ist es wenn du alle gespawnten einheiten in einem array hast dann werden auch tote gelöscht und das geht dann so: Code:
nix = {if(!isNull _x) then {deleteVehicle _x;}; true}count yourglobalarray dein array baust du in etwa so (variiert je nachdem wie du spawnst): Code:
yourglobalarry = []; //leeres array erzeugen _jeep = "Jeep" createVehicle position player; // jeep spawnen und in _jeep speichern yourglobalarry pushBack _jeep; // _jeep als letztes element vom array speichern Code:
yourglobalarry = []; yourglobalarry pushBack ("Jeep" createVehicle position player);
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints Geändert von Sarogahtyp (28.06.2016 um 18:33 Uhr). |
28.06.2016, 19:22 | #20 (permalink) |
Registriert seit: 20.06.2016
Beiträge: 37
|
Und so gehts richtig
Und so gehts richtig:
Trigger Typ: keine Aktivierung: Jeder Bedingung: Code:
this && {(isPlayer _x) and (alive _x)}count thisList > 0 Code:
yourglobalarray = []; nix = yourglobalarray pushBack ("O_G_Soldier_F" createVehicle position thisTrigger); nix = yourglobalarray pushBack ("O_G_Soldier_F" createVehicle position thisTrigger) Code:
nix = {if(!isNull _x) then {deleteVehicle _x;};true} count yourglobalarray; yourglobalarray=nil
__________________
Sarogahtyps Spawn Script Creator - SSSC the easy way to cache ur units, vehicles and their waypoints |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Einheiten erstellen und automatisch zufällig löschen | Rubbermen | Editing & Scripting | 13 | 08.03.2013 22:58 |
Einheiten spawnen/ löschen script | sandmanGER | Editing & Scripting | 16 | 07.02.2013 07:45 |
Einheiten nach Tod/Zerstörung löschen | Togo | Editing & Scripting | 15 | 27.11.2012 07:28 |
Einheiten in Gruppe löschen | Brubaker | Editing | 6 | 26.05.2011 17:44 |
Script-Problem: Einheiten löschen | Kampfmöhre | Editing & Scripting | 5 | 31.05.2010 12:37 |