diff --git a/Mage.Sets/src/mage/cards/m/MindbreakTrap.java b/Mage.Sets/src/mage/cards/m/MindbreakTrap.java index 0d02eaf3265..12021d2647e 100644 --- a/Mage.Sets/src/mage/cards/m/MindbreakTrap.java +++ b/Mage.Sets/src/mage/cards/m/MindbreakTrap.java @@ -58,7 +58,7 @@ public class MindbreakTrap extends CardImpl { // Exile any number of target spells. this.getSpellAbility().addTarget(new TargetSpell(0, Integer.MAX_VALUE, filter)); - this.getSpellAbility().addEffect(new ExileTargetEffect("Exile any number of target spells")); + this.getSpellAbility().addEffect(new ExileTargetEffect("Exile any number of target spells", true)); } public MindbreakTrap(final MindbreakTrap card) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/ExileTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/ExileTargetEffect.java index 669b5724512..cff17c7be84 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/ExileTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/ExileTargetEffect.java @@ -58,8 +58,13 @@ public class ExileTargetEffect extends OneShotEffect { protected boolean multitargetHandling; public ExileTargetEffect(String effectText) { + this(effectText, false); + } + + public ExileTargetEffect(String effectText, boolean multitargetHandling) { this(); this.staticText = effectText; + this.multitargetHandling = multitargetHandling; } public ExileTargetEffect() { @@ -100,7 +105,9 @@ public class ExileTargetEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { Set toExile = new LinkedHashSet<>(); - if (multitargetHandling && source.getTargets().size() > 1 && targetPointer instanceof FirstTargetPointer) { // Decimate + if (multitargetHandling + && targetPointer instanceof FirstTargetPointer + && (source.getTargets().size() > 1 || (source.getTargets().size() > 0 && source.getTargets().get(0).getTargets().size() > 1))) { for (Target target : source.getTargets()) { for (UUID targetId : target.getTargets()) { Permanent permanent = game.getPermanent(targetId); @@ -116,6 +123,11 @@ public class ExileTargetEffect extends OneShotEffect { if (currentZone != Zone.EXILED && (onlyFromZone == null || onlyFromZone == currentZone)) { toExile.add(card); } + } else { + StackObject stackObject = game.getStack().getStackObject(targetId); + if (stackObject instanceof Spell) { + toExile.add((Spell) stackObject); + } } } }