ACE3/addons/hellfire/CfgMagazines.hpp

127 lines
5.4 KiB
C++
Raw Normal View History

class CfgMagazines {
class 12Rnd_PG_missiles;
// Kilo - tandem shaped charge HEAT (anti-tank)
class 6Rnd_ACE_Hellfire_AGM114K: 12Rnd_PG_missiles { // Old style vehicle magazine
count = 6;
ammo = "ACE_Hellfire_AGM114K";
displayName = "AGM-114K [ACE]";
displayNameShort = "AGM-114K";
descriptionShort = "AGM-114K";
};
// 1.70 pylon magazines:
class PylonMissile_1Rnd_ACE_Hellfire_AGM114K: 6Rnd_ACE_Hellfire_AGM114K { // Bare missle
displayName = "1x AGM-114K [ACE]";
count = 1;
mass = 70;
pylonWeapon = QGVAR(launcher);
hardpoints[] = {"SCALPEL_1RND"};
model = "\A3\Weapons_F\DynamicLoadout\PylonMissile_1x_Bomb_04_F.p3d";
};
class PylonRack_1Rnd_ACE_Hellfire_AGM114K: 6Rnd_ACE_Hellfire_AGM114K { // 1x Launcher Support Rack
displayName = "1x AGM-114K [ACE]";
count = 1;
mass = 85;
pylonWeapon = QGVAR(launcher);
hardpoints[] = {"B_MISSILE_PYLON", "SCALPEL_1RND_EJECTOR", "B_ASRRAM_EJECTOR", "UNI_SCALPEL", "CUP_NATO_HELO_SMALL", "CUP_NATO_HELO_LARGE", "RHS_HP_MELB"};
model = "\A3\Weapons_F\DynamicLoadout\PylonPod_1x_Missile_AA_04_F.p3d";
};
class PylonRack_3Rnd_ACE_Hellfire_AGM114K: 6Rnd_ACE_Hellfire_AGM114K { // 3x Launcher Support Rack
displayName = "3x AGM-114K [ACE]";
count = 3;
mass = 250;
pylonWeapon = QGVAR(launcher);
hardpoints[] = {"B_MISSILE_PYLON", "UNI_SCALPEL", "CUP_NATO_HELO_LARGE", "RHS_HP_LONGBOW_RACK"};
model = "\A3\Weapons_F\DynamicLoadout\PylonPod_3x_Missile_LG_scalpel_F.p3d";
mirrorMissilesIndexes[] = {2, 1, 3};
};
class PylonRack_4Rnd_ACE_Hellfire_AGM114K: 6Rnd_ACE_Hellfire_AGM114K { // 4x Launcher Support Rack
displayName = "4x AGM-114K [ACE]";
count = 4;
mass = 340;
pylonWeapon = QGVAR(launcher);
hardpoints[] = {"UNI_SCALPEL", "CUP_NATO_HELO_LARGE", "RHS_HP_HELLFIRE_RACK", "RHS_HP_LONGBOW_RACK"};
model = "\A3\Weapons_F\DynamicLoadout\PylonPod_4x_Missile_LG_scalpel_F.p3d";
mirrorMissilesIndexes[] = {2, 1, 4, 3};
};
// November - Metal augmented charge (Thermobaric) (Enclosures, ships, urban targets, air defense units)
class 6Rnd_ACE_Hellfire_AGM114N: 6Rnd_ACE_Hellfire_AGM114K { // Old style vehicle magazine
count = 6;
ammo = "ACE_Hellfire_AGM114N";
displayName = "AGM-114N [ACE]";
displayNameShort = "AGM-114N";
descriptionShort = "AGM-114N";
};
// 1.70 pylon magazines:
class PylonMissile_1Rnd_ACE_Hellfire_AGM114N: PylonMissile_1Rnd_ACE_Hellfire_AGM114K { // Bare missle
displayName = "1x AGM-114N [ACE]";
displayNameShort = "AGM-114N";
descriptionShort = "AGM-114N";
ammo = "ACE_Hellfire_AGM114N";
pylonWeapon = QGVAR(launcher_N);
};
class PylonRack_1Rnd_ACE_Hellfire_AGM114N: PylonRack_1Rnd_ACE_Hellfire_AGM114K { // 1x Launcher Support Rack
displayName = "1x AGM-114N [ACE]";
displayNameShort = "AGM-114N";
descriptionShort = "AGM-114N";
ammo = "ACE_Hellfire_AGM114N";
pylonWeapon = QGVAR(launcher_N);
};
class PylonRack_3Rnd_ACE_Hellfire_AGM114N: PylonRack_3Rnd_ACE_Hellfire_AGM114K { // 3x Launcher Support Rack
displayName = "3x AGM-114N [ACE]";
displayNameShort = "AGM-114N";
descriptionShort = "AGM-114N";
ammo = "ACE_Hellfire_AGM114N";
pylonWeapon = QGVAR(launcher_N);
};
class PylonRack_4Rnd_ACE_Hellfire_AGM114N: PylonRack_4Rnd_ACE_Hellfire_AGM114K { // 4x Launcher Support Rack
displayName = "4x AGM-114N [ACE]";
displayNameShort = "AGM-114N";
descriptionShort = "AGM-114N";
ammo = "ACE_Hellfire_AGM114N";
pylonWeapon = QGVAR(launcher_N);
};
Add AGM-114L Active Radar Homing Hellfire (#7337) * Create AGM-114L * If we lose LOS dont continue tracking magically Allow for datalinked targets to donate data to the missile. * Update documentation * RHS 2x hellfire compatability * Make ARH more realistic by not allowing to switch targets after firing * Fix filename. Change Hellfire attack profile to lead target. Switch to two LOS checks. We check two Line's of Sight to ensure that we are 100% gone from the target. A raw LOS check will be blocked by bushes and light trees while the checkVisibility wont while on the otherhand smoke will block a visiblity check but not a raw LOS check. We get best of both worlds with this. I changed the attack profile so that it will lead moving targets. This isnt needed with the laser version because the user will "lead" the target if needed, but with the radar scan we have velocity information so we might as well lead the target as much as possible * Change function calls to FUNC macro. Slightly change radar logic. Up poll frequency to 7hz Instead of the missile immediately going active when the shooter doesn't have radar, check if targets are in datalink. If they are, use the datalink to guide the missile instead of its internal radar. * Add logic for missiles launched without target If a missile is fired without a locked target, it will immediately go active and target the first thing its seeker picks up. This is an incredibly dangerous trait of active radar homing missiles and is so in this implementation. Be careful! * Change from `exitWith` to basic `then` Legacy code that never got changed. This is essentially what happened before * Update CfgMagazineWells.hpp Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2019-12-30 18:29:08 +00:00
// Lima - tandem shaped charge HEAT (anti-tank) Fire and Forget Active Radar Homing
class 6Rnd_ACE_Hellfire_AGM114L: 6Rnd_ACE_Hellfire_AGM114K { // Old style vehicle magazine
count = 6;
ammo = "ACE_Hellfire_AGM114L";
displayName = "AGM-114L [ACE]";
displayNameShort = "AGM-114L";
descriptionShort = "AGM-114L";
};
// 1.70 pylon magazines:
class PylonMissile_1Rnd_ACE_Hellfire_AGM114L: PylonMissile_1Rnd_ACE_Hellfire_AGM114K { // Bare missle
displayName = "1x AGM-114L [ACE]";
displayNameShort = "AGM-114L";
descriptionShort = "AGM-114L";
ammo = "ACE_Hellfire_AGM114L";
pylonWeapon = QGVAR(launcher_L);
};
class PylonRack_1Rnd_ACE_Hellfire_AGM114L: PylonRack_1Rnd_ACE_Hellfire_AGM114K { // 1x Launcher Support Rack
displayName = "1x AGM-114L [ACE]";
displayNameShort = "AGM-114L";
descriptionShort = "AGM-114L";
ammo = "ACE_Hellfire_AGM114L";
pylonWeapon = QGVAR(launcher_L);
};
class PylonRack_3Rnd_ACE_Hellfire_AGM114L: PylonRack_3Rnd_ACE_Hellfire_AGM114K { // 3x Launcher Support Rack
displayName = "3x AGM-114L [ACE]";
displayNameShort = "AGM-114L";
descriptionShort = "AGM-114L";
ammo = "ACE_Hellfire_AGM114L";
pylonWeapon = QGVAR(launcher_L);
};
class PylonRack_4Rnd_ACE_Hellfire_AGM114L: PylonRack_4Rnd_ACE_Hellfire_AGM114K { // 4x Launcher Support Rack
displayName = "4x AGM-114L [ACE]";
displayNameShort = "AGM-114L";
descriptionShort = "AGM-114L";
ammo = "ACE_Hellfire_AGM114L";
pylonWeapon = QGVAR(launcher_L);
};
};