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:
KoffeinFlummi 2015-05-20 19:31:55 +02:00
commit f16f282abd
7 changed files with 59 additions and 20 deletions

View File

@ -5,8 +5,8 @@
#define MAJOR 3 #define MAJOR 3
#define MINOR 0 #define MINOR 0
#define PATCHLVL 0 #define PATCHLVL 1
#define BUILD 3 #define BUILD 0
#define VERSION MAJOR.MINOR.PATCHLVL.BUILD #define VERSION MAJOR.MINOR.PATCHLVL.BUILD
#define VERSION_AR MAJOR,MINOR,PATCHLVL,BUILD #define VERSION_AR MAJOR,MINOR,PATCHLVL,BUILD

View File

@ -276,5 +276,5 @@ if (hasInterface) then {
["PlayerJip", { ["PlayerJip", {
diag_log format["[ACE] JIP Medical init for player"]; diag_log format["[ACE] JIP Medical init for player"];
[player] call FUNC(init); [player] call FUNC(init);
}] call FUNC(addEventHandler); }] call EFUNC(common,addEventHandler);
}; };

View File

@ -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 { if ((_unit getVariable [QGVAR(preventInstaDeath), GVAR(preventInstaDeath)])) exitwith {
_damageReturn = 0.9; _damageReturn = 0.9;
}; };
@ -96,6 +96,27 @@ if (_unit getVariable [QGVAR(preventInstaDeath), GVAR(preventInstaDeath)]) exitW
[{ [{
[_this select 0, true] call FUNC(setUnconscious); [_this select 0, true] call FUNC(setUnconscious);
}, [_unit]] call EFUNC(common,execNextFrame); }, [_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 0.89
}; };
_damageReturn min 0.89; _damageReturn min 0.89;

View File

@ -48,10 +48,14 @@ if (diag_frameno > (_unit getVariable [QGVAR(basic_frameNo), -3]) + 2) then {
_unit setVariable [QGVAR(hitPoints), []]; _unit setVariable [QGVAR(hitPoints), []];
_unit setVariable [QGVAR(damages), []]; _unit setVariable [QGVAR(damages), []];
_unit setVariable [QGVAR(structDamage), 0]; _unit setVariable [QGVAR(structDamage), 0];
if (isnil {_unit getvariable QGVAR(structDamagePFH)}) then {
// Assign orphan structural damage to torso // Assign orphan structural damage to torso
[{ [{
private ["_unit", "_damagesum"]; private ["_unit", "_damagesum"];
_unit = _this select 0; _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") + _damagesum = (_unit getHitPointDamage "HitHead") +
(_unit getHitPointDamage "HitBody") + (_unit getHitPointDamage "HitBody") +
(_unit getHitPointDamage "HitLeftArm") + (_unit getHitPointDamage "HitLeftArm") +
@ -61,7 +65,11 @@ if (diag_frameno > (_unit getVariable [QGVAR(basic_frameNo), -3]) + 2) then {
if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then { if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then {
_unit setHitPointDamage ["HitBody", damage _unit]; _unit setHitPointDamage ["HitBody", damage _unit];
}; };
}, [_unit], 2, 0.1] call EFUNC(common,waitAndExecute); [(_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); _newDamage = _damage - (damage _unit);

View File

@ -1,8 +1,8 @@
name = "Advanced Combat Environment 3.0.0"; name = "Advanced Combat Environment 3.0.1";
picture = "logo_ace3_ca.paa"; picture = "logo_ace3_ca.paa";
actionName = "GitHub"; actionName = "GitHub";
action = "https://github.com/acemod/ACE3"; action = "https://github.com/acemod/ACE3";
description = "ACE3 - Version 3.0.0"; description = "ACE3 - Version 3.0.1";
logo = "logo_ace3_ca.paa"; logo = "logo_ace3_ca.paa";
logoOver = "logo_ace3_ca.paa"; logoOver = "logo_ace3_ca.paa";
tooltip = "ACE3"; tooltip = "ACE3";

View File

@ -95,4 +95,14 @@ class CfgWeapons
lockingTargetSound[] = {"",0,1}; lockingTargetSound[] = {"",0,1};
lockedTargetSound[] = {"",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};
};
}; };