mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Su-15 Flagon mod v1.0 support (#345)
* Su-15 Flagon mod v1.0 support Implemented support for Su-15 Flagon mod version 1.0 by Marco1985_IT. * Replaced the external fuel tanks with gunpods in Su-15 loadouts and added gunfighter: true
This commit is contained in:
parent
3bda2929aa
commit
4762b490c0
@ -410,6 +410,9 @@ class Faction:
|
|||||||
self.remove_aircraft("JAS39Gripen_AG")
|
self.remove_aircraft("JAS39Gripen_AG")
|
||||||
if not mod_settings.super_etendard:
|
if not mod_settings.super_etendard:
|
||||||
self.remove_aircraft("VSN_SEM")
|
self.remove_aircraft("VSN_SEM")
|
||||||
|
if not mod_settings.su15_flagon:
|
||||||
|
self.remove_aircraft("Su_15")
|
||||||
|
self.remove_aircraft("Su_15TM")
|
||||||
if not mod_settings.su30_flanker_h:
|
if not mod_settings.su30_flanker_h:
|
||||||
self.remove_aircraft("Su-30MKA")
|
self.remove_aircraft("Su-30MKA")
|
||||||
self.remove_aircraft("Su-30MKI")
|
self.remove_aircraft("Su-30MKI")
|
||||||
|
|||||||
@ -87,6 +87,7 @@ class ModSettings:
|
|||||||
uh_60l: bool = False
|
uh_60l: bool = False
|
||||||
jas39_gripen: bool = False
|
jas39_gripen: bool = False
|
||||||
super_etendard: bool = False
|
super_etendard: bool = False
|
||||||
|
su15_flagon: bool = False
|
||||||
su30_flanker_h: bool = False
|
su30_flanker_h: bool = False
|
||||||
su57_felon: bool = False
|
su57_felon: bool = False
|
||||||
frenchpack: bool = False
|
frenchpack: bool = False
|
||||||
|
|||||||
@ -24,6 +24,7 @@ from .jas39 import *
|
|||||||
from .ov10a import *
|
from .ov10a import *
|
||||||
from .spanishnavypack import *
|
from .spanishnavypack import *
|
||||||
from .super_etendard import *
|
from .super_etendard import *
|
||||||
|
from .su15 import *
|
||||||
from .su30 import *
|
from .su30 import *
|
||||||
from .su57 import *
|
from .su57 import *
|
||||||
from .swedishmilitaryassetspack import *
|
from .swedishmilitaryassetspack import *
|
||||||
|
|||||||
1
pydcs_extensions/su15/__init__.py
Normal file
1
pydcs_extensions/su15/__init__.py
Normal file
@ -0,0 +1 @@
|
|||||||
|
from .su15 import *
|
||||||
203
pydcs_extensions/su15/su15.py
Normal file
203
pydcs_extensions/su15/su15.py
Normal file
@ -0,0 +1,203 @@
|
|||||||
|
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 WeaponsSu15:
|
||||||
|
PTB_600 = {"clsid": "{Su_15_PTB-600}", "name": "PTB-600", "weight": 535}
|
||||||
|
R_8M1R = {"clsid": "{R-8M1R}", "name": "R-8M1R", "weight": 285}
|
||||||
|
R_8M1T = {"clsid": "{R-8M1T}", "name": "R-8M1T", "weight": 265}
|
||||||
|
R_8R_Inert = {"clsid": "{R-8RInert}", "name": "R-8R Inert", "weight": 285}
|
||||||
|
R_8T_Inert = {"clsid": "{R-8TInert}", "name": "R-8T Inert", "weight": 265}
|
||||||
|
R_98MR = {"clsid": "{R-98MR}", "name": "R-98MR", "weight": 292}
|
||||||
|
R_98MT = {"clsid": "{R-98MT}", "name": "R-98MT", "weight": 272}
|
||||||
|
|
||||||
|
|
||||||
|
inject_weapons(WeaponsSu15)
|
||||||
|
|
||||||
|
|
||||||
|
@planemod
|
||||||
|
class Su_15TM(PlaneType):
|
||||||
|
id = "Su_15TM"
|
||||||
|
height = 5
|
||||||
|
width = 9.34
|
||||||
|
length = 21.41
|
||||||
|
fuel_max = 5550
|
||||||
|
max_speed = 2229.984
|
||||||
|
chaff = 30
|
||||||
|
flare = 15
|
||||||
|
charge_total = 60
|
||||||
|
chaff_charge_size = 1
|
||||||
|
flare_charge_size = 2
|
||||||
|
category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F}
|
||||||
|
radio_frequency = 127.5
|
||||||
|
|
||||||
|
livery_name = "SU_15TM" # from type
|
||||||
|
|
||||||
|
class Pylon1:
|
||||||
|
R_98MR = (1, WeaponsSu15.R_98MR)
|
||||||
|
R_98MT = (1, WeaponsSu15.R_98MT)
|
||||||
|
R_8M1R = (1, WeaponsSu15.R_8M1R)
|
||||||
|
R_8M1T = (1, WeaponsSu15.R_8M1T)
|
||||||
|
UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
1,
|
||||||
|
Weapons.UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
1,
|
||||||
|
Weapons.UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_ = (
|
||||||
|
1,
|
||||||
|
Weapons.S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_,
|
||||||
|
)
|
||||||
|
FAB_100___100kg_GP_Bomb_LD = (1, Weapons.FAB_100___100kg_GP_Bomb_LD)
|
||||||
|
FAB_250___250kg_GP_Bomb_LD = (1, Weapons.FAB_250___250kg_GP_Bomb_LD)
|
||||||
|
FAB_500_M_62___500kg_GP_Bomb_LD = (1, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD)
|
||||||
|
|
||||||
|
class Pylon2:
|
||||||
|
APU_60_1M_with_R_60__AA_8_Aphid____IR_AAM = (
|
||||||
|
2,
|
||||||
|
Weapons.APU_60_1M_with_R_60__AA_8_Aphid____IR_AAM,
|
||||||
|
)
|
||||||
|
APU_60_1M_with_R_60M__AA_8_Aphid_B____IR_AAM = (
|
||||||
|
2,
|
||||||
|
Weapons.APU_60_1M_with_R_60M__AA_8_Aphid_B____IR_AAM,
|
||||||
|
)
|
||||||
|
|
||||||
|
class Pylon3:
|
||||||
|
SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod = (
|
||||||
|
3,
|
||||||
|
Weapons.SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod,
|
||||||
|
)
|
||||||
|
PTB_600 = (3, WeaponsSu15.PTB_600)
|
||||||
|
UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
3,
|
||||||
|
Weapons.UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
3,
|
||||||
|
Weapons.UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_ = (
|
||||||
|
3,
|
||||||
|
Weapons.S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_,
|
||||||
|
)
|
||||||
|
FAB_100___100kg_GP_Bomb_LD = (3, Weapons.FAB_100___100kg_GP_Bomb_LD)
|
||||||
|
FAB_250___250kg_GP_Bomb_LD = (3, Weapons.FAB_250___250kg_GP_Bomb_LD)
|
||||||
|
FAB_500_M_62___500kg_GP_Bomb_LD = (3, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD)
|
||||||
|
|
||||||
|
class Pylon4:
|
||||||
|
SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod = (
|
||||||
|
4,
|
||||||
|
Weapons.SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod,
|
||||||
|
)
|
||||||
|
PTB_600 = (4, WeaponsSu15.PTB_600)
|
||||||
|
UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
4,
|
||||||
|
Weapons.UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
4,
|
||||||
|
Weapons.UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_ = (
|
||||||
|
4,
|
||||||
|
Weapons.S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_,
|
||||||
|
)
|
||||||
|
FAB_100___100kg_GP_Bomb_LD = (4, Weapons.FAB_100___100kg_GP_Bomb_LD)
|
||||||
|
FAB_250___250kg_GP_Bomb_LD = (4, Weapons.FAB_250___250kg_GP_Bomb_LD)
|
||||||
|
FAB_500_M_62___500kg_GP_Bomb_LD = (4, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD)
|
||||||
|
|
||||||
|
class Pylon5:
|
||||||
|
APU_60_1M_with_R_60__AA_8_Aphid____IR_AAM = (
|
||||||
|
5,
|
||||||
|
Weapons.APU_60_1M_with_R_60__AA_8_Aphid____IR_AAM,
|
||||||
|
)
|
||||||
|
APU_60_1M_with_R_60M__AA_8_Aphid_B____IR_AAM = (
|
||||||
|
5,
|
||||||
|
Weapons.APU_60_1M_with_R_60M__AA_8_Aphid_B____IR_AAM,
|
||||||
|
)
|
||||||
|
|
||||||
|
class Pylon6:
|
||||||
|
R_98MR = (6, WeaponsSu15.R_98MR)
|
||||||
|
R_98MT = (6, WeaponsSu15.R_98MT)
|
||||||
|
R_8M1R = (6, WeaponsSu15.R_8M1R)
|
||||||
|
R_8M1T = (6, WeaponsSu15.R_8M1T)
|
||||||
|
UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
6,
|
||||||
|
Weapons.UB_32A_pod___32_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag = (
|
||||||
|
6,
|
||||||
|
Weapons.UB_16UM_pod___16_x_S_5KO__57mm_UnGd_Rkts__HEAT_Frag,
|
||||||
|
)
|
||||||
|
S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_ = (
|
||||||
|
6,
|
||||||
|
Weapons.S_24B___240mm_UnGd_Rkt__235kg__HE_Frag___Low_Smk_,
|
||||||
|
)
|
||||||
|
FAB_100___100kg_GP_Bomb_LD = (6, Weapons.FAB_100___100kg_GP_Bomb_LD)
|
||||||
|
FAB_250___250kg_GP_Bomb_LD = (6, Weapons.FAB_250___250kg_GP_Bomb_LD)
|
||||||
|
FAB_500_M_62___500kg_GP_Bomb_LD = (6, Weapons.FAB_500_M_62___500kg_GP_Bomb_LD)
|
||||||
|
|
||||||
|
pylons: Set[int] = {1, 2, 3, 4, 5, 6}
|
||||||
|
|
||||||
|
tasks = [
|
||||||
|
task.GroundAttack,
|
||||||
|
task.CAS,
|
||||||
|
task.CAP,
|
||||||
|
task.Escort,
|
||||||
|
task.FighterSweep,
|
||||||
|
task.Intercept,
|
||||||
|
]
|
||||||
|
task_default = task.Intercept
|
||||||
|
|
||||||
|
|
||||||
|
@planemod
|
||||||
|
class Su_15(PlaneType):
|
||||||
|
id = "Su_15"
|
||||||
|
height = 5
|
||||||
|
width = 9.34
|
||||||
|
length = 21.41
|
||||||
|
fuel_max = 5600
|
||||||
|
max_speed = 2229.984
|
||||||
|
category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F}
|
||||||
|
radio_frequency = 127.5
|
||||||
|
|
||||||
|
livery_name = "SU_15" # from type
|
||||||
|
|
||||||
|
class Pylon1:
|
||||||
|
R_8M1R = (1, WeaponsSu15.R_8M1R)
|
||||||
|
R_8R_Inert = (1, WeaponsSu15.R_8R_Inert)
|
||||||
|
R_8M1T = (1, WeaponsSu15.R_8M1T)
|
||||||
|
R_8T_Inert = (1, WeaponsSu15.R_8T_Inert)
|
||||||
|
|
||||||
|
class Pylon2:
|
||||||
|
SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod = (
|
||||||
|
2,
|
||||||
|
Weapons.SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod,
|
||||||
|
)
|
||||||
|
PTB_600 = (2, WeaponsSu15.PTB_600)
|
||||||
|
|
||||||
|
class Pylon3:
|
||||||
|
SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod = (
|
||||||
|
3,
|
||||||
|
Weapons.SPPU_22_1___2_x_23mm__GSh_23L_Autocannon_Pod,
|
||||||
|
)
|
||||||
|
PTB_600 = (3, WeaponsSu15.PTB_600)
|
||||||
|
|
||||||
|
class Pylon4:
|
||||||
|
R_8M1R = (4, WeaponsSu15.R_8M1R)
|
||||||
|
R_8R_Inert = (4, WeaponsSu15.R_8R_Inert)
|
||||||
|
R_8M1T = (4, WeaponsSu15.R_8M1T)
|
||||||
|
R_8T_Inert = (4, WeaponsSu15.R_8T_Inert)
|
||||||
|
|
||||||
|
pylons: Set[int] = {1, 2, 3, 4}
|
||||||
|
|
||||||
|
tasks = [task.CAP, task.Escort, task.FighterSweep, task.Intercept]
|
||||||
|
task_default = task.Intercept
|
||||||
@ -336,6 +336,7 @@ def create_game(
|
|||||||
f105_thunderchief=False,
|
f105_thunderchief=False,
|
||||||
hercules=False,
|
hercules=False,
|
||||||
jas39_gripen=False,
|
jas39_gripen=False,
|
||||||
|
su15_flagon=False,
|
||||||
su30_flanker_h=False,
|
su30_flanker_h=False,
|
||||||
su57_felon=False,
|
su57_felon=False,
|
||||||
frenchpack=False,
|
frenchpack=False,
|
||||||
|
|||||||
@ -110,6 +110,7 @@ class NewGameWizard(QtWidgets.QWizard):
|
|||||||
uh_60l=self.field("uh_60l"),
|
uh_60l=self.field("uh_60l"),
|
||||||
jas39_gripen=self.field("jas39_gripen"),
|
jas39_gripen=self.field("jas39_gripen"),
|
||||||
super_etendard=self.field("super_etendard"),
|
super_etendard=self.field("super_etendard"),
|
||||||
|
su15_flagon=self.field("su15_flagon"),
|
||||||
su30_flanker_h=self.field("su30_flanker_h"),
|
su30_flanker_h=self.field("su30_flanker_h"),
|
||||||
su57_felon=self.field("su57_felon"),
|
su57_felon=self.field("su57_felon"),
|
||||||
ov10a_bronco=self.field("ov10a_bronco"),
|
ov10a_bronco=self.field("ov10a_bronco"),
|
||||||
|
|||||||
@ -130,6 +130,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
|||||||
self.registerField("jas39_gripen", self.jas39_gripen)
|
self.registerField("jas39_gripen", self.jas39_gripen)
|
||||||
self.super_etendard = QtWidgets.QCheckBox()
|
self.super_etendard = QtWidgets.QCheckBox()
|
||||||
self.registerField("super_etendard", self.super_etendard)
|
self.registerField("super_etendard", self.super_etendard)
|
||||||
|
self.su15_flagon = QtWidgets.QCheckBox()
|
||||||
|
self.registerField("su15_flagon", self.su15_flagon)
|
||||||
self.su30_flanker_h = QtWidgets.QCheckBox()
|
self.su30_flanker_h = QtWidgets.QCheckBox()
|
||||||
self.registerField("su30_flanker_h", self.su30_flanker_h)
|
self.registerField("su30_flanker_h", self.su30_flanker_h)
|
||||||
self.su57_felon = QtWidgets.QCheckBox()
|
self.su57_felon = QtWidgets.QCheckBox()
|
||||||
@ -183,6 +185,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
|||||||
("OV-10A Bronco", self.ov10a_bronco),
|
("OV-10A Bronco", self.ov10a_bronco),
|
||||||
("Spanish Naval Assets pack (desdemicabina 3.2.0)", self.spanishnavypack),
|
("Spanish Naval Assets pack (desdemicabina 3.2.0)", self.spanishnavypack),
|
||||||
("Star Wars Modpack 2.54+", self.SWPack),
|
("Star Wars Modpack 2.54+", self.SWPack),
|
||||||
|
("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.3 beta)", self.su30_flanker_h),
|
||||||
("Su-57 Felon (build-04)", self.su57_felon),
|
("Su-57 Felon (build-04)", self.su57_felon),
|
||||||
("Super Étendard (v2.5.5)", self.super_etendard),
|
("Super Étendard (v2.5.5)", self.super_etendard),
|
||||||
|
|||||||
33
resources/customized_payloads/Su_15.lua
Normal file
33
resources/customized_payloads/Su_15.lua
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
local unitPayloads = {
|
||||||
|
["name"] = "Su_15",
|
||||||
|
["payloads"] = {
|
||||||
|
[1] = {
|
||||||
|
["name"] = "BARCAP",
|
||||||
|
["pylons"] = {
|
||||||
|
[1] = {
|
||||||
|
["CLSID"] = "{R-8M1R}",
|
||||||
|
["num"] = 4,
|
||||||
|
},
|
||||||
|
[2] = {
|
||||||
|
["CLSID"] = "{R-8M1T}",
|
||||||
|
["num"] = 1,
|
||||||
|
},
|
||||||
|
[3] = {
|
||||||
|
["CLSID"] = "{E92CBFE5-C153-11d8-9897-000476191836}",
|
||||||
|
["num"] = 3,
|
||||||
|
},
|
||||||
|
[4] = {
|
||||||
|
["CLSID"] = "{E92CBFE5-C153-11d8-9897-000476191836}",
|
||||||
|
["num"] = 2,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
["tasks"] = {
|
||||||
|
[1] = 10,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
["tasks"] = {
|
||||||
|
},
|
||||||
|
["unitType"] = "Su_15",
|
||||||
|
}
|
||||||
|
return unitPayloads
|
||||||
43
resources/customized_payloads/Su_15TM.lua
Normal file
43
resources/customized_payloads/Su_15TM.lua
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
local unitPayloads = {
|
||||||
|
["name"] = "Su_15TM",
|
||||||
|
["payloads"] = {
|
||||||
|
[1] = {
|
||||||
|
["displayName"] = "BARCAP",
|
||||||
|
["name"] = "BARCAP",
|
||||||
|
["pylons"] = {
|
||||||
|
[1] = {
|
||||||
|
["CLSID"] = "{R-98MR}",
|
||||||
|
["num"] = 6,
|
||||||
|
},
|
||||||
|
[2] = {
|
||||||
|
["CLSID"] = "{R-98MT}",
|
||||||
|
["num"] = 1,
|
||||||
|
},
|
||||||
|
[3] = {
|
||||||
|
["CLSID"] = "{R-60M}",
|
||||||
|
["num"] = 5,
|
||||||
|
},
|
||||||
|
[4] = {
|
||||||
|
["CLSID"] = "{R-60M}",
|
||||||
|
["num"] = 2,
|
||||||
|
},
|
||||||
|
[5] = {
|
||||||
|
["CLSID"] = "{E92CBFE5-C153-11d8-9897-000476191836}",
|
||||||
|
["num"] = 4,
|
||||||
|
},
|
||||||
|
[6] = {
|
||||||
|
["CLSID"] = "{E92CBFE5-C153-11d8-9897-000476191836}",
|
||||||
|
["num"] = 3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
["tasks"] = {
|
||||||
|
[1] = 11,
|
||||||
|
[2] = 10,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
["tasks"] = {
|
||||||
|
},
|
||||||
|
["unitType"] = "Su_15TM",
|
||||||
|
}
|
||||||
|
return unitPayloads
|
||||||
@ -11,6 +11,7 @@
|
|||||||
"MiG-15bis Fagot",
|
"MiG-15bis Fagot",
|
||||||
"MiG-19P Farmer-B",
|
"MiG-19P Farmer-B",
|
||||||
"MiG-21bis Fishbed-N",
|
"MiG-21bis Fishbed-N",
|
||||||
|
"Su-15 Flagon-A",
|
||||||
"Tu-95MS Bear-H"
|
"Tu-95MS Bear-H"
|
||||||
],
|
],
|
||||||
"awacs": [
|
"awacs": [
|
||||||
|
|||||||
@ -14,6 +14,7 @@
|
|||||||
"MiG-23MLD Flogger-K",
|
"MiG-23MLD Flogger-K",
|
||||||
"MiG-25PD Foxbat-E",
|
"MiG-25PD Foxbat-E",
|
||||||
"MiG-29A Fulcrum-A",
|
"MiG-29A Fulcrum-A",
|
||||||
|
"Su-15TM Flagon-E",
|
||||||
"Su-17M4 Fitter-K",
|
"Su-17M4 Fitter-K",
|
||||||
"Su-24M Fencer-D",
|
"Su-24M Fencer-D",
|
||||||
"Su-25 Frogfoot",
|
"Su-25 Frogfoot",
|
||||||
|
|||||||
@ -14,6 +14,7 @@
|
|||||||
"MiG-23MLD Flogger-K",
|
"MiG-23MLD Flogger-K",
|
||||||
"MiG-25PD Foxbat-E",
|
"MiG-25PD Foxbat-E",
|
||||||
"MiG-29A Fulcrum-A",
|
"MiG-29A Fulcrum-A",
|
||||||
|
"Su-15TM Flagon-E",
|
||||||
"Su-17M4 Fitter-K",
|
"Su-17M4 Fitter-K",
|
||||||
"Su-24M Fencer-D",
|
"Su-24M Fencer-D",
|
||||||
"Su-25 Frogfoot",
|
"Su-25 Frogfoot",
|
||||||
|
|||||||
@ -17,6 +17,7 @@
|
|||||||
"MiG-27K Flogger-J2",
|
"MiG-27K Flogger-J2",
|
||||||
"MiG-29A Fulcrum-A",
|
"MiG-29A Fulcrum-A",
|
||||||
"MiG-31 Foxhound",
|
"MiG-31 Foxhound",
|
||||||
|
"Su-15TM Flagon-E",
|
||||||
"Su-17M4 Fitter-K",
|
"Su-17M4 Fitter-K",
|
||||||
"Su-24M Fencer-D",
|
"Su-24M Fencer-D",
|
||||||
"Su-25 Frogfoot",
|
"Su-25 Frogfoot",
|
||||||
|
|||||||
BIN
resources/ui/units/aircrafts/icons/Su_15TM_24.jpg
Normal file
BIN
resources/ui/units/aircrafts/icons/Su_15TM_24.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.1 KiB |
BIN
resources/ui/units/aircrafts/icons/Su_15_24.jpg
Normal file
BIN
resources/ui/units/aircrafts/icons/Su_15_24.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.9 KiB |
20
resources/units/aircraft/Su_15.yaml
Normal file
20
resources/units/aircraft/Su_15.yaml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
description:
|
||||||
|
"The Sukhoi Su-15 (NATO reporting name: Flagon) is a twinjet supersonic interceptor
|
||||||
|
aircraft developed by the Soviet Union. It entered service in 1965 and remained one
|
||||||
|
of the front-line designs into the 1990s."
|
||||||
|
introduced: 1965
|
||||||
|
manufacturer: Sukhoi
|
||||||
|
origin: USSR/Russia
|
||||||
|
price: 12
|
||||||
|
role: Interceptor
|
||||||
|
max_range: 200
|
||||||
|
gunfighter: true
|
||||||
|
variants:
|
||||||
|
Su-15 Flagon-A: {}
|
||||||
|
kneeboard_units: "metric"
|
||||||
|
tasks:
|
||||||
|
BARCAP: 360
|
||||||
|
Escort: 360
|
||||||
|
Fighter sweep: 360
|
||||||
|
Intercept: 360
|
||||||
|
TARCAP: 360
|
||||||
23
resources/units/aircraft/Su_15TM.yaml
Normal file
23
resources/units/aircraft/Su_15TM.yaml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
description:
|
||||||
|
"The Sukhoi Su-15 (NATO reporting name: Flagon) is a twinjet supersonic interceptor
|
||||||
|
aircraft developed by the Soviet Union. It entered service in 1965 and remained one
|
||||||
|
of the front-line designs into the 1990s. The Flagon-A was followed in December 1971
|
||||||
|
by the Su-15TM (NATO Flagon-E), with the improved Taifun-M radar (NATO Twin Scan)
|
||||||
|
and provision for UPK-23-250 gun pod or R-60 (AA-8 Aphid) short-range air-to-air
|
||||||
|
missiles."
|
||||||
|
introduced: 1971
|
||||||
|
manufacturer: Sukhoi
|
||||||
|
origin: USSR/Russia
|
||||||
|
price: 12
|
||||||
|
role: Interceptor
|
||||||
|
max_range: 200
|
||||||
|
gunfighter: true
|
||||||
|
variants:
|
||||||
|
Su-15TM Flagon-E: {}
|
||||||
|
kneeboard_units: "metric"
|
||||||
|
tasks:
|
||||||
|
BARCAP: 370
|
||||||
|
Escort: 370
|
||||||
|
Fighter sweep: 370
|
||||||
|
Intercept: 370
|
||||||
|
TARCAP: 370
|
||||||
Loading…
x
Reference in New Issue
Block a user