mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
add aim120 definition
This commit is contained in:
parent
b29c97ec81
commit
224c11761d
1
addons/aim120/$PBOPREFIX$
Normal file
1
addons/aim120/$PBOPREFIX$
Normal file
@ -0,0 +1 @@
|
|||||||
|
z\ace\addons\aim120
|
200
addons/aim120/CfgAmmo.hpp
Normal file
200
addons/aim120/CfgAmmo.hpp
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
class CfgAmmo {
|
||||||
|
class ammo_Missile_AMRAAM_C;
|
||||||
|
class M_Zephyr;
|
||||||
|
// AIM-120
|
||||||
|
class GVAR(a): M_Zephyr {
|
||||||
|
missileLockCone = 30;
|
||||||
|
missileKeepLockedCone = 30;
|
||||||
|
missileLockMaxDistance = 16000;
|
||||||
|
missileLockMinDistance = 500;
|
||||||
|
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
maneuvrability = 0;
|
||||||
|
flightProfiles[] = {"Direct", "Loft"};
|
||||||
|
class Direct {}; // dummy to allow for F cycling of missile mode
|
||||||
|
class Loft {};
|
||||||
|
class ace_missileguidance {
|
||||||
|
enabled = 1;
|
||||||
|
|
||||||
|
pitchRate = 30; // Minium flap deflection for guidance
|
||||||
|
yawRate = 30; // Maximum flap deflection for guidance
|
||||||
|
|
||||||
|
canVanillaLock = 1; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||||
|
|
||||||
|
// Guidance type for munitions
|
||||||
|
defaultSeekerType = "DopplerRadar";
|
||||||
|
seekerTypes[] = { "DopplerRadar" };
|
||||||
|
lockableTypes[] = {"Air"};
|
||||||
|
|
||||||
|
minimumSpeedFilter = 25; // filter out targets that have a closing velocity less than this
|
||||||
|
minimumTimeFilter = 0.0001; // filter out targets that are this close to the ground (speed of light)
|
||||||
|
maxTerrainCheck = 16000; // How far we should check for terrain
|
||||||
|
|
||||||
|
defaultSeekerLockMode = "LOAL";
|
||||||
|
seekerLockModes[] = { "LOAL", "LOBL" };
|
||||||
|
|
||||||
|
defaultNavigationType = "ZeroEffortMiss";
|
||||||
|
navigationTypes[] = { "ZeroEffortMiss" };
|
||||||
|
|
||||||
|
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||||
|
seekerAngle = 50; // Angle from the shooter's view that can track the missile
|
||||||
|
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||||
|
|
||||||
|
seekerMinRange = 75;
|
||||||
|
seekerMaxRange = 2500; // Range from the missile which the seeker can visually search
|
||||||
|
|
||||||
|
// Attack profile type selection
|
||||||
|
defaultAttackProfile = "DIR";
|
||||||
|
attackProfiles[] = {"DIR", "LOFT"};
|
||||||
|
useModeForAttackProfile = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
class GVAR(c): ammo_Missile_AMRAAM_C {
|
||||||
|
missileLockCone = 30;
|
||||||
|
missileKeepLockedCone = 30;
|
||||||
|
missileLockMaxDistance = 16000;
|
||||||
|
missileLockMinDistance = 500;
|
||||||
|
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
maneuvrability = 0;
|
||||||
|
flightProfiles[] = {"Direct", "Loft"};
|
||||||
|
class Direct {}; // dummy to allow for F cycling of missile mode
|
||||||
|
class Loft {};
|
||||||
|
class ace_missileguidance {
|
||||||
|
enabled = 1;
|
||||||
|
|
||||||
|
pitchRate = 30; // Minium flap deflection for guidance
|
||||||
|
yawRate = 30; // Maximum flap deflection for guidance
|
||||||
|
|
||||||
|
canVanillaLock = 1; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||||
|
|
||||||
|
// Guidance type for munitions
|
||||||
|
defaultSeekerType = "DopplerRadar";
|
||||||
|
seekerTypes[] = { "DopplerRadar" };
|
||||||
|
lockableTypes[] = {"Air"};
|
||||||
|
|
||||||
|
minimumSpeedFilter = 25; // filter out targets that have a closing velocity less than this
|
||||||
|
minimumTimeFilter = 0.0001; // filter out targets that are this close to the ground (speed of light)
|
||||||
|
maxTerrainCheck = 16000; // How far we should check for terrain
|
||||||
|
|
||||||
|
defaultSeekerLockMode = "LOAL";
|
||||||
|
seekerLockModes[] = { "LOAL", "LOBL" };
|
||||||
|
|
||||||
|
defaultNavigationType = "ZeroEffortMiss";
|
||||||
|
navigationTypes[] = { "ZeroEffortMiss" };
|
||||||
|
|
||||||
|
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||||
|
seekerAngle = 50; // Angle from the shooter's view that can track the missile
|
||||||
|
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||||
|
|
||||||
|
seekerMinRange = 75;
|
||||||
|
seekerMaxRange = 2500; // Range from the missile which the seeker can visually search
|
||||||
|
|
||||||
|
// Attack profile type selection
|
||||||
|
defaultAttackProfile = "DIR";
|
||||||
|
attackProfiles[] = {"DIR", "LOFT"};
|
||||||
|
useModeForAttackProfile = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
class ammo_Missile_AMRAAM_D;
|
||||||
|
class GVAR(d): ammo_Missile_AMRAAM_D {
|
||||||
|
missileLockCone = 45;
|
||||||
|
missileKeepLockedCone = 45;
|
||||||
|
missileLockMaxDistance = 16000;
|
||||||
|
missileLockMinDistance = 500;
|
||||||
|
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
maneuvrability = 0;
|
||||||
|
flightProfiles[] = {"Direct", "TopDown"};
|
||||||
|
class Direct {}; // dummy to allow for F cycling of missile mode
|
||||||
|
class TopDown {};
|
||||||
|
class ace_missileguidance {
|
||||||
|
enabled = 1;
|
||||||
|
|
||||||
|
pitchRate = 45; // Minium flap deflection for guidance
|
||||||
|
yawRate = 45; // Maximum flap deflection for guidance
|
||||||
|
|
||||||
|
canVanillaLock = 1; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||||
|
|
||||||
|
// Guidance type for munitions
|
||||||
|
defaultSeekerType = "DopplerRadar";
|
||||||
|
seekerTypes[] = { "DopplerRadar" };
|
||||||
|
lockableTypes[] = {"Air"};
|
||||||
|
|
||||||
|
minimumSpeedFilter = 15; // filter out targets that have a closing velocity less than this
|
||||||
|
minimumTimeFilter = 0.00005; // filter out targets that are this close to the ground (speed of light)
|
||||||
|
maxTerrainCheck = 16000; // How far we should check for terrain
|
||||||
|
|
||||||
|
defaultSeekerLockMode = "LOAL";
|
||||||
|
seekerLockModes[] = { "LOAL", "LOBL" };
|
||||||
|
|
||||||
|
defaultNavigationType = "ZeroEffortMiss";
|
||||||
|
navigationTypes[] = { "ZeroEffortMiss" };
|
||||||
|
|
||||||
|
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||||
|
seekerAngle = 50; // Angle from the shooter's view that can track the missile
|
||||||
|
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||||
|
|
||||||
|
seekerMinRange = 75;
|
||||||
|
seekerMaxRange = 2500; // Range from the missile which the seeker can visually search
|
||||||
|
|
||||||
|
// Attack profile type selection
|
||||||
|
defaultAttackProfile = "DIR";
|
||||||
|
attackProfiles[] = {"DIR", "LOFT"};
|
||||||
|
useModeForAttackProfile = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// R-77
|
||||||
|
class ammo_Missile_AA_R77;
|
||||||
|
class GVAR(r77): ammo_Missile_AA_R77 {
|
||||||
|
missileLockCone = 50;
|
||||||
|
missileKeepLockedCone = 50;
|
||||||
|
missileLockMaxDistance = 16000;
|
||||||
|
missileLockMinDistance = 500;
|
||||||
|
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
maneuvrability = 0;
|
||||||
|
flightProfiles[] = {"Direct", "TopDown"};
|
||||||
|
class Direct {}; // dummy to allow for F cycling of missile mode
|
||||||
|
class TopDown {};
|
||||||
|
class ace_missileguidance {
|
||||||
|
enabled = 1;
|
||||||
|
|
||||||
|
pitchRate = 40; // Minium flap deflection for guidance
|
||||||
|
yawRate = 40; // Maximum flap deflection for guidance
|
||||||
|
|
||||||
|
canVanillaLock = 1; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||||
|
|
||||||
|
// Guidance type for munitions
|
||||||
|
defaultSeekerType = "DopplerRadar";
|
||||||
|
seekerTypes[] = { "DopplerRadar" };
|
||||||
|
lockableTypes[] = {"Air"};
|
||||||
|
|
||||||
|
minimumSpeedFilter = 15; // filter out targets that have a closing velocity less than this
|
||||||
|
minimumTimeFilter = 0.00005; // filter out targets that are this close to the ground (speed of light)
|
||||||
|
maxTerrainCheck = 16000; // How far we should check for terrain
|
||||||
|
|
||||||
|
defaultSeekerLockMode = "LOAL";
|
||||||
|
seekerLockModes[] = { "LOAL", "LOBL" };
|
||||||
|
|
||||||
|
defaultNavigationType = "ZeroEffortMiss";
|
||||||
|
navigationTypes[] = { "ZeroEffortMiss" };
|
||||||
|
|
||||||
|
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||||
|
seekerAngle = 50; // Angle from the shooter's view that can track the missile
|
||||||
|
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||||
|
|
||||||
|
seekerMinRange = 75;
|
||||||
|
seekerMaxRange = 2500; // Range from the missile which the seeker can visually search
|
||||||
|
|
||||||
|
// Attack profile type selection
|
||||||
|
defaultAttackProfile = "DIR";
|
||||||
|
attackProfiles[] = {"DIR", "LOFT"};
|
||||||
|
useModeForAttackProfile = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
108
addons/aim120/CfgMagazines.hpp
Normal file
108
addons/aim120/CfgMagazines.hpp
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
class CfgMagazines {
|
||||||
|
class magazine_Missile_AMRAAM_C_x1;
|
||||||
|
class PylonMissile_Missile_AMRAAM_C_x1;
|
||||||
|
class PylonRack_Missile_AMRAAM_C_x1;
|
||||||
|
class PylonRack_Missile_AMRAAM_C_x2;
|
||||||
|
class PylonMissile_Missile_AMRAAM_D_x1;
|
||||||
|
class PylonMissile_Missile_AMRAAM_D_INT_x1;
|
||||||
|
class PylonRack_Missile_AMRAAM_D_x1;
|
||||||
|
class PylonRack_Missile_AMRAAM_D_x2;
|
||||||
|
|
||||||
|
class 4Rnd_GAA_missiles;
|
||||||
|
class PylonRack_1Rnd_GAA_missiles;
|
||||||
|
class PylonMissile_1Rnd_GAA_missiles;
|
||||||
|
|
||||||
|
class GVAR(a): 4Rnd_GAA_missiles {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(a);
|
||||||
|
ammo = QGVAR(a);
|
||||||
|
};
|
||||||
|
|
||||||
|
class GVAR(PylonRack_1Rnd_a): PylonRack_1Rnd_GAA_missiles {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(a_1x);
|
||||||
|
ammo = QGVAR(a);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
|
||||||
|
class GVAR(PylonMissile_1Rnd_a): PylonMissile_1Rnd_GAA_missiles {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(a_1x);
|
||||||
|
ammo = QGVAR(a);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
|
||||||
|
// AIM-120
|
||||||
|
class GVAR(c): magazine_Missile_AMRAAM_C_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(c_1x);
|
||||||
|
ammo = QGVAR(c);
|
||||||
|
};
|
||||||
|
class GVAR(PylonMissile_Missile_c_x1): PylonMissile_Missile_AMRAAM_C_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(c_1x);
|
||||||
|
ammo = QGVAR(c);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonRack_Missile_c_x1): PylonRack_Missile_AMRAAM_C_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(c_1x);
|
||||||
|
ammo = QGVAR(c);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonRack_Missile_c_x2): PylonRack_Missile_AMRAAM_C_x2 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(c_2x);
|
||||||
|
ammo = QGVAR(c);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
|
||||||
|
class GVAR(PylonMissile_Missile_d_x1): PylonMissile_Missile_AMRAAM_D_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(d_1x);
|
||||||
|
ammo = QGVAR(d);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonMissile_Missile_d_INT_x1): PylonMissile_Missile_AMRAAM_D_INT_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(d_1x);
|
||||||
|
ammo = QGVAR(d);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonRack_Missile_d_x1): PylonRack_Missile_AMRAAM_D_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(d_1x);
|
||||||
|
ammo = QGVAR(d);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonRack_Missile_d_x2): PylonRack_Missile_AMRAAM_D_x2 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(d_2x);
|
||||||
|
ammo = QGVAR(d);
|
||||||
|
pylonWeapon = QGVAR(aim120Launcher);
|
||||||
|
};
|
||||||
|
|
||||||
|
// R-77
|
||||||
|
class magazine_Missile_AA_R77_x1;
|
||||||
|
class PylonMissile_Missile_AA_R77_x1;
|
||||||
|
class PylonMissile_Missile_AA_R77_INT_x1;
|
||||||
|
|
||||||
|
class GVAR(r77): magazine_Missile_AA_R77_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(r77_1x);
|
||||||
|
ammo = QGVAR(r77);
|
||||||
|
};
|
||||||
|
class GVAR(PylonMissile_Missile_R77_x1): PylonMissile_Missile_AA_R77_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(r77_1x);
|
||||||
|
ammo = QGVAR(r77);
|
||||||
|
pylonWeapon = QGVAR(r77Launcher);
|
||||||
|
};
|
||||||
|
class GVAR(PylonMissile_Missile_R77__INT_x1): PylonMissile_Missile_AA_R77_INT_x1 {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(r77_1x);
|
||||||
|
ammo = QGVAR(r77);
|
||||||
|
pylonWeapon = QGVAR(r77Launcher);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
118
addons/aim120/CfgWeapons.hpp
Normal file
118
addons/aim120/CfgWeapons.hpp
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
class CfgWeapons {
|
||||||
|
class weapon_AMRAAMLauncher;
|
||||||
|
class MissileLauncher;
|
||||||
|
|
||||||
|
class GVAR(aim120Launcher): weapon_AMRAAMLauncher {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(aim120);
|
||||||
|
weaponLockDelay = 0.5;
|
||||||
|
|
||||||
|
magazines[] = {
|
||||||
|
QGVAR(a),
|
||||||
|
QGVAR(PylonRack_1Rnd_a),
|
||||||
|
QGVAR(PylonMissile_1Rnd_a),
|
||||||
|
|
||||||
|
QGVAR(c),
|
||||||
|
QGVAR(PylonMissile_Missile_c_x1),
|
||||||
|
QGVAR(PylonRack_Missile_c_x1),
|
||||||
|
QGVAR(PylonRack_Missile_c_x2),
|
||||||
|
|
||||||
|
QGVAR(PylonMissile_Missile_d_x1),
|
||||||
|
QGVAR(PylonMissile_Missile_d_INT_x1),
|
||||||
|
QGVAR(PylonRack_Missile_d_x1),
|
||||||
|
QGVAR(PylonRack_Missile_d_x2)
|
||||||
|
};
|
||||||
|
|
||||||
|
modes[] = {"Direct", "Loft"};
|
||||||
|
class Direct: MissileLauncher {
|
||||||
|
displayName = CSTRING(direct);
|
||||||
|
textureType = "direct";
|
||||||
|
reloadTime = 0.1;
|
||||||
|
magazineReloadTime = 0.1;
|
||||||
|
aiRateOfFire = 15;
|
||||||
|
aiRateOfFireDispersion = -10;
|
||||||
|
aiRateOfFireDistance = 10000;
|
||||||
|
minRange = 800;
|
||||||
|
minRangeProbab = 0.5;
|
||||||
|
midRange = 2500;
|
||||||
|
midRangeProbab = 0.95;
|
||||||
|
maxRange = 4000;
|
||||||
|
maxRangeProbab = 1;
|
||||||
|
sounds[] = {"StandardSound"};
|
||||||
|
class StandardSound {
|
||||||
|
begin1[] = {"A3\Sounds_F\weapons\Rockets\missile_2", 1.12202, 1.3, 1000};
|
||||||
|
soundBegin[] = {"begin1", 1};
|
||||||
|
weaponSoundEffect = "DefaultRifle";
|
||||||
|
};
|
||||||
|
soundFly[] = {"A3\Sounds_F\weapons\Rockets\rocket_fly_1", 1, 1.5, 700};
|
||||||
|
lockingTargetSound[] = {"\A3\Sounds_F\weapons\Rockets\locked_1", 0.562341, 1};
|
||||||
|
lockedTargetSound[] = {"\A3\Sounds_F\weapons\Rockets\locked_3", 0.562341, 2.5};
|
||||||
|
|
||||||
|
EGVAR(missileGuidance,attackProfile) = "DIR";
|
||||||
|
};
|
||||||
|
class Loft: Direct {
|
||||||
|
displayName = CSTRING(loft);
|
||||||
|
textureType = "topdown";
|
||||||
|
|
||||||
|
minRange = 4000;
|
||||||
|
minRangeProbab = 0.5;
|
||||||
|
midRange = 7000;
|
||||||
|
midRangeProbab = 0.95;
|
||||||
|
maxRange = 13000;
|
||||||
|
maxRangeProbab = 1;
|
||||||
|
|
||||||
|
EGVAR(missileGuidance,attackProfile) = "LOFT";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
class weapon_R77Launcher;
|
||||||
|
class GVAR(r77Launcher): weapon_R77Launcher {
|
||||||
|
author = "Dani (TCVM)";
|
||||||
|
displayName = CSTRING(r77);
|
||||||
|
weaponLockDelay = 0.5;
|
||||||
|
|
||||||
|
magazines[] = {QGVAR(r77), QGVAR(PylonMissile_Missile_R77_x1), QGVAR(PylonMissile_Missile_R77__INT_x1)};
|
||||||
|
|
||||||
|
modes[] = {"Direct", "Loft"};
|
||||||
|
class Direct: MissileLauncher {
|
||||||
|
displayName = CSTRING(direct);
|
||||||
|
textureType = "direct";
|
||||||
|
reloadTime = 0.1;
|
||||||
|
magazineReloadTime = 0.1;
|
||||||
|
aiRateOfFire = 15;
|
||||||
|
aiRateOfFireDispersion = -10;
|
||||||
|
aiRateOfFireDistance = 10000;
|
||||||
|
minRange = 800;
|
||||||
|
minRangeProbab = 0.5;
|
||||||
|
midRange = 2500;
|
||||||
|
midRangeProbab = 0.95;
|
||||||
|
maxRange = 4000;
|
||||||
|
maxRangeProbab = 1;
|
||||||
|
sounds[] = {"StandardSound"};
|
||||||
|
class StandardSound {
|
||||||
|
begin1[] = {"A3\Sounds_F\weapons\Rockets\missile_2", 1.12202, 1.3, 1000};
|
||||||
|
soundBegin[] = {"begin1", 1};
|
||||||
|
weaponSoundEffect = "DefaultRifle";
|
||||||
|
};
|
||||||
|
soundFly[] = {"A3\Sounds_F\weapons\Rockets\rocket_fly_1", 1, 1.5, 700};
|
||||||
|
lockingTargetSound[] = {"\A3\Sounds_F\weapons\Rockets\locked_1", 0.562341, 1};
|
||||||
|
lockedTargetSound[] = {"\A3\Sounds_F\weapons\Rockets\locked_3", 0.562341, 2.5};
|
||||||
|
|
||||||
|
EGVAR(missileGuidance,attackProfile) = "DIR";
|
||||||
|
};
|
||||||
|
class Loft: Direct {
|
||||||
|
displayName = CSTRING(loft);
|
||||||
|
textureType = "topdown";
|
||||||
|
|
||||||
|
minRange = 4000;
|
||||||
|
minRangeProbab = 0.5;
|
||||||
|
midRange = 7000;
|
||||||
|
midRangeProbab = 0.95;
|
||||||
|
maxRange = 13000;
|
||||||
|
maxRangeProbab = 1;
|
||||||
|
|
||||||
|
EGVAR(missileGuidance,attackProfile) = "LOFT";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
12
addons/aim120/README.md
Normal file
12
addons/aim120/README.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
ace_aim120
|
||||||
|
===================
|
||||||
|
|
||||||
|
Adds AIM-120, AIM-132, and R-77 AHR missiles
|
||||||
|
|
||||||
|
|
||||||
|
## Maintainers
|
||||||
|
|
||||||
|
The people responsible for merging changes to this component or answering potential questions.
|
||||||
|
|
||||||
|
- [Dani-TCVM](https://github.com/TheCandianVendingMachine)
|
||||||
|
|
20
addons/aim120/config.cpp
Normal file
20
addons/aim120/config.cpp
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
class CfgPatches {
|
||||||
|
class ADDON {
|
||||||
|
name = COMPONENT_NAME;
|
||||||
|
units[] = {};
|
||||||
|
weapons[] = {};
|
||||||
|
requiredVersion = REQUIRED_VERSION;
|
||||||
|
requiredAddons[] = {"ace_common","ace_missileguidance"};
|
||||||
|
author = ECSTRING(common,ACETeam);
|
||||||
|
authors[] = {"Dani (TCVM)"};
|
||||||
|
url = ECSTRING(main,URL);
|
||||||
|
VERSION_CONFIG;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#include "CfgAmmo.hpp"
|
||||||
|
#include "CfgMagazines.hpp"
|
||||||
|
#include "CfgWeapons.hpp"
|
||||||
|
|
18
addons/aim120/script_component.hpp
Normal file
18
addons/aim120/script_component.hpp
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
#define COMPONENT aim120
|
||||||
|
#define COMPONENT_BEAUTIFIED AIM-120
|
||||||
|
#include "\z\ace\addons\main\script_mod.hpp"
|
||||||
|
|
||||||
|
// #define DEBUG_MODE_FULL
|
||||||
|
// #define DISABLE_COMPILE_CACHE
|
||||||
|
// #define ENABLE_PERFORMANCE_COUNTERS
|
||||||
|
|
||||||
|
#ifdef DEBUG_ENABLED_AIM120
|
||||||
|
#define DEBUG_MODE_FULL
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef DEBUG_SETTINGS_AIM120
|
||||||
|
#define DEBUG_SETTINGS DEBUG_SETTINGS_AIM120
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "\z\ace\addons\main\script_macros.hpp"
|
||||||
|
|
44
addons/aim120/stringtable.xml
Normal file
44
addons/aim120/stringtable.xml
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project name="ACE">
|
||||||
|
<Package name="AIM120">
|
||||||
|
<Key ID="STR_ACE_AIM120_a">
|
||||||
|
<English>AIM-120A [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_a_1x">
|
||||||
|
<English>1x AIM-120A [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_c">
|
||||||
|
<English>AIM-120C [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_c_1x">
|
||||||
|
<English>1x AIM-120C [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_c_2x">
|
||||||
|
<English>2x AIM-120C [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_d">
|
||||||
|
<English>AIM-120D [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_d_1x">
|
||||||
|
<English>1x AIM-120D [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_d_2x">
|
||||||
|
<English>2x AIM-120D [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_r77">
|
||||||
|
<English>R-77 [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_r77_1x">
|
||||||
|
<English>1x R-77 [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_aim120">
|
||||||
|
<English>AIM-120 [ACE]</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_direct">
|
||||||
|
<English>Direct</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_AIM120_loft">
|
||||||
|
<English>Loft</English>
|
||||||
|
</Key>
|
||||||
|
</Package>
|
||||||
|
</Project>
|
Loading…
Reference in New Issue
Block a user