Fix NGW bug wrt missing plugin-options in campaign settings

This commit is contained in:
Raffson 2024-12-24 18:14:24 +01:00
parent ea09b6be32
commit db3670b759
No known key found for this signature in database
GPG Key ID: B0402B2C9B764D99

View File

@ -23,7 +23,7 @@ class NewGameSettings(QtWidgets.QWizardPage):
settings = Settings()
self.settings_widget = QSettingsWidget(settings)
self.settings_widget.load_default_settings()
settings.__dict__.update(Settings.deserialize_state_dict(campaign.settings))
self._load_campaign_settings(campaign, settings)
settings.player_income_multiplier = (
campaign.recommended_player_income_multiplier
)
@ -31,6 +31,14 @@ class NewGameSettings(QtWidgets.QWizardPage):
self.settings_widget.update_from_settings()
self.setLayout(self.settings_widget.layout)
@staticmethod
def _load_campaign_settings(campaign, settings):
campaign_settings = Settings.deserialize_state_dict(campaign.settings)
campaign_settings["plugins"] = {
**settings.__dict__["plugins"], **campaign_settings["plugins"]
}
settings.__dict__.update(campaign_settings)
def set_campaign_values(self, c: Campaign):
sw = self.settings_widget
sw.load_default_settings()