From bebc769120882c0f7beb881adcd8e15fa24dda1f Mon Sep 17 00:00:00 2001 From: SomeTroglodyte <63000004+SomeTroglodyte@users.noreply.github.com> Date: Thu, 27 Jun 2024 22:26:26 +0200 Subject: [PATCH] Treat compilation warnings (#11741) * Treat compilation warnings * Finish treating compiler warnings for now --- .../automation/city/ConstructionAutomation.kt | 1 + .../logic/automation/unit/RoadToAutomation.kt | 1 + .../logic/automation/unit/UnitAutomation.kt | 4 ++-- core/src/com/unciv/logic/map/MapPathing.kt | 18 +++++++++--------- .../com/unciv/models/ruleset/nation/Nation.kt | 2 +- .../objectdescriptions/BuildingDescriptions.kt | 2 +- .../cityscreen/ConstructionInfoTable.kt | 9 +++++---- 7 files changed, 20 insertions(+), 17 deletions(-) diff --git a/core/src/com/unciv/logic/automation/city/ConstructionAutomation.kt b/core/src/com/unciv/logic/automation/city/ConstructionAutomation.kt index dbfb2602fd..8f9359b800 100644 --- a/core/src/com/unciv/logic/automation/city/ConstructionAutomation.kt +++ b/core/src/com/unciv/logic/automation/city/ConstructionAutomation.kt @@ -277,6 +277,7 @@ class ConstructionAutomation(val cityConstructions: CityConstructions) { } + @Suppress("UNUSED_PARAMETER") // stub for future use private fun applyOnetimeUniqueBonuses(building: Building): Float { var value = 0f // TODO: Add specific Uniques here diff --git a/core/src/com/unciv/logic/automation/unit/RoadToAutomation.kt b/core/src/com/unciv/logic/automation/unit/RoadToAutomation.kt index d63c5ad61f..ce93d65018 100644 --- a/core/src/com/unciv/logic/automation/unit/RoadToAutomation.kt +++ b/core/src/com/unciv/logic/automation/unit/RoadToAutomation.kt @@ -31,6 +31,7 @@ class RoadToAutomation(val civInfo: Civilization) { */ // TODO: Caching // TODO: Hide the automate road button if road is not unlocked + @Suppress("UNUSED_PARAMETER") // tilesWhereWeWillBeCaptured may be useful in the future fun automateConnectRoad(unit: MapUnit, tilesWhereWeWillBeCaptured: Set){ if (actualBestRoadAvailable == RoadStatus.None) return diff --git a/core/src/com/unciv/logic/automation/unit/UnitAutomation.kt b/core/src/com/unciv/logic/automation/unit/UnitAutomation.kt index 2ddb477479..397ec27ef2 100644 --- a/core/src/com/unciv/logic/automation/unit/UnitAutomation.kt +++ b/core/src/com/unciv/logic/automation/unit/UnitAutomation.kt @@ -506,7 +506,7 @@ object UnitAutomation { fun hasPreparationFlag(targetCiv: Civilization): Boolean { val diploManager = civInfo.getDiplomacyManager(targetCiv)!! - if (diploManager.hasFlag(DiplomacyFlags.Denunciation) + if (diploManager.hasFlag(DiplomacyFlags.Denunciation) || diploManager.otherCivDiplomacy().hasFlag(DiplomacyFlags.Denunciation)) return true if (diploManager.hasFlag(DiplomacyFlags.WaryOf) && diploManager.getFlag(DiplomacyFlags.WaryOf) < 0) return true return false @@ -517,7 +517,7 @@ object UnitAutomation { .sortedBy { unit.getTile().aerialDistanceTo(it.city1.getCenterTile()) } // Move to the closest city with a tile we can enter nearby - for ((city, enemyCity) in citiesToDefend) { + for ((city, _) in citiesToDefend) { if (unit.getTile().aerialDistanceTo(city.getCenterTile()) <= 2) return true val tileToMoveTo = city.getCenterTile().getTilesInDistance(2).firstOrNull { unit.movement.canMoveTo(it) && unit.movement.canReach(it) } ?: continue unit.movement.headTowards(tileToMoveTo) diff --git a/core/src/com/unciv/logic/map/MapPathing.kt b/core/src/com/unciv/logic/map/MapPathing.kt index 37a90a4301..f2aac3dacf 100644 --- a/core/src/com/unciv/logic/map/MapPathing.kt +++ b/core/src/com/unciv/logic/map/MapPathing.kt @@ -14,6 +14,7 @@ object MapPathing { * to upgrade it to a railroad, we consider it to be a railroad for pathing since it will be upgraded. * Otherwise, we set every tile to have equal value since building a road on any of them makes the original movement cost irrelevant. */ + @Suppress("UNUSED_PARAMETER") // While `from` is unused, this function should stay close to the signatures expected by the AStar and getPath `heuristic` parameter. private fun roadPreferredMovementCost(unit: MapUnit, from: Tile, to: Tile): Float{ // hasRoadConnection accounts for civs that treat jungle/forest as roads // Ignore road over river penalties. @@ -30,8 +31,8 @@ object MapPathing { && !tile.isImpassible() && unit.civ.hasExplored(tile) && tile.canCivPassThrough(unit.civ) - && (tile.hasRoadConnection(unit.civ, false) - || tile.hasRailroadConnection(false) + && (tile.hasRoadConnection(unit.civ, false) + || tile.hasRailroadConnection(false) || tile.improvementFunctions.canBuildImprovement(roadImprovement, unit.civ)) || tile.improvementFunctions.canBuildImprovement(railRoadImprovement, unit.civ) } @@ -51,9 +52,8 @@ object MapPathing { startTile, endTile, ::isValidRoadPathTile, - ::roadPreferredMovementCost, - {_, _, _ -> 0f} - ) + ::roadPreferredMovementCost + ) { _, _, _ -> 0f } } /** @@ -102,16 +102,16 @@ object MapPathing { * Gets the connection to the end tile. This does not take into account tile movement costs. * Takes in a civilization instead of a specific unit. */ - fun getConnection(civ: Civilization, + fun getConnection(civ: Civilization, startTile: Tile, endTile: Tile, predicate: (Civilization, Tile) -> Boolean ): List? { val astar = AStar( startTile, - { tile -> predicate(civ, tile) }, - { from, to -> 1f }, - { from, to -> from.aerialDistanceTo(to).toFloat() } + predicate = { tile -> predicate(civ, tile) }, + cost = { _, _ -> 1f }, + heuristic = { from, to -> from.aerialDistanceTo(to).toFloat() } ) while (true) { if (astar.hasEnded()) { diff --git a/core/src/com/unciv/models/ruleset/nation/Nation.kt b/core/src/com/unciv/models/ruleset/nation/Nation.kt index 8aa0863033..2fdf3cabef 100644 --- a/core/src/com/unciv/models/ruleset/nation/Nation.kt +++ b/core/src/com/unciv/models/ruleset/nation/Nation.kt @@ -199,7 +199,7 @@ class Nation : RulesetObject() { if (building.replaces != null && ruleset.buildings.containsKey(building.replaces!!)) { val originalBuilding = ruleset.buildings[building.replaces!!]!! yield(FormattedLine("Replaces [${originalBuilding.name}]", link = originalBuilding.makeLink(), indent = 1)) - yieldAll(BuildingDescriptions.getDifferences(ruleset, originalBuilding, building)) + yieldAll(BuildingDescriptions.getDifferences(originalBuilding, building)) yield(FormattedLine()) } else if (building.replaces != null) { yield(FormattedLine("Replaces [${building.replaces}], which is not found in the ruleset!", indent = 1)) diff --git a/core/src/com/unciv/ui/objectdescriptions/BuildingDescriptions.kt b/core/src/com/unciv/ui/objectdescriptions/BuildingDescriptions.kt index 60e63cb7e3..0c13debd2f 100644 --- a/core/src/com/unciv/ui/objectdescriptions/BuildingDescriptions.kt +++ b/core/src/com/unciv/ui/objectdescriptions/BuildingDescriptions.kt @@ -118,7 +118,7 @@ object BuildingDescriptions { * @param replacementBuilding The "uniqueTo" Building */ fun getDifferences( - ruleset: Ruleset, originalBuilding: Building, replacementBuilding: Building + originalBuilding: Building, replacementBuilding: Building ): Sequence = sequence { for ((key, value) in replacementBuilding) if (value != originalBuilding[key]) diff --git a/core/src/com/unciv/ui/screens/cityscreen/ConstructionInfoTable.kt b/core/src/com/unciv/ui/screens/cityscreen/ConstructionInfoTable.kt index 9626e26f1c..2d3803c868 100644 --- a/core/src/com/unciv/ui/screens/cityscreen/ConstructionInfoTable.kt +++ b/core/src/com/unciv/ui/screens/cityscreen/ConstructionInfoTable.kt @@ -104,10 +104,11 @@ class ConstructionInfoTable(val cityScreen: CityScreen) : Table() { cityScreen.canChangeState && (!cityScreen.city.hasSoldBuildingThisTurn || cityScreen.city.civ.gameInfo.gameParameters.godMode) sellBuildingButton.isEnabled = enableSell - if (sellBuildingButton.isEnabled) sellBuildingButton.onClick(UncivSound.Coin) { - sellBuildingButton.disable() - sellBuildingClicked(construction, sellText) - } + if (enableSell) + sellBuildingButton.onClick(UncivSound.Coin) { + sellBuildingButton.disable() + sellBuildingClicked(construction, sellText) + } if (cityScreen.city.hasSoldBuildingThisTurn && !cityScreen.city.civ.gameInfo.gameParameters.godMode || cityScreen.city.isPuppet