F-104 mod support.

This commit is contained in:
MetalStormGhost 2021-12-22 23:01:51 +02:00 committed by GitHub
parent 515efd0598
commit 88bc4fd852
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 3027 additions and 10 deletions

View File

@ -42,6 +42,7 @@ import pydcs_extensions.highdigitsams.highdigitsams as highdigitsams
# PATCH pydcs data with MODS
from game.factions.faction_loader import FactionLoader
from pydcs_extensions.a4ec.a4ec import A_4E_C
from pydcs_extensions.f104.f104 import VSN_F104G, VSN_F104S, VSN_F104S_AG
from pydcs_extensions.f22a.f22a import F_22A
from pydcs_extensions.hercules.hercules import Hercules
from pydcs_extensions.jas39.jas39 import JAS39Gripen, JAS39Gripen_AG
@ -53,6 +54,9 @@ plane_map["Su-57"] = Su_57
plane_map["Hercules"] = Hercules
plane_map["JAS39Gripen"] = JAS39Gripen
plane_map["JAS39Gripen_AG"] = JAS39Gripen_AG
plane_map["VSN_F104G"] = VSN_F104G
plane_map["VSN_F104S"] = VSN_F104S
plane_map["VSN_F104S_AG"] = VSN_F104S_AG
vehicle_map["FieldHL"] = frenchpack._FIELD_HIDE
vehicle_map["HARRIERH"] = frenchpack._FIELD_HIDE_SMALL

View File

@ -268,6 +268,10 @@ class Faction:
self.remove_aircraft("Hercules")
if not mod_settings.f22_raptor:
self.remove_aircraft("F-22A")
if not mod_settings.f104_starfighter:
self.remove_aircraft("VSN_F104G")
self.remove_aircraft("VSN_F104S")
self.remove_aircraft("VSN_F104S_AG")
if not mod_settings.jas39_gripen:
self.remove_aircraft("JAS39Gripen")
self.remove_aircraft("JAS39Gripen_AG")

View File

@ -70,6 +70,7 @@ class GeneratorSettings:
class ModSettings:
a4_skyhawk: bool = False
f22_raptor: bool = False
f104_starfighter: bool = False
hercules: bool = False
jas39_gripen: bool = False
su57_felon: bool = False

View File

@ -112,6 +112,7 @@ from game.ato.flighttype import FlightType
from game.dcs.aircrafttype import AircraftType
from pydcs_extensions.a4ec.a4ec import A_4E_C
from pydcs_extensions.f22a.f22a import F_22A
from pydcs_extensions.f104.f104 import VSN_F104G, VSN_F104S, VSN_F104S_AG
from pydcs_extensions.hercules.hercules import Hercules
from pydcs_extensions.jas39.jas39 import JAS39Gripen, JAS39Gripen_AG
from pydcs_extensions.su57.su57 import Su_57
@ -151,6 +152,8 @@ CAP_CAPABLE = [
F_15E,
M_2000C,
F_5E_3,
VSN_F104S,
VSN_F104G,
MiG_19P,
A_4E_C,
F_86F_Sabre,
@ -225,6 +228,8 @@ CAS_CAPABLE = [
C_101CC,
L_39ZA,
UH_1H,
VSN_F104S_AG,
VSN_F104G,
A_20G,
Ju_88A4,
P_47D_40,
@ -281,6 +286,8 @@ DEAD_CAPABLE = [
H_6J,
A_20G,
Ju_88A4,
VSN_F104S_AG,
VSN_F104G,
P_47D_40,
P_47D_30bl1,
P_47D_30,
@ -344,6 +351,8 @@ STRIKE_CAPABLE = [
B_17G,
A_20G,
Ju_88A4,
VSN_F104S_AG,
VSN_F104G,
P_47D_40,
P_47D_30bl1,
P_47D_30,
@ -435,6 +444,8 @@ RUNWAY_ATTACK_CAPABLE = [
B_17G,
A_20G,
Ju_88A4,
VSN_F104S_AG,
VSN_F104G,
P_47D_40,
P_47D_30bl1,
P_47D_30,

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,5 @@
from pydcs_extensions.a4ec.a4ec import A_4E_C
from pydcs_extensions.f104.f104 import VSN_F104G, VSN_F104S, VSN_F104S_AG
from pydcs_extensions.f22a.f22a import F_22A
from pydcs_extensions.hercules.hercules import Hercules
from pydcs_extensions.highdigitsams import highdigitsams
@ -10,6 +11,9 @@ MODDED_AIRPLANES = [
A_4E_C,
Su_57,
F_22A,
VSN_F104G,
VSN_F104S,
VSN_F104S_AG,
Hercules,
JAS39Gripen,
JAS39Gripen_AG,

View File

@ -261,6 +261,7 @@ def create_game(
ModSettings(
a4_skyhawk=False,
f22_raptor=False,
f104_starfighter=False,
hercules=False,
jas39_gripen=False,
su57_felon=False,

View File

@ -105,6 +105,7 @@ class NewGameWizard(QtWidgets.QWizard):
mod_settings = ModSettings(
a4_skyhawk=self.field("a4_skyhawk"),
f22_raptor=self.field("f22_raptor"),
f104_starfighter=self.field("f104_starfighter"),
hercules=self.field("hercules"),
jas39_gripen=self.field("jas39_gripen"),
su57_felon=self.field("su57_felon"),
@ -564,6 +565,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.registerField("hercules", hercules)
f22_raptor = QtWidgets.QCheckBox()
self.registerField("f22_raptor", f22_raptor)
f104_starfighter = QtWidgets.QCheckBox()
self.registerField("f104_starfighter", f104_starfighter)
jas39_gripen = QtWidgets.QCheckBox()
self.registerField("jas39_gripen", jas39_gripen)
su57_felon = QtWidgets.QCheckBox()
@ -583,16 +586,18 @@ class GeneratorOptions(QtWidgets.QWizardPage):
modLayout.addWidget(a4_skyhawk, 1, 1)
modLayout.addWidget(QtWidgets.QLabel("F-22A Raptor"), 2, 0)
modLayout.addWidget(f22_raptor, 2, 1)
modLayout.addWidget(QtWidgets.QLabel("C-130J-30 Super Hercules"), 3, 0)
modLayout.addWidget(hercules, 3, 1)
modLayout.addWidget(QtWidgets.QLabel("JAS 39 Gripen"), 4, 0)
modLayout.addWidget(jas39_gripen, 4, 1)
modLayout.addWidget(QtWidgets.QLabel("Su-57 Felon"), 5, 0)
modLayout.addWidget(su57_felon, 5, 1)
modLayout.addWidget(QtWidgets.QLabel("Frenchpack"), 6, 0)
modLayout.addWidget(frenchpack, 6, 1)
modLayout.addWidget(QtWidgets.QLabel("High Digit SAMs"), 7, 0)
modLayout.addWidget(high_digit_sams, 7, 1)
modLayout.addWidget(QtWidgets.QLabel("F-104 Starfighter"), 3, 0)
modLayout.addWidget(f104_starfighter, 3, 1)
modLayout.addWidget(QtWidgets.QLabel("C-130J-30 Super Hercules"), 4, 0)
modLayout.addWidget(hercules, 4, 1)
modLayout.addWidget(QtWidgets.QLabel("JAS 39 Gripen"), 5, 0)
modLayout.addWidget(jas39_gripen, 5, 1)
modLayout.addWidget(QtWidgets.QLabel("Su-57 Felon"), 6, 0)
modLayout.addWidget(su57_felon, 6, 1)
modLayout.addWidget(QtWidgets.QLabel("Frenchpack"), 7, 0)
modLayout.addWidget(frenchpack, 7, 1)
modLayout.addWidget(QtWidgets.QLabel("High Digit SAMs"), 8, 0)
modLayout.addWidget(high_digit_sams, 8, 1)
modSettingsGroup.setLayout(modLayout)
mlayout = QVBoxLayout()

View File

@ -0,0 +1,166 @@
local unitPayloads = {
["name"] = "VSN_F104G",
["payloads"] = {
[1] = {
["displayName"] = "CAP",
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "VSN_F104G_L_PTB",
["num"] = 2,
},
[2] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 8,
},
[3] = {
["CLSID"] = "VSN_F104G_R_PTB",
["num"] = 10,
},
[4] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["displayName"] = "DEAD",
["name"] = "DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "VSN_F104G_L_PTB",
["num"] = 2,
},
[2] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 8,
},
[3] = {
["CLSID"] = "VSN_F104G_R_PTB",
["num"] = 10,
},
[4] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 19,
},
},
[3] = {
["displayName"] = "CAS",
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "VSN_F104G_L_PTB",
["num"] = 2,
},
[2] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 8,
},
[3] = {
["CLSID"] = "VSN_F104G_R_PTB",
["num"] = 10,
},
[4] = {
["CLSID"] = "{FD90A1DC-9147-49FA-BF56-CB83EF0BD32B}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 19,
},
},
[4] = {
["displayName"] = "STRIKE",
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "VSN_F104G_L_PTB",
["num"] = 2,
},
[2] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 8,
},
[3] = {
["CLSID"] = "VSN_F104G_R_PTB",
["num"] = 10,
},
[4] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 19,
},
},
[5] = {
["displayName"] = "OCA",
["name"] = "OCA",
["pylons"] = {
[1] = {
["CLSID"] = "VSN_F104G_L_PTB",
["num"] = 2,
},
[2] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 8,
},
[3] = {
["CLSID"] = "VSN_F104G_R_PTB",
["num"] = 10,
},
[4] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 19,
},
},
},
["tasks"] = {
},
["unitType"] = "VSN_F104G",
}
return unitPayloads

View File

@ -0,0 +1,50 @@
local unitPayloads = {
["name"] = "VSN_F104S",
["payloads"] = {
[1] = {
["displayName"] = "CAP",
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{AIM-7F}",
["num"] = 3,
},
[3] = {
["CLSID"] = "VSN_F104G_PTB",
["num"] = 4,
},
[4] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
[6] = {
["CLSID"] = "VSN_F104G_PTB",
["num"] = 8,
},
[7] = {
["CLSID"] = "{AIM-7F}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["tasks"] = {
},
["unitType"] = "VSN_F104S",
}
return unitPayloads

View File

@ -0,0 +1,189 @@
local unitPayloads = {
["name"] = "VSN_F104S_AG",
["payloads"] = {
[1] = {
["displayName"] = "DEAD",
["name"] = "DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 19,
},
},
[2] = {
["displayName"] = "CAS",
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{08164777-5E9C-4B08-B48E-5AA7AFB246E2}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 19,
},
},
[3] = {
["displayName"] = "STRIKE",
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 19,
},
},
[4] = {
["displayName"] = "OCA",
["name"] = "OCA",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{AIM-9L}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{AIM-9L}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{LAU-138 wtip - AIM-9L}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 19,
},
},
},
["tasks"] = {
},
["unitType"] = "VSN_F104S_AG",
}
return unitPayloads

View File

@ -9,6 +9,8 @@
"aircrafts": [
"AH-1W SuperCobra",
"AV-8B Harrier II Night Attack",
"F-104S Starfighter",
"F-104S Starfighter A/G",
"C-130",
"Tornado IDS",
"UH-1H Iroquois"

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,18 @@
description:
"The Lockheed F-104 Starfighter is a single-engine, supersonic interceptor aircraft\
\ which was extensively deployed as a fighter-bomber during the Cold War. Created \
\ as a day fighter by Lockheed as one of the Century Series of fighter aircraft \
\ for the United States Air Force (USAF), it was developed into an all-weather \
\ multirole aircraft in the early 1960s and produced by several other nations, \
\ seeing widespread service outside the United States. \
\ The F-104G variant was used by West German Luftwaffe and Bundesmarine \
\ as well as other NATO countries."
introduced: 1958
manufacturer: Lockheed
origin: USA
price: 9
role: Fighter-Bomber
max_range: 100
gunfighter: true
variants:
F-104G Starfighter: {}

View File

@ -0,0 +1,17 @@
description:
"The Lockheed F-104 Starfighter is a single-engine, supersonic interceptor aircraft\
\ which was extensively deployed as a fighter-bomber during the Cold War. Created \
\ as a day fighter by Lockheed as one of the Century Series of fighter aircraft \
\ for the United States Air Force (USAF), it was developed into an all-weather \
\ multirole aircraft in the early 1960s and produced by several other nations, \
\ seeing widespread service outside the United States. \
\ The Aeritalia F-104S is a licensed production Italian version."
introduced: 1966
manufacturer: Lockheed
origin: USA
price: 9
role: Light Fighter
max_range: 100
gunfighter: true
variants:
F-104S Starfighter: {}

View File

@ -0,0 +1,17 @@
description:
"The Lockheed F-104 Starfighter is a single-engine, supersonic interceptor aircraft\
\ which was extensively deployed as a fighter-bomber during the Cold War. Created \
\ as a day fighter by Lockheed as one of the Century Series of fighter aircraft \
\ for the United States Air Force (USAF), it was developed into an all-weather \
\ multirole aircraft in the early 1960s and produced by several other nations, \
\ seeing widespread service outside the United States. \
\ The Aeritalia F-104S is a licensed production Italian version."
introduced: 1966
manufacturer: Lockheed
origin: USA
price: 9
role: Fighter-Bomber
max_range: 100
gunfighter: true
variants:
F-104S Starfighter A/G: {}