Hello everyone, someone can help me to fix my script please. I am a beginer in this, somebody can tell my why my script doesn't work? I want that OPFOR have 0% skills and BLUFOR complete 100%.
if NOT(isServer) exitWith {};
[] spawn
{
while {true} do
{
sleep 10;
{
if ((side _x) == East) then {
_x setSkill ["aimingspeed", 0.1];
_x setSkill ["aimingaccuracy", 0.1];
_x setSkill ["aimingshake", 0.1];
_x setSkill ["spottime", 0.1];
_x setSkill ["spotdistance", 0.1];
_x setSkill ["courage", 0.1];
_x setSkill ["reloadSpeed", 0.1];
_x setSkill ["commanding", 0.1];
};
sleep 2;
if ((side _x) == West) then {
_x setSkill ["aimingspeed", 1];
_x setSkill ["aimingaccuracy", 1];
_x setSkill ["aimingshake", 1];
_x setSkill ["spottime", 1];
_x setSkill ["spotdistance", 1];
_x setSkill ["courage", 1];
_x setSkill ["reloadSpeed", 1];
_x setSkill ["commanding", 1];
};
}
forEach allUnits;
}
};
What beerkan said.
Alternatively:
if NOT(isServer) exitWith {};
[] spawn
{
while {true} do
{
{
_x setSkill ["aimingspeed", 0.1];
_x setSkill ["aimingaccuracy", 0.1];
_x setSkill ["aimingshake", 0.1];
_x setSkill ["spottime", 0.1];
_x setSkill ["spotdistance", 0.1];
_x setSkill ["courage", 0.1];
_x setSkill ["reloadSpeed", 0.1];
_x setSkill ["commanding", 0.1];
_x setVariable ["TAG_fnc_skillSet",true];
} forEach (allUnits select {side _x isEqualTo east AND !(_x getVariable ["TAG_fnc_skillSet",false])});
{
_x setSkill ["aimingspeed", 1];
_x setSkill ["aimingaccuracy", 1];
_x setSkill ["aimingshake", 1];
_x setSkill ["spottime", 1];
_x setSkill ["spotdistance", 1];
_x setSkill ["courage", 1];
_x setSkill ["reloadSpeed", 1];
_x setSkill ["commanding", 1];
_x setVariable ["TAG_fnc_skillSet",true];
} forEach (allUnits select {side _x isEqualTo west AND !(_x getVariable ["TAG_fnc_skillSet",false])});
sleep 10;
}
};
This will only set skill on units once and should run a bit better performance wise.
Cheers