ACE3/addons/vehiclelock/CfgVehicles.hpp

129 lines
5.4 KiB
C++
Raw Normal View History

2015-01-23 22:40:39 +00:00
#define MACRO_LOCK_ACTIONS \
class ACE_SelfActions { \
class ACE_unlockVehicle { \
displayName = CSTRING(Action_UnLock); \
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(hasKeyForVehicle)) && {(locked _target) in [ARR_2(2,3)]}); \
2016-05-25 00:37:24 +00:00
statement = QUOTE([ARR_3(QUOTE(QGVAR(setVehicleLock)), [ARR_2(_target,false)], [_target])] call CBA_fnc_targetEvent); \
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\key_menuIcon_ca.paa); \
}; \
class ACE_lockVehicle { \
displayName = CSTRING(Action_Lock); \
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(hasKeyForVehicle)) && {(locked _target) in [ARR_2(0,1)]}); \
2016-05-25 00:37:24 +00:00
statement = QUOTE([ARR_3(QUOTE(QGVAR(setVehicleLock)), [ARR_2(_target,true)], [_target])] call CBA_fnc_targetEvent); \
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\key_menuIcon_ca.paa); \
}; \
class ACE_lockpickVehicle { \
displayName = CSTRING(Action_Lockpick); \
condition = QUOTE([ARR_3(_player, _target, 'canLockpick')] call FUNC(lockpick)); \
statement = QUOTE([ARR_3(_player, _target, 'startLockpick')] call FUNC(lockpick)); \
}; \
}; \
class ACE_Actions { \
class ACE_MainActions { \
class ACE_unlockVehicle { \
displayName = CSTRING(Action_UnLock); \
distance = 4; \
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(hasKeyForVehicle)) && {(locked _target) in [ARR_2(2,3)]}); \
2016-05-25 00:37:24 +00:00
statement = QUOTE([ARR_3(QUOTE(QGVAR(setVehicleLock)), [ARR_2(_target,false)], [_target])] call CBA_fnc_targetEvent); \
exceptions[] = {"isNotSwimming"}; \
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\key_menuIcon_ca.paa); \
}; \
class ACE_lockVehicle { \
displayName = CSTRING(Action_Lock); \
distance = 4; \
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(hasKeyForVehicle)) && {(locked _target) in [ARR_2(0,1)]}); \
2016-05-25 00:37:24 +00:00
statement = QUOTE([ARR_3(QUOTE(QGVAR(setVehicleLock)), [ARR_2(_target,true)], [_target])] call CBA_fnc_targetEvent); \
exceptions[] = {"isNotSwimming"}; \
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\key_menuIcon_ca.paa); \
}; \
class ACE_lockpickVehicle { \
displayName = CSTRING(Action_Lockpick); \
distance = 4; \
condition = QUOTE([ARR_3(_player, _target, 'canLockpick')] call FUNC(lockpick)); \
statement = QUOTE([ARR_3(_player, _target, 'startLockpick')] call FUNC(lockpick)); \
exceptions[] = {"isNotSwimming"}; \
}; \
}; \
};
2015-01-23 22:40:39 +00:00
class CfgVehicles {
class LandVehicle;
class Car: LandVehicle {
MACRO_LOCK_ACTIONS
2015-01-23 22:40:39 +00:00
};
class Tank: LandVehicle {
MACRO_LOCK_ACTIONS
2015-01-23 22:40:39 +00:00
};
class Air;
class Helicopter: Air {
MACRO_LOCK_ACTIONS
2015-01-23 22:40:39 +00:00
};
class Motorcycle: LandVehicle {
MACRO_LOCK_ACTIONS
};
class Ship;
class Ship_F: Ship {
MACRO_LOCK_ACTIONS
};
2015-01-23 22:40:39 +00:00
class Logic;
class Module_F: Logic {
class ModuleDescription;
2015-01-23 22:40:39 +00:00
};
class ACE_Module: Module_F {};
class ACE_VehicleLock_ModuleSetup: ACE_Module {
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
category = "ACE";
displayName = CSTRING(Module_DisplayName);
function = QFUNC(moduleInit);
scope = 1;
isGlobal = 1;
isSingular = 1;
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\Icon_Module_VehicleLock_ca.paa);
functionPriority = 0;
class Arguments {
class LockVehicleInventory {
displayName = CSTRING(LockVehicleInventory_DisplayName);
description = CSTRING(LockVehicleInventory_Description);
typeName = "BOOL";
defaultValue = 0;
};
class VehicleStartingLockState {
displayName = CSTRING(VehicleStartingLockState_DisplayName);
description = CSTRING(VehicleStartingLockState_Description);
2015-05-09 18:43:55 +00:00
typeName = "NUMBER";
class values {
class None {name = CSTRING(VehicleStartingLockState_AsIs); value = 0; default = 1;};
class Side {name = CSTRING(VehicleStartingLockState_Locked); value = 1;};
class Unique {name = CSTRING(VehicleStartingLockState_Unlocked); value = 2;};
};
};
class DefaultLockpickStrength {
displayName = CSTRING(DefaultLockpickStrength_DisplayName);
description = CSTRING(DefaultLockpickStrength_Description);
2015-05-09 18:43:55 +00:00
typeName = "NUMBER";
defaultValue = "10";
};
};
class ModuleDescription {
description = CSTRING(Module_Description);
};
2015-01-23 22:40:39 +00:00
};
class ACE_VehicleLock_ModuleSyncedAssign: ACE_Module {
2015-05-27 20:04:41 +00:00
author = ECSTRING(common,ACETeam);
category = "ACE";
displayName = CSTRING(VehicleKeyAssign_Module_DisplayName);
function = QFUNC(moduleSync);
scope = 2;
isGlobal = 0;
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(UI\Icon_Module_VehicleKey_ca.paa);
functionPriority = 0;
class Arguments {};
class ModuleDescription: ModuleDescription {
description = CSTRING(VehicleKeyAssign_Module_Description);
sync[] = {"AnyPlayer", "AnyVehicle"};
};
2015-01-23 22:40:39 +00:00
};
};