mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-28 14:24:43 -04:00
Unified canFortify() checks
This commit is contained in:
parent
2313f72cac
commit
973c1693c8
@ -107,7 +107,7 @@ class UnitAutomation{
|
|||||||
val bestTileForHealing = bestTilesForHealing.maxBy { it.getDefensiveBonus() }!!
|
val bestTileForHealing = bestTilesForHealing.maxBy { it.getDefensiveBonus() }!!
|
||||||
if(unitTile!=bestTileForHealing && rankTileForHealing(bestTileForHealing,unit)>rankTileForHealing(unitTile,unit))
|
if(unitTile!=bestTileForHealing && rankTileForHealing(bestTileForHealing,unit)>rankTileForHealing(unitTile,unit))
|
||||||
unit.moveToTile(bestTileForHealing)
|
unit.moveToTile(bestTileForHealing)
|
||||||
if(unit.currentMovement>0 && !unit.isFortified() && unit.canFortify()){
|
if(unit.currentMovement>0 && unit.canFortify()){
|
||||||
unit.action="Fortify 0"
|
unit.action="Fortify 0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -248,8 +248,10 @@ class MapUnit {
|
|||||||
|
|
||||||
fun canFortify(): Boolean {
|
fun canFortify(): Boolean {
|
||||||
if(type.isWaterUnit()) return false
|
if(type.isWaterUnit()) return false
|
||||||
|
if(type.isCivilian()) return false
|
||||||
if(isEmbarked()) return false
|
if(isEmbarked()) return false
|
||||||
if(hasUnique("No defensive terrain bonus")) return false
|
if(hasUnique("No defensive terrain bonus")) return false
|
||||||
|
if(isFortified()) return false
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,13 +37,12 @@ class UnitActions {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!unit.type.isCivilian() && !unit.isEmbarked() && !unit.type.isWaterUnit()
|
if(unit.canFortify()) {
|
||||||
&& !unit.hasUnique("No defensive terrain bonus") && !unit.isFortified()) {
|
|
||||||
actionList += UnitAction("Fortify", unit.currentMovement >0)
|
actionList += UnitAction("Fortify", unit.currentMovement >0)
|
||||||
{ unit.action = "Fortify 0" }.sound("fortify")
|
{ unit.action = "Fortify 0" }.sound("fortify")
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!unit.isFortified() && actionList.none{it.name=="Fortify"} && unit.action!="Sleep") {
|
if(!unit.isFortified() && !unit.canFortify() && unit.action!="Sleep") {
|
||||||
actionList += UnitAction("Sleep",unit.currentMovement >0) { unit.action = "Sleep" }
|
actionList += UnitAction("Sleep",unit.currentMovement >0) { unit.action = "Sleep" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user