Embarked units now have era-based defensive strength (like in original civ)

This commit is contained in:
Yair Morgenstern 2019-02-09 23:06:13 +02:00
parent d9fb3fdb2c
commit ae7cbcb3c9
2 changed files with 5 additions and 1 deletions

View File

@ -133,7 +133,11 @@ class BattleDamage{
} }
fun getDefenceModifiers(attacker: ICombatant, defender: MapUnitCombatant): HashMap<String, Float> { fun getDefenceModifiers(attacker: ICombatant, defender: MapUnitCombatant): HashMap<String, Float> {
if(defender.unit.isEmbarked()) // embarked units get no defensive modifiers
return HashMap()
val modifiers = getGeneralModifiers(defender, attacker) val modifiers = getGeneralModifiers(defender, attacker)
if (!(defender.unit.hasUnique("No defensive terrain bonus"))) { if (!(defender.unit.hasUnique("No defensive terrain bonus"))) {
val tileDefenceBonus = defender.getTile().getDefensiveBonus() val tileDefenceBonus = defender.getTile().getDefensiveBonus()
if (tileDefenceBonus > 0) modifiers["Terrain"] = tileDefenceBonus if (tileDefenceBonus > 0) modifiers["Terrain"] = tileDefenceBonus

View File

@ -26,7 +26,7 @@ class MapUnitCombatant(val unit: MapUnit) : ICombatant {
} }
override fun getDefendingStrength(): Int { override fun getDefendingStrength(): Int {
if(unit.isEmbarked()) return 0 if(unit.isEmbarked()) return 5 * getCivInfo().getEra().ordinal
return unit.baseUnit().strength return unit.baseUnit().strength
} }