From b57a6f65fe16698c876f4c3cfa2060ca9c692e8b Mon Sep 17 00:00:00 2001 From: Duan Tao Date: Sat, 29 Dec 2018 10:52:01 +0800 Subject: [PATCH] Improvement part2, for great general actions. --- .../src/com/unciv/logic/automation/UnitAutomation.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/core/src/com/unciv/logic/automation/UnitAutomation.kt b/core/src/com/unciv/logic/automation/UnitAutomation.kt index ab6ad524ae..f4ef25c393 100644 --- a/core/src/com/unciv/logic/automation/UnitAutomation.kt +++ b/core/src/com/unciv/logic/automation/UnitAutomation.kt @@ -401,14 +401,14 @@ class SpecificUnitAutomation{ fun automateGeneral(unit: MapUnit){ //try to follow nearby units. Do not garrison in city if possible - val militantToCompany = unit.civInfo.getCivUnits() - .firstOrNull { val tile = it.currentTile - it.type.isLandUnit() && it.getMaxMovement() <= 2.0f - && (tile.civilianUnit == null || tile.civilianUnit == unit) - && unit.canMoveTo(tile) && !tile.isCityCenter() && unit.movementAlgs().canReach(tile) } + val militantToCompany = unit.getDistanceToTiles().map { it.key } + .firstOrNull {val militant = it.militaryUnit; + militant != null && militant.civInfo == unit.civInfo + && (it.civilianUnit == null || it.civilianUnit == unit) + && militant.getMaxMovement() <= 2.0f && !it.isCityCenter()} if(militantToCompany!=null) { - unit.movementAlgs().headTowards(militantToCompany.currentTile) + unit.movementAlgs().headTowards(militantToCompany) return }