2024-02-05 18:54:51 +00:00
|
|
|
#define CONCAT(a,b) a##b
|
|
|
|
#define TOW_ACTION(length) \
|
|
|
|
class GVAR(CONCAT(startTow,length)) {\
|
|
|
|
displayName = CSTRING(CONCAT(start,length));\
|
|
|
|
condition = QUOTE([ARR_2(_player,'CONCAT(ACE_rope,length)')] call DEFUNC(common,hasItem));\
|
|
|
|
statement = QUOTE([ARR_3(_player,_target,'CONCAT(ACE_rope,length)')] call DFUNC(startTow));\
|
|
|
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
|
|
|
}
|
|
|
|
#define TOW_ACTIONS \
|
|
|
|
class ACE_Actions {\
|
|
|
|
class ACE_MainActions {\
|
|
|
|
class ADDON {\
|
|
|
|
displayName = CSTRING(displayName);\
|
|
|
|
distance = TOW_ACTION_DISTANCE;\
|
|
|
|
condition = QUOTE(alive _target && {_target call DFUNC(isSuitableSimulation)});\
|
2021-10-12 09:33:05 +00:00
|
|
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
2024-02-05 18:54:51 +00:00
|
|
|
insertChildren = QUOTE(_target call DFUNC(getDetachActions));\
|
|
|
|
TOW_ACTION(3);\
|
|
|
|
TOW_ACTION(6);\
|
|
|
|
TOW_ACTION(12);\
|
|
|
|
TOW_ACTION(15);\
|
|
|
|
TOW_ACTION(18);\
|
|
|
|
TOW_ACTION(27);\
|
|
|
|
TOW_ACTION(36);\
|
2021-10-12 09:33:05 +00:00
|
|
|
};\
|
|
|
|
};\
|
2024-02-05 18:54:51 +00:00
|
|
|
}
|
2021-10-12 09:33:05 +00:00
|
|
|
|
|
|
|
class CfgVehicles {
|
|
|
|
class LandVehicle;
|
|
|
|
class Car: LandVehicle {
|
2024-02-05 18:54:51 +00:00
|
|
|
TOW_ACTIONS;
|
2021-10-12 09:33:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
class Tank: LandVehicle {
|
2024-02-05 18:54:51 +00:00
|
|
|
TOW_ACTIONS;
|
|
|
|
};
|
|
|
|
|
|
|
|
class Ship;
|
|
|
|
class Ship_F: Ship {
|
|
|
|
TOW_ACTIONS;
|
2021-10-12 09:33:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
class ThingX;
|
2024-02-05 18:54:51 +00:00
|
|
|
class GVAR(helper): ThingX {
|
|
|
|
displayName = "helper"; // not publicly visible, no stringtable needed
|
2021-10-12 09:33:05 +00:00
|
|
|
scope = 1;
|
|
|
|
scopeCurator = 1;
|
2024-02-05 18:54:51 +00:00
|
|
|
model = "\A3\Weapons_f\empty";
|
2021-10-12 09:33:05 +00:00
|
|
|
destrType = "DestructNo";
|
2024-02-05 18:54:51 +00:00
|
|
|
};
|
|
|
|
class GVAR(hook): GVAR(helper) {
|
|
|
|
displayName = "hook";
|
2021-10-12 09:33:05 +00:00
|
|
|
class ACE_Actions {
|
|
|
|
class ACE_MainActions {
|
|
|
|
displayName = CSTRING(detach);
|
2024-02-05 18:54:51 +00:00
|
|
|
statement = QUOTE([ARR_2(_player,_target)] call DFUNC(detachRope));
|
|
|
|
distance = TOW_ACTION_DISTANCE;
|
2021-10-12 09:33:05 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|