diff --git a/changelog.md b/changelog.md index df7f38cc..15856865 100644 --- a/changelog.md +++ b/changelog.md @@ -22,6 +22,7 @@ * **[UI/UX]** Allow changing conditions such as Time, Date & Weather * **[Modding]** Added support for Su-15 Flagon mod (v1.0) * **[Plugins]** Support for Carsten's Arty Spotter script +* **[Modding]** Added support for SK-60 mod (v1.2.1) ## Fixes * **[UI/UX]** A-10A flights can be edited again diff --git a/client/src/components/flightplanslayer/FlightPlansLayer.test.tsx b/client/src/components/flightplanslayer/FlightPlansLayer.test.tsx index 820957d0..88241dbc 100644 --- a/client/src/components/flightplanslayer/FlightPlansLayer.test.tsx +++ b/client/src/components/flightplanslayer/FlightPlansLayer.test.tsx @@ -182,7 +182,7 @@ describe("FlightPlansLayer", () => { expect(mockLayerGroup).toBeCalledTimes(1); }); it("are not drawn when only selected flights are to be drawn", () => { - renderWithProviders(, { + renderWithProviders(, { preloadedState: { flights: { flights: { @@ -355,7 +355,7 @@ describe("FlightPlansLayer", () => { expect(mockLayerGroup).toBeCalledTimes(1); }); it("are not drawn if red", () => { - renderWithProviders(, { + renderWithProviders(, { preloadedState: { flights: { flights: { @@ -397,7 +397,7 @@ describe("FlightPlansLayer", () => { }, }, }); - expect(mockPolyline).not.toHaveBeenCalled(); + expect(mockPolyline).toHaveBeenCalled(); expect(mockLayerGroup).toBeCalledTimes(1); }); }); diff --git a/client/src/components/flightplanslayer/FlightPlansLayer.tsx b/client/src/components/flightplanslayer/FlightPlansLayer.tsx index 7f8ede20..392049c1 100644 --- a/client/src/components/flightplanslayer/FlightPlansLayer.tsx +++ b/client/src/components/flightplanslayer/FlightPlansLayer.tsx @@ -5,7 +5,7 @@ import FlightPlan from "../flightplan"; import { LayerGroup } from "react-leaflet"; interface FlightPlansLayerProps { - blue: boolean; + blue?: boolean; selectedOnly?: true; } @@ -15,11 +15,6 @@ function SelectedFlightPlan(props: FlightPlansLayerProps) { return <>; } - if (!props.blue) { - // We don't currently support playing as red, so nothing to draw. - return <>; - } - return ( - - + + diff --git a/game/factions/faction.py b/game/factions/faction.py index 22a1d115..227face3 100644 --- a/game/factions/faction.py +++ b/game/factions/faction.py @@ -410,6 +410,8 @@ class Faction: self.remove_aircraft("JAS39Gripen_AG") if not mod_settings.super_etendard: self.remove_aircraft("VSN_SEM") + if not mod_settings.sk_60: + self.remove_aircraft("SK-60") if not mod_settings.su15_flagon: self.remove_aircraft("Su_15") self.remove_aircraft("Su_15TM") diff --git a/game/theater/start_generator.py b/game/theater/start_generator.py index 9a0b2ef4..ac78996c 100644 --- a/game/theater/start_generator.py +++ b/game/theater/start_generator.py @@ -86,6 +86,7 @@ class ModSettings: irondome: bool = False uh_60l: bool = False jas39_gripen: bool = False + sk_60: bool = False super_etendard: bool = False su15_flagon: bool = False su30_flanker_h: bool = False diff --git a/pydcs_extensions/__init__.py b/pydcs_extensions/__init__.py index c5c4071e..97a3235a 100644 --- a/pydcs_extensions/__init__.py +++ b/pydcs_extensions/__init__.py @@ -24,6 +24,7 @@ from .jas39 import * from .ov10a import * from .spanishnavypack import * from .super_etendard import * +from .sk60 import * from .su15 import * from .su30 import * from .su57 import * diff --git a/pydcs_extensions/sk60/__init__.py b/pydcs_extensions/sk60/__init__.py new file mode 100644 index 00000000..12403a82 --- /dev/null +++ b/pydcs_extensions/sk60/__init__.py @@ -0,0 +1 @@ +from .sk60 import * diff --git a/pydcs_extensions/sk60/sk60.py b/pydcs_extensions/sk60/sk60.py new file mode 100644 index 00000000..f5d167c9 --- /dev/null +++ b/pydcs_extensions/sk60/sk60.py @@ -0,0 +1,101 @@ +from typing import Any, Dict, Set + +from dcs import task +from dcs.planes import PlaneType +from dcs.weapons_data import Weapons + +from game.modsupport import planemod +from pydcs_extensions.weapon_injector import inject_weapons + + +class WeaponsSK_60: + _1x_13_5cm_HE_rocket = { + "clsid": "{d694b359-e7a8-4909-88d4-7100b77afd13}", + "name": "1x 13,5cm HE rocket", + "weight": 50, + } + _1x_14_5cm_HEAT_rocket = { + "clsid": "{d694b359-e7a8-4909-88d4-7100b77afd12}", + "name": "1x 14,5cm HEAT rocket", + "weight": 50, + } + _2x_13_5cm_HE_rocket = { + "clsid": "{d694b359-e7a8-4909-88d4-7100b77afd11}", + "name": "2x 13,5cm HE rocket", + "weight": 95, + } + AKAN_m_55_Gunpod = { + "clsid": "{5d5aa063-a002-4de8-8a89-6eda1e80ee7b}", + "name": "AKAN m/55 Gunpod", + "weight": 196, + } + + +inject_weapons(WeaponsSK_60) + + +@planemod +class SK_60(PlaneType): + id = "SK-60" + flyable = True + height = 2.7 + width = 9.5 + length = 10.8 + fuel_max = 1640 + max_speed = 879.9984 + chaff = 0 + flare = 0 + charge_total = 0 + chaff_charge_size = 0 + flare_charge_size = 0 + eplrs = True + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + radio_frequency = 243 + + livery_name = "SK-60" # from type + + class Pylon1: + _2x_13_5cm_HE_rocket = (1, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (1, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (1, Weapons._1x_13_5cm_HE_rocket) + + class Pylon2: + AKAN_m_55_Gunpod = (2, Weapons.AKAN_m_55_Gunpod) + _2x_13_5cm_HE_rocket = (2, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (2, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (2, Weapons._1x_13_5cm_HE_rocket) + + class Pylon3: + _2x_13_5cm_HE_rocket = (3, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (3, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (3, Weapons._1x_13_5cm_HE_rocket) + + class Pylon4: + _2x_13_5cm_HE_rocket = (4, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (4, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (4, Weapons._1x_13_5cm_HE_rocket) + + class Pylon5: + AKAN_m_55_Gunpod = (5, Weapons.AKAN_m_55_Gunpod) + _2x_13_5cm_HE_rocket = (5, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (5, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (5, Weapons._1x_13_5cm_HE_rocket) + + class Pylon6: + _2x_13_5cm_HE_rocket = (6, Weapons._2x_13_5cm_HE_rocket) + _1x_14_5cm_HEAT_rocket = (6, Weapons._1x_14_5cm_HEAT_rocket) + _1x_13_5cm_HE_rocket = (6, Weapons._1x_13_5cm_HE_rocket) + + pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8} + + tasks = [ + task.GroundAttack, + task.PinpointStrike, + task.CAS, + task.AFAC, + task.RunwayAttack, + task.SEAD, + task.Escort, + task.Reconnaissance, + ] + task_default = task.GroundAttack diff --git a/pydcs_extensions/su30/su30.py b/pydcs_extensions/su30/su30.py index 2d2a128d..244ce987 100644 --- a/pydcs_extensions/su30/su30.py +++ b/pydcs_extensions/su30/su30.py @@ -2,6 +2,7 @@ from typing import Dict, Any, Set from dcs import task from dcs.planes import PlaneType +from dcs.unitpropertydescription import UnitPropertyDescription from dcs.weapons_data import Weapons from game.modsupport import planemod @@ -18,6 +19,7 @@ class WeaponsSu30: APK_9_POD = {"clsid": "{SU30_APK-9}", "name": "APK-9 POD", "weight": 295} BRAHMOS_A_Ship = {"clsid": "{BRAHMOS_S}", "name": "BRAHMOS A-Ship", "weight": 2500} + BRAHMOS_SEAD = {"clsid": "{BRAHMOS_SEAD}", "name": "BRAHMOS SEAD", "weight": 2500} DAMOCLES___Targeting_Pod = { "clsid": "{DAMOCLES}", @@ -27,36 +29,6 @@ class WeaponsSu30: EL_M_2060 = {"clsid": "{SU30_ELM2060}", "name": "EL/M-2060", "weight": 295} - FAB_500_M54___474kg = { - "clsid": "{Su30_FAB500M54}", - "name": "FAB-500 M54 - 474kg", - "weight": 506, - } - - FAB_500_M62___474kg = { - "clsid": "{Su30_FAB500M62}", - "name": "FAB-500 M62 - 474kg", - "weight": 506, - } - - FAB_250_M62___227kg = { - "clsid": "{Su30_FAB250M62}", - "name": "FAB-250 M62 - 227kg", - "weight": 506, - } - - FAB_500_M62_UMPK = { - "clsid": "{Su30_UMPKFAB500M62}", - "name": "FAB-500 M62 UMPK", - "weight": 570, - } - - FAB_500_M62_NV___500kg = { - "clsid": "{Su30_FAB500M62NV}", - "name": "FAB-500 M62 NV - 500kg", - "weight": 277, - } - GBU_38___JDAM__500lb_GPS_Guided_Bomb = { "clsid": "{SU30_GBU_38}", "name": "GBU-38 - JDAM, 500lb GPS Guided Bomb", @@ -69,18 +41,6 @@ class WeaponsSu30: "weight": 118, } - Kh_31P = {"clsid": "{SU30_KH31P}", "name": "Kh-31P", "weight": 690} - - KH_31PD__AA_ = {"clsid": "{SU30_KH31PDAA}", "name": "KH-31PD (AA)", "weight": 893} - - Kh_36_Grom_1 = {"clsid": "{SU30_KH36}", "name": "Kh-36 Grom-1", "weight": 690} - - KH_38MTE = {"clsid": "{SU30_KH38MTE}", "name": "KH-38MTE", "weight": 1240} - - KH_38MLE = {"clsid": "{SU30_KH38MLE}", "name": "KH-38MLE", "weight": 520} - - KH_38MAE = {"clsid": "{SU30_KH38MAE}", "name": "KH-38MAE", "weight": 520} - KH_29L__AS_14_Kedge___Semi_Act_Laser = { "clsid": "{SU30_KH29L}", "name": "KH-29L (AS-14 Kedge), Semi-Act Laser", @@ -93,23 +53,106 @@ class WeaponsSu30: "weight": 1240, } - Kh_59M = {"clsid": "{SU30_KH59M}", "name": "Kh-59M", "weight": 930} - - Kh_59MK = {"clsid": "{SU30_KH59MK}", "name": "Kh-59MK", "weight": 770} - - Kh_59MK2_ = {"clsid": "{SU30_KH59MK2}", "name": "Kh-59MK2", "weight": 770} - - Kh_31A = {"clsid": "{SU30_KH_31A}", "name": "Kh-31A", "weight": 690} - - Kh_31P_AA = {"clsid": "{SU30_KH31PAA}", "name": "Kh-31P AA", "weight": 786} - - KH_35A = {"clsid": "{SU30_KH_35}", "name": "KH-35A", "weight": 540} - - KH_35UE = {"clsid": "{SU30_KH_35UE}", "name": "KH-35UE", "weight": 540} - - KH_31AD = {"clsid": "{SU30_KH31AD}", "name": "KH-31AD", "weight": 690} - - KH_31PD = {"clsid": "{SU30_KH31PD}", "name": "KH-31PD", "weight": 690} + Kh_31P__AS_17_Krypton____600kg = { + "clsid": "{SU30_KH31P}", + "name": "Kh-31P (AS-17 Krypton) - 600kg", + "weight": 600, + } + Kh_36__AS_23____600kg_Grom_E1 = { + "clsid": "{SU30_KH36}", + "name": "Kh-36 (AS-23) - 600kg Grom-E1", + "weight": 600, + } + KH_38MTE__AS_23__IR_Guided = { + "clsid": "{SU30_KH38MTE}", + "name": "KH-38MTE (AS-23),IR Guided", + "weight": 505, + } + KH_38MLE__AS_23___Semi_Act_Laser = { + "clsid": "{SU30_KH38MLE}", + "name": "KH-38MLE (AS-23), Semi-Act Laser", + "weight": 520, + } + Kh_38MAE__AS_23____500kg = { + "clsid": "{SU30_KH38MAE}", + "name": "Kh-38MAE (AS-23) - 500kg", + "weight": 505, + } + Kh_59M__AS_18_Kazoo___930kg = { + "clsid": "{SU30_KH59M}", + "name": "Kh-59M (AS-18 Kazoo), 930kg", + "weight": 930, + } + Kh_59MK__AS_18_Kazoo____930kg = { + "clsid": "{SU30_KH59MK}", + "name": "Kh-59MK (AS-18 Kazoo) - 930kg", + "weight": 770, + } + Kh_31A__AS_17_Krypton____610kg = { + "clsid": "{SU30_KH_31A}", + "name": "Kh-31A (AS-17 Krypton) - 610kg", + "weight": 600, + } + Kh_35__AS_20_Kayak____520kg = { + "clsid": "{Su30_KH_35A}", + "name": "Kh-35 (AS-20 Kayak) - 520kg", + "weight": 711, + } + Kh_35UE__AS_20_Kayak____520kg = { + "clsid": "{Su30_KH_35UE}", + "name": "Kh-35UE (AS-20 Kayak) - 520kg", + "weight": 711, + } + Kh_31AD__AS_17_Krypton____610kg = { + "clsid": "{SU30_KH31AD}", + "name": "Kh-31AD (AS-17 Krypton) - 610kg", + "weight": 715, + } + Kh_31PD__AS_17_Krypton____600kg = { + "clsid": "{SU30_KH31PD}", + "name": "Kh-31PD (AS-17 Krypton) - 600kg", + "weight": 707, + } + Kh_59MK2__AS_22_Kazoo____700kg = { + "clsid": "{SU30_KH59MK2}", + "name": "Kh-59MK2 (AS-22 Kazoo) - 700kg", + "weight": 700, + } + KAB_500S___500kg__GPS_Guided = { + "clsid": "{SU30_KAB_500S_LOADOUT}", + "name": "KAB-500S - 500kg, GPS Guided", + "weight": 500, + } + FAB_500_M54___474kg__freefall = { + "clsid": "{Su30_FAB500M54}", + "name": "FAB-500 M54 - 474kg, freefall", + "weight": 474, + } + FAB_500_M62___474kg__freefall = { + "clsid": "{Su30_FAB500M62}", + "name": "FAB-500 M62 - 474kg, freefall", + "weight": 241, + } + FAB_500M62_UMPK__500kg_Glide_Bomb = { + "clsid": "{Su30_UMPKFAB500M62}", + "name": "FAB-500M62 UMPK, 500kg Glide Bomb", + "weight": 570, + } + FAB_250_M62___227kg__freefall = { + "clsid": "{Su30_FAB250M62}", + "name": "FAB-250 M62 - 227kg, freefall", + "weight": 241, + } + FAB_500M62_NV__500kg_Parachute = { + "clsid": "{Su30_FAB500M62NV}", + "name": "FAB-500M62 NV, 500kg Parachute", + "weight": 277, + } + RN_244___260kg__Tactic_Nuclear_bomb = { + "clsid": "{SU30_244N}", + "name": "RN-244 - 260kg, Tactic Nuclear bomb", + "weight": 260, + } KAB_500S___500kg = { "clsid": "{SU30_KAB_500S_LOADOUT}", @@ -189,6 +232,12 @@ class WeaponsSu30: "weight": 253, } + R_37M__AA_13_Axehead____Active_Rdr = { + "clsid": "{SU30-R37M-AA}", + "name": "R-37M (AA-13 Axehead) - Active Rdr", + "weight": 510, + } + R_73L__AA_11_Archer_L____Infra_Red = { "clsid": "{Su30-R-73L-AA}", "name": "R-73L (AA-11 Archer L) - Infra Red", @@ -219,6 +268,12 @@ class WeaponsSu30: "weight": 190, } + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = { + "clsid": "{SU30_R77PD}", + "name": "R-77PD (AA-12 Adder) - Active Rdr Ramjet", + "weight": 225, + } + RVV_AE__AA_12_Adder____Active_Rdr = { "clsid": "{SU30_RVVAE}", "name": "RVV-AE (AA-12 Adder) - Active Rdr", @@ -259,26 +314,32 @@ class WeaponsSu30: SAAW_POD = {"clsid": "{SU30_SAAW}", "name": "SAAW POD", "weight": 570} + Smoke_Generator___Black = { + "clsid": "{SMOKE-POD-BLACK}", + "name": "Smoke Generator - Black", + "weight": 220, + } + inject_weapons(WeaponsSu30) @planemod -class Su_30MKI(PlaneType): - id = "Su-30MKI" +class Su_30SM(PlaneType): + id = "Su-30SM" flyable = True height = 5.932 width = 14.7 length = 21.935 - fuel_max = 9400 + fuel_max = 9500 max_speed = 2499.984 chaff = 96 flare = 96 charge_total = 192 chaff_charge_size = 1 flare_charge_size = 1 + eplrs = True category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} - radio_frequency = 124 panel_radio = { 1: { @@ -307,34 +368,38 @@ class Su_30MKI(PlaneType): }, 2: { "channels": { - 1: 305, - 2: 264, - 4: 256, - 8: 257, - 16: 261, - 17: 267, - 9: 255, - 18: 251, - 5: 254, - 10: 262, - 20: 266, - 11: 259, - 3: 265, - 6: 250, - 12: 268, - 13: 269, - 7: 270, - 14: 260, - 19: 253, - 15: 263, + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, }, }, } property_defaults: Dict[str, Any] = { "SoloFlight": False, - "NetCrewControlPriority": 1, - "MOUNTSURA": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, } class Properties: @@ -346,14 +411,102 @@ class Su_30MKI(PlaneType): class Values: Pilot = 0 - Co_Pilot = 1 + WSO = 1 Ask_Always = -1 Equally_Responsible = -2 - class MOUNTSURA: - id = "MOUNTSURA" + class HumanOrchestra: + id = "HumanOrchestra" - livery_name = "SU-30MKI" # from type + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30SM" # from type class Pylon1: R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -377,6 +530,7 @@ class Su_30MKI(PlaneType): Smoke_Generator___white = (1, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (1, WeaponsSu30.Smoke_Generator___Black) class Pylon2: R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -392,15 +546,17 @@ class Su_30MKI(PlaneType): 2, WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, ) - ASTRA_Mk_1___Active_Rdr_AAM = (2, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) - I_Derby_ER___Active_Rdr_AAM = (2, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 2, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 2, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 2, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) Smoke_Generator___red = (2, Weapons.Smoke_Generator___red) Smoke_Generator___green = (2, Weapons.Smoke_Generator___green) @@ -408,6 +564,9 @@ class Su_30MKI(PlaneType): Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (2, WeaponsSu30.Smoke_Generator___Black) + + # ERRR class Pylon3: R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -431,6 +590,10 @@ class Su_30MKI(PlaneType): 3, WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 3, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 3, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, @@ -439,37 +602,71 @@ class Su_30MKI(PlaneType): 3, WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, ) - ASTRA_Mk_1___Active_Rdr_AAM = (3, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) - I_Derby_ER___Active_Rdr_AAM = (3, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( 3, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_27P1__AA_10_Alamo_E____Passive_Rdr = ( 3, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, + ) + R_77__AA_12_Adder_Early____Active_Rdr = ( + 3, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, + ) + R_77_1__AA_12_Adder_B____Active_Rdr = ( + 3, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 3, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 3, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 3, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (3, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (3, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (3, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 3, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( - 3, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, - ) KH_29TE__AS_14_Kedge___TV_Guided = ( 3, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (3, WeaponsSu30.Kh_59M) - Kh_59MK = (3, WeaponsSu30.Kh_59MK) - Kh_31A = (3, WeaponsSu30.Kh_31A) - Kh_31P_AA = (3, WeaponsSu30.Kh_31P_AA) - KH_35A = (3, WeaponsSu30.KH_35A) - Rudra_M1 = (3, WeaponsSu30.Rudra_M1) - SAAW_POD = (3, WeaponsSu30.SAAW_POD) + # ERRR {JAS39_AGM_65K} + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 3, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 3, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (3, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (3, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 3, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -499,13 +696,14 @@ class Su_30MKI(PlaneType): 3, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( 3, - Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, ) - FAB_500_M54___474kg = (3, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (3, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (3, WeaponsSu30.FAB_250_M62___227kg) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (3, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 3, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -514,6 +712,10 @@ class Su_30MKI(PlaneType): 3, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 3, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( 3, Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, @@ -532,45 +734,77 @@ class Su_30MKI(PlaneType): ) _2_x_S_25 = (3, Weapons._2_x_S_25) + # ERRR + class Pylon4: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 4, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 4, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 4, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - I_Derby_ER___Active_Rdr_AAM = (4, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 4, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 4, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 4, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 4, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 4, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (4, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (4, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (4, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 4, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( - 4, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, - ) KH_29TE__AS_14_Kedge___TV_Guided = ( 4, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (4, WeaponsSu30.Kh_59M) - Kh_59MK = (4, WeaponsSu30.Kh_59MK) - Kh_31A = (4, WeaponsSu30.Kh_31A) - Kh_31P_AA = (4, WeaponsSu30.Kh_31P_AA) - KH_35A = (4, WeaponsSu30.KH_35A) - Rudra_M1 = (4, WeaponsSu30.Rudra_M1) - SAAW_POD = (4, WeaponsSu30.SAAW_POD) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 4, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 4, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (4, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (4, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -606,57 +840,101 @@ class Su_30MKI(PlaneType): 4, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 4, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (4, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 4, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (4, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (4, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (4, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 4, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 4, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 4, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_100___100kg = ( 4, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon5: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 5, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 5, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 5, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - I_Derby_ER___Active_Rdr_AAM = (5, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 5, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 5, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77M__AA_12_Adder_C____Active_Rdr = ( 5, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - KH_29TE__AS_14_Kedge___TV_Guided = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 5, - WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 5, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (5, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (5, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (5, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 5, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_31A = (5, WeaponsSu30.Kh_31A) - Kh_31P_AA = (5, WeaponsSu30.Kh_31P_AA) - Rudra_M1 = (5, WeaponsSu30.Rudra_M1) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 5, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 5, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 5, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (5, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 5, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -678,13 +956,22 @@ class Su_30MKI(PlaneType): 5, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 5, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (5, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 5, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (5, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (5, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (5, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 5, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 5, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -694,42 +981,51 @@ class Su_30MKI(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR class Pylon6: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 6, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 6, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 6, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 6, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 6, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 6, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 6, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 6, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, ) - I_Derby_ER___Active_Rdr_AAM = (6, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - BRAHMOS_A_Ship = (6, WeaponsSu30.BRAHMOS_A_Ship) KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (6, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( 6, Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, ) - KAB_500LG___500kg_Laser_Guided_Bomb = ( - 6, - Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, - ) - SAB_100MN___100_kg_Illumination_Bomb = ( - 6, - Weapons.SAB_100MN___100_kg_Illumination_Bomb, - ) KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( 6, Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, @@ -738,6 +1034,14 @@ class Su_30MKI(PlaneType): 6, Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 6, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) P_50T___50kg_Practice_Bomb_LD = (6, Weapons.P_50T___50kg_Practice_Bomb_LD) BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( 6, @@ -751,13 +1055,26 @@ class Su_30MKI(PlaneType): 6, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 6, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (6, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) + RN_244___260kg__Tactic_Nuclear_bomb = ( + 6, + WeaponsSu30.RN_244___260kg__Tactic_Nuclear_bomb, + ) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 6, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (6, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (6, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (6, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 6, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 6, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -774,36 +1091,44 @@ class Su_30MKI(PlaneType): 6, Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) - EL_M_2060 = (6, WeaponsSu30.EL_M_2060) + + # ERRR class Pylon7: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 7, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 7, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 7, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 7, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 7, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 7, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 7, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 7, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, ) - I_Derby_ER___Active_Rdr_AAM = (7, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (7, WeaponsSu30.KAB_500S___500kg) - KAB_500LG___500kg_Laser_Guided_Bomb = ( - 7, - Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, - ) - SAB_100MN___100_kg_Illumination_Bomb = ( - 7, - Weapons.SAB_100MN___100_kg_Illumination_Bomb, - ) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( 7, Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, @@ -825,13 +1150,30 @@ class Su_30MKI(PlaneType): 7, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 7, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (7, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 7, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (7, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (7, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (7, WeaponsSu30.FAB_250_M62___227kg) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 7, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 7, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 7, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 7, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -846,6 +1188,7 @@ class Su_30MKI(PlaneType): Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (7, WeaponsSu30.Smoke_Generator___Black) RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( 7, Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, @@ -855,41 +1198,72 @@ class Su_30MKI(PlaneType): Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR + class Pylon8: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 8, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 8, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 8, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 8, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 8, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 8, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 8, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 8, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (8, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (8, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (8, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) - I_Derby_ER___Active_Rdr_AAM = (8, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 8, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( - 8, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, - ) KH_29TE__AS_14_Kedge___TV_Guided = ( 8, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (8, WeaponsSu30.Kh_31A) - Kh_31P_AA = (8, WeaponsSu30.Kh_31P_AA) - Rudra_M1 = (8, WeaponsSu30.Rudra_M1) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 8, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 8, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (8, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 8, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -911,13 +1285,22 @@ class Su_30MKI(PlaneType): 8, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 8, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (8, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 8, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (8, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (8, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (8, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 8, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 8, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -926,44 +1309,84 @@ class Su_30MKI(PlaneType): 8, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) - DAMOCLES___Targeting_Pod = (8, WeaponsSu30.DAMOCLES___Targeting_Pod) - LITENING___Targeting_Pod = (8, WeaponsSu30.LITENING___Targeting_Pod) + + # ERRR class Pylon9: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 9, WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 9, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 9, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 9, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 9, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 9, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 9, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 9, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (9, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (9, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (9, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) - I_Derby_ER___Active_Rdr_AAM = (9, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 9, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( - 9, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, - ) KH_29TE__AS_14_Kedge___TV_Guided = ( 9, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (9, WeaponsSu30.Kh_59M) - Kh_59MK = (9, WeaponsSu30.Kh_59MK) - Kh_31A = (9, WeaponsSu30.Kh_31A) - Kh_31P_AA = (9, WeaponsSu30.Kh_31P_AA) - KH_35A = (9, WeaponsSu30.KH_35A) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 9, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 9, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (9, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) KAB_500LG___500kg_Laser_Guided_Bomb = ( 9, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -972,16 +1395,6 @@ class Su_30MKI(PlaneType): 9, Weapons.SAB_100MN___100_kg_Illumination_Bomb, ) - Rudra_M1 = (9, WeaponsSu30.Rudra_M1) - SAAW_POD = (9, WeaponsSu30.SAAW_POD) - KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (9, WeaponsSu30.KAB_500S___500kg) - KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) - KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) - KAB_1500L___1500kg_Laser_Guided_Bomb = ( - 9, - Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, - ) KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( 9, Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, @@ -1003,22 +1416,38 @@ class Su_30MKI(PlaneType): 9, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 9, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + # ERRR {DIS_UMPK_FAB_5002} + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (9, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 9, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (9, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (9, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (9, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 9, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 9, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 9, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_100___100kg = ( 9, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon10: R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -1041,6 +1470,10 @@ class Su_30MKI(PlaneType): 10, WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, ) + R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range = ( + 10, + WeaponsSu30.R_27EA__AA_10_Alamo____Active_Rdr_Extended_Range, + ) R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( 10, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, @@ -1049,40 +1482,83 @@ class Su_30MKI(PlaneType): 10, WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, ) - ASTRA_Mk_1___Active_Rdr_AAM = (10, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) - I_Derby_ER___Active_Rdr_AAM = (10, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( 10, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_27P1__AA_10_Alamo_E____Passive_Rdr = ( 10, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, + ) + R_77__AA_12_Adder_Early____Active_Rdr = ( + 10, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, + ) + R_77_1__AA_12_Adder_B____Active_Rdr = ( + 10, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 10, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, + ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 10, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 10, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_36__AS_23____600kg_Grom_E1 = (10, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (10, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (10, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 10, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( - 10, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, - ) KH_29TE__AS_14_Kedge___TV_Guided = ( 10, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (10, WeaponsSu30.Kh_59M) - Kh_59MK = (10, WeaponsSu30.Kh_59MK) - Kh_31A = (10, WeaponsSu30.Kh_31A) - Kh_31P_AA = (10, WeaponsSu30.Kh_31P_AA) - KH_35A = (10, WeaponsSu30.KH_35A) - Rudra_M1 = (10, WeaponsSu30.Rudra_M1) - SAAW_POD = (10, WeaponsSu30.SAAW_POD) + # ERRR {JAS39_AGM_65H} + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = ( + 10, + WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = ( 10, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, ) - KAB_500S___500kg = (10, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 10, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -1112,17 +1588,33 @@ class Su_30MKI(PlaneType): 10, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 10, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = ( + 10, + WeaponsSu30.FAB_500M62_NV__500kg_Parachute, + ) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 10, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (10, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (10, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (10, WeaponsSu30.FAB_250_M62___227kg) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 10, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 10, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 10, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) MBD3_U6_68_with_6_x_FAB_100___100kg = ( 10, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, @@ -1145,6 +1637,8 @@ class Su_30MKI(PlaneType): ) _2_x_S_25 = (10, Weapons._2_x_S_25) + # ERRR + class Pylon11: R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -1159,15 +1653,17 @@ class Su_30MKI(PlaneType): 11, WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, ) - ASTRA_Mk_1___Active_Rdr_AAM = (11, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) - I_Derby_ER___Active_Rdr_AAM = (11, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) - RVV_AE__AA_12_Adder____Active_Rdr = ( + R_77__AA_12_Adder_Early____Active_Rdr = ( 11, - WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, ) - RVV_SD__AA_12_Adder_B____Active_Rdr = ( + R_77_1__AA_12_Adder_B____Active_Rdr = ( 11, - WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + WeaponsSu30.R_77_1__AA_12_Adder_B____Active_Rdr, + ) + R_77M__AA_12_Adder_C____Active_Rdr = ( + 11, + WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) Smoke_Generator___red = (11, Weapons.Smoke_Generator___red) Smoke_Generator___green = (11, Weapons.Smoke_Generator___green) @@ -1175,6 +1671,9 @@ class Su_30MKI(PlaneType): Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (11, WeaponsSu30.Smoke_Generator___Black) + + # ERRR class Pylon12: R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -1198,6 +1697,7 @@ class Su_30MKI(PlaneType): Smoke_Generator___white = (12, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (12, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (12, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (12, WeaponsSu30.Smoke_Generator___Black) pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} @@ -1233,7 +1733,6 @@ class Su_30MKA(PlaneType): flare_charge_size = 1 eplrs = True category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} - radio_frequency = 124 panel_radio = { 1: { @@ -1262,34 +1761,38 @@ class Su_30MKA(PlaneType): }, 2: { "channels": { - 1: 305, - 2: 264, - 4: 256, - 8: 257, - 16: 261, - 17: 267, - 9: 255, - 18: 251, - 5: 254, - 10: 262, - 20: 266, - 11: 259, - 3: 265, - 6: 250, - 12: 268, - 13: 269, - 7: 270, - 14: 260, - 19: 253, - 15: 263, + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, }, }, } property_defaults: Dict[str, Any] = { "SoloFlight": False, - "NetCrewControlPriority": 1, - "MOUNTSURA": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, } class Properties: @@ -1301,12 +1804,100 @@ class Su_30MKA(PlaneType): class Values: Pilot = 0 - Co_Pilot = 1 + WSO = 1 Ask_Always = -1 Equally_Responsible = -2 - class MOUNTSURA: - id = "MOUNTSURA" + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } livery_name = "SU-30MKA" # from type @@ -1362,6 +1953,8 @@ class Su_30MKA(PlaneType): Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + # ERRR + class Pylon3: R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -1400,14 +1993,18 @@ class Su_30MKA(PlaneType): 3, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 3, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) - Kh_31P_AA = (3, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (3, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (3, WeaponsSu30.KH_38MTE) - KH_38MLE = (3, WeaponsSu30.KH_38MLE) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (3, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (3, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (3, WeaponsSu30.Kh_38MAE__AS_23____500kg) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 3, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, @@ -1416,15 +2013,21 @@ class Su_30MKA(PlaneType): 3, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (3, WeaponsSu30.Kh_59M) - Kh_59MK = (3, WeaponsSu30.Kh_59MK) - Kh_31A = (3, WeaponsSu30.Kh_31A) - KH_35A = (3, WeaponsSu30.KH_35A) - KH_35UE = (3, WeaponsSu30.KH_35UE) - KH_31AD = (3, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (3, WeaponsSu30.KH_31PD__AA_) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 3, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 3, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (3, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 3, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -1458,9 +2061,9 @@ class Su_30MKA(PlaneType): 3, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (3, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (3, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (3, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 3, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1487,6 +2090,8 @@ class Su_30MKA(PlaneType): ) _2_x_S_25 = (3, Weapons._2_x_S_25) + # ERRR + class Pylon4: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 4, @@ -1504,13 +2109,17 @@ class Su_30MKA(PlaneType): 4, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (4, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (4, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (4, WeaponsSu30.KH_38MTE) - KH_38MLE = (4, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (4, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (4, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( 4, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (4, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 4, @@ -1520,15 +2129,21 @@ class Su_30MKA(PlaneType): 4, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (4, WeaponsSu30.Kh_59M) - Kh_59MK = (4, WeaponsSu30.Kh_59MK) - Kh_31A = (4, WeaponsSu30.Kh_31A) - KH_35A = (4, WeaponsSu30.KH_35A) - KH_35UE = (4, WeaponsSu30.KH_35UE) - KH_31AD = (4, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (4, WeaponsSu30.KH_31PD__AA_) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 4, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 4, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (4, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -1568,9 +2183,9 @@ class Su_30MKA(PlaneType): 4, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (4, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (4, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (4, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 4, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1580,6 +2195,8 @@ class Su_30MKA(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon5: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 5, @@ -1597,13 +2214,17 @@ class Su_30MKA(PlaneType): 5, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (5, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (5, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (5, WeaponsSu30.KH_38MTE) - KH_38MLE = (5, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (5, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (5, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( 5, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (5, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 5, @@ -1613,11 +2234,17 @@ class Su_30MKA(PlaneType): 5, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (5, WeaponsSu30.Kh_31A) - KH_31AD = (5, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (5, WeaponsSu30.KH_31PD__AA_) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 5, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 5, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (5, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 5, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -1643,9 +2270,9 @@ class Su_30MKA(PlaneType): 5, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (5, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (5, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (5, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 5, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1655,6 +2282,9 @@ class Su_30MKA(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR class Pylon6: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( @@ -1674,7 +2304,7 @@ class Su_30MKA(PlaneType): WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (6, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -1714,9 +2344,9 @@ class Su_30MKA(PlaneType): 6, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (6, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (6, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (6, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 6, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1734,6 +2364,8 @@ class Su_30MKA(PlaneType): Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR + class Pylon7: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 7, @@ -1752,7 +2384,7 @@ class Su_30MKA(PlaneType): WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (7, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 7, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -1786,9 +2418,9 @@ class Su_30MKA(PlaneType): 7, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (7, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (7, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (7, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 7, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1812,6 +2444,8 @@ class Su_30MKA(PlaneType): Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR + class Pylon8: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 8, @@ -1829,13 +2463,17 @@ class Su_30MKA(PlaneType): 8, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (8, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (8, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (8, WeaponsSu30.KH_38MTE) - KH_38MLE = (8, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (8, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (8, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( 8, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (8, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 8, @@ -1845,11 +2483,17 @@ class Su_30MKA(PlaneType): 8, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (8, WeaponsSu30.Kh_31A) - KH_31AD = (8, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (8, WeaponsSu30.KH_31PD__AA_) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 8, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 8, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (8, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 8, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -1875,9 +2519,9 @@ class Su_30MKA(PlaneType): 8, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (8, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (8, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (8, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 8, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1887,7 +2531,7 @@ class Su_30MKA(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) - # ERRR {DAMOCLES} + # ERRR class Pylon9: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( @@ -1906,13 +2550,17 @@ class Su_30MKA(PlaneType): 9, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (9, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (9, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (9, WeaponsSu30.KH_38MTE) - KH_38MLE = (9, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (9, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (9, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( 9, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (9, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 9, @@ -1922,15 +2570,21 @@ class Su_30MKA(PlaneType): 9, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (9, WeaponsSu30.Kh_59M) - Kh_59MK = (9, WeaponsSu30.Kh_59MK) - Kh_31A = (9, WeaponsSu30.Kh_31A) - KH_35A = (9, WeaponsSu30.KH_35A) - KH_35UE = (9, WeaponsSu30.KH_35UE) - KH_31AD = (9, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (9, WeaponsSu30.KH_31PD__AA_) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 9, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 9, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (9, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -1970,9 +2624,9 @@ class Su_30MKA(PlaneType): 9, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (9, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (9, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (9, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 9, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -1982,6 +2636,8 @@ class Su_30MKA(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon10: R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -2020,13 +2676,20 @@ class Su_30MKA(PlaneType): 10, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (10, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (10, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (10, WeaponsSu30.KH_38MTE) - KH_38MLE = (10, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = ( 10, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_36__AS_23____600kg_Grom_E1 = (10, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (10, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (10, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 10, @@ -2036,18 +2699,27 @@ class Su_30MKA(PlaneType): 10, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (10, WeaponsSu30.Kh_59M) - Kh_59MK = (10, WeaponsSu30.Kh_59MK) - Kh_31A = (10, WeaponsSu30.Kh_31A) - KH_35A = (10, WeaponsSu30.KH_35A) - KH_35UE = (10, WeaponsSu30.KH_35UE) - KH_31AD = (10, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (10, WeaponsSu30.KH_31PD__AA_) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = ( 10, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, ) - KAB_500S___500kg = (10, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 10, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -2081,9 +2753,9 @@ class Su_30MKA(PlaneType): 10, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, ) - FAB_500_M54___474kg = (10, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (10, WeaponsSu30.FAB_500_M62___474kg) - FAB_250_M62___227kg = (10, WeaponsSu30.FAB_250_M62___227kg) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 10, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -2110,6 +2782,8 @@ class Su_30MKA(PlaneType): ) _2_x_S_25 = (10, Weapons._2_x_S_25) + # ERRR + class Pylon11: R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -2139,6 +2813,8 @@ class Su_30MKA(PlaneType): Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + # ERRR + class Pylon12: R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -2187,15 +2863,15 @@ class Su_30MKM(PlaneType): height = 5.932 width = 14.7 length = 21.935 - fuel_max = 9400 + fuel_max = 9500 max_speed = 2499.984 chaff = 96 flare = 96 charge_total = 192 chaff_charge_size = 1 flare_charge_size = 1 + eplrs = True category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} - radio_frequency = 124 panel_radio = { 1: { @@ -2224,33 +2900,38 @@ class Su_30MKM(PlaneType): }, 2: { "channels": { - 1: 305, - 2: 264, - 4: 256, - 8: 257, - 16: 261, - 17: 267, - 9: 255, - 18: 251, - 5: 254, - 10: 262, - 20: 266, - 11: 259, - 3: 265, - 6: 250, - 12: 268, - 13: 269, - 7: 270, - 14: 260, - 19: 253, - 15: 263, + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, }, }, } property_defaults: Dict[str, Any] = { "SoloFlight": False, - "NetCrewControlPriority": 1, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, } class Properties: @@ -2262,10 +2943,101 @@ class Su_30MKM(PlaneType): class Values: Pilot = 0 - Co_Pilot = 1 + WSO = 1 Ask_Always = -1 Equally_Responsible = -2 + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + livery_name = "SU-30MKM" # from type class Pylon1: @@ -2320,6 +3092,8 @@ class Su_30MKM(PlaneType): Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + # ERRR + class Pylon3: R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -2358,10 +3132,10 @@ class Su_30MKM(PlaneType): 3, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (3, WeaponsSu30.Kh_31P_AA) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 3, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 3, @@ -2371,12 +3145,12 @@ class Su_30MKM(PlaneType): 3, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (3, WeaponsSu30.Kh_59M) - Kh_59MK = (3, WeaponsSu30.Kh_59MK) - Kh_31A = (3, WeaponsSu30.Kh_31A) - KH_35A = (3, WeaponsSu30.KH_35A) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (3, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 3, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -2444,6 +3218,8 @@ class Su_30MKM(PlaneType): ) GBU_12___500lb_Laser_Guided_Bomb = (3, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + # ERRR + class Pylon4: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 4, @@ -2461,10 +3237,10 @@ class Su_30MKM(PlaneType): 4, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (4, WeaponsSu30.Kh_31P_AA) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 4, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 4, @@ -2474,12 +3250,12 @@ class Su_30MKM(PlaneType): 4, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (4, WeaponsSu30.Kh_59M) - Kh_59MK = (4, WeaponsSu30.Kh_59MK) - Kh_31A = (4, WeaponsSu30.Kh_31A) - KH_35A = (4, WeaponsSu30.KH_35A) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (4, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -2529,6 +3305,7 @@ class Su_30MKM(PlaneType): 4, Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, ) + # ERRR Mk_82___500lb_GP_Bomb_LD = (4, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 4, @@ -2553,22 +3330,22 @@ class Su_30MKM(PlaneType): 5, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (5, WeaponsSu30.Kh_31P_AA) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 5, WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, ) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 5, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29TE__AS_14_Kedge___TV_Guided = ( 5, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (5, WeaponsSu30.Kh_31A) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (5, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 5, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -2601,7 +3378,7 @@ class Su_30MKM(PlaneType): Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, ) APK_9_POD = (5, WeaponsSu30.APK_9_POD) - + # ERRR Mk_82___500lb_GP_Bomb_LD = (5, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 5, @@ -2627,7 +3404,7 @@ class Su_30MKM(PlaneType): WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (6, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -2681,7 +3458,7 @@ class Su_30MKM(PlaneType): 6, Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) - + # ERRR Mk_82___500lb_GP_Bomb_LD = (6, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 6, @@ -2707,7 +3484,7 @@ class Su_30MKM(PlaneType): WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (7, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 7, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -2755,6 +3532,7 @@ class Su_30MKM(PlaneType): 7, Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR Smoke_Generator___red = (7, Weapons.Smoke_Generator___red) Smoke_Generator___green = (7, Weapons.Smoke_Generator___green) Smoke_Generator___blue = (7, Weapons.Smoke_Generator___blue) @@ -2785,10 +3563,10 @@ class Su_30MKM(PlaneType): 8, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (8, WeaponsSu30.Kh_31P_AA) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 8, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 8, @@ -2798,9 +3576,9 @@ class Su_30MKM(PlaneType): 8, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (8, WeaponsSu30.Kh_31A) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (8, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 8, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -2833,7 +3611,7 @@ class Su_30MKM(PlaneType): Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, ) # ERRR {DAMOCLES} - + # ERRR Mk_82___500lb_GP_Bomb_LD = (8, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 8, @@ -2858,10 +3636,10 @@ class Su_30MKM(PlaneType): 9, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (9, WeaponsSu30.Kh_31P_AA) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( 9, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 9, @@ -2871,12 +3649,12 @@ class Su_30MKM(PlaneType): 9, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (9, WeaponsSu30.Kh_59M) - Kh_59MK = (9, WeaponsSu30.Kh_59MK) - Kh_31A = (9, WeaponsSu30.Kh_31A) - KH_35A = (9, WeaponsSu30.KH_35A) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (9, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -2926,7 +3704,7 @@ class Su_30MKM(PlaneType): 9, Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, ) - + # ERRR Mk_82___500lb_GP_Bomb_LD = (9, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 9, @@ -2972,10 +3750,13 @@ class Su_30MKM(PlaneType): 10, WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, ) - Kh_31P_AA = (10, WeaponsSu30.Kh_31P_AA) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + Kh_31P__AS_17_Krypton____600kg = ( 10, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 10, @@ -2985,15 +3766,18 @@ class Su_30MKM(PlaneType): 10, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (10, WeaponsSu30.Kh_59M) - Kh_59MK = (10, WeaponsSu30.Kh_59MK) - Kh_31A = (10, WeaponsSu30.Kh_31A) - KH_35A = (10, WeaponsSu30.KH_35A) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) KAB_500Kr___500kg_TV_Guided_Bomb = ( 10, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, ) - KAB_500S___500kg = (10, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 10, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -3054,7 +3838,7 @@ class Su_30MKM(PlaneType): Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, ) _2_x_S_25 = (10, Weapons._2_x_S_25) - + # ERRR Mk_82___500lb_GP_Bomb_LD = (10, Weapons.Mk_82___500lb_GP_Bomb_LD) GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( 10, @@ -3094,6 +3878,8 @@ class Su_30MKM(PlaneType): Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + # ERRR + class Pylon12: R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -3136,8 +3922,8 @@ class Su_30MKM(PlaneType): @planemod -class Su_30SM(PlaneType): - id = "Su-30SM" +class Su_30MKM_AG(PlaneType): + id = "Su-30MKM-AG" flyable = True height = 5.932 width = 14.7 @@ -3151,7 +3937,6 @@ class Su_30SM(PlaneType): flare_charge_size = 1 eplrs = True category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} - radio_frequency = 124 panel_radio = { 1: { @@ -3180,34 +3965,38 @@ class Su_30SM(PlaneType): }, 2: { "channels": { - 1: 305, - 2: 264, - 4: 256, - 8: 257, - 16: 261, - 17: 267, - 9: 255, - 18: 251, - 5: 254, - 10: 262, - 20: 266, - 11: 259, - 3: 265, - 6: 250, - 12: 268, - 13: 269, - 7: 270, - 14: 260, - 19: 253, - 15: 263, + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, }, }, } property_defaults: Dict[str, Any] = { "SoloFlight": False, - "NetCrewControlPriority": 1, - "MOUNTSURA": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, } class Properties: @@ -3219,14 +4008,102 @@ class Su_30SM(PlaneType): class Values: Pilot = 0 - Flight_officer = 1 + WSO = 1 Ask_Always = -1 Equally_Responsible = -2 - class MOUNTSURA: - id = "MOUNTSURA" + class HumanOrchestra: + id = "HumanOrchestra" - livery_name = "SU-30SM" # from type + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30MKM-AG" # from type class Pylon1: R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -3251,6 +4128,3284 @@ class Su_30SM(PlaneType): Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + class Pylon2: + R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 2, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 2, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 2, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 2, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 2, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (2, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (2, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (2, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon3: + R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 3, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 3, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 3, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 3, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 3, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 3, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 3, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 3, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 3, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 3, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 3, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 3, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 3, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 3, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (3, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 3, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 3, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (3, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 3, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (3, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 3, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 3, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 3, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 3, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (3, Weapons._2_x_S_25) + Mk_82___500lb_GP_Bomb_LD = (3, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 3, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (3, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + # ERRR + + class Pylon4: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 4, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 4, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 4, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 4, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 4, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 4, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 4, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 4, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (4, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 4, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 4, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (4, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 4, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (4, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 4, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 4, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 4, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) + # ERRR + Mk_82___500lb_GP_Bomb_LD = (4, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 4, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (4, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon5: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 5, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 5, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 5, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 5, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 5, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 5, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 5, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (5, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 5, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 5, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (5, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 5, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (5, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 5, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 5, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + APK_9_POD = (5, WeaponsSu30.APK_9_POD) + # ERRR + Mk_82___500lb_GP_Bomb_LD = (5, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 5, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (5, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon6: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 6, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 6, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 6, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 6, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 6, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 6, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 6, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (6, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 6, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 6, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (6, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 6, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (6, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 6, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 6, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 6, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 6, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + # ERRR + Mk_82___500lb_GP_Bomb_LD = (6, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 6, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (6, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon7: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 7, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 7, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 7, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 7, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 7, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 7, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 7, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 7, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (7, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 7, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 7, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (7, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 7, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (7, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 7, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 7, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 7, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 7, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + # ERRR + Smoke_Generator___red = (7, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (7, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (7, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + Mk_82___500lb_GP_Bomb_LD = (7, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 7, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (7, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon8: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 8, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 8, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 8, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 8, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 8, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 8, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 8, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (8, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 8, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 8, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (8, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 8, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (8, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 8, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 8, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + # ERRR {DAMOCLES} + # ERRR + Mk_82___500lb_GP_Bomb_LD = (8, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 8, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (8, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon9: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 9, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 9, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 9, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 9, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 9, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 9, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 9, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 9, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (9, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 9, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 9, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (9, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 9, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (9, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 9, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 9, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 9, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) + # ERRR + Mk_82___500lb_GP_Bomb_LD = (9, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 9, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = (9, Weapons.GBU_12___500lb_Laser_Guided_Bomb) + + class Pylon10: + R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 10, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 10, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 10, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 10, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 10, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 10, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 10, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 10, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 10, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 10, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500Kr___500kg_TV_Guided_Bomb = ( + 10, + Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, + ) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 10, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 10, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 10, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 10, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (10, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 10, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 10, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + FAB_250___250kg_GP_Bomb_LD = (10, Weapons.FAB_250___250kg_GP_Bomb_LD) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 10, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + FAB_500_M_62___500kg_GP_Bomb_LD = (10, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 10, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = ( + 10, + Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = ( + 10, + Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 10, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (10, Weapons._2_x_S_25) + # ERRR + Mk_82___500lb_GP_Bomb_LD = (10, Weapons.Mk_82___500lb_GP_Bomb_LD) + GBU_38___JDAM__500lb_GPS_Guided_Bomb = ( + 10, + WeaponsSu30.GBU_38___JDAM__500lb_GPS_Guided_Bomb, + ) + GBU_12___500lb_Laser_Guided_Bomb = ( + 10, + Weapons.GBU_12___500lb_Laser_Guided_Bomb, + ) + + class Pylon11: + R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 11, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 11, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 11, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 11, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 11, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (11, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (11, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (11, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon12: + R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 12, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 12, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 12, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__right_ = (12, Weapons.L005_Sorbtsiya_ECM_pod__right_) + SAP_518_ECM_Pod__Right_ = (12, WeaponsSu30.SAP_518_ECM_Pod__Right_) + Smoke_Generator___red = (12, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (12, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (12, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (12, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (12, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (12, Weapons.Smoke_Generator___orange) + + pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} + + tasks = [ + task.CAP, + task.Escort, + task.FighterSweep, + task.Intercept, + task.AFAC, + task.SEAD, + task.AntishipStrike, + task.CAS, + task.PinpointStrike, + task.GroundAttack, + task.RunwayAttack, + ] + task_default = task.CAP + + +@planemod +class Su_30MKI(PlaneType): + id = "Su-30MKI" + flyable = True + height = 5.932 + width = 14.7 + length = 21.935 + fuel_max = 9500 + max_speed = 2499.984 + chaff = 96 + flare = 96 + charge_total = 192 + chaff_charge_size = 1 + flare_charge_size = 1 + eplrs = True + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + + panel_radio = { + 1: { + "channels": { + 1: 305, + 2: 264, + 4: 256, + 8: 257, + 16: 261, + 17: 267, + 9: 255, + 18: 251, + 5: 254, + 10: 262, + 20: 266, + 11: 259, + 3: 265, + 6: 250, + 12: 268, + 13: 269, + 7: 270, + 14: 260, + 19: 253, + 15: 263, + }, + }, + 2: { + "channels": { + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, + }, + }, + } + + property_defaults: Dict[str, Any] = { + "SoloFlight": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, + } + + class Properties: + class SoloFlight: + id = "SoloFlight" + + class NetCrewControlPriority: + id = "NetCrewControlPriority" + + class Values: + Pilot = 0 + WSO = 1 + Ask_Always = -1 + Equally_Responsible = -2 + + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30MKI" # from type + + class Pylon1: + R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 1, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 1, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 1, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__left_ = (1, Weapons.L005_Sorbtsiya_ECM_pod__left_) + SAP_518_ECM_Pod__Left_ = (1, WeaponsSu30.SAP_518_ECM_Pod__Left_) + Smoke_Generator___red = (1, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (1, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (1, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (1, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + + class Pylon2: + R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 2, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 2, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 2, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (2, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (2, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 2, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 2, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (2, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (2, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (2, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon3: + R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 3, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 3, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 3, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 3, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 3, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 3, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 3, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (3, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (3, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 3, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 3, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 3, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (3, WeaponsSu30.Rudra_M1) + SAAW_POD = (3, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 3, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 3, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 3, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 3, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (3, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 3, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 3, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 3, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 3, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 3, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (3, Weapons._2_x_S_25) + + # ERRR + + class Pylon4: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 4, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 4, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + I_Derby_ER___Active_Rdr_AAM = (4, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 4, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 4, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 4, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (4, WeaponsSu30.Rudra_M1) + SAAW_POD = (4, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 4, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 4, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 4, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (4, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 4, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 4, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 4, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 4, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon5: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 5, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 5, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + I_Derby_ER___Active_Rdr_AAM = (5, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 5, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 5, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 5, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Rudra_M1 = (5, WeaponsSu30.Rudra_M1) + KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 5, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 5, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (5, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 5, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 5, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 5, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 5, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR + + class Pylon6: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 6, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 6, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 6, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 6, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (6, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + # ERRR {BRAHMOS_AG} + BRAHMOS_A_Ship = (6, WeaponsSu30.BRAHMOS_A_Ship) + BRAHMOS_SEAD = (6, WeaponsSu30.BRAHMOS_SEAD) + KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 6, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 6, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 6, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (6, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 6, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 6, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 6, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 6, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 6, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 6, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + EL_M_2060 = (6, WeaponsSu30.EL_M_2060) + + # ERRR + + class Pylon7: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 7, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 7, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 7, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 7, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (7, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 7, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 7, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 7, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 7, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (7, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 7, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 7, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 7, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 7, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + Smoke_Generator___red = (7, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (7, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (7, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + # ERRR + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 7, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 7, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + + class Pylon8: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 8, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 8, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 8, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 8, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (8, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 8, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Rudra_M1 = (8, WeaponsSu30.Rudra_M1) + KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 8, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 8, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (8, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 8, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 8, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 8, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 8, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + LITENING___Targeting_Pod = (8, WeaponsSu30.LITENING___Targeting_Pod) + + # ERRR + + class Pylon9: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 9, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 9, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 9, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 9, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (9, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 9, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 9, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + Rudra_M1 = (9, WeaponsSu30.Rudra_M1) + SAAW_POD = (9, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 9, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 9, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (9, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 9, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 9, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 9, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 9, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon10: + R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 10, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 10, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 10, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 10, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 10, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 10, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 10, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (10, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (10, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 10, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 10, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 10, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (10, WeaponsSu30.Rudra_M1) + SAAW_POD = (10, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = ( + 10, + Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, + ) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 10, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 10, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 10, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 10, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (10, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 10, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 10, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 10, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 10, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 10, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (10, Weapons._2_x_S_25) + + # ERRR + + class Pylon11: + R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 11, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 11, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 11, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (11, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (11, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 11, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 11, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (11, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (11, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (11, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon12: + R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 12, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 12, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 12, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__right_ = (12, Weapons.L005_Sorbtsiya_ECM_pod__right_) + SAP_518_ECM_Pod__Right_ = (12, WeaponsSu30.SAP_518_ECM_Pod__Right_) + Smoke_Generator___red = (12, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (12, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (12, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (12, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (12, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (12, Weapons.Smoke_Generator___orange) + + pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} + + tasks = [ + task.CAP, + task.Escort, + task.FighterSweep, + task.Intercept, + task.AFAC, + task.SEAD, + task.AntishipStrike, + task.CAS, + task.PinpointStrike, + task.GroundAttack, + task.RunwayAttack, + ] + task_default = task.CAP + + +@planemod +class Su_30MKA_AG(PlaneType): + id = "Su-30MKA-AG" + flyable = True + height = 5.932 + width = 14.7 + length = 21.935 + fuel_max = 9500 + max_speed = 2499.984 + chaff = 96 + flare = 96 + charge_total = 192 + chaff_charge_size = 1 + flare_charge_size = 1 + eplrs = True + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + + panel_radio = { + 1: { + "channels": { + 1: 305, + 2: 264, + 4: 256, + 8: 257, + 16: 261, + 17: 267, + 9: 255, + 18: 251, + 5: 254, + 10: 262, + 20: 266, + 11: 259, + 3: 265, + 6: 250, + 12: 268, + 13: 269, + 7: 270, + 14: 260, + 19: 253, + 15: 263, + }, + }, + 2: { + "channels": { + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, + }, + }, + } + + property_defaults: Dict[str, Any] = { + "SoloFlight": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, + } + + class Properties: + class SoloFlight: + id = "SoloFlight" + + class NetCrewControlPriority: + id = "NetCrewControlPriority" + + class Values: + Pilot = 0 + WSO = 1 + Ask_Always = -1 + Equally_Responsible = -2 + + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30MKA-AG" # from type + + class Pylon1: + R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 1, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 1, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 1, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__left_ = (1, Weapons.L005_Sorbtsiya_ECM_pod__left_) + SAP_518_ECM_Pod__Left_ = (1, WeaponsSu30.SAP_518_ECM_Pod__Left_) + Smoke_Generator___red = (1, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (1, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (1, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (1, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + + class Pylon2: + R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 2, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 2, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 2, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 2, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 2, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (2, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (2, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (2, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon3: + R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 3, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 3, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 3, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 3, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 3, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 3, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 3, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 3, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 3, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (3, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (3, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (3, WeaponsSu30.Kh_38MAE__AS_23____500kg) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 3, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 3, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 3, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 3, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 3, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 3, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 3, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (3, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 3, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 3, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 3, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 3, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 3, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (3, Weapons._2_x_S_25) + + # ERRR + + class Pylon4: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 4, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 4, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 4, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 4, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (4, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (4, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (4, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 4, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 4, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 4, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 4, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 4, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 4, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (4, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 4, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 4, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 4, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 4, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon5: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 5, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 5, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 5, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 5, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (5, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (5, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (5, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 5, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 5, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 5, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 5, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 5, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (5, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 5, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 5, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 5, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 5, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR + + class Pylon6: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 6, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 6, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 6, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 6, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 6, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 6, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 6, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (6, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 6, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 6, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 6, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 6, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 6, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 6, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + + # ERRR + + class Pylon7: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 7, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 7, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 7, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 7, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 7, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 7, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 7, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 7, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (7, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 7, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 7, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 7, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 7, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + Smoke_Generator___red = (7, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (7, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (7, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 7, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 7, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + + # ERRR + + class Pylon8: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 8, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 8, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 8, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 8, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (8, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (8, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (8, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 8, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 8, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 8, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 8, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 8, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (8, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 8, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 8, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 8, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 8, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon9: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 9, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 9, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 9, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 9, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (9, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (9, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (9, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 9, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 9, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 9, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 9, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 9, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 9, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (9, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 9, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 9, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 9, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 9, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon10: + R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 10, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 10, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 10, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 10, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 10, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 10, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 10, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 10, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 10, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_36__AS_23____600kg_Grom_E1 = (10, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (10, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (10, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 10, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + KAB_500Kr___500kg_TV_Guided_Bomb = ( + 10, + Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, + ) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 10, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 10, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 10, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 10, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (10, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 10, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 10, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 10, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 10, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 10, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (10, Weapons._2_x_S_25) + + # ERRR + + class Pylon11: + R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 11, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 11, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 11, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 11, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 11, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (11, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (11, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (11, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon12: + R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 12, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 12, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 12, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__right_ = (12, Weapons.L005_Sorbtsiya_ECM_pod__right_) + SAP_518_ECM_Pod__Right_ = (12, WeaponsSu30.SAP_518_ECM_Pod__Right_) + Smoke_Generator___red = (12, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (12, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (12, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (12, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (12, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (12, Weapons.Smoke_Generator___orange) + + pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} + + tasks = [ + task.CAP, + task.Escort, + task.FighterSweep, + task.Intercept, + task.AFAC, + task.SEAD, + task.AntishipStrike, + task.CAS, + task.PinpointStrike, + task.GroundAttack, + task.RunwayAttack, + ] + task_default = task.CAP + + +@planemod +class Su_30SM_AG(PlaneType): + id = "Su-30SM-AG" + flyable = True + height = 5.932 + width = 14.7 + length = 21.935 + fuel_max = 9500 + max_speed = 2499.984 + chaff = 96 + flare = 96 + charge_total = 192 + chaff_charge_size = 1 + flare_charge_size = 1 + eplrs = True + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + + panel_radio = { + 1: { + "channels": { + 1: 305, + 2: 264, + 4: 256, + 8: 257, + 16: 261, + 17: 267, + 9: 255, + 18: 251, + 5: 254, + 10: 262, + 20: 266, + 11: 259, + 3: 265, + 6: 250, + 12: 268, + 13: 269, + 7: 270, + 14: 260, + 19: 253, + 15: 263, + }, + }, + 2: { + "channels": { + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, + }, + }, + } + + property_defaults: Dict[str, Any] = { + "SoloFlight": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, + } + + class Properties: + class SoloFlight: + id = "SoloFlight" + + class NetCrewControlPriority: + id = "NetCrewControlPriority" + + class Values: + Pilot = 0 + WSO = 1 + Ask_Always = -1 + Equally_Responsible = -2 + + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30SM-AG" # from type + + class Pylon1: + R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 1, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 1, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 1, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__left_ = (1, Weapons.L005_Sorbtsiya_ECM_pod__left_) + SAP_518_ECM_Pod__Left_ = (1, WeaponsSu30.SAP_518_ECM_Pod__Left_) + Smoke_Generator___red = (1, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (1, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (1, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (1, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (1, WeaponsSu30.Smoke_Generator___Black) + class Pylon2: R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -3283,6 +7438,9 @@ class Su_30SM(PlaneType): Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (2, WeaponsSu30.Smoke_Generator___Black) + + # ERRR class Pylon3: R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) @@ -3338,13 +7496,25 @@ class Su_30SM(PlaneType): 3, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (3, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (3, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (3, WeaponsSu30.KH_38MTE) - KH_38MLE = (3, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 3, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 3, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (3, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (3, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (3, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 3, @@ -3354,16 +7524,23 @@ class Su_30SM(PlaneType): 3, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (3, WeaponsSu30.Kh_59M) - Kh_59MK = (3, WeaponsSu30.Kh_59MK) - Kh_31A = (3, WeaponsSu30.Kh_31A) - KH_35A = (3, WeaponsSu30.KH_35A) - KH_35UE = (3, WeaponsSu30.KH_35UE) - KH_31AD = (3, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (3, WeaponsSu30.KH_31PD__AA_) - Kh_59MK2_ = (3, WeaponsSu30.Kh_59MK2_) + # ERRR {JAS39_AGM_65K} + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 3, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 3, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (3, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (3, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 3, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -3393,11 +7570,14 @@ class Su_30SM(PlaneType): 3, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (3, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (3, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (3, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (3, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (3, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 3, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (3, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) MBD3_U6_68_with_6_x_FAB_250___250kg = ( 3, WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, @@ -3428,6 +7608,8 @@ class Su_30SM(PlaneType): ) _2_x_S_25 = (3, Weapons._2_x_S_25) + # ERRR + class Pylon4: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 4, @@ -3441,14 +7623,6 @@ class Su_30SM(PlaneType): 4, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 4, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 4, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 4, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3461,13 +7635,25 @@ class Su_30SM(PlaneType): 4, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (4, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (4, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (4, WeaponsSu30.KH_38MTE) - KH_38MLE = (4, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 4, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 4, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (4, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (4, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (4, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 4, @@ -3477,16 +7663,22 @@ class Su_30SM(PlaneType): 4, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (4, WeaponsSu30.Kh_59M) - Kh_59MK = (4, WeaponsSu30.Kh_59MK) - Kh_31A = (4, WeaponsSu30.Kh_31A) - KH_35A = (4, WeaponsSu30.KH_35A) - KH_35UE = (4, WeaponsSu30.KH_35UE) - KH_31AD = (4, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (4, WeaponsSu30.KH_31PD__AA_) - Kh_59MK2_ = (4, WeaponsSu30.Kh_59MK2_) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 4, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 4, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (4, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (4, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -3522,11 +7714,14 @@ class Su_30SM(PlaneType): 4, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (4, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (4, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (4, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (4, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (4, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 4, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (4, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 4, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -3548,6 +7743,8 @@ class Su_30SM(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon5: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 5, @@ -3561,14 +7758,6 @@ class Su_30SM(PlaneType): 5, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 5, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 5, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 5, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3581,13 +7770,25 @@ class Su_30SM(PlaneType): 5, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (5, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (5, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (5, WeaponsSu30.KH_38MTE) - KH_38MLE = (5, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 5, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 5, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (5, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (5, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (5, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 5, @@ -3597,11 +7798,17 @@ class Su_30SM(PlaneType): 5, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (5, WeaponsSu30.Kh_31A) - KH_31AD = (5, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (5, WeaponsSu30.KH_31PD__AA_) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 5, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 5, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (5, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 5, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -3623,11 +7830,14 @@ class Su_30SM(PlaneType): 5, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (5, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (5, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (5, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (5, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (5, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 5, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (5, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 5, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -3645,6 +7855,9 @@ class Su_30SM(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR class Pylon6: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( @@ -3659,14 +7872,6 @@ class Su_30SM(PlaneType): 6, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 6, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 6, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 6, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3679,8 +7884,16 @@ class Su_30SM(PlaneType): 6, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 6, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 6, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (6, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -3716,12 +7929,18 @@ class Su_30SM(PlaneType): 6, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (6, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (6, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (6, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (6, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (6, WeaponsSu30.FAB_500_M62_NV___500kg) - RN_244___260kg__nuclear_bomb = (6, WeaponsSu30.RN_244___260kg__nuclear_bomb) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 6, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (6, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) + RN_244___260kg__Tactic_Nuclear_bomb = ( + 6, + WeaponsSu30.RN_244___260kg__Tactic_Nuclear_bomb, + ) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 6, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -3747,6 +7966,8 @@ class Su_30SM(PlaneType): Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR + class Pylon7: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 7, @@ -3760,14 +7981,6 @@ class Su_30SM(PlaneType): 7, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 7, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 7, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 7, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3780,8 +7993,16 @@ class Su_30SM(PlaneType): 7, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( + 7, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 7, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (7, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( 7, Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, @@ -3803,11 +8024,14 @@ class Su_30SM(PlaneType): 7, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (7, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (7, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (7, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (7, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (7, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 7, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (7, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 7, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -3838,6 +8062,7 @@ class Su_30SM(PlaneType): Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (7, WeaponsSu30.Smoke_Generator___Black) RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( 7, Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, @@ -3847,6 +8072,8 @@ class Su_30SM(PlaneType): Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, ) + # ERRR + class Pylon8: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 8, @@ -3860,14 +8087,6 @@ class Su_30SM(PlaneType): 8, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 8, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 8, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 8, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3880,13 +8099,25 @@ class Su_30SM(PlaneType): 8, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (8, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (8, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (8, WeaponsSu30.KH_38MTE) - KH_38MLE = (8, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 8, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 8, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (8, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (8, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (8, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 8, @@ -3896,11 +8127,17 @@ class Su_30SM(PlaneType): 8, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_31A = (8, WeaponsSu30.Kh_31A) - KH_31AD = (8, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (8, WeaponsSu30.KH_31PD__AA_) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 8, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 8, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (8, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 8, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -3922,11 +8159,14 @@ class Su_30SM(PlaneType): 8, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (8, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (8, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (8, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (8, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (8, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 8, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (8, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 8, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -3944,6 +8184,8 @@ class Su_30SM(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon9: R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( 9, @@ -3957,14 +8199,6 @@ class Su_30SM(PlaneType): 9, WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, ) - R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range = ( - 9, - WeaponsSu30.R_27EP1__AA_10_Alamo_F____Passive_Rdr_Extended_Range, - ) - R_27P1__AA_10_Alamo_E____Passive_Rdr = ( - 9, - WeaponsSu30.R_27P1__AA_10_Alamo_E____Passive_Rdr, - ) R_77__AA_12_Adder_Early____Active_Rdr = ( 9, WeaponsSu30.R_77__AA_12_Adder_Early____Active_Rdr, @@ -3977,13 +8211,25 @@ class Su_30SM(PlaneType): 9, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (9, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (9, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (9, WeaponsSu30.KH_38MTE) - KH_38MLE = (9, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 9, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 9, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_36__AS_23____600kg_Grom_E1 = (9, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (9, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (9, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 9, @@ -3993,16 +8239,22 @@ class Su_30SM(PlaneType): 9, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (9, WeaponsSu30.Kh_59M) - Kh_59MK = (9, WeaponsSu30.Kh_59MK) - Kh_31A = (9, WeaponsSu30.Kh_31A) - KH_35A = (9, WeaponsSu30.KH_35A) - KH_35UE = (9, WeaponsSu30.KH_35UE) - KH_31AD = (9, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (9, WeaponsSu30.KH_31PD__AA_) - Kh_59MK2_ = (9, WeaponsSu30.Kh_59MK2_) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 9, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 9, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = (9, WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg) KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) - KAB_500S___500kg = (9, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) KAB_1500L___1500kg_Laser_Guided_Bomb = ( @@ -4038,12 +8290,15 @@ class Su_30SM(PlaneType): 9, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (9, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (9, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (9, WeaponsSu30.FAB_500_M62_UMPK) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 9, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) # ERRR {DIS_UMPK_FAB_5002} - FAB_250_M62___227kg = (9, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (9, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = (9, WeaponsSu30.FAB_500M62_NV__500kg_Parachute) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 9, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -4065,6 +8320,8 @@ class Su_30SM(PlaneType): WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, ) + # ERRR + class Pylon10: R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -4119,13 +8376,28 @@ class Su_30SM(PlaneType): 10, WeaponsSu30.R_77M__AA_12_Adder_C____Active_Rdr, ) - Kh_31P_AA = (10, WeaponsSu30.Kh_31P_AA) - Kh_36_Grom_1 = (10, WeaponsSu30.Kh_36_Grom_1) - KH_38MTE = (10, WeaponsSu30.KH_38MTE) - KH_38MLE = (10, WeaponsSu30.KH_38MLE) - Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_ = ( + R_77PD__AA_12_Adder____Active_Rdr_Ramjet = ( 10, - Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided_, + WeaponsSu30.R_77PD__AA_12_Adder____Active_Rdr_Ramjet, + ) + R_37M__AA_13_Axehead____Active_Rdr = ( + 10, + WeaponsSu30.R_37M__AA_13_Axehead____Active_Rdr, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_36__AS_23____600kg_Grom_E1 = (10, WeaponsSu30.Kh_36__AS_23____600kg_Grom_E1) + KH_38MTE__AS_23__IR_Guided = (10, WeaponsSu30.KH_38MTE__AS_23__IR_Guided) + KH_38MLE__AS_23___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_38MLE__AS_23___Semi_Act_Laser, + ) + Kh_38MAE__AS_23____500kg = (10, WeaponsSu30.Kh_38MAE__AS_23____500kg) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, ) KH_29L__AS_14_Kedge___Semi_Act_Laser = ( 10, @@ -4135,19 +8407,32 @@ class Su_30SM(PlaneType): 10, WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, ) - Kh_59M = (10, WeaponsSu30.Kh_59M) - Kh_59MK = (10, WeaponsSu30.Kh_59MK) - Kh_31A = (10, WeaponsSu30.Kh_31A) - KH_35A = (10, WeaponsSu30.KH_35A) - KH_35UE = (10, WeaponsSu30.KH_35UE) - KH_31AD = (10, WeaponsSu30.KH_31AD) - KH_31PD__AA_ = (10, WeaponsSu30.KH_31PD__AA_) - Kh_59MK2_ = (10, WeaponsSu30.Kh_59MK2_) + # ERRR {JAS39_AGM_65H} + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Kh_35UE__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35UE__AS_20_Kayak____520kg) + Kh_31AD__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31AD__AS_17_Krypton____610kg, + ) + Kh_31PD__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31PD__AS_17_Krypton____600kg, + ) + Kh_59MK2__AS_22_Kazoo____700kg = ( + 10, + WeaponsSu30.Kh_59MK2__AS_22_Kazoo____700kg, + ) KAB_500Kr___500kg_TV_Guided_Bomb = ( 10, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, ) - KAB_500S___500kg = (10, WeaponsSu30.KAB_500S___500kg) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) KAB_500LG___500kg_Laser_Guided_Bomb = ( 10, Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, @@ -4177,11 +8462,17 @@ class Su_30SM(PlaneType): 10, Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, ) - FAB_500_M54___474kg = (10, WeaponsSu30.FAB_500_M54___474kg) - FAB_500_M62___474kg = (10, WeaponsSu30.FAB_500_M62___474kg) - FAB_500_M62_UMPK = (10, WeaponsSu30.FAB_500_M62_UMPK) - FAB_250_M62___227kg = (10, WeaponsSu30.FAB_250_M62___227kg) - FAB_500_M62_NV___500kg = (10, WeaponsSu30.FAB_500_M62_NV___500kg) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_500M62_UMPK__500kg_Glide_Bomb = ( + 10, + WeaponsSu30.FAB_500M62_UMPK__500kg_Glide_Bomb, + ) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) + FAB_500M62_NV__500kg_Parachute = ( + 10, + WeaponsSu30.FAB_500M62_NV__500kg_Parachute, + ) RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( 10, Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, @@ -4220,6 +8511,8 @@ class Su_30SM(PlaneType): ) _2_x_S_25 = (10, Weapons._2_x_S_25) + # ERRR + class Pylon11: R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) R_73L__AA_11_Archer_L____Infra_Red = ( @@ -4252,6 +8545,1083 @@ class Su_30SM(PlaneType): Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (11, WeaponsSu30.Smoke_Generator___Black) + + # ERRR + + class Pylon12: + R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 12, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 12, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 12, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__right_ = (12, Weapons.L005_Sorbtsiya_ECM_pod__right_) + SAP_518_ECM_Pod__Right_ = (12, WeaponsSu30.SAP_518_ECM_Pod__Right_) + Smoke_Generator___red = (12, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (12, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (12, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (12, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (12, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (12, Weapons.Smoke_Generator___orange) + Smoke_Generator___Black = (12, WeaponsSu30.Smoke_Generator___Black) + + pylons: Set[int] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} + + tasks = [ + task.CAP, + task.Escort, + task.FighterSweep, + task.Intercept, + task.AFAC, + task.SEAD, + task.AntishipStrike, + task.CAS, + task.PinpointStrike, + task.GroundAttack, + task.RunwayAttack, + ] + task_default = task.CAP + + +@planemod +class Su_30MKI_AG(PlaneType): + id = "Su-30MKI-AG" + flyable = True + height = 5.932 + width = 14.7 + length = 21.935 + fuel_max = 9500 + max_speed = 2499.984 + chaff = 96 + flare = 96 + charge_total = 192 + chaff_charge_size = 1 + flare_charge_size = 1 + eplrs = True + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + + panel_radio = { + 1: { + "channels": { + 1: 305, + 2: 264, + 4: 256, + 8: 257, + 16: 261, + 17: 267, + 9: 255, + 18: 251, + 5: 254, + 10: 262, + 20: 266, + 11: 259, + 3: 265, + 6: 250, + 12: 268, + 13: 269, + 7: 270, + 14: 260, + 19: 253, + 15: 263, + }, + }, + 2: { + "channels": { + 1: 117, + 2: 135, + 4: 127, + 8: 128, + 16: 132, + 17: 138, + 9: 126, + 18: 122, + 5: 125, + 10: 133, + 20: 137, + 11: 130, + 3: 136, + 6: 121, + 12: 139, + 13: 140, + 7: 141, + 14: 131, + 19: 124, + 15: 134, + }, + }, + } + + property_defaults: Dict[str, Any] = { + "SoloFlight": False, + "NetCrewControlPriority": 0, + "HumanOrchestra": False, + "HelmetMountedDevice": 1, + "ShowLadders": True, + "su30Chaff": 96, + "su30Flare": 96, + } + + class Properties: + class SoloFlight: + id = "SoloFlight" + + class NetCrewControlPriority: + id = "NetCrewControlPriority" + + class Values: + Pilot = 0 + WSO = 1 + Ask_Always = -1 + Equally_Responsible = -2 + + class HumanOrchestra: + id = "HumanOrchestra" + + class HelmetMountedDevice: + id = "HelmetMountedDevice" + + class Values: + Not_installed = 0 + SURA_Visor = 1 + NVG = 2 + + class ShowLadders: + id = "ShowLadders" + + class su30Chaff: + id = "su30Chaff" + + class su30Flare: + id = "su30Flare" + + properties = { + "SoloFlight": UnitPropertyDescription( + identifier="SoloFlight", + control="checkbox", + label="Solo Flight", + player_only=True, + default=False, + weight_when_on=-80, + ), + "NetCrewControlPriority": UnitPropertyDescription( + identifier="NetCrewControlPriority", + control="comboList", + label="Aircraft Control Priority", + player_only=True, + default=0, + w_ctrl=150, + values={ + 0: "Pilot", + 1: "WSO", + -1: "Ask Always", + -2: "Equally Responsible", + }, + ), + "HumanOrchestra": UnitPropertyDescription( + identifier="HumanOrchestra", + control="checkbox", + label="Disable Multicrew", + player_only=True, + default=False, + ), + "HelmetMountedDevice": UnitPropertyDescription( + identifier="HelmetMountedDevice", + control="comboList", + label="Helmet Mounted Device", + player_only=True, + default=1, + w_ctrl=150, + values={ + 0: "Not installed", + 1: "SURA Visor", + 2: "NVG", + }, + ), + "ShowLadders": UnitPropertyDescription( + identifier="ShowLadders", + control="checkbox", + label="Show Ladders", + default=True, + ), + "su30Chaff": UnitPropertyDescription( + identifier="su30Chaff", + control="spinbox", + label="Chaff", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + "su30Flare": UnitPropertyDescription( + identifier="su30Flare", + control="spinbox", + label="Flare", + player_only=True, + minimum=0, + maximum=192, + default=96, + dimension=" ", + ), + } + + livery_name = "SU-30MKI-AG" # from type + + class Pylon1: + R_73__AA_11_Archer____Infra_Red = (1, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 1, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 1, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 1, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + L005_Sorbtsiya_ECM_pod__left_ = (1, Weapons.L005_Sorbtsiya_ECM_pod__left_) + SAP_518_ECM_Pod__Left_ = (1, WeaponsSu30.SAP_518_ECM_Pod__Left_) + Smoke_Generator___red = (1, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (1, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (1, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (1, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (1, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (1, Weapons.Smoke_Generator___orange) + + class Pylon2: + R_73__AA_11_Archer____Infra_Red = (2, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 2, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 2, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 2, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (2, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (2, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 2, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 2, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (2, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (2, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (2, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (2, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (2, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (2, Weapons.Smoke_Generator___orange) + + # ERRR + + class Pylon3: + R_73__AA_11_Archer____Infra_Red = (3, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 3, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 3, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 3, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 3, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 3, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 3, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 3, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (3, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (3, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 3, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 3, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 3, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 3, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 3, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (3, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (3, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (3, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (3, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (3, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (3, WeaponsSu30.Rudra_M1) + SAAW_POD = (3, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (3, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (3, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 3, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 3, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 3, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 3, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (3, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 3, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 3, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 3, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 3, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (3, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (3, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (3, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 3, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 3, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 3, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (3, Weapons._2_x_S_25) + + # ERRR + + class Pylon4: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 4, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 4, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + I_Derby_ER___Active_Rdr_AAM = (4, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 4, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 4, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 4, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 4, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 4, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (4, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (4, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (4, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (4, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (4, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (4, WeaponsSu30.Rudra_M1) + SAAW_POD = (4, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (4, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (4, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (4, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (4, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 4, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 4, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 4, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 4, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (4, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 4, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 4, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 4, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 4, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (4, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (4, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (4, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 4, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon5: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 5, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 5, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + I_Derby_ER___Active_Rdr_AAM = (5, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 5, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 5, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 5, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 5, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 5, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_31A__AS_17_Krypton____610kg = (5, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (5, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Rudra_M1 = (5, WeaponsSu30.Rudra_M1) + KAB_500Kr___500kg_TV_Guided_Bomb = (5, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (5, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 5, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 5, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (5, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 5, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 5, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 5, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 5, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (5, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (5, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (5, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 5, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + APK_9_POD = (5, WeaponsSu30.APK_9_POD) + L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod) + + # ERRR + + class Pylon6: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 6, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 6, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 6, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 6, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (6, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + # ERRR {BRAHMOS_AG} + BRAHMOS_A_Ship = (6, WeaponsSu30.BRAHMOS_A_Ship) + BRAHMOS_SEAD = (6, WeaponsSu30.BRAHMOS_SEAD) + KAB_500Kr___500kg_TV_Guided_Bomb = (6, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (6, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (6, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (6, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 6, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 6, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 6, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 6, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (6, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 6, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 6, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 6, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 6, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (6, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (6, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (6, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 6, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 6, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 6, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + EL_M_2060 = (6, WeaponsSu30.EL_M_2060) + + # ERRR + + class Pylon7: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 7, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 7, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 7, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 7, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (7, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KAB_500Kr___500kg_TV_Guided_Bomb = (7, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (7, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 7, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 7, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 7, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 7, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (7, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 7, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 7, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 7, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 7, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (7, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (7, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (7, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 7, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + Smoke_Generator___red = (7, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (7, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (7, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (7, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (7, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (7, Weapons.Smoke_Generator___orange) + # ERRR + RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag = ( + 7, + Weapons.RBK_500U___126_x_OAB_2_5RT__500kg_CBU_HE_Frag, + ) + RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP = ( + 7, + Weapons.RBK_500___268_x_PTAB_1M__500kg_CBU_Light_HEAT_AP, + ) + + class Pylon8: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 8, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 8, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 8, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 8, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (8, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 8, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 8, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 8, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_31A__AS_17_Krypton____610kg = (8, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (8, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Rudra_M1 = (8, WeaponsSu30.Rudra_M1) + KAB_500Kr___500kg_TV_Guided_Bomb = (8, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (8, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 8, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 8, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + P_50T___50kg_Practice_Bomb_LD = (8, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 8, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 8, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 8, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 8, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (8, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (8, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (8, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 8, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + LITENING___Targeting_Pod = (8, WeaponsSu30.LITENING___Targeting_Pod) + + # ERRR + + class Pylon9: + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 9, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 9, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 9, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 9, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + I_Derby_ER___Active_Rdr_AAM = (9, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 9, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 9, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 9, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (9, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (9, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = (9, WeaponsSu30.Kh_31A__AS_17_Krypton____610kg) + Kh_31P__AS_17_Krypton____600kg = (9, WeaponsSu30.Kh_31P__AS_17_Krypton____600kg) + Kh_35__AS_20_Kayak____520kg = (9, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 9, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + Rudra_M1 = (9, WeaponsSu30.Rudra_M1) + SAAW_POD = (9, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = (9, Weapons.KAB_500Kr___500kg_TV_Guided_Bomb) + KAB_500S___500kg__GPS_Guided = (9, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_1500Kr___1500kg = (9, WeaponsSu30.KAB_1500Kr___1500kg) + KAB_1500LG_PR___1500kg = (9, WeaponsSu30.KAB_1500LG_PR___1500kg) + KAB_1500L___1500kg_Laser_Guided_Bomb = ( + 9, + Weapons.KAB_1500L___1500kg_Laser_Guided_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 9, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 9, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (9, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 9, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 9, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 9, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 9, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (9, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (9, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (9, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 9, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + + # ERRR + + class Pylon10: + R_73__AA_11_Archer____Infra_Red = (10, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 10, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 10, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 10, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + R_27R1__AA_10_Alamo_A____Semi_Act_Rdr = ( + 10, + WeaponsSu30.R_27R1__AA_10_Alamo_A____Semi_Act_Rdr, + ) + R_27T1__AA_10_Alamo_B____Infra_Red = ( + 10, + WeaponsSu30.R_27T1__AA_10_Alamo_B____Infra_Red, + ) + R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range = ( + 10, + WeaponsSu30.R_27ER1__AA_10_Alamo_C____Semi_Act_Extended_Range, + ) + R_27ET1__AA_10_Alamo_D____IR_Extended_Range = ( + 10, + WeaponsSu30.R_27ET1__AA_10_Alamo_D____IR_Extended_Range, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (10, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (10, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 10, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 10, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + KH_29L__AS_14_Kedge___Semi_Act_Laser = ( + 10, + WeaponsSu30.KH_29L__AS_14_Kedge___Semi_Act_Laser, + ) + Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__ = ( + 10, + Weapons.Kh_29T__AS_14_Kedge____670kg__ASM__TV_Guided__, + ) + KH_29TE__AS_14_Kedge___TV_Guided = ( + 10, + WeaponsSu30.KH_29TE__AS_14_Kedge___TV_Guided, + ) + Kh_59M__AS_18_Kazoo___930kg = (10, WeaponsSu30.Kh_59M__AS_18_Kazoo___930kg) + Kh_59MK__AS_18_Kazoo____930kg = (10, WeaponsSu30.Kh_59MK__AS_18_Kazoo____930kg) + Kh_31A__AS_17_Krypton____610kg = ( + 10, + WeaponsSu30.Kh_31A__AS_17_Krypton____610kg, + ) + Kh_31P__AS_17_Krypton____600kg = ( + 10, + WeaponsSu30.Kh_31P__AS_17_Krypton____600kg, + ) + Kh_35__AS_20_Kayak____520kg = (10, WeaponsSu30.Kh_35__AS_20_Kayak____520kg) + Rudra_M1 = (10, WeaponsSu30.Rudra_M1) + SAAW_POD = (10, WeaponsSu30.SAAW_POD) + KAB_500Kr___500kg_TV_Guided_Bomb = ( + 10, + Weapons.KAB_500Kr___500kg_TV_Guided_Bomb, + ) + KAB_500S___500kg__GPS_Guided = (10, WeaponsSu30.KAB_500S___500kg__GPS_Guided) + KAB_500LG___500kg_Laser_Guided_Bomb = ( + 10, + Weapons.KAB_500LG___500kg_Laser_Guided_Bomb, + ) + SAB_100MN___100_kg_Illumination_Bomb = ( + 10, + Weapons.SAB_100MN___100_kg_Illumination_Bomb, + ) + KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP = ( + 10, + Weapons.KMGU_2___96_x_PTAB_2_5KO_Dispenser__CBU__HEAT_AP, + ) + KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag = ( + 10, + Weapons.KMGU_2___96_x_AO_2_5RT_Dispenser__CBU__HE_Frag, + ) + P_50T___50kg_Practice_Bomb_LD = (10, Weapons.P_50T___50kg_Practice_Bomb_LD) + BetAB_500___500kg_Concrete_Piercing_Bomb_LD = ( + 10, + Weapons.BetAB_500___500kg_Concrete_Piercing_Bomb_LD, + ) + BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb = ( + 10, + Weapons.BetAB_500ShP___500kg_Concrete_Piercing_HD_w_booster_Bomb, + ) + RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP = ( + 10, + Weapons.RBK_250___42_x_PTAB_2_5M__250kg_CBU_Medium_HEAT_AP, + ) + RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP = ( + 10, + Weapons.RBK_500_255___30_x_PTAB_10_5__500kg_CBU_Heavy_HEAT_AP, + ) + FAB_500_M54___474kg__freefall = (10, WeaponsSu30.FAB_500_M54___474kg__freefall) + FAB_500_M62___474kg__freefall = (10, WeaponsSu30.FAB_500_M62___474kg__freefall) + FAB_250_M62___227kg__freefall = (10, WeaponsSu30.FAB_250_M62___227kg__freefall) + MBD3_U6_68_with_6_x_FAB_250___250kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_250___250kg, + ) + MBD3_U6_68_with_6_x_FAB_100___100kg = ( + 10, + WeaponsSu30.MBD3_U6_68_with_6_x_FAB_100___100kg, + ) + _2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag = ( + 10, + Weapons._2_x_B_13L_pods___10_x_S_13_OF__122mm_UnGd_Rkts__Blast_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8KOM_HEAT_Frag, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8TsM_SM_Orange, + ) + _2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP = ( + 10, + Weapons._2_x_B_8M1___40_x_UnGd_Rkts__80_mm_S_8OFP2_MPP, + ) + _2_x_S_25 = (10, Weapons._2_x_S_25) + + # ERRR + + class Pylon11: + R_73__AA_11_Archer____Infra_Red = (11, Weapons.R_73__AA_11_Archer____Infra_Red) + R_73L__AA_11_Archer_L____Infra_Red = ( + 11, + WeaponsSu30.R_73L__AA_11_Archer_L____Infra_Red, + ) + R_73M__AA_11_Archer_M____Infra_Red = ( + 11, + WeaponsSu30.R_73M__AA_11_Archer_M____Infra_Red, + ) + RVV_MD2__AA_11_Archer_M2____Infra_Red = ( + 11, + WeaponsSu30.RVV_MD2__AA_11_Archer_M2____Infra_Red, + ) + ASTRA_Mk_1___Active_Rdr_AAM = (11, WeaponsSu30.ASTRA_Mk_1___Active_Rdr_AAM) + I_Derby_ER___Active_Rdr_AAM = (11, WeaponsSu30.I_Derby_ER___Active_Rdr_AAM) + RVV_AE__AA_12_Adder____Active_Rdr = ( + 11, + WeaponsSu30.RVV_AE__AA_12_Adder____Active_Rdr, + ) + RVV_SD__AA_12_Adder_B____Active_Rdr = ( + 11, + WeaponsSu30.RVV_SD__AA_12_Adder_B____Active_Rdr, + ) + Smoke_Generator___red = (11, Weapons.Smoke_Generator___red) + Smoke_Generator___green = (11, Weapons.Smoke_Generator___green) + Smoke_Generator___blue = (11, Weapons.Smoke_Generator___blue) + Smoke_Generator___white = (11, Weapons.Smoke_Generator___white) + Smoke_Generator___yellow = (11, Weapons.Smoke_Generator___yellow) + Smoke_Generator___orange = (11, Weapons.Smoke_Generator___orange) + + # ERRR class Pylon12: R_73__AA_11_Archer____Infra_Red = (12, Weapons.R_73__AA_11_Archer____Infra_Red) diff --git a/qt_ui/main.py b/qt_ui/main.py index d7063af6..bcf99a15 100644 --- a/qt_ui/main.py +++ b/qt_ui/main.py @@ -336,6 +336,7 @@ def create_game( f105_thunderchief=False, hercules=False, jas39_gripen=False, + sk60_saab105=False, su15_flagon=False, su30_flanker_h=False, su57_felon=False, diff --git a/qt_ui/uiconstants.py b/qt_ui/uiconstants.py index 99d84386..bcf48851 100644 --- a/qt_ui/uiconstants.py +++ b/qt_ui/uiconstants.py @@ -215,6 +215,10 @@ def load_aircraft_icons(): AIRCRAFT_ICONS[f1] = AIRCRAFT_ICONS["Mirage-F1C-200"] AIRCRAFT_ICONS["Mirage-F1M-CE"] = AIRCRAFT_ICONS["Mirage-F1CE"] AIRCRAFT_ICONS["F-15ESE"] = AIRCRAFT_ICONS["F-15E"] + AIRCRAFT_ICONS["Su-30MKA-AG"] = AIRCRAFT_ICONS["Su-30MKA"] + AIRCRAFT_ICONS["Su-30MKI-AG"] = AIRCRAFT_ICONS["Su-30MKI"] + AIRCRAFT_ICONS["Su-30MKM-AG"] = AIRCRAFT_ICONS["Su-30MKM"] + AIRCRAFT_ICONS["Su-30SM-AG"] = AIRCRAFT_ICONS["Su-30SM"] def load_vehicle_icons(): diff --git a/qt_ui/windows/QDebriefingWindow.py b/qt_ui/windows/QDebriefingWindow.py index 8d153eb6..779eb1bd 100644 --- a/qt_ui/windows/QDebriefingWindow.py +++ b/qt_ui/windows/QDebriefingWindow.py @@ -87,7 +87,6 @@ class QDebriefingWindow(QDialog): pixmap = QPixmap("./resources/ui/debriefing.png") header.setPixmap(pixmap) layout.addWidget(header) - layout.addStretch() title = QLabel("Casualty report") layout.addWidget(title) @@ -96,7 +95,7 @@ class QDebriefingWindow(QDialog): layout.addWidget(player_lost_units) enemy_lost_units = ScrollingCasualtyReportContainer(debriefing, player=False) - layout.addWidget(enemy_lost_units) + layout.addWidget(enemy_lost_units, 1) okay = QPushButton("Okay") okay.clicked.connect(self.close) diff --git a/qt_ui/windows/QUnitInfoWindow.py b/qt_ui/windows/QUnitInfoWindow.py index df25417f..1e617150 100644 --- a/qt_ui/windows/QUnitInfoWindow.py +++ b/qt_ui/windows/QUnitInfoWindow.py @@ -32,7 +32,15 @@ def aircraft_banner_for(unit_type: AircraftType) -> Path: name = "Mirage-F1C-200" elif unit_type.dcs_id in {"Mirage-F1CE", "Mirage-F1M-CE"}: name = "Mirage-F1C" - elif unit_type.dcs_id in {"Su-30MKA", "Su-30MKI", "Su-30MKM"}: + elif unit_type.dcs_id in { + "Su-30MKA", + "Su-30MKI", + "Su-30MKM", + "Su-30MKA-AG", + "Su-30MKI-AG", + "Su-30MKM-AG", + "Su-30SM-AG", + }: name = "Su-30SM" elif unit_type.dcs_id == "F-15ESE": name = "F-15E" diff --git a/qt_ui/windows/newgame/QNewGameWizard.py b/qt_ui/windows/newgame/QNewGameWizard.py index 0948079c..e4ee75a7 100644 --- a/qt_ui/windows/newgame/QNewGameWizard.py +++ b/qt_ui/windows/newgame/QNewGameWizard.py @@ -110,6 +110,7 @@ class NewGameWizard(QtWidgets.QWizard): uh_60l=self.field("uh_60l"), jas39_gripen=self.field("jas39_gripen"), super_etendard=self.field("super_etendard"), + sk_60=self.field("sk_60"), su15_flagon=self.field("su15_flagon"), su30_flanker_h=self.field("su30_flanker_h"), su57_felon=self.field("su57_felon"), diff --git a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py index cf153da8..a115e1ed 100644 --- a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py +++ b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py @@ -130,6 +130,8 @@ class GeneratorOptions(QtWidgets.QWizardPage): self.registerField("jas39_gripen", self.jas39_gripen) self.super_etendard = QtWidgets.QCheckBox() self.registerField("super_etendard", self.super_etendard) + self.sk_60 = QtWidgets.QCheckBox() + self.registerField("sk_60", self.sk_60) self.su15_flagon = QtWidgets.QCheckBox() self.registerField("su15_flagon", self.su15_flagon) self.su30_flanker_h = QtWidgets.QCheckBox() @@ -185,8 +187,9 @@ class GeneratorOptions(QtWidgets.QWizardPage): ("OV-10A Bronco", self.ov10a_bronco), ("Spanish Naval Assets pack (desdemicabina 3.2.0)", self.spanishnavypack), ("Star Wars Modpack 2.54+", self.SWPack), + ("Saab 105/SK-60B (v1.2.1)", self.sk_60), ("Su-15 Flagon (v1.0)", self.su15_flagon), - ("Su-30 Flanker-H (V2.7.3 beta)", self.su30_flanker_h), + ("Su-30 Flanker-H (V2.7.73b)", self.su30_flanker_h), ("Su-57 Felon (build-04)", self.su57_felon), ("Super Étendard (v2.5.5)", self.super_etendard), ("Swedish Military Assets pack (1.10)", self.swedishmilitaryassetspack), @@ -246,6 +249,7 @@ class GeneratorOptions(QtWidgets.QWizardPage): self.f105_thunderchief.setChecked(s.get("f105_thunderchief", False)) self.f106_deltadart.setChecked(s.get("f106_deltadart", False)) self.jas39_gripen.setChecked(s.get("jas39_gripen", False)) + self.sk_60.setChecked(s.get("sk_60", False)) self.super_etendard.setChecked(s.get("super_etendard", False)) self.su30_flanker_h.setChecked(s.get("su30_flanker_h", False)) self.su57_felon.setChecked(s.get("su57_felon", False)) diff --git a/requirements.txt b/requirements.txt index 5d2df385..47a33328 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ asgiref==3.8.1 atomicwrites==1.4.1 attrs==23.2.0 black==23.9.1 -certifi==2024.6.2 +certifi==2024.7.4 cfgv==3.4.0 click==8.1.7 colorama==0.4.6 diff --git a/resources/customized_payloads/SK-60.lua b/resources/customized_payloads/SK-60.lua new file mode 100644 index 00000000..7c379f99 --- /dev/null +++ b/resources/customized_payloads/SK-60.lua @@ -0,0 +1,192 @@ +local unitPayloads = { + ["name"] = "SK-60", + ["payloads"] = { + [1] = { + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 4, + }, + [5] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + [2] = { + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 4, + }, + [5] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + [3] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 4, + }, + [5] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + [4] = { + ["displayName"] = "Retribution CAS", + ["name"] = "Retribution CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 4, + }, + [5] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + [5] = { + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd11}", + ["num"] = 3, + }, + [2] = { + ["CLSID"] = "{5d5aa063-a002-4de8-8a89-6eda1e80ee7b}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{5d5aa063-a002-4de8-8a89-6eda1e80ee7b}", + ["num"] = 5, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + [6] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 4, + }, + [5] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{d694b359-e7a8-4909-88d4-7100b77afd12}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 15, + }, + }, + }, + ["tasks"] = { + }, + ["unitType"] = "SK-60", +} +return unitPayloads diff --git a/resources/customized_payloads/Su-30MKA-AG.lua b/resources/customized_payloads/Su-30MKA-AG.lua new file mode 100644 index 00000000..24a87c2f --- /dev/null +++ b/resources/customized_payloads/Su-30MKA-AG.lua @@ -0,0 +1,530 @@ +local unitPayloads = { + ["name"] = "Su-30MKA-AG", + ["payloads"] = { + [1] = { + ["name"] = "Retribution CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [2] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [3] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 3, + }, + [9] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 9, + }, + [10] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 4, + }, + [11] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 33, + [2] = 32, + [3] = 31, + }, + }, + [4] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [5] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [6] = { + ["displayName"] = "Retribution OCA/Aircraft", + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 32, + [2] = 31, + }, + }, + [7] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [8] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, + }, + ["tasks"] = { + }, + ["unitType"] = "Su-30MKA-AG", +} +return unitPayloads diff --git a/resources/customized_payloads/Su-30MKA.lua b/resources/customized_payloads/Su-30MKA.lua index c24e021a..1bc56150 100644 --- a/resources/customized_payloads/Su-30MKA.lua +++ b/resources/customized_payloads/Su-30MKA.lua @@ -2,8 +2,7 @@ local unitPayloads = { ["name"] = "Su-30MKA", ["payloads"] = { [1] = { - ["displayName"] = "Retribution BAI", - ["name"] = "Retribution BAI", + ["name"] = "Retribution CAS", ["pylons"] = { [1] = { ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", @@ -46,11 +45,11 @@ local unitPayloads = { ["num"] = 5, }, [11] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 7, }, [12] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 6, }, }, @@ -60,180 +59,6 @@ local unitPayloads = { }, }, [2] = { - ["displayName"] = "ANTISHIP", - ["name"] = "ANTISHIP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH_31A}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH_31A}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - }, - ["tasks"] = { - [1] = 30, - }, - }, - [3] = { - ["displayName"] = "Retribution SEAD", - ["name"] = "Retribution SEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - }, - }, - [4] = { - ["displayName"] = "CAP", - ["name"] = "CAP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 10, - }, - [6] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 9, - }, - [7] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 8, - }, - [8] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - [9] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - [10] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 5, - }, - [11] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 4, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 3, - }, - }, - ["tasks"] = { - [1] = 18, - [2] = 19, - [3] = 10, - [4] = 11, - }, - }, - [5] = { ["displayName"] = "Retribution OCA/Runway", ["name"] = "Retribution OCA/Runway", ["pylons"] = { @@ -290,65 +115,7 @@ local unitPayloads = { [1] = 34, }, }, - [6] = { - ["displayName"] = "Retribution DEAD", - ["name"] = "Retribution DEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - [2] = 32, - }, - }, - [7] = { + [3] = { ["displayName"] = "Retribution Strike", ["name"] = "Retribution Strike", ["pylons"] = { @@ -369,11 +136,11 @@ local unitPayloads = { ["num"] = 2, }, [5] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 8, }, [6] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 5, }, [7] = { @@ -407,8 +174,9 @@ local unitPayloads = { [3] = 31, }, }, - [8] = { - ["name"] = "Retribution CAS", + [4] = { + ["displayName"] = "CAP", + ["name"] = "CAP", ["pylons"] = { [1] = { ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", @@ -427,44 +195,103 @@ local unitPayloads = { ["num"] = 2, }, [5] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["CLSID"] = "{SU30_R27ET}", ["num"] = 10, }, [6] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 3, - }, - [7] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 4, - }, - [8] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 9, }, - [9] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + [7] = { + ["CLSID"] = "{SU30_R27ER}", ["num"] = 8, }, + [8] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, [10] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["CLSID"] = "{SU30_R27ER}", ["num"] = 5, }, [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 4, }, [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 3, }, }, ["tasks"] = { - [1] = 31, - [2] = 32, + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, }, }, - [9] = { + [5] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [6] = { ["displayName"] = "Retribution OCA/Aircraft", ["name"] = "Retribution OCA/Aircraft", ["pylons"] = { @@ -522,6 +349,179 @@ local unitPayloads = { [2] = 31, }, }, + [7] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [8] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, }, ["tasks"] = { }, diff --git a/resources/customized_payloads/Su-30MKI-AG.lua b/resources/customized_payloads/Su-30MKI-AG.lua new file mode 100644 index 00000000..9c5e763b --- /dev/null +++ b/resources/customized_payloads/Su-30MKI-AG.lua @@ -0,0 +1,529 @@ +local unitPayloads = { + ["name"] = "Su-30MKI-AG", + ["payloads"] = { + [1] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 3, + }, + [9] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 9, + }, + [10] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 4, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 33, + [2] = 32, + [3] = 31, + }, + }, + [2] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [3] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [4] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 10, + }, + [7] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 9, + }, + [8] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 4, + }, + [9] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 3, + }, + [10] = { + ["CLSID"] = "{BRAHMOS_S}", + ["num"] = 6, + }, + [11] = { + ["CLSID"] = "", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 8, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [5] = { + ["name"] = "Retribution CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [6] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [7] = { + ["displayName"] = "Retribution OCA/Aircraft", + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 32, + [2] = 31, + }, + }, + [8] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_SAAW}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_SAAW}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + }, + ["tasks"] = { + }, + ["unitType"] = "Su-30MKI-AG", +} +return unitPayloads diff --git a/resources/customized_payloads/Su-30MKI.lua b/resources/customized_payloads/Su-30MKI.lua index 46f3c28d..9703f724 100644 --- a/resources/customized_payloads/Su-30MKI.lua +++ b/resources/customized_payloads/Su-30MKI.lua @@ -2,353 +2,6 @@ local unitPayloads = { ["name"] = "Su-30MKI", ["payloads"] = { [1] = { - ["displayName"] = "CAP", - ["name"] = "CAP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 10, - }, - [6] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 9, - }, - [7] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 8, - }, - [8] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 7, - }, - [9] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 6, - }, - [10] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 5, - }, - [11] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 4, - }, - [12] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 3, - }, - }, - ["tasks"] = { - [1] = 18, - [2] = 19, - [3] = 10, - [4] = 11, - }, - }, - [2] = { - ["displayName"] = "Retribution BAI", - ["name"] = "Retribution BAI", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 10, - }, - [6] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 3, - }, - [7] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 4, - }, - [8] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 8, - }, - [10] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 5, - }, - [11] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 31, - [2] = 32, - }, - }, - [3] = { - ["displayName"] = "Retribution OCA/Runway", - ["name"] = "Retribution OCA/Runway", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 34, - }, - }, - [4] = { - ["displayName"] = "ANTISHIP", - ["name"] = "ANTISHIP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 5, - }, - [6] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 10, - }, - [7] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 9, - }, - [8] = { - ["CLSID"] = "{SU30_KH_35}", - ["num"] = 4, - }, - [9] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 3, - }, - [10] = { - ["CLSID"] = "{BRAHMOS_S}", - ["num"] = 6, - }, - [11] = { - ["CLSID"] = "", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 8, - }, - }, - ["tasks"] = { - [1] = 30, - }, - }, - [5] = { - ["displayName"] = "Retribution OCA/Aircraft", - ["name"] = "Retribution OCA/Aircraft", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 32, - [2] = 31, - }, - }, - [6] = { - ["displayName"] = "Retribution DEAD", - ["name"] = "Retribution DEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{Su30_ASTRA}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_RudraM1}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{Su30_DERBY_ER}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - }, - }, - [7] = { ["displayName"] = "Retribution Strike", ["name"] = "Retribution Strike", ["pylons"] = { @@ -407,7 +60,182 @@ local unitPayloads = { [3] = 31, }, }, - [8] = { + [2] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [3] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [4] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 5, + }, + [6] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 10, + }, + [7] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 9, + }, + [8] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 4, + }, + [9] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 3, + }, + [10] = { + ["CLSID"] = "{BRAHMOS_S}", + ["num"] = 6, + }, + [11] = { + ["CLSID"] = "", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 8, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [5] = { ["name"] = "Retribution CAS", ["pylons"] = { [1] = { @@ -464,7 +292,7 @@ local unitPayloads = { [2] = 32, }, }, - [9] = { + [6] = { ["displayName"] = "Retribution SEAD", ["name"] = "Retribution SEAD", ["pylons"] = { @@ -521,6 +349,178 @@ local unitPayloads = { [1] = 29, }, }, + [7] = { + ["displayName"] = "Retribution OCA/Aircraft", + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 32, + [2] = 31, + }, + }, + [8] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{Su30_ASTRA}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_SAAW}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_RudraM1}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_SAAW}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{Su30_DERBY_ER}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, }, ["tasks"] = { }, diff --git a/resources/customized_payloads/Su-30MKM-AG.lua b/resources/customized_payloads/Su-30MKM-AG.lua new file mode 100644 index 00000000..b978378f --- /dev/null +++ b/resources/customized_payloads/Su-30MKM-AG.lua @@ -0,0 +1,530 @@ +local unitPayloads = { + ["name"] = "Su-30MKM-AG", + ["payloads"] = { + [1] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 3, + }, + [9] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 9, + }, + [10] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 4, + }, + [11] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 33, + [2] = 32, + [3] = 31, + }, + }, + [2] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [3] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH_31A}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [4] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [5] = { + ["name"] = "Retribution CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [6] = { + ["displayName"] = "Retribution OCA/Aircraft", + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 32, + [2] = 31, + }, + }, + [7] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [8] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, + }, + ["tasks"] = { + }, + ["unitType"] = "Su-30MKM-AG", +} +return unitPayloads diff --git a/resources/customized_payloads/Su-30MKM.lua b/resources/customized_payloads/Su-30MKM.lua index 356356ee..b2cfbd94 100644 --- a/resources/customized_payloads/Su-30MKM.lua +++ b/resources/customized_payloads/Su-30MKM.lua @@ -2,6 +2,65 @@ local unitPayloads = { ["name"] = "Su-30MKM", ["payloads"] = { [1] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 3, + }, + [9] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 9, + }, + [10] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 4, + }, + [11] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 33, + [2] = 32, + [3] = 31, + }, + }, + [2] = { ["displayName"] = "Retribution BAI", ["name"] = "Retribution BAI", ["pylons"] = { @@ -46,11 +105,11 @@ local unitPayloads = { ["num"] = 5, }, [11] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 7, }, [12] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 6, }, }, @@ -59,7 +118,7 @@ local unitPayloads = { [2] = 32, }, }, - [2] = { + [3] = { ["displayName"] = "ANTISHIP", ["name"] = "ANTISHIP", ["pylons"] = { @@ -88,27 +147,27 @@ local unitPayloads = { ["num"] = 5, }, [7] = { - ["CLSID"] = "{SU30_KH_35}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 10, }, [8] = { - ["CLSID"] = "{SU30_KH_35}", + ["CLSID"] = "{SU30_KH_31A}", ["num"] = 9, }, [9] = { - ["CLSID"] = "{SU30_KH_35}", + ["CLSID"] = "{SU30_KH_31A}", ["num"] = 4, }, [10] = { - ["CLSID"] = "{SU30_KH_35}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 3, }, [11] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 6, }, [12] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 7, }, }, @@ -116,63 +175,6 @@ local unitPayloads = { [1] = 30, }, }, - [3] = { - ["displayName"] = "Retribution SEAD", - ["name"] = "Retribution SEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - }, - }, [4] = { ["displayName"] = "CAP", ["name"] = "CAP", @@ -194,11 +196,11 @@ local unitPayloads = { ["num"] = 2, }, [5] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_R27ET}", ["num"] = 10, }, [6] = { - ["CLSID"] = "{SU30_R27ET}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 9, }, [7] = { @@ -206,11 +208,11 @@ local unitPayloads = { ["num"] = 8, }, [8] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 7, }, [9] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 6, }, [10] = { @@ -218,11 +220,11 @@ local unitPayloads = { ["num"] = 5, }, [11] = { - ["CLSID"] = "{SU30_R27ET}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 4, }, [12] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_R27ET}", ["num"] = 3, }, }, @@ -234,180 +236,6 @@ local unitPayloads = { }, }, [5] = { - ["displayName"] = "Retribution OCA/Runway", - ["name"] = "Retribution OCA/Runway", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R27ER}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 34, - }, - }, - [6] = { - ["displayName"] = "Retribution DEAD", - ["name"] = "Retribution DEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH31P}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - [2] = 32, - }, - }, - [7] = { - ["displayName"] = "Retribution Strike", - ["name"] = "Retribution Strike", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R77}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 3, - }, - [9] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 9, - }, - [10] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 4, - }, - [11] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 33, - [2] = 32, - [3] = 31, - }, - }, - [8] = { ["name"] = "Retribution CAS", ["pylons"] = { [1] = { @@ -451,11 +279,11 @@ local unitPayloads = { ["num"] = 5, }, [11] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 7, }, [12] = { - ["CLSID"] = "{SU30_R77}", + ["CLSID"] = "{SU30_RVVSD}", ["num"] = 6, }, }, @@ -464,7 +292,7 @@ local unitPayloads = { [2] = 32, }, }, - [9] = { + [6] = { ["displayName"] = "Retribution OCA/Aircraft", ["name"] = "Retribution OCA/Aircraft", ["pylons"] = { @@ -522,6 +350,178 @@ local unitPayloads = { [2] = 31, }, }, + [7] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27ER}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [8] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31P}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_RVVSD}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, }, ["tasks"] = { }, diff --git a/resources/customized_payloads/Su-30SM-AG.lua b/resources/customized_payloads/Su-30SM-AG.lua new file mode 100644 index 00000000..44e7ab98 --- /dev/null +++ b/resources/customized_payloads/Su-30SM-AG.lua @@ -0,0 +1,530 @@ +local unitPayloads = { + ["name"] = "Su-30SM-AG", + ["payloads"] = { + [1] = { + ["displayName"] = "Retribution Strike", + ["name"] = "Retribution Strike", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 3, + }, + [9] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 9, + }, + [10] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 4, + }, + [11] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{E2C426E3-8B10-4E09-B733-9CDC26520F48}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 33, + [2] = 32, + [3] = 31, + }, + }, + [2] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [3] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31AD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31AD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [4] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [5] = { + ["name"] = "Retribution CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [6] = { + ["displayName"] = "Retribution OCA/Aircraft", + ["name"] = "Retribution OCA/Aircraft", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{53BE25A4-C86C-4571-9BC0-47D668349595}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 32, + [2] = 31, + }, + }, + [7] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [8] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, + }, + ["tasks"] = { + }, + ["unitType"] = "Su-30SM-AG", +} +return unitPayloads diff --git a/resources/customized_payloads/Su-30SM.lua b/resources/customized_payloads/Su-30SM.lua index 502a348b..82e111a3 100644 --- a/resources/customized_payloads/Su-30SM.lua +++ b/resources/customized_payloads/Su-30SM.lua @@ -2,353 +2,6 @@ local unitPayloads = { ["name"] = "Su-30SM", ["payloads"] = { [1] = { - ["displayName"] = "Retribution BAI", - ["name"] = "Retribution BAI", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 10, - }, - [6] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 3, - }, - [7] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 4, - }, - [8] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 8, - }, - [10] = { - ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", - ["num"] = 5, - }, - [11] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 31, - [2] = 32, - }, - }, - [2] = { - ["displayName"] = "ANTISHIP", - ["name"] = "ANTISHIP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31AD}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31AD}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH59MK}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH59MK}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH59MK}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH59MK}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 6, - }, - [12] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 7, - }, - }, - ["tasks"] = { - [1] = 30, - }, - }, - [3] = { - ["displayName"] = "Retribution SEAD", - ["name"] = "Retribution SEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH31PD}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - }, - }, - [4] = { - ["displayName"] = "CAP", - ["name"] = "CAP", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 10, - }, - [6] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 9, - }, - [7] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 8, - }, - [8] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 7, - }, - [9] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 6, - }, - [10] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 5, - }, - [11] = { - ["CLSID"] = "{SU30_R27ET}", - ["num"] = 4, - }, - [12] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 3, - }, - }, - ["tasks"] = { - [1] = 18, - [2] = 19, - [3] = 10, - [4] = 11, - }, - }, - [5] = { - ["displayName"] = "Retribution OCA/Runway", - ["name"] = "Retribution OCA/Runway", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R27EA}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 34, - }, - }, - [6] = { - ["displayName"] = "Retribution DEAD", - ["name"] = "Retribution DEAD", - ["pylons"] = { - [1] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", - ["num"] = 12, - }, - [2] = { - ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", - ["num"] = 1, - }, - [3] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 11, - }, - [4] = { - ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", - ["num"] = 2, - }, - [5] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 8, - }, - [6] = { - ["CLSID"] = "{SU30_R77M}", - ["num"] = 5, - }, - [7] = { - ["CLSID"] = "{SU30_KH59MK2}", - ["num"] = 10, - }, - [8] = { - ["CLSID"] = "{SU30_KH59MK2}", - ["num"] = 9, - }, - [9] = { - ["CLSID"] = "{SU30_KH59MK2}", - ["num"] = 4, - }, - [10] = { - ["CLSID"] = "{SU30_KH59MK2}", - ["num"] = 3, - }, - [11] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", - ["num"] = 7, - }, - [12] = { - ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", - ["num"] = 6, - }, - }, - ["tasks"] = { - [1] = 29, - [2] = 32, - }, - }, - [7] = { ["displayName"] = "Retribution Strike", ["name"] = "Retribution Strike", ["pylons"] = { @@ -407,7 +60,182 @@ local unitPayloads = { [3] = 31, }, }, - [8] = { + [2] = { + ["displayName"] = "Retribution BAI", + ["name"] = "Retribution BAI", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 3, + }, + [7] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 4, + }, + [8] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 8, + }, + [10] = { + ["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 31, + [2] = 32, + }, + }, + [3] = { + ["displayName"] = "ANTISHIP", + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31AD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31AD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH59MK}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + }, + ["tasks"] = { + [1] = 30, + }, + }, + [4] = { + ["displayName"] = "CAP", + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 10, + }, + [6] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 9, + }, + [7] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + [10] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 5, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 4, + }, + [12] = { + ["CLSID"] = "{SU30_R27ET}", + ["num"] = 3, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 19, + [3] = 10, + [4] = 11, + }, + }, + [5] = { ["name"] = "Retribution CAS", ["pylons"] = { [1] = { @@ -464,7 +292,7 @@ local unitPayloads = { [2] = 32, }, }, - [9] = { + [6] = { ["displayName"] = "Retribution OCA/Aircraft", ["name"] = "Retribution OCA/Aircraft", ["pylons"] = { @@ -522,6 +350,178 @@ local unitPayloads = { [2] = 31, }, }, + [7] = { + ["displayName"] = "Retribution OCA/Runway", + ["name"] = "Retribution OCA/Runway", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R27EA}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{BD289E34-DF84-4C5E-9220-4B14C346E79D}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 34, + }, + }, + [8] = { + ["displayName"] = "Retribution SEAD", + ["name"] = "Retribution SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH31PD}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + }, + }, + [9] = { + ["displayName"] = "Retribution DEAD", + ["name"] = "Retribution DEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}", + ["num"] = 12, + }, + [2] = { + ["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}", + ["num"] = 1, + }, + [3] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 11, + }, + [4] = { + ["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 8, + }, + [6] = { + ["CLSID"] = "{SU30_R77M}", + ["num"] = 5, + }, + [7] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 9, + }, + [9] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 4, + }, + [10] = { + ["CLSID"] = "{SU30_KH59MK2}", + ["num"] = 3, + }, + [11] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74881}", + ["num"] = 7, + }, + [12] = { + ["CLSID"] = "{96A7F676-F956-404A-AD04-F33FB2C74884}", + ["num"] = 6, + }, + }, + ["tasks"] = { + [1] = 29, + [2] = 32, + }, + }, }, ["tasks"] = { }, diff --git a/resources/customized_payloads/Su_15.lua b/resources/customized_payloads/Su_15.lua index cc7628e6..a5d28c33 100644 --- a/resources/customized_payloads/Su_15.lua +++ b/resources/customized_payloads/Su_15.lua @@ -2,7 +2,7 @@ local unitPayloads = { ["name"] = "Su_15", ["payloads"] = { [1] = { - ["name"] = "BARCAP", + ["name"] = "CAP", ["pylons"] = { [1] = { ["CLSID"] = "{R-8M1R}", diff --git a/resources/customized_payloads/Su_15TM.lua b/resources/customized_payloads/Su_15TM.lua index acec4d15..f15b6b55 100644 --- a/resources/customized_payloads/Su_15TM.lua +++ b/resources/customized_payloads/Su_15TM.lua @@ -2,8 +2,8 @@ local unitPayloads = { ["name"] = "Su_15TM", ["payloads"] = { [1] = { - ["displayName"] = "BARCAP", - ["name"] = "BARCAP", + ["displayName"] = "CAP", + ["name"] = "CAP", ["pylons"] = { [1] = { ["CLSID"] = "{R-98MR}", diff --git a/resources/factions/bluefor_modern.json b/resources/factions/bluefor_modern.json index 3df638cb..aeb2e149 100644 --- a/resources/factions/bluefor_modern.json +++ b/resources/factions/bluefor_modern.json @@ -58,6 +58,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "UH-1H Iroquois", "UH-60A", "UH-60L" diff --git a/resources/factions/nva_1970.json b/resources/factions/nva_1970.json index 392171e9..de0ed21a 100644 --- a/resources/factions/nva_1970.json +++ b/resources/factions/nva_1970.json @@ -50,6 +50,9 @@ "ZU-23 on Ural-375", "ZSU-23-4 Shilka" ], + "requirements": { + "WW2 Asset Pack": "https://www.digitalcombatsimulator.com/en/products/other/wwii_assets_pack/" + }, "requirements": {}, "doctrine": "coldwar" -} \ No newline at end of file +} diff --git a/resources/factions/russia_2020.json b/resources/factions/russia_2020.json index 4d0e3467..2358ff9b 100644 --- a/resources/factions/russia_2020.json +++ b/resources/factions/russia_2020.json @@ -26,6 +26,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "Su-33 Flanker-D", "Su-34 Fullback", "Su-57 Felon", diff --git a/resources/factions/sweden_1980.json b/resources/factions/sweden_1980.json new file mode 100644 index 00000000..1f8e7228 --- /dev/null +++ b/resources/factions/sweden_1980.json @@ -0,0 +1,51 @@ +{ + "country": "Sweden", + "name": "Sweden 1980", + "authors": "Turbolious", + "description": "

Sweden in the 80s.

Note : Limited A2A capabilities.

", + "locales": [ + "sv_SE" + ], + "aircrafts": [ + "AJS-37 Viggen", + "SK-60", + "UH-1H Iroquois" + ], + "awacs": [ + "E-3A" + ], + "tankers": [ + "KC-130", + "KC-135 Stratotanker" + ], + "frontline_units": [ + "FV510 Warrior", + "Leopard 2A4", + "M1097 Heavy HMMWV Avenger", + "M1126 Stryker ICV (M2 HMG)", + "M48 Chaparral" + ], + "artillery_units": [], + "logistics_units": [ + "Truck M818 6x6" + ], + "infantry_units": [ + "Infantry M249", + "Infantry M4", + "MANPADS Stinger" + ], + "preset_groups": [ + "Hawk" + ], + "naval_units": [ + "FFG Oliver Hazard Perry" + ], + "missiles": [], + "air_defense_units": [ + "SAM Hawk SR (AN/MPQ-50)", + "M1097 Heavy HMMWV Avenger", + "M48 Chaparral" + ], + "has_jtac": true, + "jtac_unit": "SK-60" +} \ No newline at end of file diff --git a/resources/factions/taliban_2001.json b/resources/factions/taliban_2001.json new file mode 100644 index 00000000..9060b7d4 --- /dev/null +++ b/resources/factions/taliban_2001.json @@ -0,0 +1,38 @@ +{ + "country": "Insurgents", + "name": "Toyota Al Gaib 2001", + "authors": "Starfire", + "description": "

Total Terror Through Toyota Technicals.

", + "aircrafts": [], + "frontline_units": [ + "Scout LC with DSHK 12.7mm", + "Scout LC with KORD 12.7mm", + "Scout HL with DSHK 12.7mm", + "Scout HL with KORD 12.7mm", + "SPAAA LC with ZU-23", + "SPAAA HL with ZU-23" + ], + "artillery_units": [ + "BM-21 Grad", + "MLRS LC with B8M1 80mm", + "MLRS HL with B8M1 80mm" + ], + "logistics_units": [ + "LUV UAZ-469 Jeep", + "Truck Ural-375" + ], + "infantry_units": [ + "Infantry RPG", + "Insurgent AK-74", + "MANPADS SA-18 Igla \"Grouse\"", + "Mortar 2B11 120mm" + ], + "missiles": [], + "air_defense_units": [ + "SPAAA LC with ZU-23", + "SPAAA HL with ZU-23", + "ZU-23 on Ural-375 Insurgent" + ], + "preset_groups": [], + "naval_units": [] +} diff --git a/resources/factions/wrl_taskforceblue.json b/resources/factions/wrl_taskforceblue.json index a5569754..a007a180 100644 --- a/resources/factions/wrl_taskforceblue.json +++ b/resources/factions/wrl_taskforceblue.json @@ -93,6 +93,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "Su-57 Felon", "S-3B Viking", "SH-60B Seahawk", diff --git a/resources/factions/wrl_taskforceinsurgent.json b/resources/factions/wrl_taskforceinsurgent.json index fbe570d5..a04b39cb 100644 --- a/resources/factions/wrl_taskforceinsurgent.json +++ b/resources/factions/wrl_taskforceinsurgent.json @@ -93,6 +93,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "Su-57 Felon", "S-3B Viking", "SH-60B Seahawk", diff --git a/resources/factions/wrl_taskforcemixed.json b/resources/factions/wrl_taskforcemixed.json index 5e3013ce..23121b30 100644 --- a/resources/factions/wrl_taskforcemixed.json +++ b/resources/factions/wrl_taskforcemixed.json @@ -93,6 +93,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "Su-57 Felon", "S-3B Viking", "SH-60B Seahawk", diff --git a/resources/factions/wrl_taskforcered.json b/resources/factions/wrl_taskforcered.json index dcffc88c..caa9a0d2 100644 --- a/resources/factions/wrl_taskforcered.json +++ b/resources/factions/wrl_taskforcered.json @@ -93,6 +93,10 @@ "Su-30MKI Flanker-H", "Su-30MKM Flanker-H", "Su-30SM Flanker-H", + "Su-30MKA Flanker-H (A-G)", + "Su-30MKI Flanker-H (A-G)", + "Su-30MKM Flanker-H (A-G)", + "Su-30SM Flanker-H (A-G)", "Su-57 Felon", "S-3B Viking", "SH-60B Seahawk", diff --git a/resources/ui/units/aircrafts/banners/SK-60.jpg b/resources/ui/units/aircrafts/banners/SK-60.jpg new file mode 100644 index 00000000..407b4dce Binary files /dev/null and b/resources/ui/units/aircrafts/banners/SK-60.jpg differ diff --git a/resources/ui/units/aircrafts/icons/SK-60_24.jpg b/resources/ui/units/aircrafts/icons/SK-60_24.jpg new file mode 100644 index 00000000..2f8ec327 Binary files /dev/null and b/resources/ui/units/aircrafts/icons/SK-60_24.jpg differ diff --git a/resources/units/aircraft/SK-60.yaml b/resources/units/aircraft/SK-60.yaml new file mode 100644 index 00000000..fe322a4f --- /dev/null +++ b/resources/units/aircraft/SK-60.yaml @@ -0,0 +1,24 @@ +carrier_capable: false +description: + The Saab 105 is a Swedish high-wing, twinjet trainer aircraft developed in the early 1960s + as a private venture by Saab AB.[2] The Swedish Air Force, which had opted to procure the type + for various roles, issued the aircraft with the designation Sk 60. The Sk 60 entered service in 1967, + replacing the ageing De Havilland Vampire fleet. + SK-60B is a two-seat attack version for the Swedish Air Force, modified from Sk 60A with new weapons sight. + This version entered service in 1968. + +introduced: 1968 +manufacturer: Saab AB +origin: Sweden +price: 4 +role: COIN / FAC /Light Attack +gunfighter: true +variants: + SK-60: {} +tasks: + BAI: 650 + CAS: 650 + DEAD: 60 + OCA/Aircraft: 650 + OCA/Runway: 330 + Strike: 330 diff --git a/resources/units/aircraft/Su-30MKA-AG.yaml b/resources/units/aircraft/Su-30MKA-AG.yaml new file mode 100644 index 00000000..26d91bf1 --- /dev/null +++ b/resources/units/aircraft/Su-30MKA-AG.yaml @@ -0,0 +1,34 @@ +description: + "The Sukhoi Su-30 (Russian: \u0421\u0443\u0445\u043E\u0439 \u0421\u0443\ + -30; NATO reporting name: Flanker-C/G/H) is a twin-engine, two-seat supermaneuverable\ + \ fighter aircraft developed in the Soviet Union by Russia's Sukhoi Aviation Corporation.\ + \ It is a multirole fighter for all-weather, air-to-air and air-to-surface deep\ + \ interdiction missions. 630 numbers have been build.\ + \ \ + \ A version of the Su-30MKI, except with French and Russian avionics for Algeria." +introduced: 2007 # http://sukhoi.mariwoj.pl/su-30-dz.htm +manufacturer: Sukhoi +origin: USSR/Russia +price: 24 +role: Multirole Fighter +max_range: 300 +variants: + Su-30MKA Flanker-H (A-G): {} +radios: + intra_flight: R-800 + inter_flight: R-800 +tasks: + Anti-ship: 150 + BAI: 740 + BARCAP: 450 + CAS: 740 + DEAD: 440 + Escort: 450 + Fighter sweep: 450 + Intercept: 450 + OCA/Aircraft: 740 + OCA/Runway: 600 + SEAD: 430 + SEAD Escort: 430 + Strike: 600 + TARCAP: 450 diff --git a/resources/units/aircraft/Su-30MKI-AG.yaml b/resources/units/aircraft/Su-30MKI-AG.yaml new file mode 100644 index 00000000..d70f7592 --- /dev/null +++ b/resources/units/aircraft/Su-30MKI-AG.yaml @@ -0,0 +1,37 @@ +description: + "The Sukhoi Su-30 (Russian: \u0421\u0443\u0445\u043E\u0439 \u0421\u0443\ + -30; NATO reporting name: Flanker-C/G/H) is a twin-engine, two-seat supermaneuverable\ + \ fighter aircraft developed in the Soviet Union by Russia's Sukhoi Aviation Corporation.\ + \ It is a multirole fighter for all-weather, air-to-air and air-to-surface deep\ + interdiction missions. 630 numbers have been build.\ + \ \ + \ MKI for Modernizirovannyi Kommercheskiy Indiski - \"Modernized Commercial Indian\". An export version for India,\ + \ jointly developed with Hindustan Aeronautics Limited (HAL). It is the first Su-30 family member to feature\ + \ thrust vectoring control (TVC) and canards. Equipped with a multinational avionics complex\ + \ sourced from Russia, India, France and Israel." +introduced: 2002 # https://en.wikipedia.org/wiki/Sukhoi_Su-30MKI +manufacturer: Sukhoi +origin: USSR/Russia +price: 24 +role: Multirole Fighter +max_range: 300 +variants: + Su-30MKI Flanker-H (A-G): {} +radios: + intra_flight: R-800 + inter_flight: R-800 +tasks: + Anti-ship: 150 + BAI: 740 + BARCAP: 450 + CAS: 740 + DEAD: 440 + Escort: 450 + Fighter sweep: 450 + Intercept: 450 + OCA/Aircraft: 740 + OCA/Runway: 600 + SEAD: 430 + SEAD Escort: 430 + Strike: 600 + TARCAP: 450 diff --git a/resources/units/aircraft/Su-30MKM-AG.yaml b/resources/units/aircraft/Su-30MKM-AG.yaml new file mode 100644 index 00000000..db5acf06 --- /dev/null +++ b/resources/units/aircraft/Su-30MKM-AG.yaml @@ -0,0 +1,40 @@ +description: + "The Sukhoi Su-30 (Russian: \u0421\u0443\u0445\u043E\u0439 \u0421\u0443\ + -30; NATO reporting name: Flanker-C/G/H) is a twin-engine, two-seat supermaneuverable\ + \ fighter aircraft developed in the Soviet Union by Russia's Sukhoi Aviation Corporation.\ + \ It is a multirole fighter for all-weather, air-to-air and air-to-surface deep\ + \ interdiction missions. 630 numbers have been build.\ + \ \ + \ A derivative of the Russian-Indian Su-30MKI, the MKM is a highly specialised version for Royal Malaysian Air Force.\ + \ It includes thrust vectoring control (TVC) and canards but with avionics from various countries.\ + \ It will feature head-up displays (HUD), navigational forward-looking IR system (NAVFLIR) and\ + \ Damocles Laser Designation pod (LDP) from Thales Group of France, MAW-300 missile approach warning sensor (MAWS),\ + \ RWS-50 RWR and laser warning sensor (LWS) from SAAB AVITRONICS (South Africa)[114] as well as the\ + \ Russian NIIP N011M Bars Passive electronically scanned array radar, electronic warfare (EW) system,\ + \ optical-location system (OLS) and a glass cockpit." +introduced: 2007 # https://en.wikipedia.org/wiki/Sukhoi_Su-30MKM +manufacturer: Sukhoi +origin: USSR/Russia +price: 24 +role: Multirole Fighter +max_range: 300 +variants: + Su-30MKM Flanker-H (A-G): {} +radios: + intra_flight: R-800 + inter_flight: R-800 +tasks: + Anti-ship: 150 + BAI: 740 + BARCAP: 450 + CAS: 740 + DEAD: 440 + Escort: 450 + Fighter sweep: 450 + Intercept: 450 + OCA/Aircraft: 740 + OCA/Runway: 600 + SEAD: 430 + SEAD Escort: 430 + Strike: 600 + TARCAP: 450 diff --git a/resources/units/aircraft/Su-30SM-AG.yaml b/resources/units/aircraft/Su-30SM-AG.yaml new file mode 100644 index 00000000..12efed4b --- /dev/null +++ b/resources/units/aircraft/Su-30SM-AG.yaml @@ -0,0 +1,47 @@ +description: + "The Sukhoi Su-30 (Russian: \u0421\u0443\u0445\u043E\u0439 \u0421\u0443\ + -30; NATO reporting name: Flanker-C/G/H) is a twin-engine, two-seat supermaneuverable \ + \ fighter aircraft developed in the Soviet Union by Russia's Sukhoi Aviation Corporation. \ + \ It is a multirole fighter for all-weather, air-to-air and air-to-surface deep \ + \ interdiction missions. 630 numbers have been build. \ + \ \ + \ SM for Serijnyi Modernizirovannyi - \"Serial Modernized\". A specialised version of the thrust-vectoring \ + \ Su-30MKI for the Russian Air Force, produced by the Irkut Corporation. NATO reporting name Flanker-H. \ + \ The Su-30SM is considered a 4+ generation fighter jet. The aircraft has been upgraded according to \ + \ Russian military requirements for radar, radio communications systems, friend-or-foe identification system, \ + \ ejection seats, weapons, and other aircraft systems. It is equipped with the N011M Bars radar with a \ + \ maximum detection range 400 km, search range 200 km using a phased array antenna, frontal horizontal fins \ + \ and steerable thrusters for supermaneuverability as well as with wide-angle HUD. \ + \ The aircraft can be used to gain air supremacy same as for targeting adversary on the ground using \ + \ wide range of weapons including air-to-air, air-to-surface and guided and unguided bombs with total weapons \ + \ weight up to 8,000 kg. It is also equipped with the one barrel, 30 mm GSh-30-1 autocannon. \ + \ To ensure operations at major distances from airfield, the ability of in-flight refueling (IFR) is included. \ + \ Besides that, for electronic warfare purposes two SAP-518 jamming pods can be fitted on the wing tips. \ + \ The SAP-518 is designed to protect the aircraft from various air-to-air and surface-to-air missiles by \ + \ creating false targets, jamming missile's guidance, enemy aircraft radars or ground and seaborne air defence." +introduced: 2012 # https://www.airforce-technology.com/projects/su-30sm-multirole-fighter-aircraft/ +manufacturer: Sukhoi +origin: USSR/Russia +price: 24 +role: Multirole Fighter +max_range: 300 +variants: + Su-30SM Flanker-H (A-G): {} +radios: + intra_flight: R-800 + inter_flight: R-800 +tasks: + Anti-ship: 150 + BAI: 740 + BARCAP: 450 + CAS: 740 + DEAD: 440 + Escort: 450 + Fighter sweep: 450 + Intercept: 450 + OCA/Aircraft: 740 + OCA/Runway: 600 + SEAD: 430 + SEAD Escort: 430 + Strike: 600 + TARCAP: 450 diff --git a/resources/units/ground_units/HL_DSHK.yaml b/resources/units/ground_units/HL_DSHK.yaml index 5dd2f177..e1407c3f 100644 --- a/resources/units/ground_units/HL_DSHK.yaml +++ b/resources/units/ground_units/HL_DSHK.yaml @@ -1,5 +1,5 @@ -class: Recon -price: 4 -role: Recon -variants: +class: IFV +price: 4 +role: Recon +variants: Scout HL with DSHK 12.7mm: {} \ No newline at end of file diff --git a/resources/units/ground_units/HL_KORD.yaml b/resources/units/ground_units/HL_KORD.yaml index 8b5b630a..6f25baf9 100644 --- a/resources/units/ground_units/HL_KORD.yaml +++ b/resources/units/ground_units/HL_KORD.yaml @@ -1,5 +1,5 @@ -class: Recon -price: 4 -role: Recon -variants: +class: IFV +price: 4 +role: Recon +variants: Scout HL with KORD 12.7mm: {} \ No newline at end of file diff --git a/resources/units/ground_units/tt_DSHK.yaml b/resources/units/ground_units/tt_DSHK.yaml index b0aad905..1df82e8a 100644 --- a/resources/units/ground_units/tt_DSHK.yaml +++ b/resources/units/ground_units/tt_DSHK.yaml @@ -1,5 +1,5 @@ -class: Recon -price: 4 -role: Recon -variants: +class: IFV +price: 4 +role: Recon +variants: Scout LC with DSHK 12.7mm: {} \ No newline at end of file diff --git a/resources/units/ground_units/tt_KORD.yaml b/resources/units/ground_units/tt_KORD.yaml index b50b59ee..3b4ef9e8 100644 --- a/resources/units/ground_units/tt_KORD.yaml +++ b/resources/units/ground_units/tt_KORD.yaml @@ -1,5 +1,5 @@ -class: Recon -price: 4 -role: Recon -variants: +class: IFV +price: 4 +role: Recon +variants: Scout LC with KORD 12.7mm: {} \ No newline at end of file