class CfgVehicles { class Man; class CAManBase: Man { class ACE_SelfActions { class ACE_Medical { displayName = CSTRING(Medical); condition = QGVAR(enableSelfActions); exceptions[] = {"isNotInside", "isNotSitting", "isNotSwimming"}; statement = QUOTE([ARR_2(_target,-1)] call FUNC(displayPatientInformation)); runOnHover = 1; icon = QPATHTOF(ui\cross.paa); #define ACTION_CONDITION condition = "true"; #include "InteractionBodyParts.hpp" #undef ACTION_CONDITION }; class ACE_Medical_Menu { displayName = CSTRING(MedicalMenu); condition = QUOTE([ARR_2(_player,_target)] call FUNC(canOpenMenu)); exceptions[] = {"isNotInside", "isNotSwimming"}; statement = QUOTE(_target call FUNC(openMenu)); icon = QPATHTOF(ui\cross.paa); modifierFunction = QUOTE(call FUNC(modifyActionTriageLevel)); }; }; class ACE_Actions { #define ACTION_CONDITION condition = QUOTE(GVAR(enableActions) == 0); #include "InteractionBodyParts.hpp" #undef ACTION_CONDITION class ACE_MainActions { modifierFunction = QUOTE(call FUNC(modifyActionTriageLevel)); class ACE_Medical_Menu { displayName = CSTRING(MedicalMenu); condition = QUOTE([ARR_2(ACE_player,_target)] call FUNC(canOpenMenu)); exceptions[] = {"isNotInside", "isNotSwimming"}; statement = QUOTE(_target call FUNC(openMenu)); icon = QPATHTOF(ui\cross.paa); modifierFunction = QUOTE(call FUNC(modifyActionTriageLevel)); }; class ACE_Medical_Radial { displayName = CSTRING(Medical); condition = QUOTE((GVAR(enableActions) == 1 || {GVAR(enableActions) != 2 && {!isNull objectParent _target && {objectParent _target isEqualTo objectParent _player}}})); exceptions[] = {"isNotInside", "isNotSitting"}; statement = QUOTE([ARR_2(_target,-1)] call FUNC(displayPatientInformation)); runOnHover = 1; icon = QPATHTOF(ui\cross.paa); #define ACTION_CONDITION condition = "true"; #include "InteractionBodyParts.hpp" #undef ACTION_CONDITION }; class ACE_LoadPatient { displayName = CSTRING(LoadPatient); condition = QUOTE(_target getVariable [ARR_2('ACE_isUnconscious',false)] && {alive _target} && {isNull objectParent _target} && {(_target call EFUNC(common,nearestVehiclesFreeSeat)) isNotEqualTo []}); exceptions[] = {"isNotDragging", "isNotCarrying"}; statement = QUOTE([ARR_2(_player,_target)] call EFUNC(medical_treatment,loadUnit)); icon = QPATHTOF(ui\cross.paa); insertChildren = QUOTE(call DEFUNC(medical_treatment,addLoadPatientActions)); }; class ACE_UnloadPatient { displayName = CSTRING(UnloadPatient); condition = QUOTE((_target getVariable [ARR_2('ACE_isUnconscious',false)] || {!alive _target}) && {!isNull objectParent _target} && {isNull objectParent _player}); exceptions[] = {"isNotDragging", "isNotCarrying", "isNotInside"}; statement = QUOTE([ARR_2(_player,_target)] call EFUNC(medical_treatment,unloadUnit)); icon = QPATHTOF(ui\cross.paa); }; }; }; }; };