Updated all vanilla classes with ace_frag parameter entries

This commit is contained in:
lambdatiger 2024-01-12 20:28:45 -06:00
parent fb8f010332
commit b836708237
3 changed files with 334 additions and 66 deletions

View File

@ -1,10 +1,10 @@
#define BASE_DRAG -0.01
#define HD_MULT 5
#define BASE_DRAG_HD (BASE_DRAG * HD_MULT)
#define ACE_FRAG_RM_EH class EventHandlers {\
#define ACE_FRAG_RM_EH class EventHandlers: EventHandlers {\
delete ADDON;\
}
#define ACE_FRAG_ADD_EH class EventHandlers {\
#define ACE_FRAG_ADD_EH class EventHandlers: EventHandlers {\
class ADDON {\
init = QUOTE(if (isServer) then {_this call FUNC(initRound);};);\
};\

View File

@ -22,6 +22,7 @@ class MissileBase: MissileCore {
class RocketCore;
class RocketBase: RocketCore {
ACE_FRAG_ADD_EH;
GVAR(skip) = 1;
};
class ArtilleryRocketCore: RocketCore {
@ -35,7 +36,7 @@ class ShellBase: ShellCore {
class ShotDeployCore;
class ShotDeployBase: ShotDeployCore {
ACE_FRAG_ADD_EH;
GVAR(skip) = 1;
};
class ShotgunCore;

View File

@ -31,6 +31,16 @@ class B_30mm_MP: B_30mm_HE {
GVAR(fragCount) = 100; // assumed based on https://www.youtube.com/watch?v=c5SsspD0MeU
GVAR(metal) = 388;
GVAR(charge) = 56;
GVAR(gurney_c) = 2600;
GVAR(gurney_k) = "1/2";
};
class Gatling_30mm_HE_Plane_CAS_01_F;
class Cannon_30mm_HE_Plane_CAS_02_F: Gatling_30mm_HE_Plane_CAS_01_F {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(tiny), QGVAR(small)};
GVAR(fragCount) = 100;
GVAR(metal) = 388;
GVAR(charge) = 56;
GVAR(gurney_c) = 2600; // guessed
GVAR(gurney_k) = "1/2";
};
@ -39,7 +49,7 @@ class B_40mm_GPR: B_30mm_HE {
// https://www.cta-international.com/ammunition/
// https://ndiastorage.blob.core.usgovcloudapi.net/ndia/2002/gun/leslie.pdf
GVAR(classes)[] = {QGVAR(tiny), QGVAR(small)};
GVAR(fragCount) = 250;
GVAR(fragCount) = 250;
GVAR(metal) = 750;
GVAR(charge) = 120;
GVAR(gurney_c) = 2700; // guessed
@ -57,6 +67,10 @@ class B_35mm_AA: BulletBase {
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class UnderwaterMine_Range_Ammo: MineBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
// ~~~~ Bombs:
class Bo_GBU12_LGB: ammo_Bomb_LaserGuidedBase {
@ -65,7 +79,15 @@ class Bo_GBU12_LGB: ammo_Bomb_LaserGuidedBase {
GVAR(metal) = 140000;
GVAR(charge) = 87000;
GVAR(gurney_c) = 2320;
GVAR(gurney_k) = "1/2";
GVAR(gurney_k) = "3/5";
};
class Bomb_03_F: ammo_Bomb_LaserGuidedBase {
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(fragCount) = 17500;
GVAR(metal) = 150000;
GVAR(charge) = 100000;
GVAR(gurney_c) = 2320;
GVAR(gurney_k) = "3/5";
};
class Bomb_04_F: ammo_Bomb_LaserGuidedBase {
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
@ -73,7 +95,19 @@ class Bomb_04_F: ammo_Bomb_LaserGuidedBase {
GVAR(metal) = 140000;
GVAR(charge) = 87000;
GVAR(gurney_c) = 2320;
GVAR(gurney_k) = "1/2";
GVAR(gurney_k) = "3/5";
};
class ammo_Bomb_SmallDiameterBase: ammo_Bomb_LaserGuidedBase {
GVAR(skip) = 1;
};
class ammo_Bomb_SDB: ammo_Bomb_SmallDiameterBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(fragCount) = 17500;
GVAR(metal) = 113000;
GVAR(charge) = 16000;
GVAR(gurney_c) = 2830;
GVAR(gurney_k) = "3/5";
};
class BombCore;
@ -88,6 +122,34 @@ class Bo_Mk82: BombCore {
GVAR(gurney_k) = "1/2";
};
class Mo_cluster_AP: ShellBase {
GVAR(skip) = 1;
GVAR(force) = 0;
};
class Mo_cluster_Bomb_01_F: Mo_cluster_AP { // Mk 118 Rockeye
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(small)};
GVAR(fragCount) = 200;
GVAR(metal) = 400;
GVAR(charge) = 180;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class Mo_cluster_Bomb_02_F: Mo_cluster_Bomb_01_F { // ShOAB-0.5
GVAR(classes)[] = {QGVAR(small)};
GVAR(fragCount) = 304;
GVAR(metal) = 400;
GVAR(charge) = 100;
GVAR(gurney_c) = 2700;
};
class Mo_cluster_Bomb_03_F: Mo_cluster_Bomb_01_F { // idk, @lambda.tiger on the ace discord if you find out
GVAR(classes)[] = {QGVAR(small)};
GVAR(fragCount) = 200;
GVAR(metal) = 400;
GVAR(charge) = 140;
GVAR(gurney_c) = 2400;
};
// ~~~~ Grenades:
class Grenade;
class ACE_FlashlightProxy_White: Grenade {
@ -104,10 +166,10 @@ class GrenadeHand: Grenade {
*/
GVAR(classes)[] = {QGVAR(tiny)};
GVAR(fragCount) = 1000;
GVAR(metal) = 210; // metal in grams
GVAR(charge) = 185; // explosive in grams
GVAR(gurney_c) = 2843; // Gurney velocity constant for explosive type. See: http://en.wikipedia.org/wiki/Gurney_equations
GVAR(gurney_k) = "3/5"; // Gurney shape factor, in this case a sphere. See: http://en.wikipedia.org/wiki/Gurney_equations
GVAR(metal) = 210; // metal in grams
GVAR(charge) = 185; // explosive in grams
GVAR(gurney_c) = 2843; // Gurney velocity constant for explosive type. See: http://en.wikipedia.org/wiki/Gurney_equations
GVAR(gurney_k) = "3/5"; // Gurney shape factor, in this case a sphere. See: http://en.wikipedia.org/wiki/Gurney_equations
};
class GrenadeHand_stone: GrenadeHand {
ACE_FRAG_RM_EH;
@ -148,24 +210,98 @@ class ACE_G_40mm_Practice: ACE_G_40mm_HE {
};
// ~~~~ Mines & UXO
class Drone_explosive_ammo: MineBase {
class ATMine_Range_Ammo: MineBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
class APERSMine_Range_Ammo;
class UXO1_Ammo_Base_F: APERSMine_Range_Ammo {
// https://www.globalsecurity.org/military/systems/munitions/blu-97.htm
// https://military-history.fandom.com/wiki/BLU-97/B_Combined_Effects_Bomb
class APERSMine_Range_Ammo: MineBase { // VS-50
GVAR(skip) = 0;
GVAR(force) = 0;
GVAR(classes)[] = {QGVAR(small), QGVAR(small), QGVAR(medium)};
GVAR(fragCount) = 300;
GVAR(metal) = 1253;
GVAR(charge) = 287;
GVAR(gurney_c) = 2900;
GVAR(gurney_k) = "1/2";
GVAR(classes)[] = {QGVAR(tiny), QGVAR(tiny), QGVAR(small)};
GVAR(fragCount) = 500;
GVAR(metal) = 100;
GVAR(charge) = 50;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/3";
};
class APERSBoundingMine_Range_Ammo: MineBase {
GVAR(skip) = 0;
GVAR(force) = 0;
GVAR(classes)[] = {QGVAR(tiny)};
GVAR(fragCount) = 200;
GVAR(metal) = 80;
GVAR(charge) = 170;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "3/5";
};
class SLAMDirectionalMine_Wire_Ammo: DirectionalBombBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
class APERSTripMine_Wire_Ammo: DirectionalBombBase {
GVAR(skip) = 0;
GVAR(force) = 0;
GVAR(classes)[] = {QGVAR(tiny)};
GVAR(fragCount) = 800;
GVAR(metal) = 210;
GVAR(charge) = 185;
GVAR(gurney_c) = 2843;
GVAR(gurney_k) = "3/5";
};
class IEDUrbanBig_Remote_Ammo: PipeBombBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(fragCount) = 2000;
GVAR(metal) = 36000;
GVAR(charge) = 9979;
GVAR(gurney_c) = 2440;
GVAR(gurney_k) = "3/5";
};
class IEDLandBig_Remote_Ammo: PipeBombBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(fragCount) = 2000;
GVAR(metal) = 36000;
GVAR(charge) = 9979;
GVAR(gurney_c) = 2440;
GVAR(gurney_k) = "3/5";
};
class IEDUrbanSmall_Remote_Ammo: PipeBombBase {
GVAR(skip) = 0;
GVAR(fragCount) = 1200;
GVAR(metal) = 23000;
GVAR(charge) = 3148;
GVAR(gurney_c) = 2830;
GVAR(gurney_k) = "3/5";
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(medium_HD)};
};
class IEDLandSmall_Remote_Ammo: PipeBombBase {
GVAR(skip) = 0;
GVAR(fragCount) = 1200;
GVAR(metal) = 23000;
GVAR(charge) = 3148;
GVAR(gurney_c) = 2830;
GVAR(gurney_k) = "3/5";
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(medium_HD)};
};
class UXO1_Ammo_Base_F: APERSMine_Range_Ammo { // Mk 118 Rockeye
GVAR(skip) = 0;
GVAR(force) = 0;
GVAR(classes)[] = {QGVAR(small)};
GVAR(fragCount) = 200;
GVAR(metal) = 400;
GVAR(charge) = 180;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class APERSMineDispenser_Mine_Ammo: APERSMine_Range_Ammo {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
@ -191,15 +327,38 @@ class DemoCharge_Remote_Ammo: PipeBombBase {
GVAR(skip) = 1;
};
class Drone_explosive_ammo: MineBase {
GVAR(skip) = 1;
};
class BombDemine_01_Ammo_F: BombCore {
GVAR(skip) = 1;
};
class BombDemine_01_SubAmmo_F: ShellBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
// ~~~~ RPGs:
class R_PG32V_F;
// ~~~~ Rockets:
class R_PG7_F: RocketBase {
GVAR(skip) = 0;
GVAR(force) = 0;
GVAR(classes)[] = {QGVAR(tiny), QGVAR(small)};
GVAR(fragCount) = 400;
GVAR(metal) = 100;
GVAR(charge) = 560;
GVAR(gurney_c) = 2730;
GVAR(gurney_k) = "1/2";
};
class R_PG32V_F: RocketBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
class R_TBG32V_F: R_PG32V_F { // Thermobaric
GVAR(fragCount) = 200;
ACE_FRAG_ADD_EH;
GVAR(skip) = 0;
GVAR(fragCount) = 200;
GVAR(metal) = 400;
GVAR(charge) = 210;
GVAR(gurney_c) = 2800;
@ -212,10 +371,9 @@ class M_Titan_AA: MissileBase {
class M_Titan_AT: MissileBase {
GVAR(skip) = 1;
};
class M_Titan_AP: M_Titan_AT { // "anti personnel"
class M_Titan_AP: M_Titan_AT {
GVAR(skip) = 0;
GVAR(fragCount) = 800; // guesstimate / provides ~80 m frag range
GVAR(enabled) = 1;
GVAR(metal) = 400;
GVAR(charge) = 210;
GVAR(gurney_c) = 2800;
@ -223,40 +381,81 @@ class M_Titan_AP: M_Titan_AT { // "anti personnel"
GVAR(classes)[] = {QGVAR(medium_HD)};
};
// https://ofb.gov.in/product/products/product-details/84-mm-he-round-ffv-441-b
// https://armypubs.army.mil/epubs/DR_pubs/DR_a/pdf/web/ARN18072_TC%203-22x84%20FINAL%20WEB.pdf (page 99, Table A-6. HE 441D RS, 84-mm projectile)
class R_MRAAWS_HEAT_F;
class R_MRAAWS_HE_F: R_MRAAWS_HEAT_F {
GVAR(enabled) = 1;
GVAR(fragCount) = 1200; // guesstimate / provides ~100 m frag range (1% chance to hit)
GVAR(metal) = 2300;
GVAR(charge) = 590;
class M_SPG9_HEAT: RocketBase {
GVAR(skip) = 0;
GVAR(fragCount) = 200;
GVAR(metal) = 4150;
GVAR(charge) = 340;
GVAR(gurney_c) = 2970;
GVAR(gurney_k) = "1/2";
GVAR(classes)[] = {QGVAR(small_HD), QGVAR(medium_HD)};
};
class M_SPG9_HE: M_SPG9_HEAT {
GVAR(fragCount) = 800;
GVAR(metal) = 4695;
GVAR(charge) = 655;
GVAR(gurney_c) = 2800;
GVAR(gurney_k) = "1/2";
GVAR(classes)[] = {QGVAR(small)};
GVAR(classes)[] = {QGVAR(small), QGVAR(tiny), QGVAR(small), QGVAR(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;
// https://armypubs.army.mil/epubs/DR_pubs/DR_a/pdf/web/ARN18072_TC%203-22x84%20FINAL%20WEB.pdf
class R_MRAAWS_HEAT_F: RocketBase { // Table A-20. HEAT 751
GVAR(skip) = 0;
GVAR(fragCount) = 500;
GVAR(metal) = 2265;
GVAR(charge) = 635;
GVAR(gurney_c) = 2970;
GVAR(gurney_k) = "1/2";
GVAR(classes)[] = {QGVAR(small)};
};
class R_MRAAWS_HEAT55_F: R_MRAAWS_HEAT_F { // Table A-16. HEAT 551C
GVAR(fragCount) = 300;
GVAR(metal) = 1940;
GVAR(charge) = 460;
};
class R_MRAAWS_HE_F: R_MRAAWS_HEAT_F { // Table A-6. HE 441D RS
GVAR(fragCount) = 800;
GVAR(metal) = 2300;
GVAR(charge) = 590;
GVAR(gurney_c) = 2800;
GVAR(gurney_k) = "3/5";
GVAR(classes)[] = {QGVAR(small)};
};
class R_230mm_fly: RocketBase {
GVAR(skip) = 0;
GVAR(fragCount) = 17500;
GVAR(metal) = 150000;
GVAR(charge) = 100000;
GVAR(gurney_c) = 2320;
GVAR(gurney_k) = "3/5";
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
};
class M_PG_AT: MissileBase { // DAGR M247 warhead
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(tiny), QGVAR(small), QGVAR(small), QGVAR(medium)};
GVAR(fragCount) = 700; // guesstimate / provides ~80 m frag range (1% chance to hit)
GVAR(metal) = 3085;
GVAR(charge) = 910;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class M_AT: M_PG_AT { // DAR (Hydra 70) M151 warhead
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1200; // guesstimate / provides ~100 m frag range (1% chance to hit)
GVAR(metal) = 3850;
GVAR(charge) = 1040;
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class R_80mm_HE: RocketBase {
GVAR(skip) = 1;
};
// ~~~~ Missiles:
class Missile_AGM_02_F: MissileBase {
// Source: http://fas.org/man/dod-101/sys/smart/agm-65.htm
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1600; // guesstimate / provides ~112 m frag range (1% chance to hit)
@ -266,7 +465,7 @@ class Missile_AGM_02_F: MissileBase {
GVAR(gurney_k) = "1/2";
};
class Rocket_04_HE_F: MissileBase { // Shrieker (Hydra 70)
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1200; // guesstimate / provides ~100 m frag range (1% chance to hit)
GVAR(metal) = 3850;
@ -275,7 +474,7 @@ class Rocket_04_HE_F: MissileBase { // Shrieker (Hydra 70)
GVAR(gurney_k) = "1/2";
};
class M_Scalpel_AT: MissileBase { // 9K121 Vikhr
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 800; // guesstimate based on frag jacket, provides ~80 m frag range (1% chance to hit)
GVAR(metal) = 10000;
@ -285,7 +484,7 @@ class M_Scalpel_AT: MissileBase { // 9K121 Vikhr
};
class ACE_Hellfire_AGM114K: M_Scalpel_AT {
// Source: http://www.designation-systems.net/dusrm/m-114.html
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 350; // guesstimate based on frag jacket, provides ~50 m frag range (1% chance to hit)
@ -294,14 +493,70 @@ class ACE_Hellfire_AGM114K: M_Scalpel_AT {
GVAR(gurney_c) = 2700;
GVAR(gurney_k) = "1/2";
};
class ammo_Missile_CruiseBase: MissileBase {
GVAR(skip) = 1;
};
class ammo_missile_cruise_01: ammo_Missile_CruiseBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(large)};
GVAR(fragCount) = 20000;
GVAR(metal) = 700000;
GVAR(charge) = 110000;
GVAR(gurney_c) = 2600;
GVAR(gurney_k) = "3/5";
};
class ammo_Missile_Cruise_01_Cluster: ammo_missile_cruise_01 {
ACE_FRAG_RM_EH;
};
class ammo_Missile_AntiRadiationBase: MissileBase {
GVAR(skip) = 1;
GVAR(gurney_k) = "1/2";
GVAR(gurney_c) = 2400;
};
class ammo_Missile_HARM: ammo_Missile_AntiRadiationBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(large)};
GVAR(fragCount) = 5000;
GVAR(metal) = 58000;
GVAR(charge) = 10000;
};
class ammo_Missile_KH58: ammo_Missile_AntiRadiationBase {
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(large)};
GVAR(fragCount) = 7500;
GVAR(metal) = 129000;
GVAR(charge) = 20000;
};
// No AA fragging
class M_Air_AA: MissileBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
class Missile_AA_04_F: MissileBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
class ammo_Missile_LongRangeAABase: MissileBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
class ammo_Missile_MediumRangeAABase: MissileBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
class ammo_Missile_ShortRangeAABase: MissileBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
class m_70mm_saami: RocketBase {
GVAR(skip) = 1;
ACE_FRAG_RM_EH;
};
// Based on Metis-M missiles
class M_Vorona_HEAT: MissileBase {
// tandem shaped charges
GVAR(skip) = 1;
@ -309,7 +564,7 @@ class M_Vorona_HEAT: MissileBase {
class M_Vorona_HE: M_Vorona_HEAT {
// All signs point to this being a thermobaric round so low frag count
GVAR(skip) = 0;
GVAR(fragCount) = 200;
GVAR(fragCount) = 200;
GVAR(metal) = 13800;
GVAR(charge) = 4950;
GVAR(gurney_c) = 2800;
@ -317,6 +572,10 @@ class M_Vorona_HE: M_Vorona_HEAT {
GVAR(classes)[] = {QGVAR(tiny)};
};
class M_127mm_Firefist_AT: RocketBase {
GVAR(skip) = 1;
};
class M_NLAW_AT_F: MissileBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
@ -326,7 +585,7 @@ class M_NLAW_AT_F: MissileBase {
class Sh_125mm_HEAT;
class Sh_155mm_AMOS: ShellBase {
// Source: http://www.globalsecurity.org/military/systems/munitions/m795.htm
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(fragCount) = 3250; // http://18.195.19.6/bitstream/handle/20.500.12242/1200/15-01916.pdf?sequence=1&isAllowed=y
@ -337,7 +596,7 @@ class Sh_155mm_AMOS: ShellBase {
};
class Sh_82mm_AMOS: Sh_155mm_AMOS {
//http://65.175.100.54/uxofiles/mulvaney/techdatasheets/81mm-HE-M821.pdf
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1600; // based on mass and fragment energy/count
@ -347,7 +606,7 @@ class Sh_82mm_AMOS: Sh_155mm_AMOS {
GVAR(gurney_k) = "1/2";
};
class ModuleOrdnanceMortar_F_Ammo: Sh_82mm_AMOS {
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(metal) = 800;
@ -356,9 +615,7 @@ class ModuleOrdnanceMortar_F_Ammo: Sh_82mm_AMOS {
GVAR(gurney_k) = "1/2";
};
class Sh_105mm_HEAT_MP: Sh_125mm_HEAT {
GVAR(enabled) = 1;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1600; // based on mass and fragment energy/count
GVAR(metal) = 11400;
GVAR(charge) = 7100;
@ -366,17 +623,24 @@ class Sh_105mm_HEAT_MP: Sh_125mm_HEAT {
GVAR(gurney_k) = "1/2";
};
class Sh_120mm_HE: ShellBase {
GVAR(enabled) = 1;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 2000;
GVAR(skip) = 0;
GVAR(fragCount) = 2000;
GVAR(metal) = 23000;
GVAR(charge) = 3148;
GVAR(gurney_c) = 2830;
GVAR(gurney_k) = "1/2";
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
};
class Sh_120mm_HEAT_MP: ShellBase {
GVAR(classes)[] = {QGVAR(small), QGVAR(medium), QGVAR(medium), QGVAR(medium_HD)};
GVAR(fragCount) = 1000;
GVAR(metal) = 5000;
GVAR(charge) = 2500;
GVAR(gurney_c) = 2500;
GVAR(gurney_k) = "1/2";
};
class Sh_125mm_HE: Sh_120mm_HE {
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(medium), QGVAR(medium_HD)};
GVAR(metal) = 16000;
@ -385,7 +649,7 @@ class Sh_125mm_HE: Sh_120mm_HE {
GVAR(gurney_k) = "1/2";
};
class ModuleOrdnanceHowitzer_F_ammo: Sh_155mm_AMOS {
GVAR(enabled) = 1;
GVAR(skip) = 0;
GVAR(classes)[] = {QGVAR(large), QGVAR(large), QGVAR(large_HD), QGVAR(large), QGVAR(huge), QGVAR(huge_HD), QGVAR(huge)};
GVAR(metal) = 1950;
@ -397,15 +661,13 @@ class ammo_Penetrator_Base: ShellBase {
GVAR(skip) = 1;
};
// Special
// ~~~~ Special
class Default;
class Laserbeam: Default {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
class FuelExplosion: Default {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
@ -417,4 +679,9 @@ class HelicopterExploSmall: ShellBase {
class LightningBolt: ShellBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};
class M_Mo_82mm_AT: MissileBase {
ACE_FRAG_RM_EH;
GVAR(skip) = 1;
};