mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
10ef88b655
Open action for boxes
596 lines
24 KiB
C++
596 lines
24 KiB
C++
class CfgVehicles {
|
|
class ACE_Module;
|
|
class ACE_ModuleInteraction: ACE_Module {
|
|
author = ECSTRING(common,ACETeam);
|
|
category = "ACE";
|
|
displayName = CSTRING(Module_DisplayName);
|
|
function = "ACE_Interaction_fnc_moduleInteraction";
|
|
scope = 2;
|
|
isGlobal = 1;
|
|
icon = PATHTOF(UI\Icon_Module_Interaction_ca.paa);
|
|
class Arguments {
|
|
class EnableTeamManagement {
|
|
displayName = CSTRING(EnableTeamManagement_DisplayName);
|
|
description = CSTRING(EnableTeamManagement_Description);
|
|
typeName = "BOOL";
|
|
defaultValue = 1;
|
|
};
|
|
};
|
|
class ModuleDescription {
|
|
description = CSTRING(Module_Description);
|
|
};
|
|
};
|
|
|
|
class Man;
|
|
class CAManBase: Man {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
distance = 4;
|
|
condition = QUOTE(true);
|
|
statement = "";
|
|
icon = "\a3\ui_f\data\IGUI\Cfg\Actions\eject_ca.paa";
|
|
selection = "pelvis";
|
|
|
|
class ACE_TeamManagement {
|
|
displayName = CSTRING(TeamManagement);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam) && {GVAR(EnableTeamManagement)});
|
|
statement = "";
|
|
showDisabled = 0;
|
|
priority = 3.2;
|
|
icon = PATHTOF(UI\team\team_management_ca.paa);
|
|
hotkey = "M";
|
|
|
|
class ACE_AssignTeamRed {
|
|
displayName = CSTRING(AssignTeamRed);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam));
|
|
statement = QUOTE([ARR_2(_target,'RED')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
icon = PATHTOF(UI\team\team_red_ca.paa);
|
|
priority = 2.4;
|
|
hotkey = "R";
|
|
};
|
|
class ACE_AssignTeamGreen {
|
|
displayName = CSTRING(AssignTeamGreen);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam));
|
|
statement = QUOTE([ARR_2(_target,'GREEN')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
icon = PATHTOF(UI\team\team_green_ca.paa);
|
|
priority = 2.3;
|
|
hotkey = "G";
|
|
};
|
|
class ACE_AssignTeamBlue {
|
|
displayName = CSTRING(AssignTeamBlue);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam));
|
|
statement = QUOTE([ARR_2(_target,'BLUE')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
icon = PATHTOF(UI\team\team_blue_ca.paa);
|
|
priority = 2.2;
|
|
hotkey = "B";
|
|
};
|
|
class ACE_AssignTeamYellow {
|
|
displayName = CSTRING(AssignTeamYellow);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam));
|
|
statement = QUOTE([ARR_2(_target,'YELLOW')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
icon = PATHTOF(UI\team\team_yellow_ca.paa);
|
|
priority = 2.1;
|
|
hotkey = "Y";
|
|
};
|
|
|
|
class ACE_UnassignTeam {
|
|
displayName = CSTRING(LeaveTeam);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinTeam) && {assignedTeam _target != 'MAIN'});
|
|
statement = QUOTE([ARR_2(_target,'MAIN')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
icon = PATHTOF(UI\team\team_white_ca.paa);
|
|
priority = 2.5;
|
|
hotkey = "N";
|
|
};
|
|
};
|
|
|
|
class ACE_JoinGroup {
|
|
displayName = CSTRING(JoinGroup);
|
|
condition = QUOTE([ARR_2(_player,_target)] call DFUNC(canJoinGroup));
|
|
statement = QUOTE([_player] joinSilent group _target);
|
|
showDisabled = 0;
|
|
priority = 2.6;
|
|
icon = PATHTOF(UI\team\team_management_ca.paa);
|
|
hotkey = "J";
|
|
};
|
|
|
|
class ACE_GetDown {
|
|
displayName = CSTRING(GetDown);
|
|
condition = QUOTE([_target] call DFUNC(canInteractWithCivilian));
|
|
statement = QUOTE([_target] call DFUNC(getDown));
|
|
showDisabled = 0;
|
|
priority = 2.2;
|
|
};
|
|
class ACE_SendAway {
|
|
displayName = CSTRING(SendAway);
|
|
condition = QUOTE([_target] call DFUNC(canInteractWithCivilian));
|
|
statement = QUOTE([_target] call DFUNC(sendAway));
|
|
showDisabled = 0;
|
|
priority = 2.0;
|
|
};
|
|
class ACE_Pardon {
|
|
displayName = CSTRING(Pardon);
|
|
condition = QUOTE(rating _target < -2000 && {alive _target} && {side group _player == side group _target});
|
|
statement = QUOTE([ARR_3(_target,'{_this addRating -rating _this}',_target)] call DEFUNC(common,execRemoteFnc));
|
|
showDisabled = 0;
|
|
priority = 2.5;
|
|
};
|
|
};
|
|
class ACE_Torso {
|
|
displayName = CSTRING(Torso);
|
|
selection = "spine3";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_Head {
|
|
displayName = CSTRING(Head);
|
|
selection = "pilot";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_ArmLeft {
|
|
displayName = CSTRING(ArmLeft);
|
|
selection = "LeftForeArm";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_ArmRight {
|
|
displayName = CSTRING(ArmRight);
|
|
selection = "RightForeArm";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_LegLeft {
|
|
displayName = CSTRING(LegLeft);
|
|
selection = "LKnee";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_LegRight {
|
|
displayName = CSTRING(LegRight);
|
|
selection = "RKnee";
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
class ACE_Weapon {
|
|
displayName = CSTRING(Weapon);
|
|
position = QUOTE(call FUNC(getWeaponPos));
|
|
distance = 1.50;
|
|
condition = "";
|
|
statement = "";
|
|
};
|
|
|
|
class ACE_TapShoulderRight {
|
|
displayName = CSTRING(TapShoulder);
|
|
selection = "rightshoulder";
|
|
distance = 2.0;
|
|
condition = QUOTE([ARR_2(_player, _target)] call DFUNC(canTapShoulder));
|
|
statement = QUOTE([ARR_3(_player, _target, 0)] call DFUNC(tapShoulder));
|
|
};
|
|
class ACE_TapShoulderLeft {
|
|
displayName = CSTRING(TapShoulder);
|
|
selection = "leftshoulder";
|
|
distance = 2.0;
|
|
condition = QUOTE([ARR_2(_player, _target)] call DFUNC(canTapShoulder));
|
|
statement = QUOTE([ARR_3(_player, _target, 1)] call DFUNC(tapShoulder));
|
|
};
|
|
};
|
|
|
|
class ACE_SelfActions {
|
|
class ACE_TeamManagement {
|
|
displayName = CSTRING(TeamManagement);
|
|
condition = QUOTE(GVAR(EnableTeamManagement));
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 3.2;
|
|
icon = PATHTOF(UI\team\team_management_ca.paa);
|
|
hotkey = "M";
|
|
|
|
class ACE_JoinTeamRed {
|
|
displayName = CSTRING(JoinTeamRed);
|
|
condition = QUOTE(true);
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE([ARR_2(_player,'RED')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
priority = 2.4;
|
|
icon = PATHTOF(UI\team\team_red_ca.paa);
|
|
hotkey = "R";
|
|
};
|
|
class ACE_JoinTeamGreen {
|
|
displayName = CSTRING(JoinTeamGreen);
|
|
condition = QUOTE(true);
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE([ARR_2(_player,'GREEN')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
priority = 2.3;
|
|
icon = PATHTOF(UI\team\team_green_ca.paa);
|
|
hotkey = "G";
|
|
};
|
|
class ACE_JoinTeamBlue {
|
|
displayName = CSTRING(JoinTeamBlue);
|
|
condition = QUOTE(true);
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE([ARR_2(_player,'BLUE')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
priority = 2.2;
|
|
icon = PATHTOF(UI\team\team_blue_ca.paa);
|
|
hotkey = "B";
|
|
};
|
|
class ACE_JoinTeamYellow {
|
|
displayName = CSTRING(JoinTeamYellow);
|
|
condition = QUOTE(true);
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE([ARR_2(_player,'YELLOW')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
priority = 2.1;
|
|
icon = PATHTOF(UI\team\team_yellow_ca.paa);
|
|
hotkey = "Y";
|
|
};
|
|
|
|
class ACE_LeaveTeam {
|
|
displayName = CSTRING(LeaveTeam);
|
|
condition = QUOTE(assignedTeam _player != 'MAIN');
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE([ARR_2(_player,'MAIN')] call DFUNC(joinTeam));
|
|
showDisabled = 1;
|
|
priority = 2.5;
|
|
icon = PATHTOF(UI\team\team_white_ca.paa);
|
|
hotkey = "N";
|
|
};
|
|
class ACE_BecomeLeader {
|
|
displayName = CSTRING(BecomeLeader);
|
|
condition = QUOTE(_this call DFUNC(canBecomeLeader));
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE(_this call DFUNC(doBecomeLeader));
|
|
showDisabled = 1;
|
|
priority = 1.0;
|
|
icon = PATHTOF(UI\team\team_white_ca.paa);
|
|
hotkey = "L";
|
|
};
|
|
class ACE_LeaveGroup {
|
|
displayName = CSTRING(LeaveGroup);
|
|
condition = QUOTE(count (units group _player) > 1);
|
|
exceptions[] = {"isNotInside", "isNotSitting"};
|
|
statement = QUOTE(_oldGroup = units group _player; _newGroup = createGroup side _player; [_player] joinSilent _newGroup; {_player reveal _x} forEach _oldGroup;);
|
|
showDisabled = 1;
|
|
priority = 1.2;
|
|
icon = PATHTOF(UI\team\team_management_ca.paa);
|
|
hotkey = "M";
|
|
};
|
|
};
|
|
|
|
class ACE_Gestures {
|
|
displayName = CSTRING(Gestures);
|
|
condition = "canStand _target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 3.5;
|
|
icon = PATHTOF(UI\gestures_ca.paa);
|
|
hotkey = "G";
|
|
|
|
/*class ACE_Gesture_Advance {
|
|
displayName = CSTRING(Gestures_Attack);
|
|
condition = "canStand _target";
|
|
statement = "_target playActionNow 'gestureAttack';";
|
|
showDisabled = 1;
|
|
priority = 2.0;
|
|
};*/
|
|
class ACE_Gesture_Advance {
|
|
displayName = CSTRING(Gestures_Advance);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureAdvance';);
|
|
showDisabled = 1;
|
|
priority = 1.9;
|
|
hotkey = "1";
|
|
};
|
|
class ACE_Gesture_Go {
|
|
displayName = CSTRING(Gestures_Go);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow ([ARR_2('gestureGo','gestureGoB')] select floor random 2););
|
|
showDisabled = 1;
|
|
priority = 1.8;
|
|
hotkey = "2";
|
|
};
|
|
class ACE_Gesture_Follow {
|
|
displayName = CSTRING(Gestures_Follow);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureFollow';);
|
|
showDisabled = 1;
|
|
priority = 1.7;
|
|
hotkey = "3";
|
|
};
|
|
/*class ACE_Gesture_Point {
|
|
displayName = CSTRING(Gestures_Point);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gesturePoint';);
|
|
showDisabled = 1;
|
|
priority = 1.6;
|
|
};*/
|
|
class ACE_Gesture_Up {
|
|
displayName = CSTRING(Gestures_Up);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureUp';);
|
|
showDisabled = 1;
|
|
priority = 1.5;
|
|
hotkey = "4";
|
|
};
|
|
class ACE_Gesture_Cover {
|
|
displayName = CSTRING(Gestures_Cover);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureCover';);
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
hotkey = "5";
|
|
};
|
|
class ACE_Gesture_CeaseFire {
|
|
displayName = CSTRING(Gestures_Cease_Fire);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureCeaseFire';);
|
|
showDisabled = 1;
|
|
priority = 1.3;
|
|
hotkey = "6";
|
|
};
|
|
class ACE_Gesture_Freeze {
|
|
displayName = CSTRING(Gestures_Freeze);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureFreeze';);
|
|
showDisabled = 1;
|
|
priority = 1.2;
|
|
hotkey = "7";
|
|
};
|
|
class ACE_Gesture_Yes {
|
|
displayName = CSTRING(Gestures_Yes);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow ([ARR_2('gestureYes','gestureNod')] select floor random 2););
|
|
showDisabled = 1;
|
|
priority = 1.1;
|
|
hotkey = "8";
|
|
};
|
|
class ACE_Gesture_No {
|
|
displayName = CSTRING(Gestures_No);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow 'gestureNo';);
|
|
showDisabled = 1;
|
|
priority = 1.0;
|
|
hotkey = "9";
|
|
};
|
|
class ACE_Gesture_Hi {
|
|
displayName = CSTRING(Gestures_Hi);
|
|
condition = QUOTE(canStand _target);
|
|
statement = QUOTE(_target playActionNow ([ARR_3('gestureHi','gestureHiB','gestureHiC')] select floor random 3););
|
|
showDisabled = 1;
|
|
priority = 0.9;
|
|
hotkey = "0";
|
|
};
|
|
};
|
|
|
|
class ACE_Equipment {
|
|
displayName = CSTRING(Equipment);
|
|
condition = QUOTE(true);
|
|
exceptions[] = {"isNotInside","notOnMap", "isNotSitting"};
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 4.5;
|
|
icon = ""; // @todo
|
|
hotkey = "E";
|
|
};
|
|
};
|
|
};
|
|
|
|
class LandVehicle;
|
|
class Car: LandVehicle {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 10;
|
|
condition = "true";
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class Tank: LandVehicle {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 10;
|
|
condition = "true";
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
|
|
class Air;
|
|
class Helicopter: Air {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 10;
|
|
condition = "true";
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class Plane: Air {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 10;
|
|
condition = "true";
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
|
|
class Ship;
|
|
class Ship_F: Ship {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 10;
|
|
condition = "true";
|
|
|
|
class ACE_Push {
|
|
displayName = CSTRING(Push);
|
|
distance = 6;
|
|
condition = QUOTE(getMass _target < 1000 && {alive _target});
|
|
statement = QUOTE([ARR_2(_target, [ARR_3(2 * (vectorDir _player select 0), 2 * (vectorDir _player select 1), 0.5)])] call DFUNC(push););
|
|
showDisabled = 0;
|
|
priority = -1;
|
|
};
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
|
|
class StaticWeapon: LandVehicle {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "gunnerview";
|
|
distance = 2;
|
|
condition = "true";
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {
|
|
class ACE_Passengers {
|
|
displayName = CSTRING(Passengers);
|
|
condition = "true";
|
|
statement = "";
|
|
insertChildren = QUOTE(_this call DFUNC(addPassengersActions));
|
|
};
|
|
};
|
|
};
|
|
|
|
class StaticMGWeapon: StaticWeapon {};
|
|
class HMG_01_base_F: StaticMGWeapon {};
|
|
class HMG_01_high_base_F: HMG_01_base_F {
|
|
class ACE_Actions: ACE_Actions {
|
|
class ACE_MainActions: ACE_MainActions {
|
|
position = "[-0.172852,0.164063,-0.476091]";
|
|
};
|
|
};
|
|
};
|
|
class AA_01_base_F: StaticMGWeapon {
|
|
class ACE_Actions: ACE_Actions {
|
|
class ACE_MainActions: ACE_MainActions {
|
|
position = "[0,0.515869,-0.200671]";
|
|
};
|
|
};
|
|
};
|
|
class AT_01_base_F: StaticMGWeapon {
|
|
class ACE_Actions: ACE_Actions {
|
|
class ACE_MainActions: ACE_MainActions {
|
|
position = "[0,0.515869,-0.200671]";
|
|
};
|
|
};
|
|
};
|
|
|
|
class thingX;
|
|
class ReammoBox_F: thingX {
|
|
class ACE_Actions {
|
|
class ACE_MainActions {
|
|
displayName = CSTRING(MainAction);
|
|
selection = "";
|
|
distance = 2;
|
|
condition = "true";
|
|
class ACE_OpenBox {
|
|
displayName = CSTRING(OpenBox);
|
|
condition = QUOTE(alive _target);
|
|
statement = QUOTE(_player action [ARR_2(QUOTE(QUOTE(Gear)), _target)]);
|
|
showDisabled = 0;
|
|
priority = -1;
|
|
};
|
|
};
|
|
};
|
|
class ACE_SelfActions {};
|
|
};
|
|
};
|