mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
86 lines
4.1 KiB
C++
86 lines
4.1 KiB
C++
|
#define TOW_ACTION \
|
||
|
class ACE_Actions {\
|
||
|
class ACE_MainActions {\
|
||
|
class ADDON {\
|
||
|
displayName = CSTRING(displayName);\
|
||
|
distance = TOW_ACTION_DISTANCE;\
|
||
|
condition = QUOTE([ARR_1(_target)] call FUNC(isSuitableSimulation));\
|
||
|
statement = "";\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
showDisabled = 0;\
|
||
|
icon = "";\
|
||
|
class GVAR(startTow3) {\
|
||
|
displayName = CSTRING(start3);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope3')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope3')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow6) {\
|
||
|
displayName = CSTRING(start6);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope6')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope6')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow12) {\
|
||
|
displayName = CSTRING(start12);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope12')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope12')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow15) {\
|
||
|
displayName = CSTRING(start15);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope15')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope15')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow18) {\
|
||
|
displayName = CSTRING(start18);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope18')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope18')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow27) {\
|
||
|
displayName = CSTRING(start27);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope27')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope27')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
class GVAR(startTow36) {\
|
||
|
displayName = CSTRING(start36);\
|
||
|
condition = QUOTE(([ARR_2(_player,_target)] call FUNC(canStartTow)) && [ARR_2(_player, 'ACE_rope36')] call EFUNC(common,hasItem));\
|
||
|
statement = QUOTE([ARR_3(_player,_target,'ACE_rope36')] call FUNC(startTow));\
|
||
|
exceptions[] = { INTERACTION_EXCEPTIONS };\
|
||
|
};\
|
||
|
};\
|
||
|
};\
|
||
|
}
|
||
|
|
||
|
class CfgVehicles {
|
||
|
class LandVehicle;
|
||
|
class Car: LandVehicle {
|
||
|
TOW_ACTION;
|
||
|
};
|
||
|
|
||
|
class Tank: LandVehicle {
|
||
|
TOW_ACTION;
|
||
|
};
|
||
|
|
||
|
class ThingX;
|
||
|
class GVAR(hook): ThingX {
|
||
|
displayName = "hook"; // not publicly visible, no stringtable needed
|
||
|
scope = 1;
|
||
|
scopeCurator = 1;
|
||
|
model = "\a3\Structures_F_Orange\VR\Helpers\Sign_sphere10cm_Geometry_F.p3d";
|
||
|
destrType = "DestructNo";
|
||
|
|
||
|
class ACE_Actions {
|
||
|
class ACE_MainActions {
|
||
|
displayName = CSTRING(detach);
|
||
|
condition = "true";
|
||
|
statement = QUOTE(private _parent = _target getVariable [ARR_2(QQGVAR(parent), objNull)]; private _child = _target getVariable [ARR_2(QQGVAR(child), objNull)]; [ARR_3(_player,_parent,_child)] call FUNC(detach));
|
||
|
distance = 2;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|