diff --git a/core/src/com/unciv/logic/map/MapGenerator.kt b/core/src/com/unciv/logic/map/MapGenerator.kt index 43baa2b350..879794d572 100644 --- a/core/src/com/unciv/logic/map/MapGenerator.kt +++ b/core/src/com/unciv/logic/map/MapGenerator.kt @@ -33,7 +33,7 @@ class MapGenerator(val ruleset: Ruleset) { return map seedRNG(seed) - generateLand(map) + generateLand(map,ruleset) raiseMountainsAndHills(map) applyHumidityAndTemperature(map) spawnLakesAndCoasts(map) @@ -565,7 +565,12 @@ class MapGenerator(val ruleset: Ruleset) { companion object MapLandmassGenerator { var RNG = Random(42) - fun generateLand(tileMap: TileMap) { + fun generateLand(tileMap: TileMap, ruleset: Ruleset) { + if(ruleset.terrains.values.none { it.type==TerrainType.Water }) { + for (tile in tileMap.values) + tile.baseTerrain = Constants.grassland + return + } when (tileMap.mapParameters.type) { MapType.pangaea -> createPangea(tileMap) MapType.continents -> createTwoContinents(tileMap) diff --git a/core/src/com/unciv/models/metadata/GameParameters.kt b/core/src/com/unciv/models/metadata/GameParameters.kt index bfb89ed414..1df0de8a7d 100644 --- a/core/src/com/unciv/models/metadata/GameParameters.kt +++ b/core/src/com/unciv/models/metadata/GameParameters.kt @@ -8,7 +8,7 @@ import com.unciv.models.ruleset.tech.TechEra class GameParameters { // Default values are the default new game var difficulty = "Prince" var gameSpeed = GameSpeed.Standard - var players = ArrayList().apply { + var players = mutableListOf().apply { add(Player().apply { playerType = PlayerType.Human }) for (i in 1..3) add(Player()) } diff --git a/core/src/com/unciv/ui/newgamescreen/PlayerPickerTable.kt b/core/src/com/unciv/ui/newgamescreen/PlayerPickerTable.kt index bcf2ff130d..f77f9fa035 100644 --- a/core/src/com/unciv/ui/newgamescreen/PlayerPickerTable.kt +++ b/core/src/com/unciv/ui/newgamescreen/PlayerPickerTable.kt @@ -34,6 +34,8 @@ class PlayerPickerTable(val newGameScreen: NewGameScreen, val newGameParameters: val gameBasics = newGameScreen.ruleset // the mod picking changes this ruleset reassignRemovedModReferences() + if(newGameParameters.players.size>newGameScreen.ruleset.nations.size) + newGameParameters.players=newGameParameters.players.subList(0,newGameScreen.ruleset.nations.size) if (desiredCiv.isNotEmpty()) assignDesiredCiv(desiredCiv) for (player in newGameParameters.players) {