diff --git a/Mage.Sets/src/mage/sets/elspethvstezzeret/BlindingBeam.java b/Mage.Sets/src/mage/sets/elspethvstezzeret/BlindingBeam.java index 21a019b51fb..46b915fe1a2 100644 --- a/Mage.Sets/src/mage/sets/elspethvstezzeret/BlindingBeam.java +++ b/Mage.Sets/src/mage/sets/elspethvstezzeret/BlindingBeam.java @@ -45,6 +45,7 @@ import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; import mage.game.permanent.Permanent; +import mage.game.turn.Step; import mage.players.Player; import mage.target.TargetPlayer; import mage.target.common.TargetCreaturePermanent; @@ -146,6 +147,17 @@ class BlindingBeamEffect2 extends ReplacementEffectImpl { return true; } + @Override + public boolean isInactive(Ability source, Game game) { + if (game.getPhase().getStep().getType() == PhaseStep.UNTAP && game.getStep().getStepPart() == Step.StepPart.PRE) + { + if (game.getActivePlayerId().equals(targetPlayerId) || game.getPlayer(source.getControllerId()).hasReachedNextTurnAfterLeaving()) { + return true; + } + } + return false; + } + @Override public boolean applies(GameEvent event, Ability source, Game game) { // replace untap event of creatures of target player @@ -155,12 +167,6 @@ class BlindingBeamEffect2 extends ReplacementEffectImpl { return true; } } - // discard effect at end of next untap step of target player - if (event.getType().equals(EventType.UNTAP_STEP_POST)) { - if (targetPlayerId.equals(event.getPlayerId())) { - discard(); - } - } return false; } diff --git a/Mage/src/mage/abilities/effects/common/TapTargetEffect.java b/Mage/src/mage/abilities/effects/common/TapTargetEffect.java index 6e36230b038..1b0b385dae9 100644 --- a/Mage/src/mage/abilities/effects/common/TapTargetEffect.java +++ b/Mage/src/mage/abilities/effects/common/TapTargetEffect.java @@ -37,6 +37,7 @@ import mage.game.permanent.Permanent; import mage.target.Target; import java.util.UUID; +import mage.util.CardUtil; /** * @author BetaSteward_at_googlemail.com @@ -81,9 +82,9 @@ public class TapTargetEffect extends OneShotEffect { Target target = mode.getTargets().get(0); if (target.getMaxNumberOfTargets() > 1) { if (target.getMaxNumberOfTargets() == target.getNumberOfTargets()) { - return "tap " + target.getNumberOfTargets() + " target " + target.getTargetName() + "s"; + return "tap " + CardUtil.numberToText(target.getNumberOfTargets()) + " target " + target.getTargetName() + "s"; } else { - return "tap up to " + target.getMaxNumberOfTargets() + " target " + target.getTargetName() + "s"; + return "tap up to " + CardUtil.numberToText(target.getMaxNumberOfTargets()) + " target " + target.getTargetName() + "s"; } } else if (target.getMaxNumberOfTargets() == 0){ return "tap X target " + mode.getTargets().get(0).getTargetName();