From 01327382e27d974c2022988d9f2f41a2750a33ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Dahlgren?= Date: Wed, 13 Sep 2023 05:07:38 +0200 Subject: [PATCH] Add magazine wells for GM CDLC (#1538) Co-authored-by: PabstMirror Co-authored-by: jonpas --- addons/jam/jam_gm/CfgMagazineWells.hpp | 161 +++++++++++++++++++++++++ addons/jam/jam_gm/CfgWeapons.hpp | 75 ++++++++++++ addons/jam/jam_gm/config.cpp | 36 ++++++ addons/jam/jam_gm/script_component.hpp | 2 + 4 files changed, 274 insertions(+) create mode 100644 addons/jam/jam_gm/CfgMagazineWells.hpp create mode 100644 addons/jam/jam_gm/CfgWeapons.hpp create mode 100644 addons/jam/jam_gm/config.cpp create mode 100644 addons/jam/jam_gm/script_component.hpp diff --git a/addons/jam/jam_gm/CfgMagazineWells.hpp b/addons/jam/jam_gm/CfgMagazineWells.hpp new file mode 100644 index 000000000..b832a113d --- /dev/null +++ b/addons/jam/jam_gm/CfgMagazineWells.hpp @@ -0,0 +1,161 @@ +class CfgMagazineWells { + + class CBA_545x39_AK { + GM_mags[] = { + "gm_30Rnd_545x39mm_b_7N6_ak74_org", + "gm_30Rnd_545x39mm_b_7N6_ak74_prp", + "gm_30Rnd_545x39mm_b_t_7T3_ak74_org", + "gm_30Rnd_545x39mm_b_t_7T3_ak74_prp" + }; + }; + + class CBA_545x39_RPK { + GM_mags[] = { + "gm_45Rnd_545x39mm_b_7N6_ak74_org", + "gm_45Rnd_545x39mm_b_7N6_ak74_prp", + "gm_45Rnd_545x39mm_b_t_7T3_ak74_org", + "gm_45Rnd_545x39mm_b_t_7T3_ak74_prp" + }; + }; + + class CBA_556x45_G36 { + GM_mags[] = { + "gm_30Rnd_556x45mm_b_dm11_g36_blk", + "gm_30Rnd_556x45mm_b_dm11_g36_des", + "gm_30Rnd_556x45mm_b_t_dm21_g36_blk", + "gm_30Rnd_556x45mm_b_t_dm21_g36_des" + }; + }; + + class CBA_556x45_STANAG { + GM_mags[] = { + "gm_20Rnd_556x45mm_b_M193_stanag_gry", + "gm_20Rnd_556x45mm_b_M855_stanag_gry", + "gm_20Rnd_556x45mm_b_t_M196_stanag_gry", + "gm_20Rnd_556x45mm_b_t_M856_stanag_gry", + "gm_30Rnd_556x45mm_b_M193_stanag_gry", + "gm_30Rnd_556x45mm_b_M855_stanag_gry", + "gm_30Rnd_556x45mm_b_t_M196_stanag_gry", + "gm_30Rnd_556x45mm_b_t_M856_stanag_gry" + }; + }; + + class CBA_762x39_AK { + GM_mags[] = { + "gm_30Rnd_762x39mm_ap_7N23_ak47_blk", + "gm_30Rnd_762x39mm_b_57N231_ak47_blk", + "gm_30Rnd_762x39mm_b_M43_ak47_blk", + "gm_30Rnd_762x39mm_b_t_57N231P_ak47_blk", + "gm_30Rnd_762x39mm_b_t_M43_ak47_blk" + }; + }; + + class CBA_762x39_RPK { + GM_mags[] = { + "gm_75Rnd_762x39mm_ap_7N23_ak47_blk", + "gm_75Rnd_762x39mm_b_57N231_ak47_blk", + "gm_75Rnd_762x39mm_b_M43_ak47_blk", + "gm_75Rnd_762x39mm_b_t_57N231P_ak47_blk", + "gm_75Rnd_762x39mm_b_t_M43_ak47_blk" + }; + }; + + class CBA_762x51_G3 { + GM_mags[] = { + "gm_20Rnd_762x51mm_ap_DM151_g3_blk", + "gm_20Rnd_762x51mm_ap_DM151_g3_des", + "gm_20Rnd_762x51mm_b_DM111_g3_blk", + "gm_20Rnd_762x51mm_b_DM111_g3_des", + "gm_20Rnd_762x51mm_b_DM41_g3_blk", + "gm_20Rnd_762x51mm_b_DM41_g3_des", + "gm_20Rnd_762x51mm_b_t_DM21_g3_blk", + "gm_20Rnd_762x51mm_b_t_DM21_g3_des", + "gm_20Rnd_762x51mm_b_t_DM21A1_g3_blk", + "gm_20Rnd_762x51mm_b_t_DM21A1_g3_des", + "gm_20Rnd_762x51mm_b_t_DM21A2_g3_blk", + "gm_20Rnd_762x51mm_b_t_DM21A2_g3_des" + }; + }; + + class CBA_762x51_MG3 { + GM_belts[] = { + "gm_120Rnd_762x51mm_b_t_DM21_mg3_grn", + "gm_120Rnd_762x51mm_b_t_DM21A1_mg3_grn", + "gm_120Rnd_762x51mm_b_t_DM21A2_mg3_grn" + }; + }; + + class CBA_762x54R_LINKS { + GM_belts[] = { + "gm_100Rnd_762x54mm_api_b32_pk_grn", + "gm_100Rnd_762x54mm_b_t_t46_pk_grn", + "gm_100Rnd_762x54mmR_api_7bz3_pk_grn", + "gm_100Rnd_762x54mmR_b_t_7t2_pk_grn" + }; + }; + + class CBA_762x54R_SVD { + GM_mags[] = { + "gm_10Rnd_762x54mmR_ap_7n1_svd_blk", + "gm_10Rnd_762x54mmR_api_7bz3_svd_blk", + "gm_10Rnd_762x54mmR_b_t_7t2_svd_blk" + }; + }; + + class CBA_9x18_PM { + GM_mags[] = { + "gm_8rnd_9x18mm_b_pst_pm_blk" + }; + }; + + class CBA_9x18_PM63 { + GM_mags[] = { + "gm_15Rnd_9x18mm_b_pst_pm63_blk", + "gm_25Rnd_9x18mm_b_pst_pm63_blk" + }; + }; + + class CBA_9x19_MP5 { + GM_mags[] = { + "gm_30Rnd_9x19mm_ap_DM91_mp5_blk", + "gm_30Rnd_9x19mm_ap_DM91_mp5a3_blk", + "gm_30Rnd_9x19mm_b_DM11_mp5_blk", + "gm_30Rnd_9x19mm_b_DM11_mp5a3_blk", + "gm_30Rnd_9x19mm_b_DM51_mp5_blk", + "gm_30Rnd_9x19mm_b_DM51_mp5a3_blk" + }; + }; + + class CBA_9x19_P38 { + GM_mags[] = { + "gm_8rnd_9x19mm_b_dm11_p1_blk", + "gm_8rnd_9x19mm_b_dm51_p1_blk" + }; + }; + + class CBA_9x19_UZI { + GM_mags[] = { + "gm_32Rnd_9x19mm_ap_DM91_mp2_blk", + "gm_32Rnd_9x19mm_b_DM11_mp2_blk", + "gm_32Rnd_9x19mm_b_DM51_mp2_blk" + }; + }; + + class CBA_Carl_Gustaf { + GM_rounds[] = { + "gm_1Rnd_84x245mm_heat_t_DM12_carlgustaf", + "gm_1Rnd_84x245mm_heat_t_DM12a1_carlgustaf", + "gm_1Rnd_84x245mm_heat_t_DM22_carlgustaf", + "gm_1Rnd_84x245mm_heat_t_DM32_carlgustaf", + "gm_1Rnd_84x245mm_illum_DM16_carlgustaf" + }; + }; + + class CBA_RPG7 { + GM_rockets[] = { + "gm_1Rnd_40mm_heat_pg7v_rpg7", + "gm_1Rnd_40mm_heat_pg7vl_rpg7" + }; + }; + +}; diff --git a/addons/jam/jam_gm/CfgWeapons.hpp b/addons/jam/jam_gm/CfgWeapons.hpp new file mode 100644 index 000000000..2bf4a3bf1 --- /dev/null +++ b/addons/jam/jam_gm/CfgWeapons.hpp @@ -0,0 +1,75 @@ +class CfgWeapons { + class Rifle_Base_F; + + class gm_rifle_base: Rifle_Base_F {}; + + class gm_ak47_base: gm_rifle_base { + magazineWell[] += {"CBA_762x39_AK","CBA_762x39_RPK"}; + }; + + class gm_ak74_base: gm_rifle_base { + magazineWell[] += {"CBA_545x39_AK","CBA_545x39_RPK"}; + }; + + class gm_g3_base: gm_rifle_base { + magazineWell[] += {"CBA_762x51_G3"}; + }; + + class gm_g36_base: gm_rifle_base { + magazineWell[] += {"CBA_556x45_G36"}; + }; + + class gm_m16_base: gm_rifle_base { + magazineWell[] += {"CBA_556x45_STANAG","CBA_556x45_STANAG_L","CBA_556x45_STANAG_XL","CBA_556x45_STANAG_2D","CBA_556x45_STANAG_2D_XL"}; + }; + + class gm_mp2_base: gm_rifle_base { + magazineWell[] += {"CBA_9x19_UZI"}; + }; + + class gm_mp5_base: gm_rifle_base { + magazineWell[] += {"CBA_9x19_MP5"}; + }; + + class gm_pm63_base: gm_rifle_base { + magazineWell[] += {"CBA_9x18_PM63"}; + }; + + class gm_svd_base: gm_rifle_base { + magazineWell[] += {"CBA_9x18_PM63"}; + }; + + class gm_machineGun_base: gm_rifle_base {}; + + class gm_mg3_base: gm_machineGun_base { + magazineWell[] += {"gm_mg3_base"}; + }; + + class gm_pk_base: gm_machineGun_base { + magazineWell[] += {"CBA_762x54R_LINKS"}; + }; + + class Pistol_Base_F; + + class gm_pistol_base: Pistol_Base_F {}; + + class gm_p1_base: gm_pistol_base { + magazineWell[] += {"CBA_9x19_P38"}; + }; + + class gm_pm_base: gm_pistol_base { + magazineWell[] += {"CBA_9x18_PM"}; + }; + + class Launcher_Base_F; + + class gm_launcher_base: Launcher_Base_F {}; + + class gm_carlgustaf_m2_base: gm_launcher_base { + magazineWell[] += {"CBA_Carl_Gustaf"}; + }; + + class gm_rpg7_base: gm_launcher_base { + magazineWell[] += {"CBA_RPG7"}; + }; +}; diff --git a/addons/jam/jam_gm/config.cpp b/addons/jam/jam_gm/config.cpp new file mode 100644 index 000000000..9e1e0c15b --- /dev/null +++ b/addons/jam/jam_gm/config.cpp @@ -0,0 +1,36 @@ +#include "script_component.hpp" + +class CfgPatches { + class SUBADDON { + name = CSTRING(component); + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = { + "cba_jam", + "gm_weapons_launchers_carlgustaf", + "gm_weapons_launchers_rpg7", + "gm_weapons_machineguns_mg3", + "gm_weapons_machineguns_pk", + "gm_weapons_machinepistols_gm_mp2", + "gm_weapons_machinepistols_gm_pm63", + "gm_weapons_pistols_p1", + "gm_weapons_pistols_pm", + "gm_weapons_rifles_ak47", + "gm_weapons_rifles_ak74", + "gm_weapons_rifles_g3", + "gm_weapons_rifles_g36", + "gm_weapons_rifles_m16", + "gm_weapons_rifles_mp5", + "gm_weapons_rifles_svd" + }; + author = "$STR_CBA_Author"; + authors[] = {}; + url = "$STR_CBA_URL"; + skipWhenMissingDependencies = 1; + VERSION_CONFIG; + }; +}; + +#include "CfgMagazineWells.hpp" +#include "CfgWeapons.hpp" diff --git a/addons/jam/jam_gm/script_component.hpp b/addons/jam/jam_gm/script_component.hpp new file mode 100644 index 000000000..8a807b96c --- /dev/null +++ b/addons/jam/jam_gm/script_component.hpp @@ -0,0 +1,2 @@ +#define SUBCOMPONENT gm +#include "..\script_component.hpp"