diff --git a/forge-ai/src/main/java/forge/ai/ability/DamageDealAi.java b/forge-ai/src/main/java/forge/ai/ability/DamageDealAi.java index 9a5753ca857..ca80a41d6c1 100644 --- a/forge-ai/src/main/java/forge/ai/ability/DamageDealAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/DamageDealAi.java @@ -260,7 +260,8 @@ public class DamageDealAi extends DamageAiBase { continue; } final int assignedDamage = ComputerUtilCombat.getEnoughDamageToKill(humanCreature, dmg, source, false, noPrevention); - if (assignedDamage <= dmg) { + if (assignedDamage <= dmg + && humanCreature.getShield().isEmpty() && !ComputerUtil.canRegenerate(humanCreature.getController(), humanCreature)) { tcs.add(humanCreature); tgt.addDividedAllocation(humanCreature, assignedDamage); lastTgt = humanCreature; diff --git a/forge-ai/src/main/java/forge/ai/ability/EffectAi.java b/forge-ai/src/main/java/forge/ai/ability/EffectAi.java index cf5d23e64e8..295616f38ac 100644 --- a/forge-ai/src/main/java/forge/ai/ability/EffectAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/EffectAi.java @@ -166,6 +166,8 @@ public class EffectAi extends SpellAbilityAi { tgtFight.getTargets().add(aiCreature); sa.getTargets().add(humanCreature); return true; + } else { + return false; } } }