![]() |
#1 (permalink) |
![]() Registriert seit: 22.02.2009
Ort: Tirol
Beiträge: 19
|
![]()
Löschen von Toten Einheiten!
Hi zusammen habe ein Problem mit dem Löschen von Toten Einheiten in einem Auslösebereich. ![]() {deleteVehicle _x} forEach list Zone1 (Löscht nur Lebende Einheiten?) Löschscript Mr-Murray Auslöser: Aktivierung: OSTEN Einfach Vorhanden Achse a/b: 2000 (den Bereich festlegen!) bei Aktivierung: [2] exec "Scripts\Bodydelete.sqs" ? !(local server):exit; _W=_this select 0; _L=[]+thislist; _A=[]; _G=[]; _T="Man"; { if (_T counttype [_x] == 1) then {_G=_G+[_x]} } foreach _L; #Again { if (not alive _x) then {_A=_A+[_x]} } forEach _G; _G=_G-_A; ? count _A > _W :_P=_A select 0;_A=_A-[_P] ; (Gravedigger) action ["Hidebody",_P] ; ~10 deleteVehicle _P; ? count _A == _W and count _G == 0 :exit; goto "Again" Habe ich da Irgendwo einen Fehler? Bei mir funzt das Einfach nicht. Gruss Iron |
![]() |
![]() |
#2 (permalink) |
![]() ![]() ![]() Registriert seit: 02.04.2003
Ort: San Francisco
Beiträge: 1.919
|
![]()
Na ja, einfacher geht's per Eventhandler.
Einfach in die Init-Zeile von den zu löschenden Einheiten: Code:
this addEventHandler ["killed",{_hdl = (_this select 0) execVM "deleteVehicle.sqf"}]; Code:
sleep 30; deleteVehicle _this; Die Eventhander sind zuverlässiger und brauchen keinen Trigger, der alle paar Millisekunden die Bedingung überprüft und einen eingeschränkten Auslöseradius hat, sondern lösen nur im Falle des Ablebens (selbstständig) aus. Außerdem kann man ihn ja auch per Script gespawnten Einheiten relativ leicht hizufügen. Das Script ist auch noch in .sqs-Syntax, in .sqf geht sowas viel schöner ![]() Gruß TeRp |
![]() |
![]() |
#3 (permalink) |
![]() ![]() Registriert seit: 06.10.2006
Ort: Manila
Alter: 44
Beiträge: 8.445
|
![]()
Das ja mal ne coole Lösung.
![]() Hör ich zum ersten Mal in der Form. Hatte es auch mal mit MrMurrays Script probiert. Ging ebenfalls nicht bei mir. Wobei BIS das ja mittlerweile auch als Modul oder als einstellbaren Parameter in der init hätte einbauen können. ![]()
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3600 | Track NP 5 | Linux Mint + Arch Linux |Seasonic 750W |
![]() |
![]() |
#5 (permalink) |
![]() |
![]()
Bitte auch mal erwähnen, dass dies für A1 war
![]()
__________________
MR-MURRAY presents ![]() ![]() ![]() |
![]() |
![]() |
#7 (permalink) |
![]() ![]() Registriert seit: 06.10.2006
Ort: Manila
Alter: 44
Beiträge: 8.445
|
![]()
Er meint das das Script für A1 war.
![]()
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3600 | Track NP 5 | Linux Mint + Arch Linux |Seasonic 750W |
![]() |
![]() |
#8 (permalink) |
![]() Registriert seit: 22.02.2009
Ort: Tirol
Beiträge: 19
|
![]() Sollte keine Kritik an Mr-Murray sein, ich dachte eher dass ich irgendwo einen Fehler im Script habe. Warte schon gespannt auf den Guide für ARMA II Hoffe nur Mr-Murray werkelt dran, ich glaube nicht nur ich sondern auch ne menge Missionsbastler warten darauf. ![]() Gruß Iron |
![]() |
![]() |
#10 (permalink) |
![]() |
![]()
Eventhandler, Skript... ist das nicht alles das Gleiche
![]() Eiere seit 3 Tagen ununterbrochen in der Wiki rum und suche den Kram zusammen. Ich glaube ich tippe noch bis 2015 ![]()
__________________
MR-MURRAY presents ![]() ![]() ![]() |
![]() |
![]() |
#11 (permalink) |
![]() Registriert seit: 20.04.2010
Beiträge: 39
|
![]()
Hi,
hat sich da eigentlich etwas getan themenbezüglich? Für eine grössere Mission wärs ganz vorteilhaft tote Einheiten verschwinden zu lassen um Performance zu sparen. Ausser: { this addEventHandler ["killed",{ nil = _this select 0 execVM "deleteBody.sqf"; }]; } forEach allUnits; und dann als .sqf: sleep 60; deleteVehicle _this; Bodydelete <-- thread hab ich nix weiter gefunden, leider funzt das Beispiel (bei mir) nicht. Das Garbage-Collector-Modul ist auch wenig hilfreich. Das Problem liegt leider darin, das ich Einheiten per DAC-spawnen lasse. und so ist es für mich unmöglich einen "delete"-Befehl in die init einer Einheit einzufügen. Hat da jemand vielleicht einen tip oder noch besser eine Lösung parat?? |
![]() |
![]() |
#13 (permalink) |
![]() Registriert seit: 20.04.2010
Beiträge: 39
|
![]()
Hallo Xeno,
zu 2. Ja, richtig. Hab das zuerst nicht gefunden, bin dann aber in der DAC_Config_Creator drüber gestolpert. Dank Dir Anm: weiss einer warum der Undead-Mod mit der DAC-Script Version nur fehlerhaft funktioniert (Zombies greifen nicht an) aber mit der Addon Version alles einwandfrei läuft? |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
![]() |
||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Gras/Bäume löschen | KvagGthull | Editing & Scripting | 6 | 14.01.2010 07:33 |
Aktionseintrag bei BIS-Objekten löschen? | GER_CJ-187 | Editing & Scripting | 6 | 26.08.2009 16:00 |
Löschen ohne Konsequenzen? | Hercules-HH | Editing | 5 | 04.01.2009 00:52 |
Objekte löschen?! | Garry | Editing | 9 | 12.07.2005 19:54 |