Merge pull request #4672 from acemod/af-tweaks

Advanced Fatigue swimming/diving/crawling tweaks
This commit is contained in:
BaerMitUmlaut 2016-11-16 06:05:48 +01:00 committed by GitHub
commit 14cf9817b4
2 changed files with 19 additions and 5 deletions

View File

@ -28,7 +28,7 @@ if (_animType in ["idl", "mov", "adj"]) then {
_duty = 1.5;
};
case ("pne"): {
_duty = 12;
_duty = 10;
};
default {
_duty = 1;
@ -47,9 +47,15 @@ if (_animType in ["idl", "mov", "adj"]) then {
};
} else {
// swimming and diving
if (_animType in ["swm", "ssw", "bsw", "dve", "sdv", "bdv"]) then {
_duty = 5;
GVAR(isSwimming) = true;
switch (true) do {
case (_animType in ["swm", "ssw", "bsw"]): {
_duty = 6.5;
GVAR(isSwimming) = true;
};
case (_animType in ["dve", "sdv", "bdv"]): {
_duty = 2.5;
GVAR(isSwimming) = true;
};
};
};

View File

@ -58,7 +58,15 @@ if (GVAR(ppeBlackoutLast) == 1) then {
// - Physical effects ---------------------------------------------------------
if (GVAR(isSwimming)) exitWith {
_unit setAnimSpeedCoef (1 - _fatigue / 3);
_unit setAnimSpeedCoef linearConversion [0.7, 0.9, _fatigue, 1, 0.5, true];
if ((isSprintAllowed _unit) && {_fatigue > 0.7}) then {
[_unit, "blockSprint", QUOTE(ADDON), true] call EFUNC(common,statusEffect_set);
} else {
if ((!isSprintAllowed _unit) && {_fatigue < 0.7}) then {
[_unit, "blockSprint", QUOTE(ADDON), false] call EFUNC(common,statusEffect_set);
};
};
};
if ((getAnimSpeedCoef _unit) != 1) then {
_unit setAnimSpeedCoef 1;