mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-04 15:27:50 +07:00
Hide Unmet Civ and Capital Names in the Victory Status Screen (#6742)
* Hide the names of unmet yet alive civs in the victory screen. Mainly affects the DestroyAllPlayers victory but the CaptureAllCapitals (as capital name) and WorldReligion victory code is updated accordingly. * Redundant condition since dead civs can't hold cities. * Formatting + undid CaptureAllCapitals name obscuring since there could be some cases where the known capital name suddenly becomes unknown. * Parameterized if statement * Hide other capital names until the tile is explored. * New constant for an unknown city name. Co-authored-by: OptimizedForDensity <>
This commit is contained in:

committed by
GitHub

parent
531906f5ba
commit
5a78c59405
@ -43,6 +43,7 @@ object Constants {
|
||||
const val openBorders = "Open Borders"
|
||||
const val random = "Random"
|
||||
const val unknownNationName = "???"
|
||||
const val unknownCityName = "???"
|
||||
|
||||
const val fort = "Fort"
|
||||
|
||||
|
@ -2,6 +2,7 @@ package com.unciv.models.ruleset
|
||||
|
||||
import com.badlogic.gdx.graphics.Color
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.TextButton
|
||||
import com.unciv.Constants
|
||||
import com.unciv.models.stats.INamed
|
||||
import com.unciv.logic.civilization.CivilizationInfo
|
||||
import com.unciv.models.Counter
|
||||
@ -202,14 +203,20 @@ class Milestone(val uniqueDescription: String, private val parentVictory: Victor
|
||||
MilestoneType.DestroyAllPlayers -> {
|
||||
val majorCivs = civInfo.gameInfo.civilizations.filter { it.isMajorCiv() && it != civInfo }
|
||||
for (civ in majorCivs) {
|
||||
buttons.add(getMilestoneButton("Destroy [${civ.civName}]", !civ.isAlive()))
|
||||
val milestoneText =
|
||||
if (civInfo.knows(civ) || !civ.isAlive()) "Destroy [${civ.civName}]"
|
||||
else "Destroy [${Constants.unknownNationName}]"
|
||||
buttons.add(getMilestoneButton(milestoneText, !civ.isAlive()))
|
||||
}
|
||||
}
|
||||
|
||||
MilestoneType.CaptureAllCapitals -> {
|
||||
val originalCapitals = civInfo.gameInfo.getCities().filter { it.isOriginalCapital }
|
||||
for (city in originalCapitals) {
|
||||
buttons.add(getMilestoneButton("Capture [${city.name}]", city.civInfo == civInfo))
|
||||
val milestoneText =
|
||||
if (civInfo.exploredTiles.contains(city.location)) "Capture [${city.name}]"
|
||||
else "Capture [${Constants.unknownCityName}]"
|
||||
buttons.add(getMilestoneButton(milestoneText, city.civInfo == civInfo))
|
||||
}
|
||||
}
|
||||
|
||||
@ -223,10 +230,11 @@ class Milestone(val uniqueDescription: String, private val parentVictory: Victor
|
||||
val majorCivs = civInfo.gameInfo.civilizations.filter { it.isMajorCiv() }
|
||||
val civReligion = civInfo.religionManager.religion
|
||||
for (civ in majorCivs) {
|
||||
if (civReligion == null || (civReligion.isPantheon() && civInfo != civ) || !civ.religionManager.isMajorityReligionForCiv(civReligion))
|
||||
buttons.add(getMilestoneButton("Majority religion of [${civ.civName}]", false))
|
||||
else
|
||||
buttons.add(getMilestoneButton("Majority religion of [${civ.civName}]", true))
|
||||
val milestoneText =
|
||||
if (civInfo.knows(civ) || !civ.isAlive()) "Majority religion of [${civ.civName}]"
|
||||
else "Majority religion of [${Constants.unknownNationName}]"
|
||||
val milestoneMet = (civReligion != null && (!civReligion.isPantheon() || civInfo == civ) && civ.religionManager.isMajorityReligionForCiv(civReligion))
|
||||
buttons.add(getMilestoneButton(milestoneText, milestoneMet))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user