mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-17 03:09:27 +07:00
Demographics removed - resolves #8215
This commit is contained in:
@ -709,7 +709,6 @@ off =
|
|||||||
Show pixel units =
|
Show pixel units =
|
||||||
Show pixel improvements =
|
Show pixel improvements =
|
||||||
Enable Nuclear Weapons =
|
Enable Nuclear Weapons =
|
||||||
Experimental Demographics scoreboard =
|
|
||||||
Unit icon opacity =
|
Unit icon opacity =
|
||||||
Show zoom buttons in world screen =
|
Show zoom buttons in world screen =
|
||||||
Enable display cutout (requires restart) =
|
Enable display cutout (requires restart) =
|
||||||
@ -1261,8 +1260,6 @@ Capture [cityName] =
|
|||||||
Our status =
|
Our status =
|
||||||
Global status =
|
Global status =
|
||||||
Rankings =
|
Rankings =
|
||||||
Demographics =
|
|
||||||
Demographic =
|
|
||||||
Rank =
|
Rank =
|
||||||
Value =
|
Value =
|
||||||
Best =
|
Best =
|
||||||
|
@ -67,7 +67,6 @@ class GameSettings {
|
|||||||
var windowState = WindowState()
|
var windowState = WindowState()
|
||||||
var isFreshlyCreated = false
|
var isFreshlyCreated = false
|
||||||
var visualMods = HashSet<String>()
|
var visualMods = HashSet<String>()
|
||||||
var useDemographics: Boolean = false
|
|
||||||
var showZoomButtons: Boolean = false
|
var showZoomButtons: Boolean = false
|
||||||
|
|
||||||
var notificationsLogMaxTurns = 5
|
var notificationsLogMaxTurns = 5
|
||||||
|
@ -36,7 +36,6 @@ fun displayTab(
|
|||||||
optionsPopup.addCheckbox(this, "Show resources and improvements", settings.showResourcesAndImprovements, true) { settings.showResourcesAndImprovements = it }
|
optionsPopup.addCheckbox(this, "Show resources and improvements", settings.showResourcesAndImprovements, true) { settings.showResourcesAndImprovements = it }
|
||||||
optionsPopup.addCheckbox(this, "Show tutorials", settings.showTutorials, true) { settings.showTutorials = it }
|
optionsPopup.addCheckbox(this, "Show tutorials", settings.showTutorials, true) { settings.showTutorials = it }
|
||||||
optionsPopup.addCheckbox(this, "Show pixel improvements", settings.showPixelImprovements, true) { settings.showPixelImprovements = it }
|
optionsPopup.addCheckbox(this, "Show pixel improvements", settings.showPixelImprovements, true) { settings.showPixelImprovements = it }
|
||||||
optionsPopup.addCheckbox(this, "Experimental Demographics scoreboard", settings.useDemographics, true) { settings.useDemographics = it }
|
|
||||||
optionsPopup.addCheckbox(this, "Show zoom buttons in world screen", settings.showZoomButtons, true) { settings.showZoomButtons = it }
|
optionsPopup.addCheckbox(this, "Show zoom buttons in world screen", settings.showZoomButtons, true) { settings.showZoomButtons = it }
|
||||||
|
|
||||||
addMinimapSizeSlider(this, settings, optionsPopup.selectBoxMinWidth)
|
addMinimapSizeSlider(this, settings, optionsPopup.selectBoxMinWidth)
|
||||||
|
@ -38,7 +38,7 @@ class VictoryScreen(val worldScreen: WorldScreen) : PickerScreen() {
|
|||||||
val setGlobalVictoryButton = "Global status".toTextButton().onClick { setGlobalVictoryTable() }
|
val setGlobalVictoryButton = "Global status".toTextButton().onClick { setGlobalVictoryTable() }
|
||||||
tabsTable.add(setGlobalVictoryButton)
|
tabsTable.add(setGlobalVictoryButton)
|
||||||
|
|
||||||
val rankingLabel = if (UncivGame.Current.settings.useDemographics) "Demographics" else "Rankings"
|
val rankingLabel = "Rankings"
|
||||||
val setCivRankingsButton = rankingLabel.toTextButton().onClick { setCivRankingsTable() }
|
val setCivRankingsButton = rankingLabel.toTextButton().onClick { setCivRankingsTable() }
|
||||||
tabsTable.add(setCivRankingsButton)
|
tabsTable.add(setCivRankingsButton)
|
||||||
topTable.add(tabsTable)
|
topTable.add(tabsTable)
|
||||||
@ -182,59 +182,9 @@ class VictoryScreen(val worldScreen: WorldScreen) : PickerScreen() {
|
|||||||
private fun setCivRankingsTable() {
|
private fun setCivRankingsTable() {
|
||||||
val majorCivs = gameInfo.civilizations.filter { it.isMajorCiv() }
|
val majorCivs = gameInfo.civilizations.filter { it.isMajorCiv() }
|
||||||
contentsTable.clear()
|
contentsTable.clear()
|
||||||
|
contentsTable.add(buildRankingsTable(majorCivs))
|
||||||
if (UncivGame.Current.settings.useDemographics) contentsTable.add(buildDemographicsTable(majorCivs))
|
|
||||||
else contentsTable.add(buildRankingsTable(majorCivs))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
enum class RankLabels { Rank, Value, Best, Average, Worst}
|
|
||||||
private fun buildDemographicsTable(majorCivs: List<CivilizationInfo>): Table {
|
|
||||||
val demographicsTable = Table().apply { defaults().pad(5f) }
|
|
||||||
buildDemographicsHeaders(demographicsTable)
|
|
||||||
|
|
||||||
for (rankLabel in RankLabels.values()) {
|
|
||||||
demographicsTable.row()
|
|
||||||
demographicsTable.add(rankLabel.name.toLabel())
|
|
||||||
|
|
||||||
for (category in RankingType.values()) {
|
|
||||||
val aliveMajorCivsSorted = majorCivs.filter{ it.isAlive() }.sortedByDescending { it.getStatForRanking(category) }
|
|
||||||
|
|
||||||
fun addRankCivGroup(civ: CivilizationInfo) { // local function for reuse of getting and formatting civ stats
|
|
||||||
demographicsTable.add(getCivGroup(civ, ": " + civ.getStatForRanking(category).toString(), playerCivInfo)).fillX()
|
|
||||||
}
|
|
||||||
|
|
||||||
@Suppress("NON_EXHAUSTIVE_WHEN") // RankLabels.Demographic treated above
|
|
||||||
when (rankLabel) {
|
|
||||||
RankLabels.Rank -> demographicsTable.add((aliveMajorCivsSorted.indexOfFirst { it == worldScreen.viewingCiv } + 1).toLabel())
|
|
||||||
RankLabels.Value -> addRankCivGroup(worldScreen.viewingCiv)
|
|
||||||
RankLabels.Best -> addRankCivGroup(aliveMajorCivsSorted.firstOrNull()!!)
|
|
||||||
RankLabels.Average -> demographicsTable.add((aliveMajorCivsSorted.sumOf { it.getStatForRanking(category) } / aliveMajorCivsSorted.size).toLabel())
|
|
||||||
RankLabels.Worst -> addRankCivGroup(aliveMajorCivsSorted.lastOrNull()!!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return demographicsTable
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun buildDemographicsHeaders(demographicsTable: Table) {
|
|
||||||
val demoLabel = Table().apply { defaults().pad(5f) }
|
|
||||||
|
|
||||||
demoLabel.add("Demographic".toLabel()).row()
|
|
||||||
demoLabel.addSeparator().fillX()
|
|
||||||
demographicsTable.add(demoLabel)
|
|
||||||
|
|
||||||
for (category in RankingType.values()) {
|
|
||||||
val headers = Table().apply { defaults().pad(5f) }
|
|
||||||
val textAndIcon = Table().apply { defaults() }
|
|
||||||
val columnImage = category.getImage()
|
|
||||||
if (columnImage != null) textAndIcon.add(columnImage).center().size(Constants.defaultFontSize.toFloat() * 0.75f).padRight(2f).padTop(-2f)
|
|
||||||
textAndIcon.add(category.name.replace('_', ' ').toLabel()).row()
|
|
||||||
headers.add(textAndIcon)
|
|
||||||
headers.addSeparator()
|
|
||||||
demographicsTable.add(headers)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun buildRankingsTable(majorCivs: List<CivilizationInfo>): Table {
|
private fun buildRankingsTable(majorCivs: List<CivilizationInfo>): Table {
|
||||||
val rankingsTable = Table().apply { defaults().pad(5f) }
|
val rankingsTable = Table().apply { defaults().pad(5f) }
|
||||||
|
Reference in New Issue
Block a user