Make wound assignment consistent for dll/sqf

Dll now exits on first match for threshold damage (exitWith)
Remove random wound in sqf to match dll
Fix backblast threshold order
Add lower vehiclecrash threshold
Add dll version logging
This commit is contained in:
PabstMirror 2016-02-16 12:19:18 -06:00
parent d88f10b8e0
commit f1797feead
7 changed files with 15 additions and 8 deletions

Binary file not shown.

View File

@ -651,12 +651,12 @@ class ACE_Medical_Advanced {
selectionSpecific = 0; selectionSpecific = 0;
}; };
class vehiclecrash { class vehiclecrash {
thresholds[] = {{0.25, 5}}; thresholds[] = {{0.25, 5}, {0.05, 1}};
selectionSpecific = 0; selectionSpecific = 0;
lethalDamage = 0.2; lethalDamage = 0.2;
}; };
class backblast { class backblast {
thresholds[] = {{0, 2},{0.55, 5}, {1, 6}}; thresholds[] = {{1, 6}, {0.55, 5}, {0, 2}};
selectionSpecific = 0; selectionSpecific = 0;
lethalDamage = 1; lethalDamage = 1;
}; };

View File

@ -118,7 +118,14 @@ PREP(handleCreateLitter);
GVAR(injuredUnitCollection) = []; GVAR(injuredUnitCollection) = [];
GVAR(IVBags) = []; GVAR(IVBags) = [];
DFUNC(handleDamage_assignWounds) = if ("ace_medical" callExtension "version" == "") then { DFUNC(handleDamage_woundsOld) } else { DFUNC(handleDamage_wounds)}; private _versionEx = "ace_medical" callExtension "version";
DFUNC(handleDamage_assignWounds) = if (_versionEx == "") then {
ACE_LOGINFO_1("Extension %1.dll not installed.","ace_medical");
DFUNC(handleDamage_woundsOld)
} else {
ACE_LOGINFO_2("Extension version: %1: %2","ace_medical",_versionEx);
DFUNC(handleDamage_wounds)
};
call FUNC(parseConfigForInjuries); call FUNC(parseConfigForInjuries);

View File

@ -31,8 +31,8 @@ _painToAdd = 0;
_woundsCreated = []; _woundsCreated = [];
call compile _extensionOutput; call compile _extensionOutput;
_foundIndex = -1;
{ {
_foundIndex = -1;
_toAddClassID = _x select 1; _toAddClassID = _x select 1;
_bodyPartNToAdd = _x select 2; _bodyPartNToAdd = _x select 2;
{ {

View File

@ -80,7 +80,7 @@ _painToAdd = 0;
_woundsCreated = []; _woundsCreated = [];
{ {
if (_x select 0 <= _damage) exitWith { if (_x select 0 <= _damage) exitWith {
for "_i" from 0 to (1+ floor(random(_x select 1)-1)) /* step +1 */ do { for "_i" from 0 to ((_x select 1)-1) do {
// Find the injury we are going to add. Format [ classID, allowdSelections, bloodloss, painOfInjury, minimalDamage] // Find the injury we are going to add. Format [ classID, allowdSelections, bloodloss, painOfInjury, minimalDamage]
_toAddInjury = if (random(1) >= 0.85) then {_allInjuriesForDamageType select _highestPossibleSpot} else {_allPossibleInjuries select (floor(random (count _allPossibleInjuries)));}; _toAddInjury = if (random(1) >= 0.85) then {_allInjuriesForDamageType select _highestPossibleSpot} else {_allPossibleInjuries select (floor(random (count _allPossibleInjuries)));};

View File

@ -89,8 +89,8 @@ endif()
string(TIMESTAMP ACE_BUILDSTAMP "%Y-%m-%dT%H:%M:%SZ") string(TIMESTAMP ACE_BUILDSTAMP "%Y-%m-%dT%H:%M:%SZ")
set(ACE_VERSION_MAJOR 3) set(ACE_VERSION_MAJOR 3)
set(ACE_VERSION_MINOR 4) set(ACE_VERSION_MINOR 5)
set(ACE_VERSION_REVISION 1) set(ACE_VERSION_REVISION 0)
EXECUTE_PROCESS(COMMAND git rev-parse --verify HEAD EXECUTE_PROCESS(COMMAND git rev-parse --verify HEAD
OUTPUT_VARIABLE T_ACE_VERSION_BUILD OUTPUT_VARIABLE T_ACE_VERSION_BUILD
OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_STRIP_TRAILING_WHITESPACE

View File

@ -109,10 +109,10 @@ namespace ace {
injuries::OpenWound newWound(woundID++, injuryToAdd->ID, bodyPartID, 1, injuryToAdd->bloodLoss, injuryToAdd->pain); injuries::OpenWound newWound(woundID++, injuryToAdd->ID, bodyPartID, 1, injuryToAdd->bloodLoss, injuryToAdd->pain);
injuriesToAdd.push_back(newWound); injuriesToAdd.push_back(newWound);
} }
return injuriesToAdd;
} }
++c; ++c;
} }
return injuriesToAdd;
} }
} }
return injuriesToAdd; return injuriesToAdd;