diff --git a/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf b/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf index 93472f1d7a..b0de1f6e4a 100644 --- a/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf +++ b/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf @@ -122,8 +122,10 @@ private _bodyPartVisParams = [_unit, false, false, false, false]; // params arra _critialDamage = true; }; if ([_unit, _bodyPartNToAdd, _bodyPartDamage, _woundDamage] call FUNC(determineIfFatal)) then { - TRACE_1("determineIfFatal returned true",_woundDamage); - [QEGVAR(medical,FatalInjury), _unit] call CBA_fnc_localEvent; + if (!isPlayer _unit || {random 1 < EGVAR(medical,deathChance)}) then { + TRACE_1("determineIfFatal returned true",_woundDamage); + [QEGVAR(medical,FatalInjury), _unit] call CBA_fnc_localEvent; + }; }; #ifdef DEBUG_MODE_FULL diff --git a/addons/medical_damage/initSettings.sqf b/addons/medical_damage/initSettings.sqf index 12806a46a2..14dac50f1a 100644 --- a/addons/medical_damage/initSettings.sqf +++ b/addons/medical_damage/initSettings.sqf @@ -33,3 +33,12 @@ [0, 1, 0.1, 2, true], true ] call CBA_fnc_addSetting; + +[ + QEGVAR(medical,deathChance), + "SLIDER", + [LSTRING(deathChance_DisplayName), LSTRING(deathChance_Description)], + ELSTRING(medical,Category), + [0, 1, 1, 2, true], + true +] call CBA_fnc_addSetting; diff --git a/addons/medical_damage/stringtable.xml b/addons/medical_damage/stringtable.xml index 4c74c96db1..ae56dc79c8 100644 --- a/addons/medical_damage/stringtable.xml +++ b/addons/medical_damage/stringtable.xml @@ -697,5 +697,11 @@ Szansa że osoba straci przytomność gdy jej ból jest powyżej tolerowalnego progu podczas otrzymywania obrażeń. ユニットがダメージを受けた時に痛みが許容しきい値を超えた場合、気絶をする確立を設定します。 + + Fatal Injury Death Chance + + + The chance of dying to a fatal injury. +