diff --git a/addons/medical/ACE_Medical_Actions.hpp b/addons/medical/ACE_Medical_Actions.hpp index 70e286f7d8..98c61a330c 100644 --- a/addons/medical/ACE_Medical_Actions.hpp +++ b/addons/medical/ACE_Medical_Actions.hpp @@ -3,8 +3,8 @@ class ACE_Head { displayName = "$STR_ACE_Interaction_Head"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 0)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,0,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; @@ -82,8 +82,8 @@ class ACE_Torso { displayName = "$STR_ACE_Interaction_Torso"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 1)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,1,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; @@ -183,8 +183,8 @@ class ACE_ArmLeft { displayName = "$STR_ACE_Interaction_ArmLeft"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 2)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,2,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; @@ -341,8 +341,8 @@ class ACE_ArmRight { displayName = "$STR_ACE_Interaction_ArmRight"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 3)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,3,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; @@ -496,8 +496,8 @@ class ACE_LegLeft { displayName = "$STR_ACE_Interaction_LegLeft"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 4)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,4,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; @@ -639,8 +639,8 @@ class ACE_LegRight { displayName = "$STR_ACE_Interaction_LegRight"; runOnHover = 1; statement = QUOTE([ARR_3(_target, true, 5)] call DFUNC(displayPatientInformation)); + ACTION_CONDITION modifierFunction = QUOTE([ARR_4(_target,_player,5,_this select 3)] call FUNC(modifyMedicalAction)); - condition = "true"; EXCEPTIONS icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; diff --git a/addons/medical/ACE_Settings.hpp b/addons/medical/ACE_Settings.hpp index 1d87803f43..ef4a4f0162 100644 --- a/addons/medical/ACE_Settings.hpp +++ b/addons/medical/ACE_Settings.hpp @@ -148,4 +148,13 @@ class ACE_Settings { typeName = "BOOL"; value = 0; }; + + class GVAR(menuTypeStyle) { + displayName = "$STR_ACE_Medical_menuTypeDisplay"; + description = "$STR_ACE_Medical_menuTypeDescription"; + typeName = "SCALAR"; + value = 0; + values[] = {"$STR_ACE_Medical_useSelection"/*, "$STR_ACE_Medical_useRadial"*/}; + // isClientSettable = 1; + }; }; diff --git a/addons/medical/CfgVehicles.hpp b/addons/medical/CfgVehicles.hpp index 179daae742..3d77a24172 100644 --- a/addons/medical/CfgVehicles.hpp +++ b/addons/medical/CfgVehicles.hpp @@ -438,6 +438,7 @@ class CfgVehicles { class ACE_Actions { // Include actions in body parts for treatment while in the open #define EXCEPTIONS exceptions[] = {}; + #define ACTION_CONDITION condition = QUOTE(GVAR(menuTypeStyle) == 0); #include "ACE_Medical_Actions.hpp" // Create a consolidates medical menu for treatment while boarded @@ -446,12 +447,14 @@ class CfgVehicles { displayName = "$STR_ACE_MEDICAL_ACTIONS_Medical"; runOnHover = 1; exceptions[] = {"isNotInside"}; - condition = QUOTE(vehicle _target != _target && vehicle _target == vehicle _player); + condition = QUOTE((vehicle _target != _target && vehicle _target == vehicle _player) || GVAR(menuTypeStyle) == 1); statement = QUOTE([ARR_3(_target, true, 0)] call DFUNC(displayPatientInformation)); icon = PATHTOF(UI\icons\medical_cross.paa); #undef EXCEPTIONS + #undef ACTION_CONDITION #define EXCEPTIONS exceptions[] = {"isNotInside"}; + #define ACTION_CONDITION condition = "true"; #include "ACE_Medical_Actions.hpp" }; class GVAR(loadPatient) { diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 17f1ec2402..1029bda77a 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1991,6 +1991,18 @@ Aberración cromática Aberration chromatique + + Style of menu (Medical) + + + Select the type of menu you prefer; default 3d selections or radial. + + + Selections (3d) + + + Radial + Scrape Kratzer