mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Add GBU-12
This commit is contained in:
parent
bcb6ed7c68
commit
2e49e17765
1
addons/gbu/$PBOPREFIX$
Normal file
1
addons/gbu/$PBOPREFIX$
Normal file
@ -0,0 +1 @@
|
||||
z\ace\addons\gbu
|
78
addons/gbu/CfgAmmo.hpp
Normal file
78
addons/gbu/CfgAmmo.hpp
Normal file
@ -0,0 +1,78 @@
|
||||
class CfgAmmo {
|
||||
class Bo_GBU12_LGB;
|
||||
class GVAR(12): Bo_GBU12_LGB {
|
||||
maneuvrability = 0; // no maneuvrability so that default guidance doesnt work
|
||||
airFriction = 0.25; // bombs have high drag who woulda thunk
|
||||
class ace_missileguidance {
|
||||
enabled = 1;
|
||||
|
||||
pitchRate = 5;
|
||||
yawRate = 5;
|
||||
|
||||
bangBangGuidance = 1;
|
||||
stabilityCoefficient = 0.4; // how much this projectile likes to "weathervane" (keep direction toward velocity)
|
||||
|
||||
canVanillaLock = 0; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||
|
||||
// Guidance type for munitions
|
||||
defaultSeekerType = "SALH";
|
||||
seekerTypes[] = { "SALH" };
|
||||
|
||||
defaultSeekerLockMode = "LOAL";
|
||||
seekerLockModes[] = { "LOAL" };
|
||||
|
||||
defaultNavigationType = "ProportionalNavigation";
|
||||
navigationTypes[] = { "ProportionalNavigation" };
|
||||
|
||||
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||
seekerAngle = 60; // Angle from the shooter's view that can track the missile
|
||||
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||
|
||||
seekerMinRange = 5;
|
||||
seekerMaxRange = 4000; // Range from the missile which the seeker can visually search
|
||||
|
||||
// Attack profile type selection
|
||||
defaultAttackProfile = "DIR";
|
||||
attackProfiles[] = {"DIR"};
|
||||
};
|
||||
};
|
||||
|
||||
class Bomb_03_F;
|
||||
class GVAR(FAB250): Bomb_03_F {
|
||||
maneuvrability = 0; // no maneuvrability so that default guidance doesnt work
|
||||
airFriction = 0.25; // bombs have high drag who woulda thunk
|
||||
class ace_missileguidance {
|
||||
enabled = 1;
|
||||
|
||||
pitchRate = 8;
|
||||
yawRate = 8;
|
||||
|
||||
bangBangGuidance = 1;
|
||||
stabilityCoefficient = 0.4; // how much this projectile likes to "weathervane" (keep direction toward velocity)
|
||||
|
||||
canVanillaLock = 0; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||
|
||||
// Guidance type for munitions
|
||||
defaultSeekerType = "SALH";
|
||||
seekerTypes[] = { "SALH" };
|
||||
|
||||
defaultSeekerLockMode = "LOAL";
|
||||
seekerLockModes[] = { "LOAL" };
|
||||
|
||||
defaultNavigationType = "ProportionalNavigation";
|
||||
navigationTypes[] = { "ProportionalNavigation" };
|
||||
|
||||
seekLastTargetPos = 0; // seek last target position [if seeker loses LOS of target, continue to last known pos]
|
||||
seekerAngle = 60; // Angle from the shooter's view that can track the missile
|
||||
seekerAccuracy = 1; // seeker accuracy multiplier
|
||||
|
||||
seekerMinRange = 5;
|
||||
seekerMaxRange = 4000; // Range from the missile which the seeker can visually search
|
||||
|
||||
// Attack profile type selection
|
||||
defaultAttackProfile = "DIR";
|
||||
attackProfiles[] = {"DIR"};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
87
addons/gbu/CfgMagazines.hpp
Normal file
87
addons/gbu/CfgMagazines.hpp
Normal file
@ -0,0 +1,87 @@
|
||||
class CfgMagazines {
|
||||
class 2Rnd_GBU12_LGB;
|
||||
// GBU
|
||||
class GVAR(2Rnd_12): 2Rnd_GBU12_LGB {
|
||||
displayName = CSTRING(12_2x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
};
|
||||
|
||||
class 4Rnd_Bomb_04_F;
|
||||
class GVAR(4Rnd_GBU12): 4Rnd_Bomb_04_F {
|
||||
displayName = CSTRING(12_4x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
};
|
||||
|
||||
class magazine_Bomb_GBU12_x1;
|
||||
class GVAR(gbu12): magazine_Bomb_GBU12_x1 {
|
||||
displayName = CSTRING(12_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
};
|
||||
|
||||
class PylonMissile_1Rnd_Bomb_04_F;
|
||||
class GVAR(1_PylonMissile_1Rnd_12): PylonMissile_1Rnd_Bomb_04_F {
|
||||
displayName = CSTRING(12_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
pylonWeapon = QGVAR(12);
|
||||
};
|
||||
|
||||
class 2Rnd_GBU12_LGB_MI10;
|
||||
class GVAR(2Rnd_GBU12_LGB_MI10): 2Rnd_GBU12_LGB_MI10 {
|
||||
displayName = CSTRING(12_2x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
pylonWeapon = QGVAR(12);
|
||||
};
|
||||
|
||||
class PylonMissile_Bomb_GBU12_x1;
|
||||
class GVAR(PylonMissile_Bomb_GBU12_x1): PylonMissile_Bomb_GBU12_x1 {
|
||||
displayName = CSTRING(12_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
pylonWeapon = QGVAR(12);
|
||||
};
|
||||
|
||||
class PylonRack_Bomb_GBU12_x2;
|
||||
class GVAR(PylonRack_Bomb_GBU12_x2): PylonRack_Bomb_GBU12_x2 {
|
||||
displayName = CSTRING(12_2x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(12);
|
||||
pylonWeapon = QGVAR(12);
|
||||
};
|
||||
|
||||
// KAB
|
||||
class magazine_Bomb_KAB250_x1;
|
||||
class GVAR(1Rnd_FAB250): magazine_Bomb_KAB250_x1 {
|
||||
displayName = CSTRING(fab250_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(FAB250);
|
||||
};
|
||||
|
||||
class PylonMissile_Bomb_KAB250_x1;
|
||||
class GVAR(1_PylonMissile_1Rnd_FAB250): PylonMissile_Bomb_KAB250_x1 {
|
||||
displayName = CSTRING(fab250_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(FAB250);
|
||||
pylonWeapon = QGVAR(FAB250);
|
||||
};
|
||||
|
||||
class 2Rnd_Bomb_03_F;
|
||||
class GVAR(2Rnd_FAB250): 2Rnd_Bomb_03_F {
|
||||
displayName = CSTRING(fab250_2x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(FAB250);
|
||||
};
|
||||
|
||||
class PylonMissile_1Rnd_Bomb_03_F;
|
||||
class GVAR(PylonMissile_1Rnd_FAB250): PylonMissile_1Rnd_Bomb_03_F {
|
||||
displayName = CSTRING(fab250_1x);
|
||||
author = "Dani (TCVM)";
|
||||
ammo = QGVAR(FAB250);
|
||||
pylonWeapon = QGVAR(FAB250);
|
||||
};
|
||||
};
|
||||
|
32
addons/gbu/CfgWeapons.hpp
Normal file
32
addons/gbu/CfgWeapons.hpp
Normal file
@ -0,0 +1,32 @@
|
||||
class CfgWeapons {
|
||||
class weapon_LGBLauncherBase;
|
||||
class GVAR(12): weapon_LGBLauncherBase {
|
||||
displayName = CSTRING(12);
|
||||
magazines[] = {
|
||||
QGVAR(2Rnd_12),
|
||||
QGVAR(2Rnd_GBU12_LGB_MI10),
|
||||
QGVAR(4Rnd_GBU12),
|
||||
QGVAR(gbu12),
|
||||
QGVAR(1_PylonMissile_1Rnd_12),
|
||||
QGVAR(PylonMissile_Bomb_GBU12_x1),
|
||||
QGVAR(PylonRack_Bomb_GBU12_x2)
|
||||
};
|
||||
|
||||
EGVAR(laser,canSelect) = 1; // can ace_laser lock (allows switching laser code)
|
||||
EGVAR(laser,showHud) = 1; // show attack profile / lock on hud
|
||||
};
|
||||
|
||||
class GVAR(FAB250): weapon_LGBLauncherBase {
|
||||
displayName = CSTRING(fab250);
|
||||
magazines[] = {
|
||||
QGVAR(1Rnd_FAB250),
|
||||
QGVAR(2Rnd_FAB250),
|
||||
QGVAR(1_PylonMissile_1Rnd_FAB250),
|
||||
QGVAR(PylonMissile_1Rnd_FAB250)
|
||||
};
|
||||
|
||||
EGVAR(laser,canSelect) = 1; // can ace_laser lock (allows switching laser code)
|
||||
EGVAR(laser,showHud) = 1; // show attack profile / lock on hud
|
||||
};
|
||||
};
|
||||
|
12
addons/gbu/README.md
Normal file
12
addons/gbu/README.md
Normal file
@ -0,0 +1,12 @@
|
||||
ace_gbu
|
||||
===================
|
||||
|
||||
Adds GBU-12 LGB
|
||||
|
||||
|
||||
## Maintainers
|
||||
|
||||
The people responsible for merging changes to this component or answering potential questions.
|
||||
|
||||
- [Dani-TCVM](https://github.com/TheCandianVendingMachine)
|
||||
|
20
addons/gbu/config.cpp
Normal file
20
addons/gbu/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/gbu/script_component.hpp
Normal file
18
addons/gbu/script_component.hpp
Normal file
@ -0,0 +1,18 @@
|
||||
#define COMPONENT gbu
|
||||
#define COMPONENT_BEAUTIFIED Guided Bomb Unit
|
||||
#include "\z\ace\addons\main\script_mod.hpp"
|
||||
|
||||
// #define DEBUG_MODE_FULL
|
||||
// #define DISABLE_COMPILE_CACHE
|
||||
// #define ENABLE_PERFORMANCE_COUNTERS
|
||||
|
||||
#ifdef DEBUG_ENABLED_GBU
|
||||
#define DEBUG_MODE_FULL
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG_SETTINGS_GBU
|
||||
#define DEBUG_SETTINGS DEBUG_SETTINGS_GBU
|
||||
#endif
|
||||
|
||||
#include "\z\ace\addons\main\script_macros.hpp"
|
||||
|
26
addons/gbu/stringtable.xml
Normal file
26
addons/gbu/stringtable.xml
Normal file
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project name="ACE">
|
||||
<Package name="GBU">
|
||||
<Key ID="STR_ACE_GBU_12">
|
||||
<English>GBU-12 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_fab250">
|
||||
<English>FAB-250M-54 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_12_1x">
|
||||
<English>1x GBU-12 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_12_2x">
|
||||
<English>2x GBU-12 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_12_4x">
|
||||
<English>4x GBU-12 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_fab250_1x">
|
||||
<English>1x FAB-250M-54 [ACE]</English>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_GBU_fab250_2x">
|
||||
<English>2x FAB-250M-54 [ACE]</English>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
Loading…
Reference in New Issue
Block a user