mirror of
https://github.com/dcs-liberation/dcs_liberation.git
synced 2025-11-10 14:22:26 +00:00
Add battle damage assessment option
This commit is contained in:
parent
74e6226d13
commit
def5454e5f
@ -33,6 +33,7 @@ class Settings:
|
|||||||
labels: str = "Full"
|
labels: str = "Full"
|
||||||
map_coalition_visibility: ForcedOptions.Views = ForcedOptions.Views.All
|
map_coalition_visibility: ForcedOptions.Views = ForcedOptions.Views.All
|
||||||
external_views_allowed: bool = True
|
external_views_allowed: bool = True
|
||||||
|
battle_damage_assessment: Optional[bool] = None
|
||||||
|
|
||||||
# Campaign management
|
# Campaign management
|
||||||
# General
|
# General
|
||||||
|
|||||||
@ -43,8 +43,14 @@ class ForcedOptionsGenerator:
|
|||||||
if blue.unrestricted_satnav or red.unrestricted_satnav:
|
if blue.unrestricted_satnav or red.unrestricted_satnav:
|
||||||
self.mission.forced_options.unrestricted_satnav = True
|
self.mission.forced_options.unrestricted_satnav = True
|
||||||
|
|
||||||
|
def _set_battle_damage_assessment(self) -> None:
|
||||||
|
self.mission.forced_options.battle_damage_assessment = (
|
||||||
|
self.game.settings.battle_damage_assessment
|
||||||
|
)
|
||||||
|
|
||||||
def generate(self) -> None:
|
def generate(self) -> None:
|
||||||
self._set_options_view()
|
self._set_options_view()
|
||||||
self._set_external_views()
|
self._set_external_views()
|
||||||
self._set_labels()
|
self._set_labels()
|
||||||
self._set_unrestricted_satnav()
|
self._set_unrestricted_satnav()
|
||||||
|
self._set_battle_damage_assessment()
|
||||||
|
|||||||
@ -517,6 +517,18 @@ class QSettingsWindow(QDialog):
|
|||||||
self.ext_views.setChecked(self.game.settings.external_views_allowed)
|
self.ext_views.setChecked(self.game.settings.external_views_allowed)
|
||||||
self.ext_views.toggled.connect(self.applySettings)
|
self.ext_views.toggled.connect(self.applySettings)
|
||||||
|
|
||||||
|
self.battleDamageAssessment = QComboBox()
|
||||||
|
self.battleDamageAssessment.addItem("Player preference", None)
|
||||||
|
self.battleDamageAssessment.addItem("Enforced on", True)
|
||||||
|
self.battleDamageAssessment.addItem("Enforced off", False)
|
||||||
|
if self.game.settings.battle_damage_assessment is None:
|
||||||
|
self.battleDamageAssessment.setCurrentIndex(0)
|
||||||
|
elif self.game.settings.battle_damage_assessment is True:
|
||||||
|
self.battleDamageAssessment.setCurrentIndex(1)
|
||||||
|
else:
|
||||||
|
self.battleDamageAssessment.setCurrentIndex(2)
|
||||||
|
self.battleDamageAssessment.currentIndexChanged.connect(self.applySettings)
|
||||||
|
|
||||||
def set_invulnerable_player_pilots(checked: bool) -> None:
|
def set_invulnerable_player_pilots(checked: bool) -> None:
|
||||||
self.game.settings.invulnerable_player_pilots = checked
|
self.game.settings.invulnerable_player_pilots = checked
|
||||||
|
|
||||||
@ -568,6 +580,14 @@ class QSettingsWindow(QDialog):
|
|||||||
)
|
)
|
||||||
self.missionRestrictionsLayout.addWidget(QLabel("Allow external views"), 2, 0)
|
self.missionRestrictionsLayout.addWidget(QLabel("Allow external views"), 2, 0)
|
||||||
self.missionRestrictionsLayout.addWidget(self.ext_views, 2, 1, Qt.AlignRight)
|
self.missionRestrictionsLayout.addWidget(self.ext_views, 2, 1, Qt.AlignRight)
|
||||||
|
|
||||||
|
self.missionRestrictionsLayout.addWidget(
|
||||||
|
QLabel("Battle damage assessment"), 3, 0
|
||||||
|
)
|
||||||
|
self.missionRestrictionsLayout.addWidget(
|
||||||
|
self.battleDamageAssessment, 3, 1, Qt.AlignRight
|
||||||
|
)
|
||||||
|
|
||||||
self.missionRestrictionsSettings.setLayout(self.missionRestrictionsLayout)
|
self.missionRestrictionsSettings.setLayout(self.missionRestrictionsLayout)
|
||||||
self.difficultyLayout.addWidget(self.missionRestrictionsSettings)
|
self.difficultyLayout.addWidget(self.missionRestrictionsSettings)
|
||||||
|
|
||||||
@ -909,6 +929,9 @@ class QSettingsWindow(QDialog):
|
|||||||
self.mapVisibiitySelection.currentData()
|
self.mapVisibiitySelection.currentData()
|
||||||
)
|
)
|
||||||
self.game.settings.external_views_allowed = self.ext_views.isChecked()
|
self.game.settings.external_views_allowed = self.ext_views.isChecked()
|
||||||
|
self.game.settings.battle_damage_assessment = (
|
||||||
|
self.battleDamageAssessment.currentData()
|
||||||
|
)
|
||||||
self.game.settings.generate_marks = self.generate_marks.isChecked()
|
self.game.settings.generate_marks = self.generate_marks.isChecked()
|
||||||
self.game.settings.never_delay_player_flights = (
|
self.game.settings.never_delay_player_flights = (
|
||||||
self.never_delay_players.isChecked()
|
self.never_delay_players.isChecked()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user