ACE3/optionals/compat_cup/CfgWeapons.hpp
2015-06-04 14:57:43 +02:00

604 lines
20 KiB
C++

class CfgWeapons
{
class Pistol_Base_F;
class Rifle_Base_F;
class Rifle_Long_Base_F;
class Launcher_Base_F;
class CUP_hgun_Colt1911 : Pistol_Base_F {
ACE_barrelTwist=406.4;
ACE_barrelLength=127.0;
};
class CUP_sgun_AA12 : Rifle_Base_F {
ACE_barrelTwist=0.0;
ACE_twistDirection=0;
ACE_barrelLength=457.2;
};
class CUP_arifle_AK_Base : Rifle_Base_F {
ACE_barrelTwist=240.03;
ACE_barrelLength=414.02;
};
class CUP_arifle_AK107_Base : CUP_arifle_AK_Base {
ACE_barrelTwist=199.898;
ACE_barrelLength=414.02;
};
class CUP_arifle_AKS_Base : CUP_arifle_AK_Base {
ACE_barrelTwist=199.898;
ACE_barrelLength=414.02;
};
class CUP_arifle_AKS74U : CUP_arifle_AK_Base {
ACE_barrelTwist=160.02;
ACE_barrelLength=210.82;
};
class CUP_arifle_AK74;
class CUP_arifle_RPK74 : CUP_arifle_AK74 {
ACE_barrelTwist=195.072;
ACE_barrelLength=589.28;
};
class CUP_srifle_AS50 : Rifle_Long_Base_F {
ACE_barrelTwist=381.0;
ACE_barrelLength=736.6;
};
class CUP_srifle_AWM_Base : Rifle_Long_Base_F {
ACE_barrelTwist=279.4;
ACE_barrelLength=685.8;
};
class CUP_smg_bizon : Rifle_Base_F {
ACE_barrelTwist=240.03;
ACE_barrelLength=231.14;
};
class CUP_hgun_Compact : Pistol_Base_F {
ACE_barrelTwist=248.92;
ACE_barrelLength=94.996;
};
class CUP_srifle_CZ750 : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=660.4;
};
class CUP_arifle_CZ805_Base : Rifle_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=355.6;
};
class CUP_arifle_CZ805_A1 : CUP_arifle_CZ805_Base {
ACE_barrelTwist=304.8;
ACE_barrelLength=355.6;
};
class CUP_arifle_CZ805_A2 : CUP_arifle_CZ805_Base {
ACE_barrelTwist=304.8;
ACE_barrelLength=276.86;
};
class CUP_srifle_DMR : Rifle_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=558.8;
};
class CUP_hgun_Duty : Pistol_Base_F {
ACE_barrelTwist=248.92;
ACE_barrelLength=94.996;
};
class CUP_arifle_FNFAL : Rifle_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=533.4;
};
class CUP_arifle_G36_Base;
class CUP_arifle_G36A : CUP_arifle_G36_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=480;
};
class CUP_arifle_G36K : CUP_arifle_G36A {
ACE_barrelTwist=177.8;
ACE_barrelLength=318;
};
class CUP_arifle_G36C : Rifle_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=228;
};
class CUP_arifle_MG36 : CUP_arifle_G36C {
ACE_barrelTwist=177.8;
ACE_barrelLength=480;
};
class CUP_hgun_Glock17 : Pistol_Base_F {
ACE_barrelTwist=248.92;
ACE_barrelLength=114.046;
};
class CUP_srifle_CZ550 : Rifle_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=599.999;
};
class CUP_srifle_ksvk : Rifle_Base_F {
ACE_barrelTwist=457.2;
ACE_barrelLength=999.998;
};
class CUP_lmg_L7A2 : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=629.92;
};
class CUP_arifle_L85A2_Base : Rifle_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=518.16;
};
class CUP_arifle_L86A2_Base: Rifle_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=646;
};
class CUP_lmg_L110A1 : Rifle_Long_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=347.98;
};
class CUP_srifle_LeeEnfield : Rifle_Base_F {
ACE_barrelTwist=254.0;
ACE_barrelLength=640.08;
};
class CUP_hgun_M9 : Pistol_Base_F {
ACE_barrelTwist=248.92;
ACE_barrelLength=124.46;
};
class CUP_srifle_M14 : Rifle_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=558.8;
};
class CUP_arifle_M16_Base : Rifle_Base_F {
ACE_barrelTwist=355.6;
ACE_barrelLength=508.0;
};
class CUP_arifle_M16A4_Base;
class CUP_arifle_M4_Base : CUP_arifle_M16A4_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=368.3;
};
class CUP_arifle_M4A1;
class CUP_srifle_Mk12SPR : CUP_arifle_M4A1 {
ACE_barrelTwist=177.8;
ACE_barrelLength=457.2;
};
class CUP_srifle_M24_des : Rifle_Base_F {
ACE_barrelTwist=285.75;
ACE_barrelLength=609.6;
};
class CUP_lmg_M60A4 : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=431.8;
};
class CUP_srifle_M107_Base : Rifle_Long_Base_F {
ACE_barrelTwist=381.0;
ACE_barrelLength=736.6;
};
class CUP_srifle_M110 : Rifle_Base_F {
ACE_barrelTwist=279.4;
ACE_barrelLength=508.0;
};
class CUP_lmg_M240 : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=629.92;
};
class CUP_lmg_M249_para : Rifle_Long_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=414.02;
};
class CUP_lmg_M249 : Rifle_Long_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=457.2;
};
class CUP_sgun_M1014 : Rifle_Base_F {
ACE_twistDirection=0;
ACE_barrelTwist=0.0;
ACE_barrelLength=469.9;
};
class CUP_hgun_Makarov : Pistol_Base_F {
ACE_barrelTwist=240.03;
ACE_barrelLength=93.472;
};
class CUP_hgun_MicroUzi : Pistol_Base_F {
ACE_barrelTwist=248.92;
ACE_barrelLength=127.0;
};
class CUP_lmg_Mk48_Base : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=501.65;
};
class CUP_smg_MP5SD6 : Rifle_Base_F {
ACE_barrelTwist=254.0;
ACE_barrelLength=144.78;
};
class CUP_smg_MP5A5 : CUP_smg_MP5SD6 {
ACE_barrelTwist=254.0;
ACE_barrelLength=226.06;
};
class CUP_hgun_PB6P9 : Pistol_Base_F {
ACE_barrelTwist=240.03;
ACE_barrelLength=104.14;
};
class CUP_hgun_Phantom : Pistol_Base_F {
ACE_barrelTwist=246.38;
ACE_barrelLength=119.38;
};
class CUP_lmg_PKM : Rifle_Long_Base_F {
ACE_barrelTwist=240.03;
ACE_barrelLength=645.16;
};
class CUP_lmg_Pecheneg : CUP_lmg_PKM {
ACE_barrelTwist=240.03;
ACE_barrelLength=657.86;
};
class CUP_hgun_TaurusTracker455 : Pistol_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=101.6;
};
class CUP_arifle_Sa58_base;
class CUP_arifle_Sa58P : CUP_arifle_Sa58_base {
ACE_barrelTwist=240.03;
ACE_barrelLength=391.16;
};
class CUP_arifle_Sa58V : CUP_arifle_Sa58P {
ACE_barrelTwist=240.03;
ACE_barrelLength=391.16;
};
class CUP_hgun_SA61 : Pistol_Base_F {
ACE_barrelTwist=406.4;
ACE_barrelLength=114.3;
};
class CUP_sgun_Saiga12K: Rifle_Base_F {
ACE_barrelTwist=0.0;
ACE_twistDirection=0;
ACE_barrelLength=429.26;
};
class CUP_arifle_SCAR_L_Base;
class CUP_arifle_Mk16_CQC : CUP_arifle_SCAR_L_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=254.0;
};
class CUP_arifle_Mk16_STD : CUP_arifle_SCAR_L_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=355.6;
};
class CUP_arifle_Mk16_SV : CUP_arifle_SCAR_L_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=457.2;
};
class CUP_arifle_Mk17_Base;
class CUP_arifle_Mk17_CQC : CUP_arifle_Mk17_Base {
ACE_barrelTwist=304.8;
ACE_barrelLength=330.2;
};
class CUP_arifle_Mk17_STD : CUP_arifle_Mk17_Base {
ACE_barrelTwist=304.8;
ACE_barrelLength=406.4;
};
class CUP_arifle_Mk20 : CUP_arifle_Mk17_Base {
ACE_barrelTwist=304.8;
ACE_barrelLength=508.0;
};
class CUP_srifle_SVD : Rifle_Base_F {
ACE_barrelTwist=238.76;
ACE_barrelLength=619.76;
};
class CUP_lmg_UK59 : Rifle_Long_Base_F {
ACE_barrelTwist=381.0;
ACE_barrelLength=551.18;
};
class MGun;
class CUP_DSHKM_W : MGun {
ACE_barrelTwist=381.0;
ACE_barrelLength=1069.34;
};
class CUP_KPVT_W : MGun {
ACE_barrelTwist=454.914;
ACE_barrelLength=1346.2;
};
class CUP_M242_W;
class CUP_KPVB_W : CUP_M242_W {
ACE_barrelTwist=454.914;
ACE_barrelLength=1346.2;
};
class MGunCore;
class CUP_M134 : MGunCore {
ACE_barrelTwist=304.8;
ACE_barrelLength=558.8;
};
class CUP_M240_veh_W : Rifle_Long_Base_F {
ACE_barrelTwist=304.8;
ACE_barrelLength=629.92;
};
class CUP_PKT_W : MGun {
ACE_barrelTwist=240.03;
ACE_barrelLength=722.122;
};
class CUP_srifle_VSSVintorez : Rifle_Base_F {
ACE_barrelTwist=210.82;
ACE_barrelLength=200.66;
};
class CUP_arifle_XM8_Base : Rifle_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=317.5;
};
class CUP_arifle_XM8_Carbine : CUP_arifle_XM8_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=317.5;
};
class CUP_arifle_xm8_sharpshooter : CUP_arifle_XM8_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=508.0;
};
class CUP_arifle_xm8_SAW : CUP_arifle_XM8_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=508.0;
};
class CUP_arifle_XM8_Compact : CUP_arifle_XM8_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=228.6;
};
class CUP_arifle_XM8_Railed_Base : Rifle_Base_F {
ACE_barrelTwist=177.8;
ACE_barrelLength=317.5;
};
class CUP_arifle_XM8_Carbine_FG : CUP_arifle_XM8_Base {
ACE_barrelTwist=177.8;
ACE_barrelLength=317.5;
};
class ItemCore;
class InventoryOpticsItem_Base_F;
class CUP_optic_SB_3_12x50_PMII : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class LRR {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_LeupoldMk4 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class LRR {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_Leupold_VX3 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class StepScope {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_AN_PVS_10 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class NVScope {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_LeupoldM3LR : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class LRR {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_LeupoldMk4_10x40_LRT_Desert : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class LRR {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_LeupoldMk4_MRT_tan : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -4, 30 };
ACE_ScopeAdjust_Horizontal[] = { -6, 6 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class MRT {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
class CUP_optic_SB_11_4x20_PM : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -0.1, 10.1 };
ACE_ScopeAdjust_Horizontal[] = { -5.1, 5.1 };
ACE_ScopeAdjust_VerticalIncrement = 0.1;
ACE_ScopeAdjust_HorizontalIncrement = 0.1;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class ShortDot {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
/*
// This would require MOA turrets
class CUP_optic_AN_PVS_4 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { -12, 50 };
ACE_ScopeAdjust_Horizontal[] = { -20, 20 };
ACE_ScopeAdjust_VerticalIncrement = 0.25;
ACE_ScopeAdjust_HorizontalIncrement = 0.25;
ACE_ScopeAdjust_Unit = "MOA";
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class ANPVS4 {
discreteDistance[] = { 100 };
discreteDistanceInitIndex = 0;
};
};
};
};
*/
class CUP_optic_PSO_1 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { 0, 0 };
ACE_ScopeAdjust_Horizontal[] = { -10, 10 };
ACE_ScopeAdjust_VerticalIncrement = 0.0;
ACE_ScopeAdjust_HorizontalIncrement = 0.5;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class PSO {
discreteDistance[]={100, 200, 300, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1000};
discreteDistanceInitIndex=3;
};
};
};
};
class CUP_optic_PSO_3 : ItemCore {
ACE_ScopeAdjust_Vertical[] = { 0, 0 };
ACE_ScopeAdjust_Horizontal[] = { -10, 10 };
ACE_ScopeAdjust_VerticalIncrement = 0.0;
ACE_ScopeAdjust_HorizontalIncrement = 0.5;
class ItemInfo : InventoryOpticsItem_Base_F {
class OpticsModes {
class PSO {
discreteDistance[]={100, 200, 300, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1000};
discreteDistanceInitIndex=3;
};
};
};
};
// Non Disposable launchers
class CUP_launch_Igla: Launcher_Base_F {
EGVAR(overpressure,angle) = 30;
EGVAR(overpressure,range) = 2;
EGVAR(overpressure,damage) = 0.5;
};
class CUP_launch_M47: Launcher_Base_F {
EGVAR(overpressure,angle) = 45;
EGVAR(overpressure,range) = 30;
EGVAR(overpressure,damage) = 0.7;
};
class CUP_launch_MAAWS: Launcher_Base_F {
EGVAR(overpressure,angle) = 60;
EGVAR(overpressure,range) = 28;
EGVAR(overpressure,damage) = 0.7;
};
class CUP_launch_MAAWS_Scope: CUP_launch_MAAWS {};
class CUP_launch_Metis: Launcher_Base_F {
EGVAR(overpressure,angle) = 45;
EGVAR(overpressure,range) = 30;
EGVAR(overpressure,damage) = 0.5;
};
class CUP_launch_RPG7V: Launcher_Base_F {
EGVAR(overpressure,angle) = 45;
EGVAR(overpressure,range) = 20;
EGVAR(overpressure,damage) = 1;
};
class CUP_launch_Mk153Mod0: Launcher_Base_F {
EGVAR(overpressure,angle) = 30;
EGVAR(overpressure,range) = 30;
EGVAR(overpressure,damage) = 1;
};
class CUP_launch_Mk153Mod0_SMAWOptics: CUP_launch_Mk153Mod0 {};
class CUP_launch_FIM92Stinger: Launcher_Base_F {
EGVAR(overpressure,angle) = 45;
EGVAR(overpressure,range) = 15;
EGVAR(overpressure,damage) = 0.3; // Main damage arises from debris rather than the actual backblast
};
class CUP_launch_9K32Strela: Launcher_Base_F {
EGVAR(overpressure,angle) = 30;
EGVAR(overpressure,range) = 2;
EGVAR(overpressure,damage) = 0.5;
};
// Disposable launchers under this line
class CUP_launch_M136: Launcher_Base_F {
EGVAR(overpressure,angle) = 45;
EGVAR(overpressure,range) = 100;
EGVAR(overpressure,damage) = 0.7;
ACE_UsedTube = "ACE_launch_M136_Used_F"; // The class name of the used tube.
magazines[] = {"ACE_PreloadedMissileDummy_CUP"}; // The dummy magazine
};
class ACE_launch_M136_Used_F: CUP_launch_M136 {
scope = 1;
ACE_isUsedLauncher = 1;
author = "$STR_ACE_Common_ACETeam";
//displayName = "$STR_ACE_Disposable_UsedTube";
//descriptionShort = "$STR_ACE_Disposable_UsedTubeDescription";
displayName = "M136 (Used)";
descriptionShort = "Used M136 Tube";
magazines[] = {"ACE_FiredMissileDummy_CUP"};
//picture = ""; @todo
//model = ""; @todo
weaponPoolAvailable = 0;
};
class CUP_launch_NLAW: Launcher_Base_F {
EGVAR(overpressure,angle) = 30;
EGVAR(overpressure,range) = 2;
EGVAR(overpressure,damage) = 0.5;
ACE_UsedTube = "ACE_launch_NLAW_Used_F"; // The class name of the used tube.
magazines[] = {"ACE_PreloadedMissileDummy_CUP"}; // The dummy magazine
};
class ACE_launch_NLAW_Used_F: CUP_launch_NLAW {
scope = 1;
ACE_isUsedLauncher = 1;
author = "$STR_ACE_Common_ACETeam";
//displayName = "$STR_ACE_Disposable_UsedTube";
//descriptionShort = "$STR_ACE_Disposable_UsedTubeDescription";
displayName = "NLAW (Used)";
descriptionShort = "Used NLAW Tube";
magazines[] = {"ACE_FiredMissileDummy_CUP"};
//picture = ""; @todo
//model = ""; @todo
weaponPoolAvailable = 0;
};
class CUP_launch_RPG18: Launcher_Base_F {
EGVAR(overpressure,angle) = 40;
EGVAR(overpressure,range) = 15;
EGVAR(overpressure,damage) = 1;
ACE_UsedTube = "ACE_launch_RPG18_Used_F"; // The class name of the used tube.
magazines[] = {"ACE_PreloadedMissileDummy_CUP"}; // The dummy magazine
};
class ACE_launch_RPG18_Used_F: CUP_launch_RPG18 {
scope = 1;
ACE_isUsedLauncher = 1;
author = "$STR_ACE_Common_ACETeam";
//displayName = "$STR_ACE_Disposable_UsedTube";
//descriptionShort = "$STR_ACE_Disposable_UsedTubeDescription";
displayName = "RPG18 (Used)";
descriptionShort = "Used RPG18 Tube";
magazines[] = {"ACE_FiredMissileDummy_CUP"};
//picture = ""; @todo
//model = ""; @todo
weaponPoolAvailable = 0;
};
};