mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Add frag definitions for remaining ammo (#4736)
Remove rpt warning Close #342
This commit is contained in:
parent
962903f201
commit
321bb0bc57
@ -3,14 +3,29 @@
|
|||||||
#define BASE_DRAG_HD (BASE_DRAG * HD_MULT)
|
#define BASE_DRAG_HD (BASE_DRAG * HD_MULT)
|
||||||
|
|
||||||
class CfgAmmo {
|
class CfgAmmo {
|
||||||
//class ace_arty_105mm_m1_m782_time;
|
|
||||||
//class ace_arty_105mm_m1_m782_prox: ace_arty_105mm_m1_m782_time {};
|
|
||||||
//class ace_arty_105mm_m1_m782_delay: ace_arty_105mm_m1_m782_prox {
|
|
||||||
// GVAR(skip) = 1;
|
|
||||||
//};
|
|
||||||
|
|
||||||
class Bo_GBU12_LGB;
|
// ~~~~ Bombs:
|
||||||
class ACE_GBU12 : Bo_GBU12_LGB {
|
class LaserBombCore;
|
||||||
|
class Bo_GBU12_LGB: LaserBombCore {
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
|
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
|
||||||
|
GVAR(metal) = 140000;
|
||||||
|
GVAR(charge) = 87000;
|
||||||
|
GVAR(gurney_c) = 2320;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class Bomb_04_F: LaserBombCore {
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
|
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
|
||||||
|
GVAR(metal) = 140000;
|
||||||
|
GVAR(charge) = 87000;
|
||||||
|
GVAR(gurney_c) = 2320;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class BombCore;
|
||||||
|
class Bo_Mk82: BombCore {
|
||||||
GVAR(enabled) = 1;
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
|
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
|
||||||
@ -18,11 +33,9 @@ class CfgAmmo {
|
|||||||
GVAR(charge) = 87000;
|
GVAR(charge) = 87000;
|
||||||
GVAR(gurney_c) = 2320;
|
GVAR(gurney_c) = 2320;
|
||||||
GVAR(gurney_k) = 1/2;
|
GVAR(gurney_k) = 1/2;
|
||||||
sideAirFriction = 0.04;
|
|
||||||
airFriction = 0.04;
|
|
||||||
laserLock = 0;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// ~~~~ Grenades:
|
||||||
class GrenadeBase;
|
class GrenadeBase;
|
||||||
class Grenade;
|
class Grenade;
|
||||||
class GrenadeHand: Grenade {
|
class GrenadeHand: Grenade {
|
||||||
@ -47,41 +60,6 @@ class CfgAmmo {
|
|||||||
class SmokeShell: GrenadeHand {
|
class SmokeShell: GrenadeHand {
|
||||||
GVAR(skip) = 1;
|
GVAR(skip) = 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
class RocketBase;
|
|
||||||
class R_Hydra_HE: RocketBase {
|
|
||||||
// Source: http://fas.org/man/dod-101/sys/missile/hydra-70.htm
|
|
||||||
GVAR(enabled) = 1;
|
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
|
||||||
GVAR(metal) = 3850;
|
|
||||||
GVAR(charge) = 1040;
|
|
||||||
GVAR(gurney_c) = 2700;
|
|
||||||
GVAR(gurney_k) = 1/2;
|
|
||||||
};
|
|
||||||
//class R_57mm_HE: RocketBase {
|
|
||||||
// GVAR(skip) = 1;
|
|
||||||
//};
|
|
||||||
|
|
||||||
class R_80mm_HE: RocketBase {
|
|
||||||
GVAR(skip) = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
//class R_S8T_AT: RocketBase {
|
|
||||||
// GVAR(skip) = 1;
|
|
||||||
//};
|
|
||||||
|
|
||||||
class BombCore;
|
|
||||||
class Bo_Mk82: BombCore {
|
|
||||||
GVAR(enabled) = 1;
|
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
|
|
||||||
GVAR(metal) = 140000;
|
|
||||||
GVAR(charge) = 87000;
|
|
||||||
GVAR(gurney_c) = 2320;
|
|
||||||
GVAR(gurney_k) = 1/2;
|
|
||||||
};
|
|
||||||
|
|
||||||
class G_40mm_HE: GrenadeBase {
|
class G_40mm_HE: GrenadeBase {
|
||||||
// Source: http://www.inetres.com/gp/military/infantry/grenade/40mm_ammo.html#M441
|
// Source: http://www.inetres.com/gp/military/infantry/grenade/40mm_ammo.html#M441
|
||||||
GVAR(enabled) = 1;
|
GVAR(enabled) = 1;
|
||||||
@ -115,6 +93,94 @@ class CfgAmmo {
|
|||||||
GVAR(force) = 1;
|
GVAR(force) = 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// ~~~~ RPGs:
|
||||||
|
class MissileBase;
|
||||||
|
class R_PG32V_F;
|
||||||
|
class R_TBG32V_F: R_PG32V_F { // HE
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
GVAR(metal) = 400;
|
||||||
|
GVAR(charge) = 210;
|
||||||
|
GVAR(gurney_c) = 2800;
|
||||||
|
GVAR(gurney_k) = "3/5";
|
||||||
|
GVAR(classes)[] = {"ACE_frag_medium_HD"};
|
||||||
|
};
|
||||||
|
class M_Titan_AA: MissileBase {
|
||||||
|
GVAR(skip) = 1;
|
||||||
|
};
|
||||||
|
class M_Titan_AT: MissileBase {
|
||||||
|
GVAR(skip) = 1;
|
||||||
|
};
|
||||||
|
class M_Titan_AP: M_Titan_AT { // "anti personnel"
|
||||||
|
GVAR(skip) = 0;
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
GVAR(metal) = 400;
|
||||||
|
GVAR(charge) = 210;
|
||||||
|
GVAR(gurney_c) = 2800;
|
||||||
|
GVAR(gurney_k) = "3/5";
|
||||||
|
GVAR(classes)[] = {"ACE_frag_medium_HD"};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// ~~~~ Missiles:
|
||||||
|
class M_PG_AT;
|
||||||
|
class M_AT: M_PG_AT { // DAR (Hydra 70)
|
||||||
|
// Source: http://fas.org/man/dod-101/sys/missile/hydra-70.htm
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
|
GVAR(metal) = 3850;
|
||||||
|
GVAR(charge) = 1040;
|
||||||
|
GVAR(gurney_c) = 2700;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class ACE_Hellfire_AGM114K: M_PG_AT {
|
||||||
|
// Source: http://www.designation-systems.net/dusrm/m-114.html
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
|
GVAR(metal) = 8000;
|
||||||
|
GVAR(charge) = 2400;
|
||||||
|
GVAR(gurney_c) = 2700;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class RocketBase;
|
||||||
|
class R_80mm_HE: RocketBase {
|
||||||
|
GVAR(skip) = 1;
|
||||||
|
};
|
||||||
|
class Missile_AGM_02_F: MissileBase {
|
||||||
|
// Source: http://fas.org/man/dod-101/sys/smart/agm-65.htm
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
|
GVAR(metal) = 56250;
|
||||||
|
GVAR(charge) = 39000;
|
||||||
|
GVAR(gurney_c) = 2700;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class Rocket_04_HE_F: MissileBase { // Shrieker (Hydra 70)
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
|
GVAR(metal) = 3850;
|
||||||
|
GVAR(charge) = 1040;
|
||||||
|
GVAR(gurney_c) = 2700;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class M_Scalpel_AT: MissileBase { // 9K121 Vikhr
|
||||||
|
GVAR(enabled) = 1;
|
||||||
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
|
GVAR(metal) = 10000;
|
||||||
|
GVAR(charge) = 3000;
|
||||||
|
GVAR(gurney_c) = 2700;
|
||||||
|
GVAR(gurney_k) = 1/2;
|
||||||
|
};
|
||||||
|
class M_Air_AA: MissileBase {
|
||||||
|
GVAR(skip) = 1;
|
||||||
|
};
|
||||||
|
class Missile_AA_04_F: MissileBase {
|
||||||
|
GVAR(skip) = 1;
|
||||||
|
};
|
||||||
|
|
||||||
// curator ammo entries
|
// curator ammo entries
|
||||||
class ShellBase;
|
class ShellBase;
|
||||||
class Sh_125mm_HEAT;
|
class Sh_125mm_HEAT;
|
||||||
@ -128,7 +194,7 @@ class CfgAmmo {
|
|||||||
GVAR(gurney_c) = 2440;
|
GVAR(gurney_c) = 2440;
|
||||||
GVAR(gurney_k) = 1/2;
|
GVAR(gurney_k) = 1/2;
|
||||||
};
|
};
|
||||||
class Sh_82mm_AMOS : Sh_155mm_AMOS {
|
class Sh_82mm_AMOS: Sh_155mm_AMOS {
|
||||||
// Source: http://www.arsenal-bg.com/defense_police/mortar_bombs_82mm.htm
|
// Source: http://www.arsenal-bg.com/defense_police/mortar_bombs_82mm.htm
|
||||||
GVAR(enabled) = 1;
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
@ -147,7 +213,7 @@ class CfgAmmo {
|
|||||||
GVAR(gurney_c) = 2320;
|
GVAR(gurney_c) = 2320;
|
||||||
GVAR(gurney_k) = 1/2;
|
GVAR(gurney_k) = 1/2;
|
||||||
};
|
};
|
||||||
class Sh_105mm_HEAT_MP : Sh_125mm_HEAT {
|
class Sh_105mm_HEAT_MP: Sh_125mm_HEAT {
|
||||||
GVAR(enabled) = 1;
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
@ -156,7 +222,7 @@ class CfgAmmo {
|
|||||||
GVAR(gurney_c) = 2800;
|
GVAR(gurney_c) = 2800;
|
||||||
GVAR(gurney_k) = 1/2;
|
GVAR(gurney_k) = 1/2;
|
||||||
};
|
};
|
||||||
class Sh_120mm_HE : ShellBase {
|
class Sh_120mm_HE: ShellBase {
|
||||||
GVAR(enabled) = 1;
|
GVAR(enabled) = 1;
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
||||||
@ -184,200 +250,6 @@ class CfgAmmo {
|
|||||||
GVAR(gurney_k) = 1/2;
|
GVAR(gurney_k) = 1/2;
|
||||||
};
|
};
|
||||||
|
|
||||||
//class R_230mm_HE;
|
|
||||||
//class ModuleOrdnanceRocket_F_ammo: R_230mm_HE {
|
|
||||||
//};
|
|
||||||
|
|
||||||
//class R_230mm_fly;
|
|
||||||
//class ModuleOrdnanceRocket_F_subammo: R_230mm_fly {
|
|
||||||
//};
|
|
||||||
// end of curator ammo entries
|
|
||||||
|
|
||||||
//class R_SMAW_HEDP;
|
|
||||||
//class R_MEEWS_HEDP : R_SMAW_HEDP {
|
|
||||||
// GVAR(force) = 1;
|
|
||||||
// GVAR(multiplier) = 1.2;
|
|
||||||
//};
|
|
||||||
|
|
||||||
class MissileBase;
|
|
||||||
class Missile_AGM_02_F : MissileBase {
|
|
||||||
// Source: http://fas.org/man/dod-101/sys/smart/agm-65.htm
|
|
||||||
GVAR(enabled) = 1;
|
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
|
||||||
GVAR(metal) = 56250;
|
|
||||||
GVAR(charge) = 39000;
|
|
||||||
GVAR(gurney_c) = 2700;
|
|
||||||
GVAR(gurney_k) = 1/2;
|
|
||||||
};
|
|
||||||
class M_Hellfire_AT: MissileBase {
|
|
||||||
// Source: http://www.designation-systems.net/dusrm/m-114.html
|
|
||||||
GVAR(enabled) = 1;
|
|
||||||
|
|
||||||
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
|
|
||||||
GVAR(metal) = 8000;
|
|
||||||
GVAR(charge) = 2400;
|
|
||||||
GVAR(gurney_c) = 2700;
|
|
||||||
GVAR(gurney_k) = 1/2;
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
class B_762x51_Ball;
|
|
||||||
class GVAR(base): B_762x51_Ball { ////TODO: B_762x45_Ball no longer exists, is this a valid replacement?
|
|
||||||
model = "\A3\Weapons_f\ammo\shell";
|
|
||||||
timeToLive = 12;
|
|
||||||
typicalSpeed = 800;
|
|
||||||
// Fix sounds
|
|
||||||
effectFly = "AmmoClassic";
|
|
||||||
soundDefault1[] = {"A3\sounds_f\weapons\hits\concrete_1.wav",0.158114,1,30};
|
|
||||||
soundDefault2[] = {"A3\sounds_f\weapons\hits\concrete_2.wav",0.158114,1,30};
|
|
||||||
soundDefault3[] = {"A3\sounds_f\weapons\hits\concrete_3.wav",0.158114,1,30};
|
|
||||||
soundDefault4[] = {"A3\sounds_f\weapons\hits\concrete_4.wav",0.158114,1,30};
|
|
||||||
soundDefault5[] = {"A3\sounds_f\weapons\hits\concrete_5.wav",0.158114,1,30};
|
|
||||||
soundDefault6[] = {"A3\sounds_f\weapons\hits\concrete_6.wav",0.158114,1,30};
|
|
||||||
soundDefault7[] = {"A3\sounds_f\weapons\hits\concrete_7.wav",0.158114,1,30};
|
|
||||||
soundDefault8[] = {"A3\sounds_f\weapons\hits\concrete_8.wav",0.158114,1,30};
|
|
||||||
soundGroundSoft1[] = {"A3\sounds_f\weapons\hits\soft_ground_1.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft2[] = {"A3\sounds_f\weapons\hits\soft_ground_2.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft3[] = {"A3\sounds_f\weapons\hits\soft_ground_3.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft4[] = {"A3\sounds_f\weapons\hits\soft_ground_4.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft5[] = {"A3\sounds_f\weapons\hits\soft_ground_5.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft6[] = {"A3\sounds_f\weapons\hits\soft_ground_6.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft7[] = {"A3\sounds_f\weapons\hits\soft_ground_7.wav",0.02811705,1,30};
|
|
||||||
soundGroundSoft8[] = {"A3\sounds_f\weapons\hits\soft_ground_8.wav",0.02811705,1,30};
|
|
||||||
soundGroundHard1[] = {"A3\sounds_f\weapons\hits\hard_ground_1.wav",0.62946,1,40};
|
|
||||||
soundGroundHard2[] = {"A3\sounds_f\weapons\hits\hard_ground_2.wav",0.62946,1,40};
|
|
||||||
soundGroundHard3[] = {"A3\sounds_f\weapons\hits\hard_ground_3.wav",0.62946,1,40};
|
|
||||||
soundGroundHard4[] = {"A3\sounds_f\weapons\hits\hard_ground_4.wav",0.62946,1,40};
|
|
||||||
soundGroundHard5[] = {"A3\sounds_f\weapons\hits\hard_ground_5.wav",0.62946,1,40};
|
|
||||||
soundGroundHard6[] = {"A3\sounds_f\weapons\hits\hard_ground_6.wav",0.62946,1,40};
|
|
||||||
soundGroundHard7[] = {"A3\sounds_f\weapons\hits\hard_ground_7.wav",0.62946,1,40};
|
|
||||||
soundGroundHard8[] = {"A3\sounds_f\weapons\hits\hard_ground_8.wav",0.62946,1,40};
|
|
||||||
soundMetal1[] = {"A3\sounds_f\weapons\hits\metal_1.wav",0.158114,1,45};
|
|
||||||
soundMetal2[] = {"A3\sounds_f\weapons\hits\metal_2.wav",0.158114,1,45};
|
|
||||||
soundMetal3[] = {"A3\sounds_f\weapons\hits\metal_3.wav",0.158114,1,45};
|
|
||||||
soundMetal4[] = {"A3\sounds_f\weapons\hits\metal_4.wav",0.158114,1,45};
|
|
||||||
soundMetal5[] = {"A3\sounds_f\weapons\hits\metal_5.wav",0.158114,1,45};
|
|
||||||
soundMetal6[] = {"A3\sounds_f\weapons\hits\metal_6.wav",0.158114,1,45};
|
|
||||||
soundMetal7[] = {"A3\sounds_f\weapons\hits\metal_7.wav",0.158114,1,45};
|
|
||||||
soundMetal8[] = {"A3\sounds_f\weapons\hits\metal_8.wav",0.158114,1,45};
|
|
||||||
soundGlass1[] = {"A3\sounds_f\weapons\hits\glass_1.wav",0.177828,1,25};
|
|
||||||
soundGlass2[] = {"A3\sounds_f\weapons\hits\glass_2.wav",0.177828,1,25};
|
|
||||||
soundGlass3[] = {"A3\sounds_f\weapons\hits\glass_3.wav",0.177828,1,25};
|
|
||||||
soundGlass4[] = {"A3\sounds_f\weapons\hits\glass_4.wav",0.177828,1,25};
|
|
||||||
soundGlass5[] = {"A3\sounds_f\weapons\hits\glass_5.wav",0.177828,1,25};
|
|
||||||
soundGlass6[] = {"A3\sounds_f\weapons\hits\glass_6.wav",0.177828,1,25};
|
|
||||||
soundGlass7[] = {"A3\sounds_f\weapons\hits\glass_7.wav",0.177828,1,25};
|
|
||||||
soundGlass8[] = {"A3\sounds_f\weapons\hits\glass_8.wav",0.177828,1,25};
|
|
||||||
soundGlassArmored1[] = {"A3\sounds_f\weapons\hits\glass_arm_1.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored2[] = {"A3\sounds_f\weapons\hits\glass_arm_2.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored3[] = {"A3\sounds_f\weapons\hits\glass_arm_3.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored4[] = {"A3\sounds_f\weapons\hits\glass_arm_4.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored5[] = {"A3\sounds_f\weapons\hits\glass_arm_5.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored6[] = {"A3\sounds_f\weapons\hits\glass_arm_6.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored7[] = {"A3\sounds_f\weapons\hits\glass_arm_7.wav",0.177828,1,30};
|
|
||||||
soundGlassArmored8[] = {"A3\sounds_f\weapons\hits\glass_arm_8.wav",0.177828,1,30};
|
|
||||||
soundVehiclePlate1[] = {"A3\sounds_f\weapons\hits\metal_plate_1.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate2[] = {"A3\sounds_f\weapons\hits\metal_plate_2.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate3[] = {"A3\sounds_f\weapons\hits\metal_plate_3.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate4[] = {"A3\sounds_f\weapons\hits\metal_plate_4.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate5[] = {"A3\sounds_f\weapons\hits\metal_plate_5.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate6[] = {"A3\sounds_f\weapons\hits\metal_plate_6.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate7[] = {"A3\sounds_f\weapons\hits\metal_plate_7.wav",0.281170,1,40};
|
|
||||||
soundVehiclePlate8[] = {"A3\sounds_f\weapons\hits\metal_plate_8.wav",0.281170,1,40};
|
|
||||||
soundWood1[] = {"A3\sounds_f\weapons\hits\wood_1.wav",0.158114,1,30};
|
|
||||||
soundWood2[] = {"A3\sounds_f\weapons\hits\wood_2.wav",0.158114,1,30};
|
|
||||||
soundWood3[] = {"A3\sounds_f\weapons\hits\wood_3.wav",0.158114,1,30};
|
|
||||||
soundWood4[] = {"A3\sounds_f\weapons\hits\wood_4.wav",0.158114,1,30};
|
|
||||||
soundWood5[] = {"A3\sounds_f\weapons\hits\wood_5.wav",0.158114,1,30};
|
|
||||||
soundWood6[] = {"A3\sounds_f\weapons\hits\wood_6.wav",0.158114,1,30};
|
|
||||||
soundWood7[] = {"A3\sounds_f\weapons\hits\wood_7.wav",0.158114,1,30};
|
|
||||||
soundWood8[] = {"A3\sounds_f\weapons\hits\wood_8.wav",0.158114,1,30};
|
|
||||||
soundHitBody1[] = {"A3\sounds_f\weapons\hits\body_1.wav",0.0177828,1,25};
|
|
||||||
soundHitBody2[] = {"A3\sounds_f\weapons\hits\body_2.wav",0.0177828,1,25};
|
|
||||||
soundHitBody3[] = {"A3\sounds_f\weapons\hits\body_3.wav",0.0177828,1,25};
|
|
||||||
soundHitBody4[] = {"A3\sounds_f\weapons\hits\body_4.wav",0.0177828,1,25};
|
|
||||||
soundHitBody5[] = {"A3\sounds_f\weapons\hits\body_5.wav",0.0177828,1,25};
|
|
||||||
soundHitBody6[] = {"A3\sounds_f\weapons\hits\body_6.wav",0.0177828,1,25};
|
|
||||||
soundHitBody7[] = {"A3\sounds_f\weapons\hits\body_7.wav",0.0177828,1,25};
|
|
||||||
soundHitBody8[] = {"A3\sounds_f\weapons\hits\body_8.wav",0.0177828,1,25};
|
|
||||||
soundHitBuilding1[] = {"A3\sounds_f\weapons\hits\building_1.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding2[] = {"A3\sounds_f\weapons\hits\building_2.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding3[] = {"A3\sounds_f\weapons\hits\building_3.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding4[] = {"A3\sounds_f\weapons\hits\building_4.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding5[] = {"A3\sounds_f\weapons\hits\building_5.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding6[] = {"A3\sounds_f\weapons\hits\building_6.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding7[] = {"A3\sounds_f\weapons\hits\building_7.wav",0.251189,1,30};
|
|
||||||
soundHitBuilding8[] = {"A3\sounds_f\weapons\hits\building_8.wav",0.251189,1,30};
|
|
||||||
soundHitFoliage1[] = {"A3\sounds_f\weapons\hits\foliage_1.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage2[] = {"A3\sounds_f\weapons\hits\foliage_2.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage3[] = {"A3\sounds_f\weapons\hits\foliage_3.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage4[] = {"A3\sounds_f\weapons\hits\foliage_4.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage5[] = {"A3\sounds_f\weapons\hits\foliage_5.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage6[] = {"A3\sounds_f\weapons\hits\foliage_6.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage7[] = {"A3\sounds_f\weapons\hits\foliage_7.wav",0.177828,1,25};
|
|
||||||
soundHitFoliage8[] = {"A3\sounds_f\weapons\hits\foliage_8.wav",0.177828,1,25};
|
|
||||||
soundPlastic1[] = {"A3\sounds_f\weapons\hits\plastic_1.wav",0.177828,1,25};
|
|
||||||
soundPlastic2[] = {"A3\sounds_f\weapons\hits\plastic_2.wav",0.177828,1,25};
|
|
||||||
soundPlastic3[] = {"A3\sounds_f\weapons\hits\plastic_3.wav",0.177828,1,25};
|
|
||||||
soundPlastic4[] = {"A3\sounds_f\weapons\hits\plastic_4.wav",0.177828,1,25};
|
|
||||||
soundPlastic5[] = {"A3\sounds_f\weapons\hits\plastic_5.wav",0.177828,1,25};
|
|
||||||
soundPlastic6[] = {"A3\sounds_f\weapons\hits\plastic_6.wav",0.177828,1,25};
|
|
||||||
soundPlastic7[] = {"A3\sounds_f\weapons\hits\plastic_7.wav",0.177828,1,25};
|
|
||||||
soundPlastic8[] = {"A3\sounds_f\weapons\hits\plastic_8.wav",0.177828,1,25};
|
|
||||||
soundConcrete1[] = {"A3\sounds_f\weapons\hits\concrete_1.wav",0.177828,1,35};
|
|
||||||
soundConcrete2[] = {"A3\sounds_f\weapons\hits\concrete_2.wav",0.177828,1,35};
|
|
||||||
soundConcrete3[] = {"A3\sounds_f\weapons\hits\concrete_3.wav",0.177828,1,35};
|
|
||||||
soundConcrete4[] = {"A3\sounds_f\weapons\hits\concrete_4.wav",0.177828,1,35};
|
|
||||||
soundConcrete5[] = {"A3\sounds_f\weapons\hits\concrete_5.wav",0.177828,1,35};
|
|
||||||
soundConcrete6[] = {"A3\sounds_f\weapons\hits\concrete_6.wav",0.177828,1,35};
|
|
||||||
soundConcrete7[] = {"A3\sounds_f\weapons\hits\concrete_7.wav",0.177828,1,35};
|
|
||||||
soundConcrete8[] = {"A3\sounds_f\weapons\hits\concrete_8.wav",0.177828,1,35};
|
|
||||||
soundRubber1[] = {"A3\sounds_f\weapons\hits\tyre_1.wav",0.158114,1,25};
|
|
||||||
soundRubber2[] = {"A3\sounds_f\weapons\hits\tyre_2.wav",0.158114,1,25};
|
|
||||||
soundRubber3[] = {"A3\sounds_f\weapons\hits\tyre_3.wav",0.158114,1,25};
|
|
||||||
soundRubber4[] = {"A3\sounds_f\weapons\hits\tyre_4.wav",0.158114,1,25};
|
|
||||||
soundRubber5[] = {"A3\sounds_f\weapons\hits\tyre_5.wav",0.158114,1,25};
|
|
||||||
soundRubber6[] = {"A3\sounds_f\weapons\hits\tyre_6.wav",0.158114,1,25};
|
|
||||||
soundRubber7[] = {"A3\sounds_f\weapons\hits\tyre_7.wav",0.158114,1,25};
|
|
||||||
soundRubber8[] = {"A3\sounds_f\weapons\hits\tyre_8.wav",0.158114,1,25};
|
|
||||||
soundWater1[] = {"A3\sounds_f\weapons\hits\water_01.wav",0.158114,1,25};
|
|
||||||
soundWater2[] = {"A3\sounds_f\weapons\hits\water_02.wav",0.158114,1,25};
|
|
||||||
soundWater3[] = {"A3\sounds_f\weapons\hits\water_03.wav",0.158114,1,25};
|
|
||||||
soundWater4[] = {"A3\sounds_f\weapons\hits\water_04.wav",0.158114,1,25};
|
|
||||||
soundWater5[] = {"A3\sounds_f\weapons\hits\water_05.wav",0.158114,1,25};
|
|
||||||
soundWater6[] = {"A3\sounds_f\weapons\hits\water_06.wav",0.158114,1,25};
|
|
||||||
soundWater7[] = {"A3\sounds_f\weapons\hits\water_07.wav",0.158114,1,25};
|
|
||||||
soundWater8[] = {"A3\sounds_f\weapons\hits\water_08.wav",0.158114,1,25};
|
|
||||||
hitGroundSoft[] = {"soundGroundSoft1",0.2,"soundGroundSoft2",0.2,"soundGroundSoft3",0.1,"soundGroundSoft4",0.1,"soundGroundSoft5",0.1,"soundGroundSoft6",0.1,"soundGroundSoft7",0.1,"soundGroundSoft8",0.1};
|
|
||||||
hitGroundHard[] = {"soundGroundHard1",0.2,"soundGroundHard2",0.2,"soundGroundHard3",0.1,"soundGroundHard4",0.1,"soundGroundHard5",0.1,"soundGroundHard6",0.1,"soundGroundHard7",0.1,"soundGroundHard8",0.1};
|
|
||||||
hitMan[] = {"soundHitBody1",0.125,"soundHitBody2",0.125,"soundHitBody3",0.125,"soundHitBody4",0.125,"soundHitBody5",0.125,"soundHitBody6",0.125,"soundHitBody7",0.125,"soundHitBody8",0.125};
|
|
||||||
hitArmor[] = {"soundVehiclePlate1",0.125,"soundVehiclePlate2",0.125,"soundVehiclePlate3",0.125,"soundVehiclePlate4",0.125,"soundVehiclePlate5",0.125,"soundVehiclePlate6",0.125,"soundVehiclePlate7",0.125,"soundVehiclePlate8",0.125};
|
|
||||||
hitBuilding[] = {"soundHitBuilding1",0.2,"soundHitBuilding2",0.2,"soundHitBuilding3",0.1,"soundHitBuilding4",0.1,"soundHitBuilding5",0.1,"soundHitBuilding6",0.1,"soundHitBuilding7",0.1,"soundHitBuilding8",0.1};
|
|
||||||
hitFoliage[] = {"soundHitFoliage1",0.125,"soundHitFoliage2",0.125,"soundHitFoliage3",0.125,"soundHitFoliage4",0.125,"soundHitFoliage5",0.125,"soundHitFoliage6",0.125,"soundHitFoliage7",0.125,"soundHitFoliage8",0.125};
|
|
||||||
hitWood[] = {"soundWood1",0.125,"soundWood2",0.125,"soundWood3",0.125,"soundWood4",0.125,"soundWood5",0.125,"soundWood6",0.125,"soundWood7",0.125,"soundWood8",0.125};
|
|
||||||
hitGlass[] = {"soundGlass1",0.125,"soundGlass2",0.125,"soundGlass3",0.125,"soundGlass4",0.125,"soundGlass5",0.125,"soundGlass6",0.125,"soundGlass7",0.125,"soundGlass8",0.125};
|
|
||||||
hitGlassArmored[] = {"soundGlassArmored1",0.125,"soundGlassArmored2",0.125,"soundGlassArmored3",0.125,"soundGlassArmored4",0.125,"soundGlassArmored5",0.125,"soundGlassArmored6",0.125,"soundGlassArmored7",0.125,"soundGlassArmored8",0.125};
|
|
||||||
hitConcrete[] = {"soundConcrete1",0.125,"soundConcrete2",0.125,"soundConcrete3",0.125,"soundConcrete4",0.125,"soundConcrete5",0.125,"soundConcrete6",0.125,"soundConcrete7",0.125,"soundConcrete8",0.125};
|
|
||||||
hitRubber[] = {"soundRubber1",0.125,"soundRubber2",0.125,"soundRubber3",0.125,"soundRubber4",0.125,"soundRubber5",0.125,"soundRubber6",0.125,"soundRubber7",0.125,"soundRubber8",0.125};
|
|
||||||
hitPlastic[] = {"soundPlastic1",0.125,"soundPlastic2",0.125,"soundPlastic3",0.125,"soundPlastic4",0.125,"soundPlastic5",0.125,"soundPlastic6",0.125,"soundPlastic7",0.125,"soundPlastic8",0.125};
|
|
||||||
hitDefault[] = {"soundDefault1",0.2,"soundDefault2",0.2,"soundDefault3",0.1,"soundDefault4",0.1,"soundDefault5",0.1,"soundDefault6",0.1,"soundDefault7",0.1,"soundDefault8",0.1};
|
|
||||||
hitMetal[] = {"soundMetal1",0.125,"soundMetal2",0.125,"soundMetal3",0.125,"soundMetal4",0.125,"soundMetal5",0.125,"soundMetal6",0.125,"soundMetal7",0.125,"soundMetal8",0.125};
|
|
||||||
hitMetalplate[] = {"soundVehiclePlate1",0.125,"soundVehiclePlate2",0.125,"soundVehiclePlate3",0.125,"soundVehiclePlate4",0.125,"soundVehiclePlate5",0.125,"soundVehiclePlate6",0.125,"soundVehiclePlate7",0.125,"soundVehiclePlate8",0.125};
|
|
||||||
hitWater[] = {"soundWater1",0.125,"soundWater2",0.125,"soundWater3",0.125,"soundWater4",0.125,"soundWater5",0.125,"soundWater6",0.125,"soundWater7",0.125,"soundWater8",0.125};
|
|
||||||
bulletFly1[] = {"A3\sounds_f\weapons\hits\bullet_by_1.wav",1,1,35};
|
|
||||||
bulletFly2[] = {"A3\sounds_f\weapons\hits\bullet_by_2.wav",1,1,35};
|
|
||||||
bulletFly3[] = {"A3\sounds_f\weapons\hits\bullet_by_3.wav",1,1,35};
|
|
||||||
bulletFly4[] = {"A3\sounds_f\weapons\hits\bullet_by_4.wav",1,1,35};
|
|
||||||
bulletFly5[] = {"A3\sounds_f\weapons\hits\bullet_by_5.wav",1,1,35};
|
|
||||||
bulletFly6[] = {"A3\sounds_f\weapons\hits\bullet_by_6.wav",1,1,35};
|
|
||||||
bulletFly7[] = {"A3\sounds_f\weapons\hits\bullet_by_7.wav",1,1,35};
|
|
||||||
bulletFly8[] = {"A3\sounds_f\weapons\hits\bullet_by_8.wav",1,1,35};
|
|
||||||
bulletFly[] = {"bulletFly1",0.166,"bulletFly2",0.166,"bulletFly3",0.166,"bulletFly4",0.166,"bulletFly5",0.166,"bulletFly6",0.167,"bulletFly7",0.166,"bulletFly8",0.167};
|
|
||||||
supersonicCrackNear[] = {"A3\sounds_f\weapons\hits\sscrack1.wav",1,1,35};
|
|
||||||
supersonicCrackFar[] = {"A3\sounds_f\weapons\hits\sscrack2.wav",1,1,135};
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
class B_65x39_Caseless;
|
class B_65x39_Caseless;
|
||||||
class GVAR(base): B_65x39_Caseless {
|
class GVAR(base): B_65x39_Caseless {
|
||||||
|
@ -13,14 +13,18 @@ if (isServer) then {
|
|||||||
if (!GVAR(enabled)) exitWith {};
|
if (!GVAR(enabled)) exitWith {};
|
||||||
|
|
||||||
// Register fire event handler
|
// Register fire event handler
|
||||||
["ace_firedPlayer", DFUNC(fired)] call CBA_fnc_addEventHandler;
|
["ace_firedPlayer", LINKFUNC(fired)] call CBA_fnc_addEventHandler;
|
||||||
["ace_firedNonPlayer", DFUNC(fired)] call CBA_fnc_addEventHandler;
|
["ace_firedNonPlayer", LINKFUNC(fired)] call CBA_fnc_addEventHandler;
|
||||||
["ace_firedPlayerVehicle", DFUNC(fired)] call CBA_fnc_addEventHandler;
|
["ace_firedPlayerVehicle", LINKFUNC(fired)] call CBA_fnc_addEventHandler;
|
||||||
["ace_firedNonPlayerVehicle", DFUNC(fired)] call CBA_fnc_addEventHandler;
|
["ace_firedNonPlayerVehicle", LINKFUNC(fired)] call CBA_fnc_addEventHandler;
|
||||||
|
|
||||||
[FUNC(masterPFH), 0, []] call CBA_fnc_addPerFrameHandler;
|
[LINKFUNC(masterPFH), 0, []] call CBA_fnc_addPerFrameHandler;
|
||||||
}] call CBA_fnc_addEventHandler;
|
}] call CBA_fnc_addEventHandler;
|
||||||
|
|
||||||
// Cache for ammo type configs
|
// Cache for ammo type configs
|
||||||
GVAR(cacheRoundsTypesToTrack) = createLocation ["ACE_HashLocation", [-10000, -10000, -10000], 0, 0];
|
GVAR(cacheRoundsTypesToTrack) = [false] call CBA_fnc_createNamespace;
|
||||||
GVAR(cacheRoundsTypesToTrack) setText QGVAR(cacheRoundsTypesToTrack);
|
|
||||||
|
#ifdef DEBUG_ENABLED_FRAG
|
||||||
|
[true, true, 30] call FUNC(dev_debugAmmo);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
params [
|
params [
|
||||||
["_debugMissing", true, [false]],
|
["_debugMissing", true, [false]],
|
||||||
["_debugForce", false, [false]],
|
["_debugForce", false, [false]],
|
||||||
["_debugNonFrag", false, [false]]
|
["_debugSkippedFragPower", 30, [0]]
|
||||||
];
|
];
|
||||||
|
|
||||||
diag_log text format ["~~~~~~~~~~~~~Start [%1]~~~~~~~~~~~~~", _this];
|
diag_log text format ["~~~~~~~~~~~~~Start [%1]~~~~~~~~~~~~~", _this];
|
||||||
@ -55,7 +55,7 @@ private _processedCfgAmmos = [];
|
|||||||
diag_log text format [" - _c=%1,_m=%2,_k=%3,_gC=%4,_fragTypes=%5", _c, _m, _k, _gC, _fragTypes];
|
diag_log text format [" - _c=%1,_m=%2,_k=%3,_gC=%4,_fragTypes=%5", _c, _m, _k, _gC, _fragTypes];
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
if (_debugNonFrag && {isArray (_ammoConfig >> QGVAR(CLASSES))}) then {
|
if ((_fragPower > _debugSkippedFragPower) && {isArray (_ammoConfig >> QGVAR(CLASSES))}) then {
|
||||||
diag_log text format ["Ammo [%1] from Mag [%2] has frag configs but will NOT frag:", _ammo, configName _x];
|
diag_log text format ["Ammo [%1] from Mag [%2] has frag configs but will NOT frag:", _ammo, configName _x];
|
||||||
diag_log text format ["- skip=%1,explosive=%2,indirectHitRange=%3,force=%4,fragPower=%5", _skip, _explosive, _indirectRange, _force, _fragPower];
|
diag_log text format ["- skip=%1,explosive=%2,indirectHitRange=%3,force=%4,fragPower=%5", _skip, _explosive, _indirectRange, _force, _fragPower];
|
||||||
};
|
};
|
||||||
|
@ -56,7 +56,7 @@ private _gC = getNumber (configFile >> "CfgAmmo" >> _shellType >> QGVAR(GURNEY_C
|
|||||||
if (_gC == 0) then {_gC = 2440; _warn = true;};
|
if (_gC == 0) then {_gC = 2440; _warn = true;};
|
||||||
|
|
||||||
if (_warn) then {
|
if (_warn) then {
|
||||||
WARNING_1("Ammo class %1 lacks proper explosive properties definitions for frag!",_shellType); //TODO: turn this off when we get closer to release
|
INFO_1("Ammo class %1 lacks proper explosive properties definitions for frag!",_shellType);
|
||||||
};
|
};
|
||||||
|
|
||||||
private _fragPower = (((_m / _c) + _k) ^ - (1 / 2)) * _gC;
|
private _fragPower = (((_m / _c) + _k) ^ - (1 / 2)) * _gC;
|
||||||
|
Loading…
Reference in New Issue
Block a user