mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge remote-tracking branch 'origin/release' into master-fix
Conflicts: addons/medical/functions/fnc_handleDamage.sqf extensions/common/p3d/animation.cpp extensions/common/p3d/compressed.cpp extensions/common/p3d/compressed.hpp extensions/common/pbo/archive.cpp extensions/common/pbo/search.cpp extensions/common/pbo/search.hpp extensions/common/shared.hpp extensions/common/simplepipe_win32.cpp extensions/common/simplepipe_win32.hpp extensions/common/simulation/object.cpp extensions/common/simulation/object.hpp extensions/common/targetver.h extensions/common/vector.hpp
This commit is contained in:
commit
f16f282abd
@ -5,8 +5,8 @@
|
||||
|
||||
#define MAJOR 3
|
||||
#define MINOR 0
|
||||
#define PATCHLVL 0
|
||||
#define BUILD 3
|
||||
#define PATCHLVL 1
|
||||
#define BUILD 0
|
||||
|
||||
#define VERSION MAJOR.MINOR.PATCHLVL.BUILD
|
||||
#define VERSION_AR MAJOR,MINOR,PATCHLVL,BUILD
|
||||
|
@ -276,5 +276,5 @@ if (hasInterface) then {
|
||||
["PlayerJip", {
|
||||
diag_log format["[ACE] JIP Medical init for player"];
|
||||
[player] call FUNC(init);
|
||||
}] call FUNC(addEventHandler);
|
||||
}] call EFUNC(common,addEventHandler);
|
||||
};
|
||||
|
@ -66,7 +66,7 @@ if (GVAR(level) < 2) then {
|
||||
};
|
||||
};
|
||||
|
||||
if ((_minLethalDamage <= _newDamage) && {[_unit, [_selection] call FUNC(selectionNameToNumber), _newDamage] call FUNC(determineIfFatal)} || !alive vehicle _unit) then {
|
||||
if ((_minLethalDamage <= _newDamage) && {[_unit, [_selection] call FUNC(selectionNameToNumber), _newDamage] call FUNC(determineIfFatal)}) then {
|
||||
if ((_unit getVariable [QGVAR(preventInstaDeath), GVAR(preventInstaDeath)])) exitwith {
|
||||
_damageReturn = 0.9;
|
||||
};
|
||||
@ -96,6 +96,27 @@ if (_unit getVariable [QGVAR(preventInstaDeath), GVAR(preventInstaDeath)]) exitW
|
||||
[{
|
||||
[_this select 0, true] call FUNC(setUnconscious);
|
||||
}, [_unit]] call EFUNC(common,execNextFrame);
|
||||
private "_delayedUnconsicous";
|
||||
_delayedUnconsicous = false;
|
||||
if (vehicle _unit != _unit and {damage (vehicle _unit) >= 1}) then {
|
||||
[_unit] call EFUNC(common,unloadPerson);
|
||||
_delayedUnconsicous = true;
|
||||
};
|
||||
|
||||
if (_damageReturn >= 0.9 && {_selection in ["", "head", "body"]}) exitWith {
|
||||
if (_unit getvariable ["ACE_isUnconscious", false]) exitwith {
|
||||
[_unit] call FUNC(setDead);
|
||||
0.89
|
||||
};
|
||||
if (_delayedUnconsicous) then {
|
||||
[{
|
||||
[_this select 0, true] call FUNC(setUnconscious);
|
||||
}, [_unit], 0.7, 0] call EFUNC(common,waitAndExec);
|
||||
} else {
|
||||
[{
|
||||
[_this select 0, true] call FUNC(setUnconscious);
|
||||
}, [_unit]] call EFUNC(common,execNextFrame);
|
||||
};
|
||||
0.89
|
||||
};
|
||||
_damageReturn min 0.89;
|
||||
|
@ -48,20 +48,28 @@ if (diag_frameno > (_unit getVariable [QGVAR(basic_frameNo), -3]) + 2) then {
|
||||
_unit setVariable [QGVAR(hitPoints), []];
|
||||
_unit setVariable [QGVAR(damages), []];
|
||||
_unit setVariable [QGVAR(structDamage), 0];
|
||||
|
||||
if (isnil {_unit getvariable QGVAR(structDamagePFH)}) then {
|
||||
// Assign orphan structural damage to torso
|
||||
[{
|
||||
private ["_unit", "_damagesum"];
|
||||
_unit = _this select 0;
|
||||
_damagesum = (_unit getHitPointDamage "HitHead") +
|
||||
(_unit getHitPointDamage "HitBody") +
|
||||
(_unit getHitPointDamage "HitLeftArm") +
|
||||
(_unit getHitPointDamage "HitRightArm") +
|
||||
(_unit getHitPointDamage "HitLeftLeg") +
|
||||
(_unit getHitPointDamage "HitRightLeg");
|
||||
if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then {
|
||||
_unit setHitPointDamage ["HitBody", damage _unit];
|
||||
};
|
||||
}, [_unit], 2, 0.1] call EFUNC(common,waitAndExecute);
|
||||
[{
|
||||
private ["_unit", "_damagesum"];
|
||||
_unit = (_this select 0) select 0;
|
||||
if (diag_tickTime - (_unit getvariable [QGVAR(structDamagePFH),-2]) >= 2) then {
|
||||
_unit setVariable [QGVAR(structDamagePFH), nil];
|
||||
_damagesum = (_unit getHitPointDamage "HitHead") +
|
||||
(_unit getHitPointDamage "HitBody") +
|
||||
(_unit getHitPointDamage "HitLeftArm") +
|
||||
(_unit getHitPointDamage "HitRightArm") +
|
||||
(_unit getHitPointDamage "HitLeftLeg") +
|
||||
(_unit getHitPointDamage "HitRightLeg");
|
||||
if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then {
|
||||
_unit setHitPointDamage ["HitBody", damage _unit];
|
||||
};
|
||||
[(_this select 1)] call cba_fnc_removePerFrameHandler;
|
||||
};
|
||||
}, 0, [_unit]] call CBA_fnc_addPerFrameHandler;
|
||||
};
|
||||
_unit setVariable [QGVAR(structDamagePFH), diag_tickTime]; // Assign starting time or reset it
|
||||
};
|
||||
|
||||
_newDamage = _damage - (damage _unit);
|
||||
|
@ -6,4 +6,4 @@
|
||||
#include <windows.h>
|
||||
#else
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
4
mod.cpp
4
mod.cpp
@ -1,8 +1,8 @@
|
||||
name = "Advanced Combat Environment 3.0.0";
|
||||
name = "Advanced Combat Environment 3.0.1";
|
||||
picture = "logo_ace3_ca.paa";
|
||||
actionName = "GitHub";
|
||||
action = "https://github.com/acemod/ACE3";
|
||||
description = "ACE3 - Version 3.0.0";
|
||||
description = "ACE3 - Version 3.0.1";
|
||||
logo = "logo_ace3_ca.paa";
|
||||
logoOver = "logo_ace3_ca.paa";
|
||||
tooltip = "ACE3";
|
||||
|
@ -95,4 +95,14 @@ class CfgWeapons
|
||||
lockingTargetSound[] = {"",0,1};
|
||||
lockedTargetSound[] = {"",0,1};
|
||||
};
|
||||
|
||||
class rhs_weap_fgm148 : launch_O_Titan_F {
|
||||
ace_javelin_enabled = 1;
|
||||
weaponInfoType = "ACE_RscOptics_javelin";
|
||||
modelOptics = "\z\ace\addons\javelin\data\reticle_titan.p3d";
|
||||
|
||||
canLock = 0;
|
||||
lockingTargetSound[] = {"",0,1};
|
||||
lockedTargetSound[] = {"",0,1};
|
||||
};
|
||||
};
|
Loading…
Reference in New Issue
Block a user