diff --git a/addons/compat_cup_vehicles/CfgVehicles.hpp b/addons/compat_cup_vehicles/CfgVehicles.hpp index 5334987fff6..ce502abad53 100644 --- a/addons/compat_cup_vehicles/CfgVehicles.hpp +++ b/addons/compat_cup_vehicles/CfgVehicles.hpp @@ -1,4 +1,31 @@ class CfgVehicles { + class CUP_nHMMWV_Base; + class CUP_nM1025_SOV_Base: CUP_nHMMWV_Base { + class EGVAR(interaction,anims) { + class hide_backpacks { + positions[] = { + "(_target selectionPosition ['vhc_backpacks', 'ViewGeometry', 'AveragePoint']) vectorAdd [-1, 0, 0]", + "(_target selectionPosition ['vhc_backpacks', 'ViewGeometry', 'AveragePoint']) vectorAdd [1.3, 0, 0]" + }; + items[] = {"CUP_B_USPack_Coyote", "CUP_B_USPack_Coyote", "CUP_B_AssaultPack_ACU", "CUP_B_AssaultPack_ACU", "CUP_B_AssaultPack_Coyote"}; + name = "$STR_a3_cfgvehicleclasses_backpacks0"; + text = "$STR_a3_cfgvehicleclasses_backpacks0"; + }; + }; + }; + + class Car_F; + class CUP_ECVHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_deploy2 { + positions[] = {"(_target selectionPosition ['vhc_rear_trunk_door', 'FireGeometry', 'AveragePoint']) vectorAdd [-0.7, 0, 0]"}; + items[] = {"CUP_B_USPack_Coyote", "CUP_B_AssaultPack_ACU"}; + name = "$STR_a3_cfgvehicleclasses_backpacks0"; + text = "$STR_a3_cfgvehicleclasses_backpacks0"; + }; + }; + }; + class CUP_MTVR_Base; class CUP_MTVR_Reammo_Base: CUP_MTVR_Base { EGVAR(rearm,defaultSupply) = 1200; @@ -106,6 +133,17 @@ class CfgVehicles { class CUP_BTR90_HQ_Base: CUP_BTR90_Base { delete ace_viewports; }; // no cargo seats class Tank_F; + class CUP_AAV_Base: Tank_F { + class EGVAR(interaction,anims) { + class Hide_Bags_Deployment { + positions[] = {{1.7, -0.7, -0.3}, {1.7, -2.55, -0.3}}; + items[] = {"CUP_B_USPack_Coyote", "CUP_B_USPack_Coyote"}; + name = "$STR_CUP_dn_USpack_coyote"; + text = "$STR_CUP_dn_USpack_coyote"; + }; + }; + }; + class CUP_M2Bradley_Base: Tank_F { ace_hunterkiller = 1; class ace_viewports { diff --git a/addons/compat_cup_vehicles/compat_cup_repair/CfgVehicles.hpp b/addons/compat_cup_vehicles/compat_cup_repair/CfgVehicles.hpp new file mode 100644 index 00000000000..29a471f4516 --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_repair/CfgVehicles.hpp @@ -0,0 +1,196 @@ +class CfgVehicles { + class Car_F; + class CUP_Datsun_Base: Car_F { + class EGVAR(interaction,anims) { + class hideSpareTire { + positions[] = {{-0.23, -0.25, -0.8}}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + class CUP_Datsun_AA_Base: CUP_Datsun_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hideSpareTire: hideSpareTire { + enabled = 0; + }; + }; + }; + + class CUP_Tigr_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_ReserveWheel { + positions[] = {{0.57, -2.3, -0.55}}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + class CUP_Tigr_STS_PK_Base: CUP_Tigr_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_ReserveWheel: hide_ReserveWheel {}; + }; + }; + class CUP_Tigr_233014_PK_Base: CUP_Tigr_STS_PK_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_ReserveWheel: hide_ReserveWheel { + positions[] = {{0.57, -2.3, -0.85}}; + }; + }; + }; + class CUP_Tigr_M_PK_Base: CUP_Tigr_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_ReserveWheel: hide_ReserveWheel {}; + }; + }; + class CUP_Tigr_233114_PK_Base: CUP_Tigr_M_PK_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_ReserveWheel: hide_ReserveWheel { + positions[] = {{0.57, -2.3, -0.85}}; + }; + }; + }; + + class CUP_LR_Base: Car_F { + class EGVAR(interaction,anims) { + class selection_wheelfront { + positions[] = {"_target selectionPosition ['selection_wheelfront', 'ViewGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + class selection_wheels { + positions[] = { + "(_target selectionPosition ['selection_wheels', 'ViewGeometry', 'AveragePoint']) vectorAdd [-1.1, 0, 0]", + "(_target selectionPosition ['selection_wheels', 'ViewGeometry', 'AveragePoint']) vectorAdd [1.1, 0, 0]" + }; + items[] = {"ACE_Wheel", "ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + + class CUP_nHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_spare_wheel { + positions[] = {"_target selectionPosition ['vhc_spare_wheel', 'FireGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + // Don't inherit, as it's easier for the main compat + class CUP_nM1025_SOV_Base: CUP_nHMMWV_Base { + class EGVAR(interaction,anims) { + class hide_spare_wheel { + positions[] = {"_target selectionPosition ['vhc_spare_wheel', 'FireGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + + class CUP_RG31_BASE: Car_F { + class EGVAR(interaction,anims) { + class left_spare { + positions[] = {"_target selectionPosition ['left_spare', 'FireGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + class right_spare { + positions[] = {"_target selectionPosition ['right_spare', 'FireGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + + class CUP_UAZ_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_spare_wheel { + positions[] = {"_target selectionPosition ['spare_wheel', 'ViewGeometry', 'AveragePoint']"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; + class CUP_UAZ_Armed_Base: CUP_UAZ_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel {}; + }; + }; + class CUP_UAZ_AA_Base: CUP_UAZ_Armed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.18, -1.8, 0.75}}; + }; + }; + }; + class CUP_UAZ_AGS30_Base: CUP_UAZ_Armed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.18, -1.9, 0.75}}; + }; + }; + }; + class CUP_UAZ_MG_Base: CUP_UAZ_Armed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.18, -1.9, 0.2}}; + }; + }; + }; + // Visual is bugged, but it works + class CUP_UAZ_METIS_Base: CUP_UAZ_Armed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.18, -1.9, 0.65}}; + }; + }; + }; + class CUP_UAZ_SPG9_Base: CUP_UAZ_Armed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.18, -1.9, 1.05}}; + }; + }; + }; + + class CUP_UAZ_Unarmed_Base: CUP_UAZ_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel {}; + }; + }; + class CUP_UAZ_Open_Base: CUP_UAZ_Unarmed_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_spare_wheel: hide_spare_wheel { + positions[] = {{0.135, -1.3, 0.7}}; + }; + }; + }; + + class CUP_ECVHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_spare_tire { + positions[] = {"(_target selectionPosition ['vhc_rear_trunk_door', 'FireGeometry', 'AveragePoint']) vectorAdd [0.05, -0.4, 0.2]"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + class hide_deploy1 { + positions[] = {"(_target selectionPosition ['vhc_rear_trunk_door', 'FireGeometry', 'AveragePoint']) vectorAdd [0.05, 0.5, 0.7]"}; + items[] = {"ACE_Wheel"}; + name = ECSTRING(repair,RemoveWheel); + text = ECSTRING(repair,RemovingWheel); + }; + }; + }; +}; diff --git a/addons/compat_cup_vehicles/compat_cup_repair/config.cpp b/addons/compat_cup_vehicles/compat_cup_repair/config.cpp new file mode 100644 index 00000000000..9a2785e7ef2 --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_repair/config.cpp @@ -0,0 +1,23 @@ +#include "script_component.hpp" + +class CfgPatches { + class SUBADDON { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = { + "CUP_Vehicles_LoadOrder", + "ace_repair" + }; + skipWhenMissingDependencies = 1; + author = ECSTRING(common,ACETeam); + authors[] = {"johnb43"}; + url = ECSTRING(main,URL); + VERSION_CONFIG; + + addonRootClass = QUOTE(ADDON); + }; +}; + +#include "CfgVehicles.hpp" diff --git a/addons/compat_cup_vehicles/compat_cup_repair/script_component.hpp b/addons/compat_cup_vehicles/compat_cup_repair/script_component.hpp new file mode 100644 index 00000000000..1af928486c3 --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_repair/script_component.hpp @@ -0,0 +1,3 @@ +#define SUBCOMPONENT repair +#define SUBCOMPONENT_BEAUTIFIED Repair +#include "..\script_component.hpp" diff --git a/addons/compat_cup_vehicles/compat_cup_trenches/CfgVehicles.hpp b/addons/compat_cup_vehicles/compat_cup_trenches/CfgVehicles.hpp new file mode 100644 index 00000000000..9d9bc2d62ee --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_trenches/CfgVehicles.hpp @@ -0,0 +1,111 @@ +class CfgVehicles { + class Car_F; + class CUP_Tigr_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_tools { + positions[] = {{1.15, -1.5, -0.68}}; + items[] = {"ACE_EntrenchingTool"}; + name = ECSTRING(trenches,EntrenchingToolName); + text = ECSTRING(trenches,EntrenchingToolName); + }; + }; + }; + class CUP_Tigr_STS_PK_Base: CUP_Tigr_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_tools: hide_tools {}; + }; + }; + class CUP_Tigr_233014_PK_Base: CUP_Tigr_STS_PK_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_tools: hide_tools { + positions[] = {{1.15, -1.5, -1}}; + }; + }; + }; + class CUP_Tigr_M_PK_Base: CUP_Tigr_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_tools: hide_tools {}; + }; + }; + class CUP_Tigr_233114_PK_Base: CUP_Tigr_M_PK_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class hide_tools: hide_tools { + positions[] = {{1.15, -1.5, -1}}; + }; + }; + }; + + // Interaction added to both sides, as the whole vehicle is mirrored if in left/right side + class CUP_LR_Base: Car_F { + class EGVAR(interaction,anims) { + class selection_tool { + positions[] = {{-0.53, 1.65, -0.2}, {0.53, 1.65, -0.2}}; + items[] = {"ACE_EntrenchingTool"}; + name = ECSTRING(trenches,EntrenchingToolName); + text = ECSTRING(trenches,EntrenchingToolName); + }; + }; + }; + class CUP_LR_MG_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_tool: selection_tool { + positions[] = {{-0.6, 1.4, 1.4}, {0.45, 1.4, 1.4}}; + }; + }; + }; + class CUP_LR_SPG9_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_tool: selection_tool {}; + }; + }; + class CUP_LR_AA_Base: CUP_LR_SPG9_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_tool: selection_tool { + positions[] = {{-0.55, 1.77, -0.75}, {0.55, 1.77, -0.75}}; + }; + }; + }; + class CUP_LR_Ambulance_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_tool: selection_tool { + positions[] = {{-0.55, 2.1, -0.2}, {0.55, 2.1, -0.2}}; + }; + }; + }; + class CUP_LR_Special_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_tool: selection_tool { + positions[] = {{-0.6, 1.4, 1.4}, {0.45, 1.4, 1.4}}; + }; + }; + }; + + class CUP_ECVHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_front_tool_rack { + positions[] = {"(_target selectionPosition ['vhc_rear_trunk_door', 'FireGeometry', 'AveragePoint']) vectorAdd [0.37, 4, 0.2]"}; + items[] = {"ACE_EntrenchingTool"}; + name = ECSTRING(trenches,EntrenchingToolName); + text = ECSTRING(trenches,EntrenchingToolName); + }; + }; + }; + + class Tank_F; + class CUP_leopard_1A3_base: Tank_F { + class EGVAR(interaction,anims) { + class hide_Tools_L { + positions[] = {{-2.2, 0, 0.2}, {-2.2, -1.8, 0.2}}; + items[] = {"ACE_EntrenchingTool", "ACE_wirecutter"}; + name = "$STR_a3_cfgeditorsubcategories_edsubcat_tools0"; + text = "$STR_a3_cfgeditorsubcategories_edsubcat_tools0"; + }; + class hide_Tools_R { + positions[] = {{0.9, -1.5, 0.23}}; + items[] = {"ACE_EntrenchingTool"}; + name = ECSTRING(trenches,EntrenchingToolName); + text = ECSTRING(trenches,EntrenchingToolName); + }; + }; + }; +}; diff --git a/addons/compat_cup_vehicles/compat_cup_trenches/config.cpp b/addons/compat_cup_vehicles/compat_cup_trenches/config.cpp new file mode 100644 index 00000000000..8f05885bd6f --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_trenches/config.cpp @@ -0,0 +1,23 @@ +#include "script_component.hpp" + +class CfgPatches { + class SUBADDON { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = { + "CUP_Vehicles_LoadOrder", + "ace_trenches" + }; + skipWhenMissingDependencies = 1; + author = ECSTRING(common,ACETeam); + authors[] = {"johnb43"}; + url = ECSTRING(main,URL); + VERSION_CONFIG; + + addonRootClass = QUOTE(ADDON); + }; +}; + +#include "CfgVehicles.hpp" diff --git a/addons/compat_cup_vehicles/compat_cup_trenches/script_component.hpp b/addons/compat_cup_vehicles/compat_cup_trenches/script_component.hpp new file mode 100644 index 00000000000..10b90eb71e5 --- /dev/null +++ b/addons/compat_cup_vehicles/compat_cup_trenches/script_component.hpp @@ -0,0 +1,3 @@ +#define SUBCOMPONENT trenches +#define SUBCOMPONENT_BEAUTIFIED Trenches +#include "..\script_component.hpp" diff --git a/addons/compat_cup_vehicles/compat_cup_vehicles_fastroping/config.cpp b/addons/compat_cup_vehicles/compat_cup_vehicles_fastroping/config.cpp index 1abe0de6ea6..10eb5da69f0 100644 --- a/addons/compat_cup_vehicles/compat_cup_vehicles_fastroping/config.cpp +++ b/addons/compat_cup_vehicles/compat_cup_vehicles_fastroping/config.cpp @@ -15,6 +15,8 @@ class CfgPatches { authors[] = {"Community Upgrade Project", "Mike"}; url = ECSTRING(main,URL); VERSION_CONFIG; + + addonRootClass = QUOTE(ADDON); }; }; diff --git a/addons/compat_cup_vehicles/compat_cup_vehicles_refuel/CfgVehicles.hpp b/addons/compat_cup_vehicles/compat_cup_vehicles_refuel/CfgVehicles.hpp index 1042c0eacf3..60a83030df2 100644 --- a/addons/compat_cup_vehicles/compat_cup_vehicles_refuel/CfgVehicles.hpp +++ b/addons/compat_cup_vehicles/compat_cup_vehicles_refuel/CfgVehicles.hpp @@ -28,4 +28,90 @@ class CfgVehicles { EGVAR(refuel,hooks)[] = {{-1.09, -0.01, -0.5},{1, -0.01, -0.5}}; EGVAR(refuel,fuelCargo) = 10000; }; + + class Car_F; + class CUP_LR_Base: Car_F { + class EGVAR(interaction,anims) { + class selection_jerry { + positions[] = {{-0.65, 2.7, -0.55}, {0.65, 2.7, -0.55}, {-1, -0.25, -0.75}, {1, -0.25, -0.75}}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + name = ECSTRING(refuel,TakeFuelCanister); + text = ECSTRING(refuel,TakeFuelCanisterAction); + }; + }; + }; + class CUP_LR_MG_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_jerry: selection_jerry { + positions[] = {{-0.55, 2.45, 1.05}, {0.55, 2.45, 1.05}, {-1, -0.53, 0.9}, {1, -0.53, 0.9}}; + }; + }; + }; + class CUP_LR_SPG9_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_jerry: selection_jerry {}; + }; + }; + class CUP_LR_AA_Base: CUP_LR_SPG9_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_jerry: selection_jerry { + positions[] = {{-0.65, 2.8, -1.1}, {0.65, 2.8, -1.1}, {-1, -0.15, -1.3}, {1, -0.15, -1.3}}; + }; + }; + }; + class CUP_LR_Ambulance_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_jerry: selection_jerry { + positions[] = {{-0.65, 3.1, -0.55}, {0.65, 3.1, -0.55}}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + }; + }; + }; + class CUP_LR_Special_Base: CUP_LR_Base { + class EGVAR(interaction,anims): EGVAR(interaction,anims) { + class selection_jerry: selection_jerry { + positions[] = {{-0.7, 2.45, 1.05}, {0.55, 2.45, 1.05}}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + }; + }; + }; + + class CUP_nHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_jerrycans { + positions[] = {"(_target selectionPosition 'vhc_jerrycans') vectorAdd [0, 0, 0.15]"}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + name = ECSTRING(refuel,TakeFuelCanister); + text = ECSTRING(refuel,TakeFuelCanisterAction); + }; + }; + }; + // Don't inherit, as it's easier for the main compat + class CUP_nM1025_SOV_Base: CUP_nHMMWV_Base { + class EGVAR(interaction,anims) { + class hide_jerrycans { + positions[] = {"(_target selectionPosition 'vhc_jerrycans') vectorAdd [0, 0, 0.15]"}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + name = ECSTRING(refuel,TakeFuelCanister); + text = ECSTRING(refuel,TakeFuelCanisterAction); + }; + class hide_rear_rack_content { + positions[] = {"_target selectionPosition ['vhc_rear_rack_content', 'FireGeometry', 'AveragePoint']"}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + name = ECSTRING(refuel,TakeFuelCanister); + text = ECSTRING(refuel,TakeFuelCanisterAction); + }; + }; + }; + + class CUP_ECVHMMWV_Base: Car_F { + class EGVAR(interaction,anims) { + class hide_jerrycans { + positions[] = {"(_target selectionPosition ['vhc_rear_trunk_door', 'FireGeometry', 'AveragePoint']) vectorAdd [-0.85, -0.22, -0.1]"}; + items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F"}; + name = ECSTRING(refuel,TakeFuelCanister); + text = ECSTRING(refuel,TakeFuelCanisterAction); + }; + }; + }; };