Zitat von
Buliwyf
Mit der ID wirst Du nicht weit kommen, weil jeder neuer AddAction-Eintrag auch eine neue ID bekommt.
Vielmehr könntest Du mit zB _x setVariable ["ARRESTED", true, true]; einen Gefangenen markieren und Deine Bedingung erweitern, in dem Du if (_animi == "AmovPercMstpSsurWnonDnon" AND not (_x getVariable "ARRESTED")) then { hinzufügst.
Hmmm verdammt was ist nun schon wieder falsch ?!?!?!
nach meinem verständniss habe ich unten nun stehen
Code:
wenn _animi == gewünschtebewegung und _x ist nicht auf ARRESTED gesetzt dann
{
_x = ARRESTED
_x = Addaction hinzufügen
}
Sonst
{
wenn _x aufderflucht dann _animi gleich bewegung von _X
wenn bewegung von _x die gewünschte bewegung dann keinebewegung.
sonst
{
_x führt die gewünschte bewegung aus
}
}
Code:
while {true} do {
if (_animi == "AmovPercMstpSsurWnonDnon" AND not (_x getVariable "ARRESTED")) then {
_x setVariable ["ARRESTED", true, true];
_x addAction ["Arrest","surrender\gotojail.sqf"];
}
else{
{if (fleeing _x ) then {
_animi = animationState _x;
if (_animi == "AmovPercMstpSsurWnonDnon") then {
_x disableAI "ANIM";
} else {
player groupChat format["%1 Feind? %3 Animation %2",_x,_animi,player countEnemy[_x]==1];
_x switchmove "AmovPercMstpSsurWnonDnon";
};
};} forEach nearestObjects [player, ["Man"], 50];
sleep 0.1;
};
};
Also entweder habe ich einen grundlegenden verständniss fehler oder ich hab irgendwo wieder ein doofes satzzeichen vergessen.