diff --git a/core/src/com/unciv/logic/GameStarter.kt b/core/src/com/unciv/logic/GameStarter.kt index 85819e0d3f..4c81e523f7 100644 --- a/core/src/com/unciv/logic/GameStarter.kt +++ b/core/src/com/unciv/logic/GameStarter.kt @@ -60,7 +60,7 @@ object GameStarter { val availableCivNames = Stack() availableCivNames.addAll(ruleset.nations.filter { !it.value.isCityState() }.keys.shuffled()) availableCivNames.removeAll(newGameParameters.players.map { it.chosenCiv }) - availableCivNames.remove(Constants.barbarianEncampment) + availableCivNames.remove(Constants.barbarians) if(!newGameParameters.noBarbarians && ruleset.modOptions.barbarians!=Constants.disabled) { val barbarianCivilization = CivilizationInfo(Constants.barbarians) diff --git a/core/src/com/unciv/models/ruleset/Ruleset.kt b/core/src/com/unciv/models/ruleset/Ruleset.kt index 8468f43e54..6994a69a25 100644 --- a/core/src/com/unciv/models/ruleset/Ruleset.kt +++ b/core/src/com/unciv/models/ruleset/Ruleset.kt @@ -209,6 +209,9 @@ object RulesetCache :HashMap() { for (mod in loadedMods.sortedByDescending { it.modOptions.isBaseRuleset }) { newRuleset.add(mod) newRuleset.mods += mod.name + if(mod.modOptions.isBaseRuleset){ + newRuleset.modOptions = mod.modOptions + } } newRuleset.updateBuildingCosts() // only after we've added all the mods can we calculate the building costs diff --git a/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt b/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt index 0cf25ac3d4..5cbe24c921 100644 --- a/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt +++ b/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt @@ -194,12 +194,14 @@ class NewGameScreenOptionsTable(val newGameScreen: NewGameScreen, val updatePlay val modRulesets = RulesetCache.filter { it.key!="" }.values if(modRulesets.isEmpty()) return - fun reloadMods(){ + fun reloadMods() { ruleset.clear() - ruleset.add(RulesetCache.getComplexRuleset(newGameParameters.mods)) - ruleset.mods+=newGameParameters.mods + val newRuleset = RulesetCache.getComplexRuleset(newGameParameters.mods) + ruleset.add(newRuleset) + ruleset.mods += newGameParameters.mods + ruleset.modOptions = newRuleset.modOptions - ImageGetter.ruleset=ruleset + ImageGetter.ruleset = ruleset ImageGetter.setTextureRegionDrawables() }