Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add magazine wells for GM CDLC #1538

Merged
merged 11 commits into from
Sep 13, 2023
161 changes: 161 additions & 0 deletions addons/jam/jam_gm/CfgMagazineWells.hpp
Original file line number Diff line number Diff line change
@@ -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"
};
};

};
75 changes: 75 additions & 0 deletions addons/jam/jam_gm/CfgWeapons.hpp
Original file line number Diff line number Diff line change
@@ -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"};
};
};
36 changes: 36 additions & 0 deletions addons/jam/jam_gm/config.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#include "script_component.hpp"

class CfgPatches {
class SUBADDON {
jonpas marked this conversation as resolved.
Show resolved Hide resolved
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"
2 changes: 2 additions & 0 deletions addons/jam/jam_gm/script_component.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#define SUBCOMPONENT gm
#include "..\script_component.hpp"