AI prioritizes work boats, and creates work boats for close non-contiguous cities

This commit is contained in:
Yair Morgenstern 2023-06-14 09:48:32 +03:00
parent e558ebcc59
commit b776790556

View File

@ -3,15 +3,15 @@ package com.unciv.logic.automation.city
import com.unciv.logic.automation.Automation
import com.unciv.logic.automation.civilization.NextTurnAutomation
import com.unciv.logic.city.CityConstructions
import com.unciv.models.ruleset.INonPerpetualConstruction
import com.unciv.models.ruleset.PerpetualConstruction
import com.unciv.logic.civilization.CityAction
import com.unciv.logic.civilization.NotificationCategory
import com.unciv.logic.civilization.NotificationIcon
import com.unciv.logic.civilization.PlayerType
import com.unciv.logic.map.BFS
import com.unciv.models.ruleset.Building
import com.unciv.models.ruleset.INonPerpetualConstruction
import com.unciv.models.ruleset.MilestoneType
import com.unciv.models.ruleset.PerpetualConstruction
import com.unciv.models.ruleset.Victory
import com.unciv.models.ruleset.unique.StateForConditionals
import com.unciv.models.ruleset.unique.UniqueType
@ -159,9 +159,10 @@ class ConstructionAutomation(val cityConstructions: CityConstructions){
val bfs = BFS(cityInfo.getCenterTile()) {
(it.isWater || it.isCityCenter()) && it.isFriendlyTerritory(civInfo)
(it.isWater || it.isCityCenter()) && (it.getOwner() == null || it.isFriendlyTerritory(civInfo))
}
repeat(10) { bfs.nextStep() }
repeat(20) { bfs.nextStep() } //
if (!bfs.getReachedTiles()
.any { tile ->
tile.hasViewableResource(civInfo) && tile.improvement == null && tile.getOwner() == civInfo