diff --git a/core/src/com/unciv/ui/worldscreen/WorldScreen.kt b/core/src/com/unciv/ui/worldscreen/WorldScreen.kt index 8341086f93..bc38cdd1cb 100644 --- a/core/src/com/unciv/ui/worldscreen/WorldScreen.kt +++ b/core/src/com/unciv/ui/worldscreen/WorldScreen.kt @@ -427,7 +427,8 @@ class WorldScreen( UncivGame.Current.pushScreen(DiplomaticVoteResultScreen(gameInfo.diplomaticVictoryVotesCast, viewingCiv)) !gameInfo.oneMoreTurnMode && (viewingCiv.isDefeated() || gameInfo.civilizations.any { it.victoryManager.hasWon() }) -> game.pushScreen(VictoryScreen(this)) - viewingCiv.greatPeople.freeGreatPeople > 0 -> game.pushScreen(GreatPersonPickerScreen(viewingCiv)) + viewingCiv.greatPeople.freeGreatPeople > 0 -> + game.pushScreen(GreatPersonPickerScreen(viewingCiv)) viewingCiv.popupAlerts.any() -> AlertPopup(this, viewingCiv.popupAlerts.first()).open() viewingCiv.tradeRequests.isNotEmpty() -> { // In the meantime this became invalid, perhaps because we accepted previous trades @@ -789,7 +790,8 @@ class WorldScreen( Gdx.input.inputProcessor = null update() showTutorialsOnNextTurn() - Gdx.input.inputProcessor = stage + if (Gdx.input.inputProcessor == null) // Update may have replaced the worldscreen with a GreatPersonPickerScreen etc, so the input would already be set + Gdx.input.inputProcessor = stage } // topBar.selectedCivLabel.setText(Gdx.graphics.framesPerSecond) // for framerate testing