diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtilCard.java b/forge-ai/src/main/java/forge/ai/ComputerUtilCard.java index 14f9cdd4401..96ac96a26e4 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtilCard.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtilCard.java @@ -1085,7 +1085,8 @@ public class ComputerUtilCard { } if (survivor) { for (Card o : opposing) { - if (!ComputerUtilCombat.combatantWouldBeDestroyed(opp, o, combat)) { + if (!ComputerUtilCombat.combatantWouldBeDestroyed(opp, o, combat) + && !(o.hasSVar("SacMe") && Integer.parseInt(o.getSVar("SacMe")) > 2)) { if (isAttacking) { if (ComputerUtilCombat.blockerWouldBeDestroyed(opp, o, pumpedCombat)) { return true; diff --git a/forge-ai/src/main/java/forge/ai/ability/PumpAi.java b/forge-ai/src/main/java/forge/ai/ability/PumpAi.java index a9313ce97c1..e00aa2bbc10 100644 --- a/forge-ai/src/main/java/forge/ai/ability/PumpAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/PumpAi.java @@ -153,15 +153,13 @@ public class PumpAi extends PumpAiBase { attack = AbilityUtils.calculateAmount(sa.getHostCard(), numAttack, sa); } - if ((numDefense.contains("X") && defense == 0) - || (numAttack.contains("X") && attack == 0)) { + if ((numDefense.contains("X") && defense == 0) || (numAttack.contains("X") && attack == 0)) { return false; } //Untargeted if ((sa.getTargetRestrictions() == null) || !sa.getTargetRestrictions().doesTarget()) { - final List cards = AbilityUtils.getDefinedCards(sa.getHostCard(), - sa.getParam("Defined"), sa); + final List cards = AbilityUtils.getDefinedCards(sa.getHostCard(), sa.getParam("Defined"), sa); if (cards.isEmpty()) { return false;