diff --git a/addons/jam/jam_csla/CfgMagazineWells.hpp b/addons/jam/jam_csla/CfgMagazineWells.hpp new file mode 100644 index 000000000..13d999cd3 --- /dev/null +++ b/addons/jam/jam_csla/CfgMagazineWells.hpp @@ -0,0 +1,133 @@ +class CfgMagazineWells { + + class CBA_12g_8rnds { + CSLA_rounds[] = { + "US85_8Rnd_12GaugeSlug" + }; + }; + + class CBA_12g_1rnd { + CSLA_rounds[] = { + "US85_12GaugeSlug" + }; + }; + + class CBA_32ACP_Vz61 { + CSLA_mags[] = { + "CSLA_Sa61_20rnd_7_65Pi27", + "CSLA_Sa61_20rnd_7_65PiCv27" + }; + }; + + class CBA_40mm_M203 { + CSLA_grenades[] = { + "US85_1Rnd_HE" + }; + }; + + class CBA_45ACP_1911 { + CSLA_mags[] = { + "US85_1911_7Rnd_045ACP" + }; + }; + + class CBA_556x45_MINIMI { + CSLA_boxes[] = { + "US85_200Rnd_556x45" + }; + }; + + class CBA_556x45_STANAG { + CSLA_mags[] = { + "US85_30Rnd_556x45" + }; + }; + + class CBA_762x25_TT { + CSLA_mags[] = { + "CSLA_Pi52_8rnd_7_62Pi52", + "CSLA_Pi52_8rnd_7_62PiCv52" + }; + }; + + class CBA_762x39_AK { + CSLA_mags[] = { + "CSLA_Sa58_30rnd_7_62Cv43", + "CSLA_Sa58_30rnd_7_62Sv43", + "CSLA_Sa58_30rnd_7_62vz43" + }; + }; + + class CBA_762x51_AICS { + CSLA_mags[] = { + "US85_10Rnd_762x51" + }; + }; + + class CBA_762x51_LINKS { + CSLA_belts[] = { + "US85_50Rnd_762x51", + "US85_100Rnd_762x51", + "US85_200Rnd_762x51" + }; + }; + + class CBA_762x54R_SVD { + CSLA_mags[] = { + "CSLA_OP63_10rnd_7_62Odst59", + "CSLA_OP63_10rnd_7_62Cv59" + }; + }; + + class CBA_762x54R_Vz59_LINKS { + CSLA_belts[] = { + "CSLA_UK59_50rnd_7_62Cv59", + "CSLA_UK59_50rnd_7_62PZ59", + "CSLA_UK59_50rnd_7_62Sv59", + "CSLA_UK59_50rnd_7_62Tz59", + "CSLA_UK59_50rnd_7_62TzSv59", + "CSLA_UK59_50rnd_7_62vz59" + }; + }; + + class CBA_9x18_CZ82 { + CSLA_mags[] = { + "CSLA_Pi82_12rnd_9Pi82", + "CSLA_Pi82_12rnd_9PiCv82" + }; + }; + + class CBA_9x19_M9 { + CSLA_mags[] = { + "US85_M9_15Rnd_9Luger" + }; + }; + + class CBA_9x19_MP5 { + CSLA_mags[] = { + "US85_MPV_30Rnd_9Luger" + }; + }; + + class CBA_SMAW { + CSLA_rounds[] = { + "US85_SMAW_HEAA", + "US85_SMAW_HEDP" + }; + }; + + class CBA_Carl_Gustaf { + CSLA_rounds[] = { + "US85_MAAWS_HEAT", + "US85_MAAWS_HEDP" + }; + }; + + class CBA_RPG7 { + CSLA_rockets[] = { + "CSLA_PG7M110", + "CSLA_PG7M110V" + }; + }; + +}; diff --git a/addons/jam/jam_csla/CfgWeapons.hpp b/addons/jam/jam_csla/CfgWeapons.hpp new file mode 100644 index 000000000..842582d05 --- /dev/null +++ b/addons/jam/jam_csla/CfgWeapons.hpp @@ -0,0 +1,91 @@ +class CfgWeapons { + + class CSLA_baseWeapon; + + class CSLA_OP63_Base: CSLA_baseWeapon { + magazineWell[] += {"CBA_762x54R_SVD"}; + }; + + class CSLA_rSa61: CSLA_baseWeapon { + magazineWell[] += {"CBA_32ACP_Vz61"}; + }; + + class CSLA_Sa58_Base: CSLA_baseWeapon { + magazineWell[] += {"CBA_762x39_AK"}; + }; + + class CSLA_MachinegunBase_5_56: CSLA_baseWeapon {}; + + class CSLA_MachinegunBase_7_62: CSLA_MachinegunBase_5_56 {}; + + class CSLA_UK59L: CSLA_MachinegunBase_7_62 { + magazineWell[] += {"CBA_762x54R_Vz59_LINKS"}; + }; + + class CSLA_PistolBase; + + class CSLA_Pi52: CSLA_PistolBase { + magazineWell[] += {"CBA_762x25_TT"}; + }; + + class CSLA_Pi82: CSLA_Pi52 { + magazineWell[] += {"CBA_9x18_CZ82"}; + }; + + class CSLA_Sa61: CSLA_Pi52 { + magazineWell[] += {"CBA_32ACP_Vz61"}; + }; + + class CSLA_LauncherBase; + + class CSLA_RPG7: CSLA_LauncherBase { + magazineWell[] += {"CBA_RPG7"}; + }; + + class US85_weaponBase; + + class US85_FAL_BASE: US85_weaponBase { + magazineWell[] += {"CBA_762x51_FAL", "CBA_762x51_FAL_L"}; + }; + + class US85_M16_base: US85_weaponBase { + magazineWell[] += {"CBA_556x45_STANAG","CBA_556x45_STANAG_L","CBA_556x45_STANAG_XL","CBA_556x45_STANAG_2D","CBA_556x45_STANAG_2D_XL"}; + }; + + class US85_M21_Base: US85_weaponBase { + magazineWell[] += {"CBA_762x51_M14", "CBA_762x51_M14_L"}; + }; + + class US85_MPV_BASE: US85_weaponBase { + magazineWell[] += {"CBA_9x19_MP5"}; + }; + + class US85_MachinegunBase_5_56: US85_weaponBase {}; + + class US85_M249: US85_MachinegunBase_5_56 { + magazineWell[] += {"CBA_556x45_MINIMI"}; + }; + + class US85_MachinegunBase_7_62: US85_MachinegunBase_5_56 {}; + + class US85_M60: US85_MachinegunBase_7_62 { + magazineWell[] += {"CBA_762x51_LINKS"}; + }; + + class US85_pistolBase; + + class US85_1911: US85_pistolBase { + magazineWell[] += {"CBA_45ACP_1911"}; + }; + + class US85_M9: US85_pistolBase { + magazineWell[] += {"CBA_9x19_M9"}; + }; + + class US85_launcherBase; + + class US85_MAAWS: US85_launcherBase { + magazineWell[] += {"CBA_Carl_Gustaf"}; + }; + +}; diff --git a/addons/jam/jam_csla/config.cpp b/addons/jam/jam_csla/config.cpp new file mode 100644 index 000000000..2c1aa45ae --- /dev/null +++ b/addons/jam/jam_csla/config.cpp @@ -0,0 +1,23 @@ +#include "script_component.hpp" + +class CfgPatches { + class SUBADDON { + name = CSTRING(component); + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = { + "cba_jam", + "CSLA", + "US85" + }; + 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_csla/script_component.hpp b/addons/jam/jam_csla/script_component.hpp new file mode 100644 index 000000000..4dae27a45 --- /dev/null +++ b/addons/jam/jam_csla/script_component.hpp @@ -0,0 +1,2 @@ +#define SUBCOMPONENT csla +#include "..\script_component.hpp"