ACE3/addons/captives/CfgVehicles.hpp

190 lines
7.2 KiB
C++
Raw Normal View History

2015-02-03 02:04:50 +00:00
class CfgVehicles {
2015-02-04 05:13:44 +00:00
class Man;
class CAManBase: Man {
class ACE_Actions {
class ACE_ApplyHandcuffs {
displayName = "$STR_ACE_Captives_SetCaptive";
selection = "righthand";
distance = 2;
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canApplyHandcuffs));
statement = QUOTE([ARR_2(_player, _target)] call FUNC(doApplyHandcuffs));
exceptions[] = {};
icon = QUOTE(PATHTOF(UI\handcuff_ca.paa));
};
class ACE_RemoveHandcuffs {
displayName = "$STR_ACE_Captives_ReleaseCaptive";
selection = "righthand";
distance = 2;
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canRemoveHandcuffs));
statement = QUOTE([ARR_2(_player, _target)] call FUNC(doRemoveHandcuffs));
exceptions[] = {};
icon = QUOTE(PATHTOF(UI\handcuff_ca.paa));
2015-02-04 05:13:44 +00:00
};
class ACE_MainActions {
class ACE_EscortCaptive {
displayName = "$STR_ACE_Captives_EscortCaptive";
distance = 4;
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canEscortCaptive));
statement = QUOTE([ARR_3(_player, _target, true)] call FUNC(doEscortCaptive));
exceptions[] = {};
showDisabled = 0;
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
priority = 2.3;
hotkey = "E";
};
class ACE_StopEscorting {
displayName = "$STR_ACE_Captives_StopEscorting";
distance = 4;
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canStopEscorting));
statement = QUOTE([ARR_3(_player,_target, false)] call FUNC(doEscortCaptive));
2015-03-23 20:22:26 +00:00
exceptions[] = {"isNotEscorting"};
showDisabled = 0;
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
priority = 2.3;
hotkey = "E";
};
class ACE_LoadCaptive {
displayName = "$STR_ACE_Captives_LoadCaptive";
distance = 4;
condition = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(canLoadCaptive));
statement = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(doLoadCaptive));
2015-03-23 20:22:26 +00:00
exceptions[] = {"isNotEscorting"};
showDisabled = 0;
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
priority = 2.2;
hotkey = "L";
};
class ACE_FriskPerson {
displayName = "$STR_ACE_Captives_FriskPerson";
distance = 2;
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canFriskPerson));
statement = QUOTE([ARR_2(_player, _target)] call FUNC(doFriskPerson));
showDisabled = 0;
//icon = ""; //@todo
priority = 3;
hotkey = "F";
};
2015-02-04 05:13:44 +00:00
};
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class ACE_SelfActions {
class ACE_StopEscortingSelf {
displayName = "$STR_ACE_Captives_StopEscorting";
2015-02-04 19:16:19 +00:00
condition = QUOTE([ARR_2(_player, objNull)] call FUNC(canStopEscorting));
statement = QUOTE([ARR_3(_player,objNull, false)] call FUNC(doEscortCaptive));
2015-03-23 20:22:26 +00:00
exceptions[] = {"isNotEscorting"};
2015-02-04 05:13:44 +00:00
showDisabled = 0;
priority = 2.3;
hotkey = "C";
2015-02-07 21:20:51 +00:00
};
2015-02-06 21:54:26 +00:00
class ACE_StartSurrenderingSelf {
displayName = "$STR_ACE_Captives_StartSurrendering";
condition = QUOTE([ARR_2(_player, true)] call FUNC(canSurrender));
2015-02-17 00:03:09 +00:00
statement = QUOTE([ARR_2(_player, true)] call FUNC(setSurrendered));
2015-02-06 21:54:26 +00:00
exceptions[] = {};
showDisabled = 0;
priority = 0;
2015-02-07 21:20:51 +00:00
};
2015-02-06 21:54:26 +00:00
class ACE_StopSurrenderingSelf {
displayName = "$STR_ACE_Captives_StopSurrendering";
condition = QUOTE([ARR_2(_player, false)] call FUNC(canSurrender));
2015-02-17 01:20:55 +00:00
statement = QUOTE([ARR_2(_player, false)] call FUNC(setSurrendered));
2015-03-23 20:22:26 +00:00
exceptions[] = {"isNotSurrendering"};
2015-02-06 21:54:26 +00:00
showDisabled = 0;
priority = 0;
2015-02-04 05:13:44 +00:00
};
};
2015-02-03 02:04:50 +00:00
};
2015-02-04 05:13:44 +00:00
#define MACRO_LOADUNLOADCAPTIVE \
class ACE_Actions { \
class ACE_MainActions { \
selection = ""; \
class ACE_LoadCaptive { \
displayName = "$STR_ACE_Captives_LoadCaptive"; \
distance = 4; \
condition = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(canLoadCaptive)); \
statement = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(doLoadCaptive)); \
2015-03-23 20:22:26 +00:00
exceptions[] = {"isNotEscorting"}; \
showDisabled = 0; \
priority = 1.2; \
hotkey = "L"; \
}; \
class ACE_UnloadCaptive { \
displayName = "$STR_ACE_Captives_UnloadCaptive"; \
distance = 4; \
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canUnloadCaptive)); \
statement = QUOTE([ARR_2(_player, _target)] call FUNC(doUnloadCaptive)); \
showDisabled = 0; \
priority = 1.2; \
hotkey = "C"; \
}; \
2015-02-04 05:13:44 +00:00
}; \
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class LandVehicle;
class Car: LandVehicle {
MACRO_LOADUNLOADCAPTIVE
};
class Tank: LandVehicle {
MACRO_LOADUNLOADCAPTIVE
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class Air;
class Helicopter: Air {
MACRO_LOADUNLOADCAPTIVE
};
class Plane: Air {
MACRO_LOADUNLOADCAPTIVE
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class Ship;
class Ship_F: Ship {
MACRO_LOADUNLOADCAPTIVE
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class StaticWeapon: LandVehicle {
MACRO_LOADUNLOADCAPTIVE
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class StaticMortar;
class Mortar_01_base_F: StaticMortar {
MACRO_LOADUNLOADCAPTIVE
};
2015-02-03 02:04:50 +00:00
2015-02-04 05:13:44 +00:00
class Box_NATO_Support_F;
class ACE_Box_Misc: Box_NATO_Support_F {
class TransportItems {
MACRO_ADDITEM(ACE_CableTie,12);
2015-02-04 05:13:44 +00:00
};
2015-02-03 02:04:50 +00:00
};
2015-02-07 21:20:51 +00:00
class Logic;
class Module_F: Logic {
class ArgumentsBaseUnits {};
class ModuleDescription {};
};
class GVAR(ModuleSurrender): Module_F {
author = "$STR_ACE_Common_ACETeam";
category = "ACE";
displayName = "Make Unit Surrender";
function = QUOTE(DFUNC(moduleSurrender));
scope = 2; //show in editor
scopeCurator = 2; //show in zeus
curatorCost = 0; //???
isGlobal = 1; //run global
isTriggerActivated = 1; //Wait for triggers
2015-03-23 19:02:35 +00:00
icon = QUOTE(PATHTOF(UI\Icon_Module_Make_Unit_Surrender_ca.paa));
2015-02-07 21:20:51 +00:00
functionPriority = 0;
class Arguments {};
class ModuleDescription: ModuleDescription {
description = "Sync a unit to make them surrender.<br/>Source: ace_captives";
sync[] = {"AnyAI"};
};
};
2015-02-03 02:04:50 +00:00
};