ACE3/addons/medical/CfgVehicles.hpp

862 lines
32 KiB
C++
Raw Normal View History

2015-02-06 12:47:17 +00:00
#define MEDICAL_ACTION_DISTANCE 1.75
2015-02-06 12:47:17 +00:00
class CfgVehicles {
2015-03-06 21:54:44 +00:00
class Logic;
class Module_F: Logic {
class ArgumentsBaseUnits {
};
};
2015-03-22 16:05:31 +00:00
class ACE_Module;
class ACE_moduleMedicalSettings: ACE_Module {
2015-03-06 21:54:44 +00:00
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_Module_DisplayName);
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
2015-03-06 21:54:44 +00:00
category = "ACE_medical";
function = QUOTE(DFUNC(moduleMedicalSettings));
functionPriority = 1;
isGlobal = 1;
isSingular = 1;
2015-03-06 21:54:44 +00:00
isTriggerActivated = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
2015-03-08 11:05:52 +00:00
class Arguments {
2015-03-06 21:54:44 +00:00
class level {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_level_DisplayName);
2015-06-05 03:51:40 +00:00
description = CSTRING(MedicalSettings_level_Description);
2015-03-06 21:54:44 +00:00
typeName = "NUMBER";
class values {
class normal {
2015-05-27 19:58:35 +00:00
name = CSTRING(MedicalSettings_basic);
2015-03-07 12:06:33 +00:00
value = 1;
2015-03-06 21:54:44 +00:00
default = 1;
};
class full {
2015-05-27 19:58:35 +00:00
name = CSTRING(MedicalSettings_advanced);
2015-03-07 12:06:33 +00:00
value = 2;
2015-03-06 21:54:44 +00:00
};
};
};
2015-04-25 20:20:28 +00:00
class medicSetting {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_medicSetting_DisplayName);
description = CSTRING(MedicalSettings_medicSetting_Description);
2015-03-08 11:05:52 +00:00
typeName = "NUMBER";
class values {
2015-04-25 20:20:28 +00:00
class disable {
2015-05-27 19:58:35 +00:00
name = CSTRING(MedicalSettings_medicSetting_disable);
2015-03-08 11:05:52 +00:00
value = 0;
};
2015-04-25 20:20:28 +00:00
class normal {
2015-05-27 19:58:35 +00:00
name = CSTRING(MedicalSettings_basic);
2015-03-08 11:05:52 +00:00
value = 1;
2015-04-25 20:20:28 +00:00
default = 1;
};
class full {
2015-05-27 19:58:35 +00:00
name = CSTRING(MedicalSettings_advanced);
2015-04-25 20:20:28 +00:00
value = 2;
2015-03-08 11:05:52 +00:00
};
};
};
class increaseTrainingInLocations {
displayName = CSTRING(MedicalSettings_increaseTrainingInLocations_DisplayName);
description = CSTRING(MedicalSettings_increaseTrainingInLocations_Description);
typeName = "BOOL";
defaultValue = 0;
};
2015-04-25 20:20:28 +00:00
class allowLitterCreation {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_allowLitterCreation_DisplayName);
description = CSTRING(MedicalSettings_allowLitterCreation_Description);
2015-03-08 11:05:52 +00:00
typeName = "BOOL";
defaultValue = 1;
};
2015-04-25 20:20:28 +00:00
class litterCleanUpDelay {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_litterCleanUpDelay_DisplayName);
description = CSTRING(MedicalSettings_litterCleanUpDelay_Description);
2015-04-25 20:20:28 +00:00
typeName = "NUMBER";
defaultValue = 1800;
};
2015-03-08 11:05:52 +00:00
class enableScreams {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_enableScreams_DisplayName);
description = CSTRING(MedicalSettings_enableScreams_Description);
2015-03-08 11:05:52 +00:00
typeName = "BOOL";
defaultValue = 1;
};
class playerDamageThreshold {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_playerDamageThreshold_DisplayName);
description = CSTRING(MedicalSettings_playerDamageThreshold_Description);
2015-03-08 11:05:52 +00:00
typeName = "NUMBER";
defaultValue = 1;
};
class AIDamageThreshold {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_AIDamageThreshold_DisplayName);
description = CSTRING(MedicalSettings_AIDamageThreshold_Description);
2015-03-08 11:05:52 +00:00
typeName = "NUMBER";
defaultValue = 1;
};
class enableUnconsciousnessAI {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_enableUnconsciousnessAI_DisplayName);
description = CSTRING(MedicalSettings_enableUnconsciousnessAI_Description);
2015-03-06 21:54:44 +00:00
typeName = "NUMBER";
class values {
class disable {
name = ECSTRING(common,Disabled);
2015-03-07 12:06:33 +00:00
value = 0;
2015-03-06 21:54:44 +00:00
};
class normal {
2015-04-30 20:16:45 +00:00
name = "50/50";
2015-03-07 12:06:33 +00:00
value = 1;
2015-03-06 21:54:44 +00:00
default = 1;
};
2015-04-30 20:16:45 +00:00
class full {
name = ECSTRING(common,Enabled);
2015-03-07 12:06:33 +00:00
value = 2;
2015-03-06 21:54:44 +00:00
};
};
};
2015-06-08 18:12:16 +00:00
class remoteControlledAI {
displayName = CSTRING(MedicalSettings_remoteControlledAI_DisplayName);
description = CSTRING(MedicalSettings_remoteControlledAI_Description);
typeName = "BOOL";
defaultValue = 1;
};
2015-03-08 11:05:52 +00:00
class preventInstaDeath {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_preventInstaDeath_DisplayName);
description = CSTRING(MedicalSettings_preventInstaDeath_Description);
2015-03-08 11:05:52 +00:00
typeName = "BOOL";
defaultValue = 0;
};
class bleedingCoefficient {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_bleedingCoefficient_DisplayName);
description = CSTRING(MedicalSettings_bleedingCoefficient_Description);
typeName = "NUMBER";
defaultValue = 1;
};
2015-04-22 20:29:31 +00:00
class painCoefficient {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_painCoefficient_DisplayName);
description = CSTRING(MedicalSettings_painCoefficient_Description);
2015-04-22 20:29:31 +00:00
typeName = "NUMBER";
defaultValue = 1;
};
class keepLocalSettingsSynced {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(MedicalSettings_keepLocalSettingsSynced_DisplayName);
description = CSTRING(MedicalSettings_keepLocalSettingsSynced_Description);
typeName = "BOOL";
defaultValue = 1;
};
2015-03-08 11:05:52 +00:00
};
2015-03-08 11:05:52 +00:00
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(MedicalSettings_Module_Description);
2015-03-08 11:05:52 +00:00
sync[] = {};
};
};
2015-04-25 20:20:28 +00:00
class ACE_moduleAdvancedMedicalSettings: ACE_Module {
2015-03-08 11:05:52 +00:00
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_Module_DisplayName);
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
2015-03-08 11:05:52 +00:00
category = "ACE_medical";
2015-04-25 20:20:28 +00:00
function = QUOTE(FUNC(moduleAdvancedMedicalSettings));
2015-03-08 11:05:52 +00:00
functionPriority = 10;
isGlobal = 2;
isSingular = 1;
2015-03-08 11:05:52 +00:00
isTriggerActivated = 0;
isDisposable = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
2015-03-08 11:05:52 +00:00
class Arguments {
2015-04-25 20:20:28 +00:00
class enableFor {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_enableFor_DisplayName);
description = CSTRING(AdvancedMedicalSettings_enableFor_Description);
2015-03-06 21:54:44 +00:00
typeName = "NUMBER";
class values {
2015-04-25 20:20:28 +00:00
class playableUnits {
name = CSTRING(playeronly);
2015-03-06 21:54:44 +00:00
value = 0;
2015-03-08 11:05:52 +00:00
default = 1;
};
2015-04-25 20:20:28 +00:00
class playableUnitsAndAI {
name = CSTRING(playersandai);
2015-04-25 20:20:28 +00:00
value = 1;
2015-03-06 21:54:44 +00:00
};
};
};
2015-04-25 20:20:28 +00:00
class enableAdvancedWounds {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_enableAdvancedWounds_DisplayName);
description = CSTRING(AdvancedMedicalSettings_enableAdvancedWounds_Description);
2015-03-08 11:05:52 +00:00
typeName = "BOOL";
2015-04-25 20:20:28 +00:00
defaultValue = 0;
2015-03-08 11:05:52 +00:00
};
2015-04-25 20:20:28 +00:00
class enableVehicleCrashes {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_enableVehicleCrashes_DisplayName);
description = CSTRING(AdvancedMedicalSettings_enableVehicleCrashes_Description);
typeName = "BOOL";
2015-03-08 11:05:52 +00:00
defaultValue = 1;
};
class medicSetting_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_medicSetting_PAK_DisplayName);
description = CSTRING(AdvancedMedicalSettings_medicSetting_PAK_Description);
typeName = "NUMBER";
class values {
2015-05-27 19:58:35 +00:00
class anyone { name = CSTRING(AdvancedMedicalSettings_anyone); value = 0; };
class Medic { name = CSTRING(AdvancedMedicalSettings_Medic); value = 1; default = 1; };
class Special { name = CSTRING(AdvancedMedicalSettings_Special); value = 2; };
};
};
class consumeItem_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_consumeItem_PAK_DisplayName);
description = CSTRING(AdvancedMedicalSettings_consumeItem_PAK_Description);
typeName = "NUMBER";
class values {
class keep { name = ECSTRING(common,No); value = 0; };
class remove { name = ECSTRING(common,Yes); value = 1; default = 1; };
};
};
class useCondition_PAK {
displayName = CSTRING(AdvancedMedicalSettings_useCondition_PAK_DisplayName);
description = CSTRING(AdvancedMedicalSettings_useCondition_PAK_Description);
typeName = "NUMBER";
class values {
class AnyTime { name = CSTRING(AnyTime); value = 0; };
class Stable { name = CSTRING(Stable); value = 1; default = 1; };
};
};
class useLocation_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_useLocation_PAK_DisplayName);
description = CSTRING(AdvancedMedicalSettings_useLocation_PAK_Description);
typeName = "NUMBER";
class values {
2015-05-27 19:58:35 +00:00
class anywhere { name = CSTRING(AdvancedMedicalSettings_anywhere); value = 0; };
class vehicle { name = CSTRING(AdvancedMedicalSettings_vehicle); value = 1; };
class facility { name = CSTRING(AdvancedMedicalSettings_facility); value = 2; };
class vehicleAndFacility { name = CSTRING(AdvancedMedicalSettings_vehicleAndFacility); value = 3; default = 1; };
class disabled { name = ECSTRING(common,Disabled); value = 4;};
};
};
class medicSetting_SurgicalKit: medicSetting_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_medicSetting_SurgicalKit_DisplayName);
description = CSTRING(AdvancedMedicalSettings_medicSetting_SurgicalKit_Description);
};
class consumeItem_SurgicalKit: consumeItem_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_consumeItem_SurgicalKit_DisplayName);
description = CSTRING(AdvancedMedicalSettings_consumeItem_SurgicalKit_Description);
};
class useLocation_SurgicalKit: useLocation_PAK {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AdvancedMedicalSettings_useLocation_SurgicalKit_DisplayName);
description = CSTRING(AdvancedMedicalSettings_useLocation_SurgicalKit_Description);
};
class useCondition_SurgicalKit: useCondition_PAK {
displayName = CSTRING(AdvancedMedicalSettings_useCondition_SurgicalKit_DisplayName);
description = CSTRING(AdvancedMedicalSettings_useCondition_SurgicalKit_Description);
class values {
class AnyTime { name = CSTRING(AnyTime); value = 0; default = 1; };
class Stable { name = CSTRING(Stable); value = 1; };
};
};
class healHitPointAfterAdvBandage {
displayName = CSTRING(AdvancedMedicalSettings_healHitPointAfterAdvBandage_DisplayName);
description = CSTRING(AdvancedMedicalSettings_healHitPointAfterAdvBandage_Description);
typeName = "BOOL";
defaultValue = 0;
};
class painIsOnlySuppressed {
displayName = CSTRING(AdvancedMedicalSettings_painIsOnlySuppressed_DisplayName);
description = CSTRING(AdvancedMedicalSettings_painIsOnlySuppressed_Description);
typeName = "BOOL";
defaultValue = 1;
};
2015-03-06 21:54:44 +00:00
};
2015-03-06 21:54:44 +00:00
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(AdvancedMedicalSettings_Module_Description);
2015-03-06 21:54:44 +00:00
sync[] = {};
};
};
2015-04-25 20:20:28 +00:00
class ACE_moduleReviveSettings: ACE_Module {
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(ReviveSettings_Module_DisplayName);
2015-04-25 20:20:28 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
category = "ACE_medical";
function = QUOTE(DFUNC(moduleReviveSettings));
functionPriority = 1;
isGlobal = 1;
isSingular = 1;
2015-04-25 20:20:28 +00:00
isTriggerActivated = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
2015-04-25 20:20:28 +00:00
class Arguments {
class enableRevive {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(ReviveSettings_enableRevive_DisplayName);
description = CSTRING(ReviveSettings_enableRevive_Description);
2015-04-29 20:04:46 +00:00
typeName = "NUMBER";
2015-04-25 20:20:28 +00:00
defaultValue = 0;
2015-04-29 20:04:46 +00:00
class values {
class disable { name = ECSTRING(common,Disabled); value = 0; default = 1;};
class playerOnly { name = CSTRING(playeronly); value = 1; };
class playerAndAI { name = CSTRING(playersandai); value = 2; };
2015-04-29 20:04:46 +00:00
};
2015-04-25 20:20:28 +00:00
};
class maxReviveTime {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(ReviveSettings_maxReviveTime_DisplayName);
description = CSTRING(ReviveSettings_maxReviveTime_Description);
2015-04-25 20:20:28 +00:00
typeName = "NUMBER";
defaultValue = 120;
};
class amountOfReviveLives {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(ReviveSettings_amountOfReviveLives_DisplayName);
description = CSTRING(ReviveSettings_amountOfReviveLives_Description);
2015-04-25 20:20:28 +00:00
typeName = "NUMBER";
defaultValue = -1;
};
};
2015-04-25 20:20:28 +00:00
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(ReviveSettings_Module_Description);
2015-04-25 20:20:28 +00:00
sync[] = {};
};
};
class ACE_moduleAssignMedicRoles: Module_F {
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicRoles_Module_DisplayName);
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
category = "ACE_medical";
function = QUOTE(FUNC(moduleAssignMedicRoles));
functionPriority = 10;
isGlobal = 2;
isTriggerActivated = 0;
isDisposable = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
2015-03-08 11:05:52 +00:00
class Arguments {
class EnableList {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicRoles_EnableList_DisplayName);
description = CSTRING(AssignMedicRoles_EnableList_Description);
defaultValue = "";
2015-03-08 11:05:52 +00:00
typeName = "STRING";
};
class role {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicRoles_role_DisplayName);
description = CSTRING(AssignMedicRoles_role_Description);
typeName = "NUMBER";
class values {
class none {
2015-05-27 19:58:35 +00:00
name = CSTRING(AssignMedicRoles_role_none);
value = 0;
};
class medic {
2015-05-27 19:58:35 +00:00
name = CSTRING(AssignMedicRoles_role_medic);
value = 1;
default = 1;
};
class doctor {
2015-05-27 19:58:35 +00:00
name = CSTRING(AssignMedicRoles_role_doctor);
2015-05-01 20:49:13 +00:00
value = 2;
};
};
};
};
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(AssignMedicRoles_Module_Description);
sync[] = {};
};
};
2015-03-06 21:54:44 +00:00
2015-03-08 11:05:52 +00:00
class ACE_moduleAssignMedicVehicle: Module_F {
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicVehicle_Module_DisplayName);
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
category = "ACE_medical";
2015-03-08 11:05:52 +00:00
function = QUOTE(FUNC(moduleAssignMedicalVehicle));
functionPriority = 10;
isGlobal = 2;
isTriggerActivated = 0;
isDisposable = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
2015-03-08 11:05:52 +00:00
class Arguments {
class EnableList {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicVehicle_EnableList_DisplayName);
description = CSTRING(AssignMedicVehicle_EnableList_Description);
defaultValue = "";
2015-03-08 11:05:52 +00:00
typeName = "STRING";
};
class enabled {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicVehicle_enabled_DisplayName);
description = CSTRING(AssignMedicVehicle_enabled_Description);
typeName = "NUMBER";
class values {
class none {
2015-08-08 16:11:28 +00:00
name = ECSTRING(common,No);
value = 0;
};
class medic {
2015-08-08 16:11:28 +00:00
name = ECSTRING(common,Yes);
value = 1;
default = 1;
};
};
};
};
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(AssignMedicVehicle_Module_Description);
sync[] = {};
};
};
class ACE_moduleAssignMedicalFacility: Module_F {
scope = 2;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicalFacility_Module_DisplayName);
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Medical_ca.paa));
category = "ACE_medical";
function = QUOTE(FUNC(moduleAssignMedicalFacility));
functionPriority = 10;
isGlobal = 2;
isTriggerActivated = 0;
isDisposable = 0;
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
class Arguments {
class enabled {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(AssignMedicalFacility_enabled_DisplayName);
description = CSTRING(AssignMedicalFacility_enabled_Description);
typeName = "BOOL";
};
};
class ModuleDescription {
2015-05-27 19:58:35 +00:00
description = CSTRING(AssignMedicalFacility_Module_Description);
sync[] = {};
};
};
2015-03-06 21:54:44 +00:00
#define ARM_LEG_ARMOR_DEFAULT 1
#define ARM_LEG_ARMOR_BETTER 1
#define ARM_LEG_ARMOR_CSAT 1
2015-02-28 14:19:49 +00:00
#define ADD_ACE_HITPOINTS(ARM_ARMOR,LEG_ARMOR) \
class HitLeftArm { \
armor = ARM_ARMOR; \
material = -1; \
name = "hand_l"; \
passThrough = 1; \
radius = 0.08; \
explosionShielding = 1; \
visual = "injury_hands"; \
minimalHit = 0.01; \
}; \
class HitRightArm: HitLeftArm { \
name = "hand_r"; \
}; \
class HitLeftLeg { \
armor = LEG_ARMOR; \
material = -1; \
name = "leg_l"; \
passThrough = 1; \
radius = 0.1; \
explosionShielding = 1; \
visual = "injury_legs"; \
minimalHit = 0.01; \
}; \
class HitRightLeg: HitLeftLeg { \
name = "leg_r"; \
};
class Man;
class CAManBase: Man {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_DEFAULT,ARM_LEG_ARMOR_DEFAULT)
2015-02-28 14:19:49 +00:00
};
2015-03-22 16:28:48 +00:00
class ACE_SelfActions {
#include "ACE_Medical_SelfActions.hpp"
2015-03-22 16:28:48 +00:00
};
2015-02-28 19:46:36 +00:00
class ACE_Actions {
2015-04-04 22:41:12 +00:00
// Include actions in body parts for treatment while in the open
#define EXCEPTIONS exceptions[] = {};
#define ACTION_CONDITION condition = QUOTE(GVAR(menuTypeStyle) == 0);
2015-04-04 22:41:12 +00:00
#include "ACE_Medical_Actions.hpp"
// Create a consolidates medical menu for treatment while boarded
class ACE_MainActions {
class Medical {
displayName = CSTRING(Actions_Medical);
2015-04-04 22:41:12 +00:00
runOnHover = 1;
exceptions[] = {"isNotInside"};
condition = QUOTE((vehicle _target != _target && vehicle _target == vehicle _player) || GVAR(menuTypeStyle) == 1);
2015-04-04 22:41:12 +00:00
statement = QUOTE([ARR_3(_target, true, 0)] call DFUNC(displayPatientInformation));
icon = PATHTOF(UI\icons\medical_cross.paa);
2015-04-08 19:38:22 +00:00
#undef EXCEPTIONS
#undef ACTION_CONDITION
2015-04-04 22:41:12 +00:00
#define EXCEPTIONS exceptions[] = {"isNotInside"};
#define ACTION_CONDITION condition = "true";
2015-04-04 22:41:12 +00:00
#include "ACE_Medical_Actions.hpp"
};
class GVAR(loadPatient) {
displayName = CSTRING(LoadPatient);
distance = 5;
condition = QUOTE(_target getVariable[ARR_2(QUOTE(QUOTE(ACE_isUnconscious)),false)] && vehicle _target == _target);
statement = QUOTE([ARR_2(_player, _target)] call DFUNC(actionLoadUnit));
showDisabled = 0;
priority = 2;
icon = PATHTOF(UI\icons\medical_cross.paa);
exceptions[] = {"isNotDragging", "isNotCarrying"};
};
class GVAR(UnLoadPatient) {
displayName = CSTRING(UnloadPatient);
distance = 5;
condition = QUOTE(_target getVariable[ARR_2(QUOTE(QUOTE(ACE_isUnconscious)),false)] && vehicle _target != _target);
statement = QUOTE([ARR_2(_player, _target)] call DFUNC(actionUnloadUnit));
showDisabled = 0;
priority = 2;
icon = PATHTOF(UI\icons\medical_cross.paa);
exceptions[] = {"isNotDragging", "isNotCarrying", "isNotInside"};
};
2015-02-28 19:46:36 +00:00
};
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class SoldierWB: CAManBase {};
class SoldierEB: CAManBase {};
class SoldierGB: CAManBase {};
2015-02-06 12:47:17 +00:00
2015-02-28 14:19:49 +00:00
class B_Soldier_base_F: SoldierWB {};
2015-02-06 12:47:17 +00:00
2015-02-28 14:19:49 +00:00
class B_Soldier_04_f: B_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class B_Soldier_05_f: B_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class I_Soldier_base_F: SoldierGB {};
2015-02-06 12:47:17 +00:00
2015-02-28 14:19:49 +00:00
class I_Soldier_03_F: I_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class I_Soldier_04_F: I_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class O_Soldier_base_F: SoldierEB {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
2015-02-28 14:19:49 +00:00
class O_Soldier_diver_base_F: O_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER)
};
};
2015-02-28 14:19:49 +00:00
class O_Soldier_02_F: O_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER)
};
};
2015-02-28 14:19:49 +00:00
class O_officer_F: O_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER)
2015-02-28 14:19:49 +00:00
};
2015-02-06 12:47:17 +00:00
};
//These VR guys already have limb hitpoints that we should be able to use
//Note: the selections are a little weird, eg: class leg_l {name = "leg_l";};
// class B_Soldier_VR_F: B_Soldier_base_F { {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
// class O_Soldier_VR_F: O_Soldier_base_F { {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
// class I_Soldier_VR_F: I_Soldier_base_F { {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
// class C_Soldier_VR_F: C_man_1 {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
// class O_Protagonist_VR_F: O_Soldier_base_F {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
class MapBoard_altis_F;
2015-04-06 13:11:54 +00:00
class ACE_bodyBagObject: MapBoard_altis_F {
XEH_ENABLED;
scope = 1;
scopeCurator = 2;
side = -1;
2015-05-01 17:37:17 +00:00
model = QUOTE(PATHTOEF(apl,bodybag.p3d));
icon = "";
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Bodybag_Display);
2015-04-06 12:51:17 +00:00
EGVAR(dragging,canDrag) = 1;
2015-04-06 13:46:50 +00:00
EGVAR(dragging,dragPosition[]) = {0,1.2,0};
EGVAR(dragging,dragDirection) = 0;
2015-08-20 19:41:28 +00:00
EGVAR(cargo,size) = 1;
EGVAR(cargo,canLoad) = 1;
2015-04-06 13:46:50 +00:00
class ACE_Actions {
2015-04-14 18:27:42 +00:00
class ACE_MainActions {
2015-06-13 04:19:17 +00:00
displayName = ECSTRING(interaction,MainAction);
2015-04-06 13:46:50 +00:00
distance = 5;
condition = QUOTE(true);
statement = "";
icon = "\a3\ui_f\data\IGUI\Cfg\Actions\eject_ca.paa";
selection = "";
};
};
};
2015-04-03 23:42:13 +00:00
// Medical litter classes
class Thing;
class ACE_MedicalLitterBase: Thing {
scope = 1;
scopeCurator = 0;
2015-04-03 23:42:13 +00:00
displayName = " ";
destrType = "DestructNo";
model = QUOTE(PATHTOF(data\littergeneric.p3d));
};
class ACE_MedicalLitter_clean: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_clean.p3d));
};
2015-04-03 23:42:13 +00:00
class ACE_MedicalLitter_bandage1: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_bandages1.p3d));
};
class ACE_MedicalLitter_bandage2: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_bandages2.p3d));
};
class ACE_MedicalLitter_bandage3: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_bandages3.p3d));
};
2015-04-04 10:13:42 +00:00
class ACE_MedicalLitter_packingBandage: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_packingBandage.p3d));
2015-04-04 10:13:42 +00:00
};
2015-04-03 23:42:13 +00:00
class ACE_MedicalLitter_gloves: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_gloves.p3d));
};
2015-04-04 10:13:42 +00:00
class ACE_MedicalLitter_atropine: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_atropine.p3d));
2015-04-04 10:13:42 +00:00
};
class ACE_MedicalLitter_epinephrine: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_epinephrine.p3d));
2015-04-04 10:13:42 +00:00
};
class ACE_MedicalLitter_morphine: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_morphine.p3d));
2015-04-04 10:13:42 +00:00
};
class ACE_MedicalLitter_QuickClot: ACE_MedicalLitterBase {
model = QUOTE(PATHTOF(data\littergeneric_Quikclot.p3d));
};
class Item_Base_F;
2015-03-21 21:22:28 +00:00
class ACE_fieldDressingItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Bandage_Basic_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_fieldDressing,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_packingBandageItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Packing_Bandage_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_packingBandage,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_elasticBandageItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Bandage_Elastic_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_elasticBandage,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_tourniquetItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Tourniquet_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_tourniquet,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_morphineItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Morphine_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_morphine,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_atropineItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Atropine_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_atropine,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_epinephrineItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Epinephrine_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_epinephrine,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_plasmaIVItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Plasma_IV);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_plasmaIV,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_bloodIVItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Blood_IV);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_bloodIV,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_salineIVItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Saline_IV);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_salineIV,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_quikClotItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(QuikClot_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_quikclot,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_personalAidKitItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Aid_Kit_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_personalAidKit,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_surgicalKitItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(SurgicalKit_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_surgicalKit,1);
};
};
2015-03-21 21:22:28 +00:00
class ACE_bodyBagItem: Item_Base_F {
scope = 2;
scopeCurator = 2;
2015-06-06 02:02:24 +00:00
displayName = CSTRING(Bodybag_Display);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
vehicleClass = "Items";
2015-04-14 18:27:42 +00:00
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_bodyBag,1);
};
};
class NATO_Box_Base;
2015-03-21 21:22:28 +00:00
class ACE_medicalSupplyCrate: NATO_Box_Base {
scope = 2;
scopeCurator = 2;
accuracy = 1000;
2015-05-27 19:58:35 +00:00
displayName = CSTRING(medicalSupplyCrate);
model = PATHTOF(data\ace_medcrate.p3d);
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_fieldDressing,50);
MACRO_ADDITEM(ACE_morphine,25);
MACRO_ADDITEM(ACE_epinephrine,25);
MACRO_ADDITEM(ACE_bloodIV,15);
MACRO_ADDITEM(ACE_bloodIV_500,15);
MACRO_ADDITEM(ACE_bloodIV_250,15);
MACRO_ADDITEM(ACE_bodyBag,10);
};
};
class ACE_medicalSupplyCrate_advanced: ACE_medicalSupplyCrate {
2015-05-27 19:58:35 +00:00
displayName = CSTRING(medicalSupplyCrate_advanced);
class TransportItems {
2015-07-25 19:59:52 +00:00
MACRO_ADDITEM(ACE_fieldDressing,25);
MACRO_ADDITEM(ACE_packingBandage,25);
MACRO_ADDITEM(ACE_elasticBandage,25);
MACRO_ADDITEM(ACE_tourniquet,15);
MACRO_ADDITEM(ACE_morphine,15);
MACRO_ADDITEM(ACE_atropine,15);
MACRO_ADDITEM(ACE_epinephrine,15);
MACRO_ADDITEM(ACE_plasmaIV,7);
MACRO_ADDITEM(ACE_plasmaIV_500,7);
MACRO_ADDITEM(ACE_plasmaIV_250,7);
MACRO_ADDITEM(ACE_salineIV,7);
MACRO_ADDITEM(ACE_salineIV_500,7);
MACRO_ADDITEM(ACE_salineIV_250,7);
MACRO_ADDITEM(ACE_bloodIV,7);
MACRO_ADDITEM(ACE_bloodIV_500,7);
MACRO_ADDITEM(ACE_bloodIV_250,7);
MACRO_ADDITEM(ACE_quikClot,20);
MACRO_ADDITEM(ACE_personalAidKit,3);
MACRO_ADDITEM(ACE_surgicalKit,2);
MACRO_ADDITEM(ACE_bodyBag,5);
};
};
};