diff --git a/addons/medical/initSettings.sqf b/addons/medical/initSettings.sqf index 805b56e830..22a36b6616 100644 --- a/addons/medical/initSettings.sqf +++ b/addons/medical/initSettings.sqf @@ -15,9 +15,9 @@ private _categoryArray = [LELSTRING(medical,Category_DisplayName), "?"]; [ QEGVAR(medical,limping), "LIST", - ["limping"],//LSTRING(limping_DisplayName), LSTRING(limping_Description)], + LSTRING(setting_limping_DisplayName), LSTRING(setting_limping_Description)], _categoryArray, - [[0,1,2],["Disabled", "Limp on open wound", "Limp on open or bandaged wound"], 1], // [values, titles, defaultIndex] + [[0,1,2],[LELSTRING(common,disabled), LLSTRING(setting_limping_limpOnOpenWounds), LLSTRING(setting_limping_limpRequiresStitching)], 1], // [values, titles, defaultIndex] true, // isGlobal {[QEGVAR(medical,limping), _this] call EFUNC(common,cbaSettings_settingChanged)}, true // Needs mission restart @@ -25,9 +25,9 @@ private _categoryArray = [LELSTRING(medical,Category_DisplayName), "?"]; [ QEGVAR(medical,fractures), "LIST", - ["fractures"],//LSTRING(limping_DisplayName), LSTRING(limping_Description)], + LSTRING(setting_fractures_DisplayName), LSTRING(setting_fractures_Description)], _categoryArray, - [[0,1,2],["Disabled", "Splints fully heal", "Splints heal (but cannot sprint)"], 1], // [values, titles, defaultIndex] + [[0,1,2],[LELSTRING(common,disabled), LLSTRING(setting_fractures_splintHealsFully), LLSTRING(setting_fractures_splintHasEffects)]"Splints fully heal", "Splints heal (but cannot sprint)"], 1], // [values, titles, defaultIndex] true, // isGlobal {[QEGVAR(medical,fractures), _this] call EFUNC(common,cbaSettings_settingChanged)}, true // Needs mission restart diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 081e000d92..722628bf42 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -481,5 +481,29 @@ 뚜껑 닫기 Zamknij pokrywę + + Limping + + + Limp when unit has leg wounds...(todo) + + + Limp on open wounds + + + Limp on open or bandaged wounds + + + Fractues + + + Limp fractures... (todo) + + + Splints fully heal fractures + + + Splints heal (but cannot sprint) + diff --git a/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf b/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf index c6eeab01e9..87fd6ef42e 100644 --- a/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf +++ b/addons/medical_damage/functions/fnc_woundsHandlerSQF.sqf @@ -139,6 +139,7 @@ private _bodyPartVisParams = [_unit, false, false, false, false]; // params arra private _fractures = _unit getVariable [QEGVAR(medical,fractures), [0,0,0,0,0,0]]; _fractures set [_bodyPartNToAdd, 1]; _unit setVariable [QEGVAR(medical,fractures), _fractures, true]; + [QEGVAR(medical,fracture), [_unit, _bodyPartNToAdd]] call CBA_fnc_localEvent; // local event for fracture _updateDamageEffects = true; }; case (_causeLimping && {EGVAR(medical,limping) > 0} && {_bodyPartNToAdd > 3} && {_woundDamage > LIMPING_DAMAGE_THRESHOLD}): { diff --git a/addons/medical_gui/functions/fnc_updateBodyImage.sqf b/addons/medical_gui/functions/fnc_updateBodyImage.sqf index 5488e6d055..6c4ee785fa 100644 --- a/addons/medical_gui/functions/fnc_updateBodyImage.sqf +++ b/addons/medical_gui/functions/fnc_updateBodyImage.sqf @@ -42,14 +42,19 @@ private _bodyPartBloodLoss = [0, 0, 0, 0, 0, 0]; if (_fractureIDC != -1) then { private _ctrlBone = _ctrlGroup controlsGroupCtrl _fractureIDC; switch (_fractures select _forEachIndex) do { - case (0): {_ctrlBone ctrlShow false;}; + case (0): { + _ctrlBone ctrlShow false; + }; case (1): { _ctrlBone ctrlShow true; _ctrlBone ctrlSetTextColor [1, 0, 0, 1]; }; case (-1): { + if (EGVAR(medical,fractures) == 2) then { _ctrlBone ctrlShow true; _ctrlBone ctrlSetTextColor [0, 0, 1, 1]; + } else { + _ctrlBone ctrlShow false; }; }; }; diff --git a/addons/medical_gui/functions/fnc_updateInjuryList.sqf b/addons/medical_gui/functions/fnc_updateInjuryList.sqf index 1876e30c68..c5cd351294 100644 --- a/addons/medical_gui/functions/fnc_updateInjuryList.sqf +++ b/addons/medical_gui/functions/fnc_updateInjuryList.sqf @@ -59,8 +59,12 @@ if (HAS_TOURNIQUET_APPLIED_ON(_target,_selectionN)) then { _entries pushBack [localize LSTRING(Status_Tourniquet_Applied), [0.77, 0.51, 0.08, 1]]; }; switch ((_target getVariable [QEGVAR(medical,fractures), [0,0,0,0,0,0]]) select _selectionN) do { - case (1): {_entries pushBack ["fracture!", [1, 0, 0, 1]];}; - case (-1): {_entries pushBack ["splinted", [1, 1, 1, 1]];}; +case (1): {_entries pushBack [localize LSTRING(Status_Fractured), [1, 0, 0, 1]];}; +case (-1): { + if (EGVAR(medical,fractures) == 2) then { // Ignore if the split has no effect + _entries pushBack [localize LSTRING(Status_SplintApplied), [1, 1, 1, 1]]; + }; + }; }; // Indicate the amount of pain the unit is in diff --git a/addons/medical_gui/stringtable.xml b/addons/medical_gui/stringtable.xml index 3359f08bd5..98a27cc566 100644 --- a/addons/medical_gui/stringtable.xml +++ b/addons/medical_gui/stringtable.xml @@ -775,6 +775,12 @@ 大量失血 大量失血 + + Fractured + + + Splint Applied + diff --git a/addons/medical_treatment/ACE_Medical_Treatment_Actions.hpp b/addons/medical_treatment/ACE_Medical_Treatment_Actions.hpp index ef33268ed3..9769c1a5be 100644 --- a/addons/medical_treatment/ACE_Medical_Treatment_Actions.hpp +++ b/addons/medical_treatment/ACE_Medical_Treatment_Actions.hpp @@ -85,8 +85,8 @@ class GVAR(Actions) { }; // --- splint class Splint: BasicBandage { - displayName = "Splint"; // CSTRING(Apply_Tourniquet); - displayNameProgress = "Splinting"; // CSTRING(Applying_Tourniquet); + displayName = CSTRING(Apply_Splint); + displayNameProgress = CSTRING(Applying_Splint); category = "bandage"; icon = QPATHTOEF(medical_gui,ui\splint.paa); allowedSelections[] = {"LeftArm", "RightArm", "LeftLeg", "RightLeg"}; diff --git a/addons/medical_treatment/CfgWeapons.hpp b/addons/medical_treatment/CfgWeapons.hpp index 1b4cf41fdc..c2fdb2b5d0 100644 --- a/addons/medical_treatment/CfgWeapons.hpp +++ b/addons/medical_treatment/CfgWeapons.hpp @@ -73,11 +73,10 @@ class CfgWeapons { class ACE_splint: ACE_ItemCore { scope = 2; author = ECSTRING(common,ACETeam); - displayName = "splint"; + displayName = CSTRING(splint_Display); picture = QPATHTOF(ui\items\tourniquet_x_ca.paa); model = QPATHTOF(data\tourniquet.p3d); - // descriptionShort = CSTRING(Tourniquet_Desc_Short); - // descriptionUse = CSTRING(Tourniquet_Desc_Use); + descriptionShort = CSTRING(splint_Desc_Short); class ItemInfo: CBA_MiscItem_ItemInfo { mass = 2; }; diff --git a/addons/medical_treatment/stringtable.xml b/addons/medical_treatment/stringtable.xml index 75b9dffc8d..01fd092717 100644 --- a/addons/medical_treatment/stringtable.xml +++ b/addons/medical_treatment/stringtable.xml @@ -765,6 +765,12 @@ 用于压迫静脉与动脉的血液流动, 达到减缓失血速度的目的 用於壓迫靜脈與動脈的血液流動, 達到減緩失血速度的目的 + + Splint + + + Stabilizes a fractured limb + Morphine autoinjector Morphium-Autoinjektor @@ -1960,6 +1966,12 @@ 移除军用止血带 移除軍用止血帶 + + Apply Splint + + + Applying Splint... + Diagnose Diagnose