mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Show required mods in new gam wizard
This commit is contained in:
parent
7d0413f41d
commit
4f451fab2f
@ -74,8 +74,6 @@ France_2005_Modded = {
|
|||||||
"ArleighBurkeGroupGenerator", "OliverHazardPerryGroupGenerator"
|
"ArleighBurkeGroupGenerator", "OliverHazardPerryGroupGenerator"
|
||||||
], "requirements": {
|
], "requirements": {
|
||||||
"frenchpack V3.5": "https://forums.eagle.ru/showthread.php?t=279974",
|
"frenchpack V3.5": "https://forums.eagle.ru/showthread.php?t=279974",
|
||||||
"DCS MOD RAFALES 2.5.5 BETA (Cuesta brothers)": "https://www.digitalcombatsimulator.com/fr/files/3307478/",
|
"RAFALE 2.5.5": "https://www.digitalcombatsimulator.com/fr/files/3307478/",
|
||||||
"MIRAGE F1 and F1CT for 2.5.5 by Eric and Patrick": "https://www.digitalcombatsimulator.com/fr/files/3305837/",
|
|
||||||
"MOD EUROCOPTER EC665 TIGER by the Cuesta Brothers": "https://www.digitalcombatsimulator.com/en/files/3310596/"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -147,32 +147,53 @@ class FactionSelection(QtWidgets.QWizardPage):
|
|||||||
blues = [c for c in db.FACTIONS if db.FACTIONS[c]["side"] == "blue"]
|
blues = [c for c in db.FACTIONS if db.FACTIONS[c]["side"] == "blue"]
|
||||||
reds = [c for c in db.FACTIONS if db.FACTIONS[c]["side"] == "red"]
|
reds = [c for c in db.FACTIONS if db.FACTIONS[c]["side"] == "red"]
|
||||||
|
|
||||||
# Create form
|
|
||||||
blueFaction = QtWidgets.QLabel("Blue Faction :")
|
# Factions selection
|
||||||
|
self.factionsGroup = QtWidgets.QGroupBox("Factions")
|
||||||
|
self.factionsGroupLayout = QtWidgets.QGridLayout()
|
||||||
|
|
||||||
|
blueFaction = QtWidgets.QLabel("<b>Blue Faction :</b>")
|
||||||
self.blueFactionSelect = QtWidgets.QComboBox()
|
self.blueFactionSelect = QtWidgets.QComboBox()
|
||||||
for f in blues:
|
for f in blues:
|
||||||
self.blueFactionSelect.addItem(f)
|
self.blueFactionSelect.addItem(f)
|
||||||
blueFaction.setBuddy(self.blueFactionSelect)
|
blueFaction.setBuddy(self.blueFactionSelect)
|
||||||
|
|
||||||
redFaction = QtWidgets.QLabel("Red Faction :")
|
redFaction = QtWidgets.QLabel("<b>Red Faction :</b>")
|
||||||
self.redFactionSelect = QtWidgets.QComboBox()
|
self.redFactionSelect = QtWidgets.QComboBox()
|
||||||
for r in reds:
|
for r in reds:
|
||||||
self.redFactionSelect.addItem(r)
|
self.redFactionSelect.addItem(r)
|
||||||
redFaction.setBuddy(self.redFactionSelect)
|
redFaction.setBuddy(self.redFactionSelect)
|
||||||
|
|
||||||
|
self.blueSideRecap = QtWidgets.QLabel("")
|
||||||
|
self.blueSideRecap.setFont(CONST.FONT_PRIMARY_I)
|
||||||
|
self.blueSideRecap.setWordWrap(True)
|
||||||
|
|
||||||
|
self.blueGroup = QtWidgets.QGroupBox("Redfor")
|
||||||
|
self.redSideRecap = QtWidgets.QLabel("")
|
||||||
|
self.redSideRecap.setFont(CONST.FONT_PRIMARY_I)
|
||||||
|
self.redSideRecap.setWordWrap(True)
|
||||||
|
|
||||||
|
self.factionsGroupLayout.addWidget(blueFaction, 0, 0)
|
||||||
|
self.factionsGroupLayout.addWidget(self.blueFactionSelect, 0, 1)
|
||||||
|
self.factionsGroupLayout.addWidget(self.blueSideRecap, 1, 0, 1, 2)
|
||||||
|
self.factionsGroupLayout.addWidget(redFaction, 2, 0)
|
||||||
|
self.factionsGroupLayout.addWidget(self.redFactionSelect, 2, 1)
|
||||||
|
self.factionsGroupLayout.addWidget(self.redSideRecap, 3, 0, 1, 2)
|
||||||
|
self.factionsGroup.setLayout(self.factionsGroupLayout)
|
||||||
|
|
||||||
|
# Create required mod layout
|
||||||
|
self.requiredModsGroup = QtWidgets.QGroupBox("Required Mods")
|
||||||
|
self.requiredModsGroupLayout = QtWidgets.QHBoxLayout()
|
||||||
|
self.requiredMods = QtWidgets.QLabel("<ul><li>None</li></ul>")
|
||||||
|
self.requiredModsGroupLayout.addWidget(self.requiredMods)
|
||||||
|
self.requiredModsGroup.setLayout(self.requiredModsGroupLayout)
|
||||||
|
|
||||||
|
# Player faction selection
|
||||||
sideGroup = QtWidgets.QGroupBox("Player Side")
|
sideGroup = QtWidgets.QGroupBox("Player Side")
|
||||||
blueforRadioButton = QtWidgets.QRadioButton("BLUEFOR")
|
blueforRadioButton = QtWidgets.QRadioButton("BLUEFOR")
|
||||||
redforRadioButton = QtWidgets.QRadioButton("REDFOR")
|
redforRadioButton = QtWidgets.QRadioButton("REDFOR")
|
||||||
blueforRadioButton.setChecked(True)
|
blueforRadioButton.setChecked(True)
|
||||||
|
|
||||||
# Unit Preview
|
|
||||||
self.blueSideRecap = QtWidgets.QLabel("")
|
|
||||||
self.blueSideRecap.setFont(CONST.FONT_PRIMARY_I)
|
|
||||||
self.blueSideRecap.setWordWrap(True)
|
|
||||||
self.redSideRecap = QtWidgets.QLabel("")
|
|
||||||
self.redSideRecap.setFont(CONST.FONT_PRIMARY_I)
|
|
||||||
self.redSideRecap.setWordWrap(True)
|
|
||||||
|
|
||||||
# Link form fields
|
# Link form fields
|
||||||
self.registerField('blueFaction', self.blueFactionSelect)
|
self.registerField('blueFaction', self.blueFactionSelect)
|
||||||
self.registerField('redFaction', self.redFactionSelect)
|
self.registerField('redFaction', self.redFactionSelect)
|
||||||
@ -185,14 +206,10 @@ class FactionSelection(QtWidgets.QWizardPage):
|
|||||||
sideGroupLayout.addWidget(redforRadioButton)
|
sideGroupLayout.addWidget(redforRadioButton)
|
||||||
sideGroup.setLayout(sideGroupLayout)
|
sideGroup.setLayout(sideGroupLayout)
|
||||||
|
|
||||||
layout = QtWidgets.QGridLayout()
|
layout = QtWidgets.QVBoxLayout()
|
||||||
layout.addWidget(blueFaction, 0, 0)
|
layout.addWidget(self.factionsGroup)
|
||||||
layout.addWidget(self.blueFactionSelect, 0, 1)
|
layout.addWidget(self.requiredModsGroup)
|
||||||
layout.addWidget(self.blueSideRecap, 1, 0, 1, 2)
|
layout.addWidget(sideGroup)
|
||||||
layout.addWidget(redFaction, 2, 0)
|
|
||||||
layout.addWidget(self.redFactionSelect, 2, 1)
|
|
||||||
layout.addWidget(self.redSideRecap, 3, 0, 1, 2)
|
|
||||||
layout.addWidget(sideGroup, 4, 0, 1, 2)
|
|
||||||
self.setLayout(layout)
|
self.setLayout(layout)
|
||||||
self.updateUnitRecap()
|
self.updateUnitRecap()
|
||||||
|
|
||||||
@ -200,8 +217,14 @@ class FactionSelection(QtWidgets.QWizardPage):
|
|||||||
self.redFactionSelect.activated.connect(self.updateUnitRecap)
|
self.redFactionSelect.activated.connect(self.updateUnitRecap)
|
||||||
|
|
||||||
def updateUnitRecap(self):
|
def updateUnitRecap(self):
|
||||||
red_units = db.FACTIONS[self.redFactionSelect.currentText()]["units"]
|
|
||||||
blue_units = db.FACTIONS[self.blueFactionSelect.currentText()]["units"]
|
self.requiredMods.setText("<ul>")
|
||||||
|
|
||||||
|
red_faction = db.FACTIONS[self.redFactionSelect.currentText()]
|
||||||
|
blue_faction = db.FACTIONS[self.blueFactionSelect.currentText()]
|
||||||
|
|
||||||
|
red_units = red_faction["units"]
|
||||||
|
blue_units = blue_faction["units"]
|
||||||
|
|
||||||
blue_txt = ""
|
blue_txt = ""
|
||||||
for u in blue_units:
|
for u in blue_units:
|
||||||
@ -217,6 +240,26 @@ class FactionSelection(QtWidgets.QWizardPage):
|
|||||||
red_txt = red_txt + "\n"
|
red_txt = red_txt + "\n"
|
||||||
self.redSideRecap.setText(red_txt)
|
self.redSideRecap.setText(red_txt)
|
||||||
|
|
||||||
|
has_mod = False
|
||||||
|
if "requirements" in red_faction.keys():
|
||||||
|
has_mod = True
|
||||||
|
for mod in red_faction["requirements"].keys():
|
||||||
|
self.requiredMods.setText(self.requiredMods.text() + "\n<li>" + mod + ": <a href=\""+red_faction["requirements"][mod]+"\">" + red_faction["requirements"][mod] + "</a></li>")
|
||||||
|
|
||||||
|
if "requirements" in blue_faction.keys():
|
||||||
|
has_mod = True
|
||||||
|
for mod in blue_faction["requirements"].keys():
|
||||||
|
if not "requirements" in red_faction.keys() or mod not in red_faction["requirements"].keys():
|
||||||
|
self.requiredMods.setText(self.requiredMods.text() + "\n<li>" + mod + ": <a href=\""+blue_faction["requirements"][mod]+"\">" + blue_faction["requirements"][mod] + "</a></li>")
|
||||||
|
|
||||||
|
if has_mod:
|
||||||
|
self.requiredMods.setText(self.requiredMods.text() + "</ul>\n\n")
|
||||||
|
else:
|
||||||
|
self.requiredMods.setText(self.requiredMods.text() + "<li>None</li></ul>\n")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class TheaterConfiguration(QtWidgets.QWizardPage):
|
class TheaterConfiguration(QtWidgets.QWizardPage):
|
||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user