mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
F-4B Phantom II mod support (#4)
This commit is contained in:
parent
139e42dbed
commit
04a5497f3b
@ -5,6 +5,7 @@
|
||||
* **[Mission Generation]** Variable flight-size (2/3/4-ship) for BAI/ANTISHIP/DEAD/STRIKE (main) missions
|
||||
* **[Modding]** Support for F-15D 'Baz' mod version 1.0
|
||||
* **[Modding]** Support for Su-30 mod version 2.01B
|
||||
* **[Modding]** Support for F-4B Phantom II mod version v2.7.10.02, patch 2022.10.02
|
||||
* **[Modding]** Support for F-100 Super Sabre mod versions v2.7.18.01 & 2.7.18.30765 and patches 30.09.22 & 09.10.22
|
||||
* **[Modding]** Support for F-105 mod version 2.7.12.23x
|
||||
* **[UI]** Add livery selector to Air Wing Configurator's squadrons.
|
||||
|
||||
@ -126,6 +126,7 @@ from pydcs_extensions.f104.f104 import VSN_F104G, VSN_F104S, VSN_F104S_AG
|
||||
from pydcs_extensions.f105.f105 import VSN_F105D, VSN_F105G
|
||||
from pydcs_extensions.f15d.f15d import F_15D
|
||||
from pydcs_extensions.f22a.f22a import F_22A
|
||||
from pydcs_extensions.f4b.f4b import VSN_F4B
|
||||
from pydcs_extensions.hercules.hercules import Hercules
|
||||
from pydcs_extensions.jas39.jas39 import JAS39Gripen, JAS39Gripen_AG
|
||||
from pydcs_extensions.su30.su30 import Su_30MKA, Su_30MKI, Su_30MKM, Su_30SM
|
||||
@ -162,6 +163,7 @@ CAP_CAPABLE = [
|
||||
JAS39Gripen,
|
||||
F_16A,
|
||||
F_4E,
|
||||
VSN_F4B,
|
||||
MiG_31,
|
||||
MiG_25PD,
|
||||
MiG_29G,
|
||||
@ -233,6 +235,7 @@ CAS_CAPABLE = [
|
||||
Su_17M4,
|
||||
Su_33,
|
||||
F_4E,
|
||||
VSN_F4B,
|
||||
S_3B,
|
||||
Su_30,
|
||||
Su_30MKA,
|
||||
@ -395,6 +398,7 @@ STRIKE_CAPABLE = [
|
||||
MiG_29G,
|
||||
MiG_29A,
|
||||
F_4E,
|
||||
VSN_F4B,
|
||||
A_10C_2,
|
||||
A_10C,
|
||||
S_3B,
|
||||
@ -505,6 +509,7 @@ RUNWAY_ATTACK_CAPABLE = [
|
||||
MiG_29G,
|
||||
MiG_29A,
|
||||
F_4E,
|
||||
VSN_F4B,
|
||||
A_10C_2,
|
||||
A_10C,
|
||||
S_3B,
|
||||
|
||||
@ -303,6 +303,8 @@ class Faction:
|
||||
if not mod_settings.uh_60l:
|
||||
self.remove_aircraft("UH-60L")
|
||||
self.remove_aircraft("KC130J")
|
||||
if not mod_settings.f4b_phantom:
|
||||
self.remove_aircraft("VSN_F4B")
|
||||
if not mod_settings.f15d_baz:
|
||||
self.remove_aircraft("F-15D")
|
||||
if not mod_settings.f22_raptor:
|
||||
|
||||
@ -52,6 +52,7 @@ class GeneratorSettings:
|
||||
@dataclass
|
||||
class ModSettings:
|
||||
a4_skyhawk: bool = False
|
||||
f4b_phantom: bool = False
|
||||
f15d_baz: bool = False
|
||||
f22_raptor: bool = False
|
||||
f100_supersabre: bool = False
|
||||
|
||||
419
pydcs_extensions/f4b/f4b.py
Normal file
419
pydcs_extensions/f4b/f4b.py
Normal file
@ -0,0 +1,419 @@
|
||||
from enum import Enum
|
||||
from typing import Dict, Any
|
||||
|
||||
from dcs import task
|
||||
from dcs.planes import PlaneType
|
||||
from dcs.weapons_data import Weapons
|
||||
from dcs.liveries_scanner import Liveries
|
||||
|
||||
from game.modsupport import planemod
|
||||
from pydcs_extensions.weapon_injector import inject_weapons
|
||||
|
||||
|
||||
class WeaponsF4B:
|
||||
F4B_SUU_23_Gun_Pod = {
|
||||
"clsid": "{VSN_F4B_Gunpod}",
|
||||
"name": "F4B SUU-23 Gun Pod",
|
||||
"weight": 112.35,
|
||||
}
|
||||
VSN_F4EC_PTB = {
|
||||
"clsid": "VSN_F4EC_PTB",
|
||||
"name": "Fuel tank 600 Gal",
|
||||
"weight": 1980,
|
||||
}
|
||||
VSN_F4EL_PTB = {
|
||||
"clsid": "VSN_F4EL_PTB",
|
||||
"name": "Fuel tank 370 Gal",
|
||||
"weight": 1240,
|
||||
}
|
||||
VSN_F4ER_PTB = {
|
||||
"clsid": "VSN_F4ER_PTB",
|
||||
"name": "Fuel tank 370 Gal",
|
||||
"weight": 1240,
|
||||
}
|
||||
LAU_105_2_AIM_9J = {
|
||||
"clsid": "{VSN_F4B_LAU105_AIM9J}",
|
||||
"name": "LAU-105 2*AIM-9J",
|
||||
"weight": 332,
|
||||
}
|
||||
LAU_105_2_AIM_9JULI = {
|
||||
"clsid": "{VSN_F4B_LAU105_AIM9JULI}",
|
||||
"name": "LAU-105 2*AIM-9JULI",
|
||||
"weight": 332,
|
||||
}
|
||||
|
||||
|
||||
inject_weapons(WeaponsF4B)
|
||||
|
||||
|
||||
@planemod
|
||||
class VSN_F4B(PlaneType):
|
||||
id = "VSN_F4B"
|
||||
flyable = True
|
||||
height = 5.02
|
||||
width = 11.71
|
||||
length = 19.2
|
||||
fuel_max = 6416
|
||||
max_speed = 2545.2
|
||||
chaff = 48
|
||||
flare = 48
|
||||
charge_total = 96
|
||||
chaff_charge_size = 1
|
||||
flare_charge_size = 1
|
||||
category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F}
|
||||
radio_frequency = 127.5
|
||||
|
||||
livery_name = "VSN_F4B" # from type
|
||||
Liveries = Liveries()[livery_name]
|
||||
|
||||
class Pylon1:
|
||||
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:
|
||||
GBU_10___2000lb_Laser_Guided_Bomb = (
|
||||
2,
|
||||
Weapons.GBU_10___2000lb_Laser_Guided_Bomb,
|
||||
)
|
||||
GBU_12___500lb_Laser_Guided_Bomb = (2, Weapons.GBU_12___500lb_Laser_Guided_Bomb)
|
||||
BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets = (
|
||||
2,
|
||||
Weapons.BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets,
|
||||
)
|
||||
Mk_84___2000lb_GP_Bomb_LD = (2, Weapons.Mk_84___2000lb_GP_Bomb_LD)
|
||||
LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
2,
|
||||
Weapons.LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
2,
|
||||
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
_3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
2,
|
||||
Weapons._3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M156__Wht_Phos = (
|
||||
2,
|
||||
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M156__Wht_Phos,
|
||||
)
|
||||
LAU_118a_with_AGM_45B_Shrike_ARM__Imp_ = (
|
||||
2,
|
||||
Weapons.LAU_118a_with_AGM_45B_Shrike_ARM__Imp_,
|
||||
)
|
||||
Smokewinder___red = (2, Weapons.Smokewinder___red)
|
||||
Smokewinder___green = (2, Weapons.Smokewinder___green)
|
||||
Smokewinder___blue = (2, Weapons.Smokewinder___blue)
|
||||
Smokewinder___white = (2, Weapons.Smokewinder___white)
|
||||
Smokewinder___yellow = (2, Weapons.Smokewinder___yellow)
|
||||
BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
2,
|
||||
Weapons.BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
2,
|
||||
Weapons.BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD = (
|
||||
2,
|
||||
Weapons.BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD,
|
||||
)
|
||||
BRU_33_with_2_x_GBU_12___500lb_Laser_Guided_Bomb = (
|
||||
2,
|
||||
Weapons.BRU_33_with_2_x_GBU_12___500lb_Laser_Guided_Bomb,
|
||||
)
|
||||
VSN_F4EL_PTB = (2, WeaponsF4B.VSN_F4EL_PTB)
|
||||
|
||||
class Pylon3:
|
||||
GBU_10___2000lb_Laser_Guided_Bomb = (
|
||||
3,
|
||||
Weapons.GBU_10___2000lb_Laser_Guided_Bomb,
|
||||
)
|
||||
GBU_12___500lb_Laser_Guided_Bomb = (3, Weapons.GBU_12___500lb_Laser_Guided_Bomb)
|
||||
BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets = (
|
||||
3,
|
||||
Weapons.BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets,
|
||||
)
|
||||
BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD = (
|
||||
3,
|
||||
Weapons.BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD,
|
||||
)
|
||||
Mk_84___2000lb_GP_Bomb_LD = (3, Weapons.Mk_84___2000lb_GP_Bomb_LD)
|
||||
LAU_88_with_2_x_AGM_65K___Maverick_K__CCD_Imp_ASM_ = (
|
||||
3,
|
||||
Weapons.LAU_88_with_2_x_AGM_65K___Maverick_K__CCD_Imp_ASM_,
|
||||
)
|
||||
LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
3,
|
||||
Weapons.LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_118a_with_AGM_45B_Shrike_ARM__Imp_ = (
|
||||
3,
|
||||
Weapons.LAU_118a_with_AGM_45B_Shrike_ARM__Imp_,
|
||||
)
|
||||
LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
3,
|
||||
Weapons.LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
_3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
3,
|
||||
Weapons._3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
3,
|
||||
Weapons.BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
3,
|
||||
Weapons.BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
3,
|
||||
Weapons.LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_88_with_3_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
3,
|
||||
Weapons.LAU_88_with_3_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_105_with_2_x_AIM_9M_Sidewinder_IR_AAM = (
|
||||
3,
|
||||
Weapons.LAU_105_with_2_x_AIM_9M_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9L = (3, Weapons.LAU_105_2_AIM_9L)
|
||||
LAU_105_with_2_x_AIM_9P_Sidewinder_IR_AAM = (
|
||||
3,
|
||||
Weapons.LAU_105_with_2_x_AIM_9P_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9P5 = (3, Weapons.LAU_105_2_AIM_9P5)
|
||||
LAU_7_with_2_x_AIM_9B_Sidewinder_IR_AAM = (
|
||||
3,
|
||||
Weapons.LAU_7_with_2_x_AIM_9B_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9J = (3, WeaponsF4B.LAU_105_2_AIM_9J)
|
||||
LAU_105_2_AIM_9JULI = (3, WeaponsF4B.LAU_105_2_AIM_9JULI)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (3, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (3, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (3, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
Mk_20_Rockeye___490lbs_CBU__247_x_HEAT_Bomblets = (
|
||||
3,
|
||||
Weapons.Mk_20_Rockeye___490lbs_CBU__247_x_HEAT_Bomblets,
|
||||
)
|
||||
Mk_82___500lb_GP_Bomb_LD = (3, Weapons.Mk_82___500lb_GP_Bomb_LD)
|
||||
TER_9A_with_3_x_Mk_82_Snakeye___500lb_GP_Bomb_HD = (
|
||||
3,
|
||||
Weapons.TER_9A_with_3_x_Mk_82_Snakeye___500lb_GP_Bomb_HD,
|
||||
)
|
||||
BRU_33_with_2_x_Mk_83___1000lb_GP_Bomb_LD = (
|
||||
3,
|
||||
Weapons.BRU_33_with_2_x_Mk_83___1000lb_GP_Bomb_LD,
|
||||
)
|
||||
|
||||
class Pylon4:
|
||||
AIM_7M_Sparrow_Semi_Active_Radar = (4, Weapons.AIM_7M_Sparrow_Semi_Active_Radar)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (4, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (4, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (4, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
|
||||
class Pylon5:
|
||||
AIM_7M_Sparrow_Semi_Active_Radar = (5, Weapons.AIM_7M_Sparrow_Semi_Active_Radar)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (5, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (5, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (5, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
|
||||
class Pylon6:
|
||||
Smokewinder___red = (6, Weapons.Smokewinder___red)
|
||||
Smokewinder___green = (6, Weapons.Smokewinder___green)
|
||||
Smokewinder___blue = (6, Weapons.Smokewinder___blue)
|
||||
Smokewinder___white = (6, Weapons.Smokewinder___white)
|
||||
Smokewinder___yellow = (6, Weapons.Smokewinder___yellow)
|
||||
BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD = (
|
||||
6,
|
||||
Weapons.BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD,
|
||||
)
|
||||
_3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
6,
|
||||
Weapons._3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD = (
|
||||
6,
|
||||
Weapons.BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD,
|
||||
)
|
||||
ALQ_131___ECM_Pod = (6, Weapons.ALQ_131___ECM_Pod)
|
||||
F4B_SUU_23_Gun_Pod = (6, WeaponsF4B.F4B_SUU_23_Gun_Pod)
|
||||
VSN_F4EC_PTB = (6, WeaponsF4B.VSN_F4EC_PTB)
|
||||
|
||||
class Pylon7:
|
||||
AIM_7M_Sparrow_Semi_Active_Radar = (7, Weapons.AIM_7M_Sparrow_Semi_Active_Radar)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (7, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (7, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (7, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
|
||||
class Pylon8:
|
||||
AIM_7M_Sparrow_Semi_Active_Radar = (8, Weapons.AIM_7M_Sparrow_Semi_Active_Radar)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (8, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (8, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (8, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
|
||||
class Pylon9:
|
||||
GBU_10___2000lb_Laser_Guided_Bomb = (
|
||||
9,
|
||||
Weapons.GBU_10___2000lb_Laser_Guided_Bomb,
|
||||
)
|
||||
GBU_12___500lb_Laser_Guided_Bomb = (9, Weapons.GBU_12___500lb_Laser_Guided_Bomb)
|
||||
BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets = (
|
||||
9,
|
||||
Weapons.BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets,
|
||||
)
|
||||
BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD = (
|
||||
9,
|
||||
Weapons.BRU_42_with_3_x_Mk_82___500lb_GP_Bombs_LD,
|
||||
)
|
||||
Mk_84___2000lb_GP_Bomb_LD = (9, Weapons.Mk_84___2000lb_GP_Bomb_LD)
|
||||
LAU_88_with_2_x_AGM_65K___Maverick_K__CCD_Imp_ASM_ = (
|
||||
9,
|
||||
Weapons.LAU_88_with_2_x_AGM_65K___Maverick_K__CCD_Imp_ASM_,
|
||||
)
|
||||
LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
9,
|
||||
Weapons.LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_118a_with_AGM_45B_Shrike_ARM__Imp_ = (
|
||||
9,
|
||||
Weapons.LAU_118a_with_AGM_45B_Shrike_ARM__Imp_,
|
||||
)
|
||||
LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
9,
|
||||
Weapons.LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
_3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
9,
|
||||
Weapons._3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
9,
|
||||
Weapons.BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
9,
|
||||
Weapons.BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
9,
|
||||
Weapons.LAU_88_with_2_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_88_with_3_x_AGM_65D___Maverick_D__IIR_ASM_ = (
|
||||
9,
|
||||
Weapons.LAU_88_with_3_x_AGM_65D___Maverick_D__IIR_ASM_,
|
||||
)
|
||||
LAU_105_with_2_x_AIM_9M_Sidewinder_IR_AAM = (
|
||||
9,
|
||||
Weapons.LAU_105_with_2_x_AIM_9M_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9L = (9, Weapons.LAU_105_2_AIM_9L)
|
||||
LAU_105_with_2_x_AIM_9P_Sidewinder_IR_AAM = (
|
||||
9,
|
||||
Weapons.LAU_105_with_2_x_AIM_9P_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9P5 = (9, Weapons.LAU_105_2_AIM_9P5)
|
||||
LAU_7_with_2_x_AIM_9B_Sidewinder_IR_AAM = (
|
||||
9,
|
||||
Weapons.LAU_7_with_2_x_AIM_9B_Sidewinder_IR_AAM,
|
||||
)
|
||||
LAU_105_2_AIM_9J = (9, WeaponsF4B.LAU_105_2_AIM_9J)
|
||||
LAU_105_2_AIM_9JULI = (9, WeaponsF4B.LAU_105_2_AIM_9JULI)
|
||||
AIM_120B_AMRAAM___Active_Rdr_AAM = (9, Weapons.AIM_120B_AMRAAM___Active_Rdr_AAM)
|
||||
AIM_7F_Sparrow_Semi_Active_Radar = (9, Weapons.AIM_7F_Sparrow_Semi_Active_Radar)
|
||||
AIM_7E_Sparrow_Semi_Active_Radar = (9, Weapons.AIM_7E_Sparrow_Semi_Active_Radar)
|
||||
Mk_20_Rockeye___490lbs_CBU__247_x_HEAT_Bomblets = (
|
||||
9,
|
||||
Weapons.Mk_20_Rockeye___490lbs_CBU__247_x_HEAT_Bomblets,
|
||||
)
|
||||
Mk_82___500lb_GP_Bomb_LD = (9, Weapons.Mk_82___500lb_GP_Bomb_LD)
|
||||
TER_9A_with_3_x_Mk_82_Snakeye___500lb_GP_Bomb_HD = (
|
||||
9,
|
||||
Weapons.TER_9A_with_3_x_Mk_82_Snakeye___500lb_GP_Bomb_HD,
|
||||
)
|
||||
BRU_33_with_2_x_Mk_83___1000lb_GP_Bomb_LD = (
|
||||
9,
|
||||
Weapons.BRU_33_with_2_x_Mk_83___1000lb_GP_Bomb_LD,
|
||||
)
|
||||
|
||||
class Pylon10:
|
||||
GBU_10___2000lb_Laser_Guided_Bomb = (
|
||||
10,
|
||||
Weapons.GBU_10___2000lb_Laser_Guided_Bomb,
|
||||
)
|
||||
GBU_12___500lb_Laser_Guided_Bomb = (
|
||||
10,
|
||||
Weapons.GBU_12___500lb_Laser_Guided_Bomb,
|
||||
)
|
||||
BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets = (
|
||||
10,
|
||||
Weapons.BRU_42_with_3_x_Mk_20_Rockeye___490lbs_CBUs__247_x_HEAT_Bomblets,
|
||||
)
|
||||
Mk_84___2000lb_GP_Bomb_LD = (10, Weapons.Mk_84___2000lb_GP_Bomb_LD)
|
||||
LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
10,
|
||||
Weapons.LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
10,
|
||||
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
_3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
10,
|
||||
Weapons._3_x_LAU_61_pods___57_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M156__Wht_Phos = (
|
||||
10,
|
||||
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M156__Wht_Phos,
|
||||
)
|
||||
LAU_118a_with_AGM_45B_Shrike_ARM__Imp_ = (
|
||||
10,
|
||||
Weapons.LAU_118a_with_AGM_45B_Shrike_ARM__Imp_,
|
||||
)
|
||||
Smokewinder___red = (10, Weapons.Smokewinder___red)
|
||||
Smokewinder___green = (10, Weapons.Smokewinder___green)
|
||||
Smokewinder___blue = (10, Weapons.Smokewinder___blue)
|
||||
Smokewinder___white = (10, Weapons.Smokewinder___white)
|
||||
Smokewinder___yellow = (10, Weapons.Smokewinder___yellow)
|
||||
BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG = (
|
||||
10,
|
||||
Weapons.BRU_33_with_2_x_LAU_10_pod___4_x_127mm_ZUNI__UnGd_Rkts_Mk71__HE_FRAG,
|
||||
)
|
||||
BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
|
||||
10,
|
||||
Weapons.BRU_33_with_2_x_LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
|
||||
)
|
||||
BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD = (
|
||||
10,
|
||||
Weapons.BRU_41A_with_6_x_Mk_82___500lb_GP_Bomb_LD,
|
||||
)
|
||||
BRU_33_with_2_x_GBU_12___500lb_Laser_Guided_Bomb = (
|
||||
10,
|
||||
Weapons.BRU_33_with_2_x_GBU_12___500lb_Laser_Guided_Bomb,
|
||||
)
|
||||
VSN_F4ER_PTB = (10, WeaponsF4B.VSN_F4ER_PTB)
|
||||
|
||||
class Pylon11:
|
||||
L005_Sorbtsiya_ECM_pod__left_ = (11, Weapons.L005_Sorbtsiya_ECM_pod__left_)
|
||||
L_081_Fantasmagoria_ELINT_pod = (11, Weapons.L_081_Fantasmagoria_ELINT_pod)
|
||||
|
||||
pylons = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}
|
||||
|
||||
tasks = [
|
||||
task.CAP,
|
||||
task.Escort,
|
||||
task.FighterSweep,
|
||||
task.Intercept,
|
||||
task.Reconnaissance,
|
||||
task.GroundAttack,
|
||||
task.CAS,
|
||||
task.AFAC,
|
||||
task.RunwayAttack,
|
||||
]
|
||||
task_default = task.CAP
|
||||
@ -294,6 +294,7 @@ def create_game(
|
||||
),
|
||||
ModSettings(
|
||||
a4_skyhawk=False,
|
||||
f4b_phantom=False,
|
||||
f22_raptor=False,
|
||||
f100_supersabre=False,
|
||||
f104_starfighter=False,
|
||||
|
||||
@ -159,6 +159,7 @@ class NewGameWizard(QtWidgets.QWizard):
|
||||
)
|
||||
mod_settings = ModSettings(
|
||||
a4_skyhawk=self.field("a4_skyhawk"),
|
||||
f4b_phantom=self.field("f4b_phantom"),
|
||||
f15d_baz=self.field("f15d_baz"),
|
||||
f22_raptor=self.field("f22_raptor"),
|
||||
f100_supersabre=self.field("f100_supersabre"),
|
||||
@ -659,6 +660,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
self.registerField("hercules", hercules)
|
||||
uh_60l = QtWidgets.QCheckBox()
|
||||
self.registerField("uh_60l", uh_60l)
|
||||
f4b_phantom = QtWidgets.QCheckBox()
|
||||
self.registerField("f4b_phantom", f4b_phantom)
|
||||
f15d_baz = QtWidgets.QCheckBox()
|
||||
self.registerField("f15d_baz", f15d_baz)
|
||||
f22_raptor = QtWidgets.QCheckBox()
|
||||
@ -692,6 +695,13 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
)
|
||||
modLayout.addWidget(a4_skyhawk, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(
|
||||
QtWidgets.QLabel("F-4B Phantom II (v2.7.10.02 EFM + Patch 2022.10.02)"),
|
||||
modLayout_row,
|
||||
0,
|
||||
)
|
||||
modLayout.addWidget(f4b_phantom, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(QtWidgets.QLabel("F-15D Baz (v1.0)"), modLayout_row, 0)
|
||||
modLayout.addWidget(f15d_baz, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
@ -705,12 +715,12 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
)
|
||||
modLayout.addWidget(f100_supersabre, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(QtWidgets.QLabel("F-104 Starfighter"), modLayout_row, 0)
|
||||
modLayout.addWidget(f104_starfighter, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
# Section break here for readability
|
||||
modLayout.addWidget(QtWidgets.QWidget(), modLayout_row, 0)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(QtWidgets.QLabel("F-104 Starfighter"), modLayout_row, 0)
|
||||
modLayout.addWidget(f104_starfighter, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(
|
||||
QtWidgets.QLabel("F-105 Thunderchief (version 2.7.12.23x)"),
|
||||
modLayout_row,
|
||||
@ -718,9 +728,6 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
)
|
||||
modLayout.addWidget(f105_thunderchief, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
# Section break here for readability
|
||||
modLayout.addWidget(QtWidgets.QWidget(), modLayout_row, 0)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(
|
||||
QtWidgets.QLabel("C-130J-30 Super Hercules"), modLayout_row, 0
|
||||
)
|
||||
@ -736,6 +743,9 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
)
|
||||
modLayout.addWidget(jas39_gripen, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
# Section break here for readability
|
||||
modLayout.addWidget(QtWidgets.QWidget(), modLayout_row, 0)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(
|
||||
QtWidgets.QLabel("Su-30 Flanker-H (V2.01B)"), modLayout_row, 0
|
||||
)
|
||||
@ -744,9 +754,6 @@ class GeneratorOptions(QtWidgets.QWizardPage):
|
||||
modLayout.addWidget(QtWidgets.QLabel("Su-57 Felon"), modLayout_row, 0)
|
||||
modLayout.addWidget(su57_felon, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
# Section break here for readability
|
||||
modLayout.addWidget(QtWidgets.QWidget(), modLayout_row, 0)
|
||||
modLayout_row += 1
|
||||
modLayout.addWidget(QtWidgets.QLabel("Frenchpack"), modLayout_row, 0)
|
||||
modLayout.addWidget(frenchpack, modLayout_row, 1)
|
||||
modLayout_row += 1
|
||||
|
||||
186
resources/customized_payloads/VSN_F4B.lua
Normal file
186
resources/customized_payloads/VSN_F4B.lua
Normal file
@ -0,0 +1,186 @@
|
||||
local unitPayloads = {
|
||||
["name"] = "VSN_F4B",
|
||||
["payloads"] = {
|
||||
[1] = {
|
||||
["name"] = "CAP",
|
||||
["pylons"] = {
|
||||
[1] = {
|
||||
["CLSID"] = "VSN_F4EL_PTB",
|
||||
["num"] = 2,
|
||||
},
|
||||
[2] = {
|
||||
["CLSID"] = "LAU-105_2*AIM-9L",
|
||||
["num"] = 3,
|
||||
},
|
||||
[3] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 4,
|
||||
},
|
||||
[4] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 5,
|
||||
},
|
||||
[5] = {
|
||||
["CLSID"] = "{VSN_F4B_Gunpod}",
|
||||
["num"] = 6,
|
||||
},
|
||||
[6] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 7,
|
||||
},
|
||||
[7] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 8,
|
||||
},
|
||||
[8] = {
|
||||
["CLSID"] = "LAU-105_2*AIM-9L",
|
||||
["num"] = 9,
|
||||
},
|
||||
[9] = {
|
||||
["CLSID"] = "VSN_F4ER_PTB",
|
||||
["num"] = 10,
|
||||
},
|
||||
},
|
||||
["tasks"] = {
|
||||
[1] = 11,
|
||||
},
|
||||
},
|
||||
[2] = {
|
||||
["name"] = "STRIKE",
|
||||
["pylons"] = {
|
||||
[1] = {
|
||||
["CLSID"] = "{51F9AAE5-964F-4D21-83FB-502E3BFE5F8A}",
|
||||
["num"] = 2,
|
||||
},
|
||||
[2] = {
|
||||
["CLSID"] = "{51F9AAE5-964F-4D21-83FB-502E3BFE5F8A}",
|
||||
["num"] = 3,
|
||||
},
|
||||
[3] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 4,
|
||||
},
|
||||
[4] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 5,
|
||||
},
|
||||
[5] = {
|
||||
["CLSID"] = "VSN_F4EC_PTB",
|
||||
["num"] = 6,
|
||||
},
|
||||
[6] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 7,
|
||||
},
|
||||
[7] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 8,
|
||||
},
|
||||
[8] = {
|
||||
["CLSID"] = "{51F9AAE5-964F-4D21-83FB-502E3BFE5F8A}",
|
||||
["num"] = 9,
|
||||
},
|
||||
[9] = {
|
||||
["CLSID"] = "{51F9AAE5-964F-4D21-83FB-502E3BFE5F8A}",
|
||||
["num"] = 10,
|
||||
},
|
||||
},
|
||||
["tasks"] = {
|
||||
[1] = 32,
|
||||
},
|
||||
},
|
||||
[3] = {
|
||||
["displayName"] = "Liberation OCA/Runway",
|
||||
["name"] = "Liberation OCA/Runway",
|
||||
["pylons"] = {
|
||||
[1] = {
|
||||
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
|
||||
["num"] = 2,
|
||||
},
|
||||
[2] = {
|
||||
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
|
||||
["num"] = 3,
|
||||
},
|
||||
[3] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 4,
|
||||
},
|
||||
[4] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 5,
|
||||
},
|
||||
[5] = {
|
||||
["CLSID"] = "VSN_F4EC_PTB",
|
||||
["num"] = 6,
|
||||
},
|
||||
[6] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 7,
|
||||
},
|
||||
[7] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 8,
|
||||
},
|
||||
[8] = {
|
||||
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
|
||||
["num"] = 9,
|
||||
},
|
||||
[9] = {
|
||||
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
|
||||
["num"] = 10,
|
||||
},
|
||||
},
|
||||
["tasks"] = {
|
||||
[1] = 32,
|
||||
},
|
||||
},
|
||||
[4] = {
|
||||
["name"] = "CAS",
|
||||
["pylons"] = {
|
||||
[1] = {
|
||||
["CLSID"] = "{B83CB620-5BBE-4BEA-910C-EB605A327EF9}",
|
||||
["num"] = 2,
|
||||
},
|
||||
[2] = {
|
||||
["CLSID"] = "{BRU33_2*LAU10}",
|
||||
["num"] = 3,
|
||||
},
|
||||
[3] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 4,
|
||||
},
|
||||
[4] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 5,
|
||||
},
|
||||
[5] = {
|
||||
["CLSID"] = "VSN_F4EC_PTB",
|
||||
["num"] = 6,
|
||||
},
|
||||
[6] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 7,
|
||||
},
|
||||
[7] = {
|
||||
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
|
||||
["num"] = 8,
|
||||
},
|
||||
[8] = {
|
||||
["CLSID"] = "{BRU33_2*LAU10}",
|
||||
["num"] = 9,
|
||||
},
|
||||
[9] = {
|
||||
["CLSID"] = "{B83CB620-5BBE-4BEA-910C-EB605A327EF9}",
|
||||
["num"] = 10,
|
||||
},
|
||||
},
|
||||
["tasks"] = {
|
||||
[1] = 31,
|
||||
},
|
||||
},
|
||||
},
|
||||
["tasks"] = {
|
||||
},
|
||||
["unitType"] = "VSN_F4B",
|
||||
}
|
||||
return unitPayloads
|
||||
@ -10,6 +10,7 @@
|
||||
"B-52H Stratofortress",
|
||||
"C-130",
|
||||
"CH-47D",
|
||||
"F-4B Phantom II",
|
||||
"F-4E Phantom II",
|
||||
"F-5E Tiger II",
|
||||
"F-100 Super Sabre",
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
"CH-47D",
|
||||
"CH-53E",
|
||||
"F-14A Tomcat (Block 135-GR Late)",
|
||||
"F-4B Phantom II",
|
||||
"F-4E Phantom II",
|
||||
"F-5E Tiger II",
|
||||
"F-100 Super Sabre",
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
"A-4E Skyhawk",
|
||||
"F-14A Tomcat (Block 135-GR Late)",
|
||||
"F-14B Tomcat",
|
||||
"F-4B Phantom II",
|
||||
"F-4E Phantom II",
|
||||
"S-3B Viking",
|
||||
"SH-60B Seahawk",
|
||||
|
||||
BIN
resources/ui/units/aircrafts/banners/VSN_F4B_24.jpg
Normal file
BIN
resources/ui/units/aircrafts/banners/VSN_F4B_24.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 183 KiB |
BIN
resources/ui/units/aircrafts/icons/VSN_F4B_24.jpg
Normal file
BIN
resources/ui/units/aircrafts/icons/VSN_F4B_24.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.5 KiB |
20
resources/units/aircraft/VSN_F4B.yaml
Normal file
20
resources/units/aircraft/VSN_F4B.yaml
Normal file
@ -0,0 +1,20 @@
|
||||
description:
|
||||
Proving highly adaptable, the F-4 entered service with the Navy in 1961
|
||||
before it was adopted by the United States Marine Corps and the United States Air
|
||||
Force, and by the mid-1960s it had become a major part of their air arms. Phantom
|
||||
production ran from 1958 to 1981 with a total of 5,195 aircraft built, making it
|
||||
the most produced American supersonic military aircraft in history, and cementing
|
||||
its position as an iconic combat aircraft of the Cold War. The F-4 was used extensively
|
||||
during the Vietnam War. It served as the principal air superiority fighter for the
|
||||
U.S. Air Force, Navy, and Marine Corps and became important in the ground-attack
|
||||
and aerial reconnaissance roles late in the war.
|
||||
introduced: 1968
|
||||
manufacturer: McDonnell Douglas
|
||||
origin: USA
|
||||
price: 10
|
||||
role: Fighter-Bomber
|
||||
max_range: 370
|
||||
carrier_capable: true
|
||||
variants:
|
||||
F-4B Phantom II: {}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user