10.10.2014, 04:57 | #1 (permalink) |
Registriert seit: 15.05.2011
Beiträge: 1.110
|
Fahrzeugrespawn mit Namen
Moinsen.
Ich habe ein Problem. Und zwar geht es um ein Script, in welchem eine Fahrzeug nach einer Zeit an Ort und Stelle respawnen soll. Der Name das Fahrzeuges muss aber gleich bleiben, da ein Teleport dran hängt (also eine Art MHQ) Irgendwie übergebe ich die Variable falsch. Gestartet wird so [MHQ1, 10] execVM "respawnauto.sqf" Code:
// starten mir s = [namedasFahrzeuges, respawnzeit] execVM "script.sqf" if (!isServer) exitWith {}; private ["_vcl", "_dir", "_pos", "_respawnzeit", "_klasse"]; _vcl = _this select 0; _respawnzeit = _this select 1; _klasse = typeOf _vcl; _auto = vehicleVarName _vcl; //Liest die Varibale aus while {true} do { hint format ["%1", _auto]; //testzeile, gibt richtige Variable aus waituntil {sleep 0.5; !alive _vcl}; _pos = getPos _vcl; _dir = getdir _vcl; sleep _respawnzeit; deletevehicle _vcl; waituntil {isnull _vcl}; _vcl = _klasse createVehicle _pos; _vcl setVehicleVarName _auto; _auto = _vcl; player sideChat format ["%1", _vcl]; //Testzeile, gibt richitige Variable aus }; Würde ich alternativ das Fahrzeug sofort mit mhq= ... createVehicle... erstellen, würde des funktionieren. Das Script soll aber für 3 MHQ laufen. Kann ich eine lokale Variable public machen? Denn laut Wiki muss nach erstellen des Fahrzeuges und der Variablensetzung, dieses an alle Clienten mitgeteilt werden.
__________________
Bewegende Momente bei ArmA 3 |
10.10.2014, 09:31 | #2 (permalink) |
Registriert seit: 17.01.2008
Beiträge: 267
|
Probiers mal hiermit, die paar Änderungen könnten ausreichen:
PHP-Code:
__________________
|
10.10.2014, 16:08 | #3 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
In MP nicht getestet!
Skript: VehikelRespawn.sqf Code:
// starten in Initzeile des Fahrzeuges: temp = [this,<respawnzeit>] execVM "VehikelRespawn.sqf" // Fahrzeug muss einen Namen haben! sleep 1; if (!isServer) exitWith {}; private ["_vehikel","_respawnzeit","_klasse","_nameVehikel","_pos","_dir"]; _vehikel = _this select 0; _respawnzeit = _this select 1; _klasse = typeOf _vehikel; _nameVehikel = vehicleVarName _vehikel; //Name des Vehikels als String while {true} do { player groupChat format ["_vehikel: %1 | _nameVehikel: %2",_vehikel,_nameVehikel]; //Testzeile, gibt richtige Variable aus waituntil {sleep 0.5; !alive _vehikel}; _pos = getPos _vehikel; _dir = getdir _vehikel; sleep _respawnzeit; deletevehicle _vehikel; sleep 1; _vehikel = _klasse createVehicle _pos; _vehikel setVehicleVarName _nameVehikel; _vehikel setDir _dir; call compile format["%1 = _vehikel",_nameVehikel]; //fügt dem Namen die ObjektID hinzu! publicVariable _nameVehikel }; |
10.10.2014, 20:24 | #4 (permalink) |
Registriert seit: 15.05.2011
Beiträge: 1.110
|
Danke Vienna und Tajin.
Der "Call Comile"-Befehl und ich, werden in diesem Leben keine Freunde mehr. Ich hatte damit auch rumgeschraubt, aber naja... Es funzt schon mal im Editor. Muss ich mal Dedi testen. Edit: Es funktioniert im Dedicated Modus
__________________
Bewegende Momente bei ArmA 3 Geändert von Drunken Officer (10.10.2014 um 20:48 Uhr). |
11.10.2014, 09:37 | #5 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Nur waituntil {sleep 0.5; !alive _vehikel}; ist problematisch, weil das Fahrzeug total zerstört sein muss.
Folgende Abfrage löst auch bei Fahrunfähigkeit aus, wenn keine lebende Crew im Fahrzeug ist. Code:
waituntil {sleep 1; !alive _vehikel or !canMove _vehikel and {alive _x}count crew _vehikel == 0}; |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
ArmA3-Server Namen mit Sonderzeichen | marc_book | Technische Fragen & Probleme | 0 | 17.04.2014 22:27 |
Editor Namen? | ArmaSteiner | Editing & Scripting | 4 | 27.02.2014 15:24 |
Side East allUnits - Namen abfragen | spaccy | Editing & Scripting | 3 | 04.12.2012 22:05 |
Ai Namen geben? | Agathon | Editing & Scripting | 8 | 29.09.2012 16:21 |
Respawn mit besitmmten Namen | burns | Editing & Scripting | 6 | 12.10.2010 21:45 |