Support for Iron Dome v1.2 by IDF Mods Project

Resolves #124
This commit is contained in:
Raffson 2023-05-20 23:47:13 +02:00
parent a46e32cdf1
commit f9e15951f2
No known key found for this signature in database
GPG Key ID: B0402B2C9B764D99
23 changed files with 166 additions and 6 deletions

View File

@ -13,6 +13,7 @@
* **[Mission Generation]** Also save kneeboards in txt-format, found under "kneeboards" within Retribution's installation folder after pressing take-off.
* **[Modding]** Support for SW mod v2.55
* **[Modding]** Support for Spanish & Australian Naval Assets v3.2.0 by desdemicabina
* **[Modding]** Support for Iron Dome v1.2 by IDF Mods Project
## Fixes
* **[New Game Wizard]** Settings would not persist when going back to a previous page.

View File

@ -439,6 +439,13 @@ class Faction:
self.remove_ship("L52")
self.remove_ship("L02")
self.remove_ship("DDG39")
if not mod_settings.irondome:
self.remove_vehicle("I9K51_GRAD")
self.remove_vehicle("I9K57_URAGAN")
self.remove_vehicle("I9K58_SMERCH")
self.remove_vehicle("IRON_DOME_CP")
self.remove_vehicle("IRON_DOME_LN")
self.remove_vehicle("ELM2048_MMR")
# swedish military assets pack
if not mod_settings.swedishmilitaryassetspack:
self.remove_vehicle("BV410_RBS70")

View File

@ -66,6 +66,7 @@ class ModSettings:
f104_starfighter: bool = False
f105_thunderchief: bool = False
hercules: bool = False
irondome: bool = False
uh_60l: bool = False
jas39_gripen: bool = False
su30_flanker_h: bool = False

View File

@ -14,6 +14,7 @@ from .fa18efg import *
from .frenchpack import *
from .hercules import *
from .highdigitsams import *
from .irondome import *
from .jas39 import *
from .ov10a import *
from .spanishnavypack import *

View File

@ -0,0 +1 @@
from .irondome import *

View File

@ -0,0 +1,61 @@
from dcs.unittype import VehicleType
from game.modsupport import vehiclemod
@vehiclemod
class I9K51_GRAD(VehicleType):
id = "I9K51_GRAD"
name = "(IDF Mods Project) BM-21 Grad 122mm"
detection_range = 0
threat_range = 19000
air_weapon_dist = 19000
eplrs = True
@vehiclemod
class I9K57_URAGAN(VehicleType):
id = "I9K57_URAGAN"
name = "(IDF Mods Project) Urgan BM-27 220mm"
detection_range = 0
threat_range = 35800
air_weapon_dist = 35800
eplrs = True
@vehiclemod
class I9K58_SMERCH(VehicleType):
id = "I9K58_SMERCH"
name = "(IDF Mods Project) 9A52 Smerch CM 300mm"
detection_range = 0
threat_range = 70000
air_weapon_dist = 70000
eplrs = True
@vehiclemod
class IRON_DOME_CP(VehicleType):
id = "IRON_DOME_CP"
name = "Iron Dome CP"
detection_range = 0
threat_range = 0
air_weapon_dist = 0
eplrs = True
@vehiclemod
class IRON_DOME_LN(VehicleType):
id = "IRON_DOME_LN"
name = "Iron Dome LN"
detection_range = 0
threat_range = 25000
air_weapon_dist = 25000
@vehiclemod
class ELM2048_MMR(VehicleType):
id = "ELM2048_MMR"
name = "Iron Dome ELM-2048 MMR"
detection_range = 412000
threat_range = 0
air_weapon_dist = 0

View File

@ -219,6 +219,7 @@ def load_vehicle_icons():
VEHICLES_ICONS[vehicle[:-7]] = QPixmap(
os.path.join("./resources/ui/units/vehicles/icons/", vehicle)
)
VEHICLES_ICONS["(IDF Mods Project) BM-21 Grad 122mm"] = VEHICLES_ICONS["Grad-URAL"]
def load_aircraft_banners():
@ -252,3 +253,12 @@ def load_vehicle_banners():
VEHICLE_BANNERS[aircraft[:-7]] = QPixmap(
os.path.join("./resources/ui/units/vehicles/banners/", aircraft)
)
VEHICLE_BANNERS["(IDF Mods Project) BM-21 Grad 122mm"] = VEHICLE_BANNERS[
"Grad-URAL"
]
VEHICLE_BANNERS["(IDF Mods Project) Urgan BM-27 220mm"] = VEHICLE_BANNERS[
"Uragan_BM-27"
]
VEHICLE_BANNERS["(IDF Mods Project) 9A52 Smerch CM 300mm"] = VEHICLE_BANNERS[
"Smerch_HE"
]

View File

@ -196,6 +196,7 @@ class NewGameWizard(QtWidgets.QWizard):
f104_starfighter=self.field("f104_starfighter"),
f105_thunderchief=self.field("f105_thunderchief"),
hercules=self.field("hercules"),
irondome=self.field("irondome"),
uh_60l=self.field("uh_60l"),
jas39_gripen=self.field("jas39_gripen"),
su30_flanker_h=self.field("su30_flanker_h"),
@ -877,6 +878,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.registerField("SWPack", self.SWPack)
self.spanishnavypack = QtWidgets.QCheckBox()
self.registerField("spanishnavypack", self.spanishnavypack)
self.irondome = QtWidgets.QCheckBox()
self.registerField("irondome", self.irondome)
modHelpText = QtWidgets.QLabel(
"<p>Select the mods you have installed. If your chosen factions support them, you'll be able to use these mods in your campaign.</p>"
@ -913,6 +916,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
("UH-60L Black Hawk (v1.3.1)", self.uh_60l),
("Star Wars Modpack 2.54+", self.SWPack),
("Spanish Naval Assets pack (desdemicabina 3.2.0)", self.spanishnavypack),
("Iron Dome (v1.2 by IDF Mods Project)", self.irondome),
]
for i in range(len(mod_pairs)):
@ -968,6 +972,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.frenchpack.setChecked(s.get("frenchpack", False))
self.high_digit_sams.setChecked(s.get("high_digit_sams", False))
self.spanishnavypack.setChecked(s.get("spanishnavypack", False))
self.irondome.setChecked(s.get("irondome", False))
self.swedishmilitaryassetspack.setChecked(
s.get("swedishmilitaryassetspack", False)
)

View File

@ -25,7 +25,9 @@
"M4A2(75) Sherman",
"M60A3 \"Patton\""
],
"artillery_units": [],
"artillery_units": [
"(IDF Mods Project) BM-21 Grad 122mm",
],
"logistics_units": [
"Truck M818 6x6"
],

View File

@ -27,7 +27,10 @@
"M163 Vulcan Air Defense System",
"M60A3 \"Patton\""
],
"artillery_units": [],
"artillery_units": [
"(IDF Mods Project) BM-21 Grad 122mm",
"(IDF Mods Project) Urgan BM-27 220mm",
],
"logistics_units": [
"Truck M818 6x6"
],

View File

@ -39,7 +39,10 @@
],
"artillery_units": [
"M109A6 Paladin",
"M270 Multiple Launch Rocket System"
"M270 Multiple Launch Rocket System",
"(IDF Mods Project) BM-21 Grad 122mm",
"(IDF Mods Project) Urgan BM-27 220mm",
"(IDF Mods Project) 9A52 Smerch CM 300mm"
],
"logistics_units": [
"Truck M818 6x6"

View File

@ -40,7 +40,10 @@
],
"artillery_units": [
"M109A6 Paladin",
"M270 Multiple Launch Rocket System"
"M270 Multiple Launch Rocket System",
"(IDF Mods Project) BM-21 Grad 122mm",
"(IDF Mods Project) Urgan BM-27 220mm",
"(IDF Mods Project) 9A52 Smerch CM 300mm"
],
"logistics_units": [
"Truck M818 6x6"
@ -52,6 +55,7 @@
],
"preset_groups": [
"Hawk",
"Iron Dome",
"Patriot"
],
"naval_units": [

View File

@ -0,0 +1,9 @@
name: Iron Dome
tasks:
- MERAD
units:
- Iron Dome ELM-2048 MMR
- Iron Dome CP
- Iron Dome LN
layouts:
- 4 Launcher Site (Circle)

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,11 @@
class: SearchRadar
price: 25
variants:
Iron Dome ELM-2048 MMR: null
skynet_properties: # Override skynet default properties
can_engage_harm: true
# can_engage_air_weapon: true # https://github.com/walder/Skynet-IADS/tree/develop#engage-air-weapons
go_live_range_in_percent: 100
harm_detection_chance: 90
engagement_zone: SkynetIADSAbstractRadarElement.GO_LIVE_WHEN_IN_KILL_ZONE # https://github.com/walder/Skynet-IADS/tree/develop#engagement-zone
autonomous_behaviour: SkynetIADSAbstractRadarElement.AUTONOMOUS_STATE_DCS_AI # https://github.com/walder/Skynet-IADS/tree/develop#autonomous-mode-behaviour

View File

@ -0,0 +1,10 @@
class: Artillery
description: "The BM-21 \"Grad\" (Russian: \u0411\u041C-21 \"\u0413\u0440\u0430\u0434\
\", lit.\u2009'hail') is a Soviet truck-mounted 122 mm multiple rocket launcher."
introduced: 1963
manufacturer: Splav
origin: USSR/Russia
price: 15
role: Multiple-Launch Rocket System
variants:
(IDF Mods Project) BM-21 Grad 122mm: {}

View File

@ -0,0 +1,11 @@
class: Artillery
description: "The BM-27 Uragan (Russian: \u0423\u0440\u0430\u0433\u0430\u043D, lit.\u2009\
'Hurricane'; GRAU index 9P140) is a self-propelled multiple rocket launcher system\
\ designed in the Soviet Union."
introduced: 1975
manufacturer: Splav
origin: USSR/Russia
price: 40
role: Multiple-Launch Rocket System
variants:
(IDF Mods Project) Urgan BM-27 220mm: {}

View File

@ -0,0 +1,12 @@
class: Artillery
description: "The BM-30 Smerch (Russian: \u0421\u043C\u0435\u0440\u0447, \"tornado\"\
, \"whirlwind\"), 9K58 Smerch or 9A52-2 Smerch-M is a Soviet heavy multiple rocket\
\ launcher. The system is intended to defeat personnel, armored, and soft targets\
\ in concentration areas, artillery batteries, command posts and ammunition depots."
introduced: 1989
manufacturer: Splav
origin: USSR/Russia
price: 50
role: Multiple-Launch Rocket System
variants:
(IDF Mods Project) 9A52 Smerch CM 300mm: {}

View File

@ -0,0 +1,4 @@
class: CommandPost
price: 18
variants:
Iron Dome CP: null

View File

@ -0,0 +1,4 @@
class: Launcher
price: 23
variants:
Iron Dome LN: null

View File

@ -6,7 +6,7 @@ description: "The BM-30 Smerch (Russian: \u0421\u043C\u0435\u0440\u0447, \"torna
introduced: 1989
manufacturer: Splav
origin: USSR/Russia
price: 40
price: 50
role: Multiple-Launch Rocket System
variants:
BM-30 Smerch (9M55K5 HE Rockets): {}

View File

@ -5,7 +5,7 @@ description: "The BM-27 Uragan (Russian: \u0423\u0440\u0430\u0433\u0430\u043D, l
introduced: 1975
manufacturer: Splav
origin: USSR/Russia
price: 50
price: 40
role: Multiple-Launch Rocket System
variants:
BM-27 Uragan: {}