Cyborg11 |
03.06.2009 22:09 |
Ui danke :) Das mit dem hint str ist ja viel einfacher. Danke nochmal! :)
Also ich hab mir jetzt nochmal _gun ausgeben lassen und ja es wird mir ein <null> Wert ausgegeben.
Ganzes Skript schaut übrigens so aus:
Code:
// ********************************************
// Script File for ArmA2
// Made by: Cyborg11
// Version: 1.0
// ********************************************
// Aktion hinzufügen (In die Init vom Zugtraktor):
// this addaction ["Geschuetz anhaengen","hook-gun.sqf",0];
_tractor = _this select 0;
_action = _this select 2;
_weiter = _this select 3;
_guns = nearestObjects [_tractor, ["StaticWeapon"], 20];
_gun = _guns select 0;
_guntype = typeOf _gun;
_hooked = false;
_tractor removeaction _action;
_speed = speed _tractor;
_dir = getDir _tractor;
hint str(["|",_gun]);
// Debug Meldung
// hint format ["Geschuetze:\n%1\n\nGeschuetz:\n%2\n\nType: %3\n\nAction: %4\n\nDirection: %5", _guns,_gun,_guntype,_action,_dir];
If (isNull _gun) then {
hint "Fahren Sie bitte naeher an ein Geschuetz ran!";
_tractor addaction ["Geschuetz anhaengen","hook-gun.sqf",0];
};
If (_weiter == 0 AND !_hooked AND (_guntype=="D30_CDF" OR _guntype=="D30_RU" OR _guntype=="D30_INS")) then {
hint format ["%1 erfolgreich angehaengt.",_guntype];
_gun attachTo [_tractor,[0,-6.8,-1.2],"hatch1"];
_tractor addaction ["Abhaengen","hook-gun.sqf",1];
_hooked = true;
};
If (_weiter == 0 AND !_hooked AND (_guntype=="ZU23_CDF" OR _guntype=="ZU23_GUE" OR _guntype=="ZU23_INS")) then {
hint format ["%1 erfolgreich angehaengt.",_guntype];
_gun attachTo [_tractor,[0,-5.5,-0.2],"hatch1"];
_tractor addaction ["Abhaengen","hook-gun.sqf",1];
_gun setdir 180;
_hooked = true;
};
If (_weiter == 0 AND !_hooked AND _guntype=="M119") then {
hint format ["%1 erfolgreich angehaengt.",_guntype];
_gun attachTo [_tractor,[0,-6.3,-1.2],"hatch1"];
_tractor addaction ["Abhaengen","hook-gun.sqf",1];
_gun setdir 180;
_hooked = true;
};
If (_weiter == 1) then {
hint format ["%1 erfolgreich abgehaengt.",_guntype];
detach _gun;
_tractor addaction ["Geschuetz anhaengen","hook-gun.sqf",0];
};
While {_hooked} do {
hint "test";
If (_speed >= 45) then {hint "Fahren Sie langsamer!");
If (_speed >= 60) then {
hint "Geschuetz verloren! Neu anhaengen!";
detach _gun;
_gun setdamage 1;
_tractor removeaction _action;
_tractor addaction ["Geschuetz anhaengen","hook-gun.sqf",0];
};
sleep 1;
};
Aber komischerweise funktioniert meine While Schleife ganz am Ende des Skripte nicht. Und das mit dem isNull funktioniert nicht. Sonst funktioniert das Skript ganz gut =)
|