mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-06 00:09:23 +07:00
Fixed #457 - AI naval units would fortify
This commit is contained in:
@ -21,8 +21,8 @@ android {
|
|||||||
applicationId "com.unciv.app"
|
applicationId "com.unciv.app"
|
||||||
minSdkVersion 14
|
minSdkVersion 14
|
||||||
targetSdkVersion 28
|
targetSdkVersion 28
|
||||||
versionCode 204
|
versionCode 205
|
||||||
versionName "2.13.4"
|
versionName "2.13.5"
|
||||||
}
|
}
|
||||||
|
|
||||||
// Had to add this crap for Travis to build, it wanted to sign the app
|
// Had to add this crap for Travis to build, it wanted to sign the app
|
||||||
|
@ -4,8 +4,8 @@ import com.unciv.UnCivGame
|
|||||||
import com.unciv.logic.battle.*
|
import com.unciv.logic.battle.*
|
||||||
import com.unciv.logic.city.CityInfo
|
import com.unciv.logic.city.CityInfo
|
||||||
import com.unciv.logic.civilization.CivilizationInfo
|
import com.unciv.logic.civilization.CivilizationInfo
|
||||||
import com.unciv.logic.civilization.diplomacy.DiplomaticStatus
|
|
||||||
import com.unciv.logic.civilization.GreatPersonManager
|
import com.unciv.logic.civilization.GreatPersonManager
|
||||||
|
import com.unciv.logic.civilization.diplomacy.DiplomaticStatus
|
||||||
import com.unciv.logic.map.MapUnit
|
import com.unciv.logic.map.MapUnit
|
||||||
import com.unciv.logic.map.TileInfo
|
import com.unciv.logic.map.TileInfo
|
||||||
import com.unciv.models.gamebasics.GameBasics
|
import com.unciv.models.gamebasics.GameBasics
|
||||||
@ -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.hasUnique("No defensive terrain bonus") && !unit.isFortified() ){
|
if(unit.currentMovement>0 && !unit.isFortified() && unit.canFortify()){
|
||||||
unit.action="Fortify 0"
|
unit.action="Fortify 0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -245,6 +245,14 @@ class MapUnit {
|
|||||||
return goldCostOfUpgrade
|
return goldCostOfUpgrade
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
fun canFortify(): Boolean {
|
||||||
|
if(type.isWaterUnit()) return false
|
||||||
|
if(isEmbarked()) return false
|
||||||
|
if(hasUnique("No defensive terrain bonus")) return false
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
|
|
||||||
//region state-changing functions
|
//region state-changing functions
|
||||||
@ -446,5 +454,6 @@ class MapUnit {
|
|||||||
this.civInfo=civInfo
|
this.civInfo=civInfo
|
||||||
civInfo.addUnit(this)
|
civInfo.addUnit(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
}
|
}
|
Reference in New Issue
Block a user