diff --git a/src/main/java/forge/game/ai/ComputerUtilCombat.java b/src/main/java/forge/game/ai/ComputerUtilCombat.java index 1bda899a2aa..df536ac53a4 100644 --- a/src/main/java/forge/game/ai/ComputerUtilCombat.java +++ b/src/main/java/forge/game/ai/ComputerUtilCombat.java @@ -1695,14 +1695,18 @@ public class ComputerUtilCombat { Card lastBlocker = null; for (final Card b : block) { lastBlocker = b; - final int enoughDamageToKill = ComputerUtilCombat.getEnoughDamageToKill(b, dmgCanDeal, attacker, true); - if (enoughDamageToKill <= dmgCanDeal) { - damageMap.put(b, enoughDamageToKill); - dmgCanDeal -= enoughDamageToKill; + final int dmgToKill = ComputerUtilCombat.getEnoughDamageToKill(b, dmgCanDeal, attacker, true); + if (dmgToKill <= dmgCanDeal) { + damageMap.put(b, dmgToKill); + dmgCanDeal -= dmgToKill; } else { - damageMap.put(b, dmgCanDeal); - dmgCanDeal = 0; - break; + // if it can't be killed choose the minimum damage + int dmg = Math.min(b.getLethalDamage(), dmgCanDeal); + damageMap.put(b, dmg); + dmgCanDeal -= dmg; + if (dmgCanDeal <= 0) { + break; + } } } // for