class CfgWeapons { class NVGoggles; class rhs_1PN138: NVGoggles { // Monocular modelOptics = ""; EGVAR(nightvision,border) = QPATHTOEF(nightvision,data\nvg_mask_4096.paa); EGVAR(nightvision,bluRadius) = 0.13; }; class hgun_Rook40_F; class rhs_weap_pya: hgun_Rook40_F { ACE_barrelTwist = 254.0; ACE_barrelLength = 111.76; }; class Pistol_Base_F; class rhs_weap_makarov_pm: rhs_weap_pya { ACE_barrelTwist = 240.03; ACE_barrelLength = 93.472; }; class rhs_weap_ak74m_Base_F; class rhs_weap_ak74m: rhs_weap_ak74m_Base_F { ACE_RailHeightAboveBore = -0.456233; ACE_barrelTwist = 199.898; ACE_barrelLength = 414.02; }; class rhs_weap_ak103_base; class rhs_weap_ak104: rhs_weap_ak103_base { ACE_barrelLength = 314.96; }; class rhs_weap_ak105: rhs_weap_ak74m { ACE_barrelLength = 314.96; }; class rhs_weap_akm: rhs_weap_ak74m { ACE_RailHeightAboveBore = -0.456233;//from rhs_weap_akmn and rhs_weap_ak74m ACE_barrelTwist = 199.898; ACE_barrelLength = 414.02; }; class rhs_weap_aks74; class rhs_weap_aks74u: rhs_weap_aks74 { ACE_RailHeightAboveBore = -0.30262; ACE_barrelTwist = 160.02; ACE_barrelLength = 210.82; }; class rhs_weap_asval: rhs_weap_ak74m { ACE_barrelTwist = 210.82; ACE_barrelLength = 200.66; }; class rhs_weap_svd: rhs_weap_ak74m { ACE_RailHeightAboveBore = -0.617396; ACE_barrelTwist = 238.76; ACE_barrelLength = 619.76; }; class rhs_weap_svdp; class rhs_weap_svdp_npz: rhs_weap_svdp { ACE_RailHeightAboveBore = 4.3348; }; class rhs_weap_svdp_wd: rhs_weap_svdp { ACE_RailHeightAboveBore = -0.617396; }; class rhs_weap_svdp_wd_npz: rhs_weap_svdp_wd { ACE_RailHeightAboveBore = 4.3348; }; class rhs_weap_svds: rhs_weap_svdp { ACE_RailHeightAboveBore = -0.617396; ACE_barrelTwist = 238.76; ACE_barrelLength = 563.88; }; class rhs_weap_svds_npz: rhs_weap_svds { ACE_RailHeightAboveBore = 4.3348; }; class rhs_weap_rpk_base; class rhs_weap_rpk74_base: rhs_weap_rpk_base { ACE_barrelLength = 590.00; ACE_barrelTwist = 195.072; }; class rhs_pkp_base; class rhs_weap_pkp: rhs_pkp_base { ACE_barrelTwist = 240.03; ACE_barrelLength = 657.86; }; class rhs_weap_pkm: rhs_weap_pkp { ACE_Overheating_allowSwapBarrel = 1; ACE_barrelTwist = 240.03; ACE_barrelLength = 645.16; }; class rhs_weap_orsis_Base_F; class rhs_weap_t5000: rhs_weap_orsis_Base_F { // http://en.orsis.com/production/catalog/19046/ ACE_barrelTwist = 254.0; // 1:10" ACE_barrelLength = 698.5; // 27.5" ACE_RailHeightAboveBore = 2.12198; }; class rhs_acc_sniper_base; class rhs_acc_pso1m2: rhs_acc_sniper_base { ACE_ScopeHeightAboveRail = 4.41386; ACE_ScopeAdjust_Vertical[] = {0, 0}; ACE_ScopeAdjust_Horizontal[] = {-10, 10}; ACE_ScopeAdjust_VerticalIncrement = 0.5; ACE_ScopeAdjust_HorizontalIncrement = 0.5; }; class rhs_acc_pso1m21: rhs_acc_pso1m2 { ACE_ScopeHeightAboveRail = 7.75566; ACE_ScopeAdjust_Vertical[] = {0, 0}; ACE_ScopeAdjust_Horizontal[] = {-10, 10}; ACE_ScopeAdjust_VerticalIncrement = 0.5; ACE_ScopeAdjust_HorizontalIncrement = 0.5; }; class ItemCore; class InventoryOpticsItem_Base_F; class rhs_acc_dh520x56: ItemCore { // http://nightvision.ru/catalog/4/item/35 ACE_ScopeHeightAboveRail = 4.71476; ACE_ScopeAdjust_Vertical[] = {0, 33}; ACE_ScopeAdjust_Horizontal[] = {-9, 9}; ACE_ScopeAdjust_VerticalIncrement = 0.1; ACE_ScopeAdjust_HorizontalIncrement = 0.1; class ItemInfo: InventoryOpticsItem_Base_F { class OpticsModes { class dedal_520 { discreteDistance[] = {100}; discreteDistanceInitIndex = 0; }; }; }; }; class Launcher; class Launcher_Base_F: Launcher { class WeaponSlotsInfo; }; class rhs_weap_strela; class rhs_weap_igla: rhs_weap_strela { EGVAR(overpressure,range) = 6; EGVAR(overpressure,angle) = 40; EGVAR(overpressure,damage) = 0.6; EGVAR(overpressure,offset) = 1.65; }; class rhs_weap_rpg7: Launcher_Base_F { EGVAR(reloadlaunchers,enabled) = 1; EGVAR(overpressure,angle) = 40; EGVAR(overpressure,offset) = 0.9; }; class rhs_weap_rpg26: Launcher_Base_F { EGVAR(overpressure,range) = 10; EGVAR(overpressure,angle) = 50; EGVAR(overpressure,offset) = 0.65; }; class rhs_weap_rpg18: rhs_weap_rpg26 { EGVAR(overpressure,angle) = 45; EGVAR(overpressure,offset) = 1; }; #define HEARING_PROTECTION_VICCREW EGVAR(hearing,protection) = 0.85; EGVAR(hearing,lowerVolume) = 0.6; #define HEARING_PROTECTION_EARMUFF EGVAR(hearing,protection) = 0.75; EGVAR(hearing,lowerVolume) = 0.5; #define HEARING_PROTECTION_PELTOR EGVAR(hearing,protection) = 0.75; EGVAR(hearing,lowerVolume) = 0; class H_HelmetB; class rhs_tsh4: H_HelmetB { HEARING_PROTECTION_VICCREW }; class rhs_6b47_bare; class rhs_6b48: rhs_6b47_bare { HEARING_PROTECTION_VICCREW }; class rhs_zsh7a: H_HelmetB { HEARING_PROTECTION_VICCREW }; class rhs_zsh7a_alt: rhs_zsh7a { ACE_Protection = 1; }; class rhs_zsh7a_mike; class rhs_zsh7a_mike_alt: rhs_zsh7a_mike { ACE_Protection = 1; }; class rhs_zsh7a_mike_green; class rhs_zsh7a_mike_green_alt: rhs_zsh7a_mike_green { ACE_Protection = 1; }; class rhs_gssh18: H_HelmetB { HEARING_PROTECTION_EARMUFF }; class rhs_6b47; class rhs_6b47_6m2: rhs_6b47 { HEARING_PROTECTION_PELTOR }; class rhs_6b47_6m2_1: rhs_6b47 { HEARING_PROTECTION_PELTOR }; class rhs_6m2: H_HelmetB { HEARING_PROTECTION_PELTOR }; class rhs_weap_d81; class rhs_weap_2a70: rhs_weap_d81 { // "Low pressure" 100mm cannon ace_overpressure_range = 15; ace_overpressure_damage = 0.5; }; class cannon_120mm; class rhs_weap_2a28_base: cannon_120mm { // "Low pressure" ace_overpressure_range = 15; ace_overpressure_damage = 0.5; }; CREATE_CSW_PROXY(rhs_weap_2b14); CREATE_CSW_PROXY(rhs_weap_nsvt_effects); CREATE_CSW_PROXY(rhs_weap_KORD); CREATE_CSW_PROXY(RHS_weap_AGS30); CREATE_CSW_PROXY(rhs_weap_SPG9); CREATE_CSW_PROXY(rhs_weap_9K133_launcher); CREATE_CSW_PROXY(rhs_weap_9K115_2_launcher); class GVAR(2b14_carry): Launcher_Base_F { class ACE_CSW { type = "weapon"; deployTime = 20; pickupTime = 25; class assembleTo { EGVAR(csw,mortarBaseplate) = "rhs_2b14_82mm_msv"; }; }; class WeaponSlotsInfo: WeaponSlotsInfo { // One WeaponSlot with a positive value for iconScale forces game to use icon overlay method. // Required, because the inventory icon has no accessory variants. class MuzzleSlot { iconScale = 0.1; }; mass = 670; // 2B14 Mortar Weight }; displayName = ECSTRING(CSW,2b14_tube); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\rhs_2b14_82mm_msv_ca.paa"; }; class GVAR(nsv_carry): Launcher_Base_F { class ACE_CSW { type = "weapon"; deployTime = 4; pickupTime = 4; class assembleTo { EGVAR(csw,kordTripodLow) = "RHS_NSV_TriPod_MSV"; }; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 550; }; displayName = ECSTRING(CSW,nsv_gun); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\RHS_NSV_TriPod_MSV_ca.paa"; }; class GVAR(kord_carry): Launcher_Base_F { class ACE_CSW { type = "weapon"; deployTime = 4; pickupTime = 4; class assembleTo { EGVAR(csw,kordTripod) = "rhs_KORD_high_MSV"; EGVAR(csw,kordTripodLow) = "rhs_KORD_MSV"; }; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 550; }; displayName = ECSTRING(CSW,kord_gun); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\rhs_KORD_MSV_ca.paa"; }; class GVAR(ags30_carry): Launcher_Base_F { class ACE_CSW { type = "weapon"; deployTime = 4; pickupTime = 4; class assembleTo { EGVAR(csw,sag30Tripod) = "RHS_AGS30_TriPod_MSV"; }; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 400; // https://odin.tradoc.army.mil/mediawiki/index.php/AGS-17_Russian_30mm_Automatic_Grenade_Launcher }; displayName = ECSTRING(CSW,ags30_gun); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\RHS_AGS30_TriPod_MSV_ca.paa"; }; class GVAR(spg9_carry): Launcher_Base_F { class ACE_CSW { type = "weapon"; deployTime = 4; pickupTime = 4; class assembleTo { EGVAR(csw,spg9Tripod) = "rhs_SPG9_INS"; }; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 1000; }; displayName = ECSTRING(csw,spg9_tube); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\rhs_SPG9_INS_ca.paa"; }; class GVAR(spg9m_carry): GVAR(spg9_carry) { class ACE_CSW: ACE_CSW { class assembleTo { EGVAR(csw,spg9Tripod) = "rhs_SPG9M_MSV"; }; }; displayName = ECSTRING(csw,spg9m_tube); author = ECSTRING(common,ACETeam); }; class GVAR(metis_carry): Launcher_Base_F { class ACE_CSW { type = "mount"; deployTime = 4; pickupTime = 4; deploy = "rhs_Metis_9k115_2_msv"; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 300; }; displayName = ECSTRING(csw,metis_tube); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\rhs_Metis_9k115_2_msv_ca.paa"; }; class GVAR(kornet_carry): Launcher_Base_F { class ACE_CSW { type = "mount"; deployTime = 4; pickupTime = 4; deploy = "rhs_Kornet_9M133_2_msv"; }; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot { iconScale = 0.1; }; mass = 600; }; displayName = ECSTRING(csw,kornet_launcher); author = ECSTRING(common,ACETeam); scope = 2; model = QPATHTOEF(apl,ACE_CSW_Bag.p3d); modes[] = {}; picture = "\rhsafrf\addons\rhs_heavyweapons\data\ico\rhs_Kornet_9M133_2_msv_ca.paa"; }; class rhs_uniform_flora; class rhs_uniform_df15: rhs_uniform_flora { ACE_GForceCoef = 0.8; }; };