diff --git a/buildSrc/src/main/kotlin/BuildConfig.kt b/buildSrc/src/main/kotlin/BuildConfig.kt index c8784d3810..86a63b6112 100644 --- a/buildSrc/src/main/kotlin/BuildConfig.kt +++ b/buildSrc/src/main/kotlin/BuildConfig.kt @@ -3,8 +3,8 @@ package com.unciv.build object BuildConfig { const val kotlinVersion = "1.3.71" const val appName = "Unciv" - const val appCodeNumber = 499 - const val appVersion = "3.11.13" + const val appCodeNumber = 500 + const val appVersion = "3.11.14" const val gdxVersion = "1.9.12" const val roboVMVersion = "2.3.1" diff --git a/changelog.md b/changelog.md index 5a0386669d..915618561a 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,15 @@ +## 3.11.14 + +500th version, my goodness 0_0 + +Resolved #3330 - Fixed black images on specific chipsets + +Multiple framerate improvement tricks - should feel smoother! + +Hide hotkeys on devices without keyboard - by jnecus + +Fixed a few more crash possibilities from badly configured mods + ## 3.11.13 Probably solved the Mysterious Disappearing C's once and for all! #3327 diff --git a/core/src/com/unciv/logic/map/MapUnit.kt b/core/src/com/unciv/logic/map/MapUnit.kt index 8c216b9fea..0b31ee359e 100644 --- a/core/src/com/unciv/logic/map/MapUnit.kt +++ b/core/src/com/unciv/logic/map/MapUnit.kt @@ -493,7 +493,7 @@ class MapUnit { if(!hasUnique("All healing effects doubled") && type.isLandUnit() && type.isMilitary()) { val gainDoubleHealPromotion = tile.neighbors .any { it.containsUnique("Grants Rejuvenation (all healing effects doubled) to adjacent military land units for the rest of the game") } - if (gainDoubleHealPromotion) + if (gainDoubleHealPromotion && civInfo.gameInfo.ruleSet.unitPromotions.containsKey("Rejuvenation")) promotions.addPromotion("Rejuvenation", true) } @@ -574,14 +574,17 @@ class MapUnit { civInfo.addNotification("We have discovered the lost technology of [$tech] in the ruins!", tile.position, Color.BLUE) } - actions.add { - val chosenUnit = listOf(Constants.settler, Constants.worker, "Warrior") - .filter { civInfo.gameInfo.ruleSet.units.containsKey(it) }.random(tileBasedRandom) - if (!(civInfo.isCityState() || civInfo.isOneCityChallenger()) || chosenUnit != Constants.settler) { //City-States and OCC don't get settler from ruins - civInfo.placeUnitNearTile(tile.position, chosenUnit) - civInfo.addNotification("A [$chosenUnit] has joined us!", tile.position, Color.BROWN) + + val possibleUnits = listOf(Constants.settler, Constants.worker, "Warrior") + .filter { civInfo.gameInfo.ruleSet.units.containsKey(it) } + if(possibleUnits.isNotEmpty()) + actions.add { + val chosenUnit = possibleUnits.random(tileBasedRandom) + if (!(civInfo.isCityState() || civInfo.isOneCityChallenger()) || chosenUnit != Constants.settler) { //City-States and OCC don't get settler from ruins + civInfo.placeUnitNearTile(tile.position, chosenUnit) + civInfo.addNotification("A [$chosenUnit] has joined us!", tile.position, Color.BROWN) + } } - } if (!type.isCivilian()) actions.add { diff --git a/core/src/com/unciv/ui/worldscreen/WorldScreen.kt b/core/src/com/unciv/ui/worldscreen/WorldScreen.kt index 2a7f84edcd..e677eb96dc 100644 --- a/core/src/com/unciv/ui/worldscreen/WorldScreen.kt +++ b/core/src/com/unciv/ui/worldscreen/WorldScreen.kt @@ -630,7 +630,7 @@ class WorldScreen(val viewingCiv:CivilizationInfo) : CameraStageBaseScreen() { update() showTutorialsOnNextTurn() } - topBar.selectedCivLabel.setText(Gdx.graphics.framesPerSecond) // for framerate testing +// topBar.selectedCivLabel.setText(Gdx.graphics.framesPerSecond) // for framerate testing super.render(delta) }