From 9fcb5b1537110e9ee5969c026c41ee524e27d5f9 Mon Sep 17 00:00:00 2001 From: xenohedron Date: Mon, 19 Feb 2024 22:51:08 -0500 Subject: [PATCH] adjust Seize the Spotlight --- .../src/mage/cards/s/SeizeTheSpotlight.java | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Mage.Sets/src/mage/cards/s/SeizeTheSpotlight.java b/Mage.Sets/src/mage/cards/s/SeizeTheSpotlight.java index 8c5d5a8b8f5..7e6afa95111 100644 --- a/Mage.Sets/src/mage/cards/s/SeizeTheSpotlight.java +++ b/Mage.Sets/src/mage/cards/s/SeizeTheSpotlight.java @@ -2,8 +2,9 @@ package mage.cards.s; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; -import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; -import mage.abilities.effects.common.continuous.GainControlTargetEffect; +import mage.abilities.effects.common.UntapAllEffect; +import mage.abilities.effects.common.continuous.GainAbilityAllEffect; +import mage.abilities.effects.common.continuous.GainControlAllEffect; import mage.abilities.keyword.HasteAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -13,12 +14,12 @@ import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.permanent.ControllerIdPredicate; +import mage.filter.predicate.permanent.PermanentReferenceInCollectionPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.TreasureToken; import mage.players.Player; import mage.target.TargetPermanent; -import mage.target.targetpointer.FixedTargets; import java.util.ArrayList; import java.util.List; @@ -92,7 +93,7 @@ class SeizeTheSpotlightEffect extends OneShotEffect { filter.add(new ControllerIdPredicate(opponent.getId())); TargetPermanent target = new TargetPermanent(filter); target.withNotTarget(true); - if (!target.canChoose(source.getSourceId(), source, game)) { + if (!target.canChoose(controller.getId(), source, game)) { continue; } controller.choose(outcome, target, source, game); @@ -100,14 +101,15 @@ class SeizeTheSpotlightEffect extends OneShotEffect { if (permanent == null) { continue; } - permanent.untap(game); permanents.add(permanent); } if (!permanents.isEmpty()) { - game.addEffect(new GainControlTargetEffect(Duration.EndOfTurn) - .setTargetPointer(new FixedTargets(permanents, game)), source); - game.addEffect(new GainAbilityTargetEffect(HasteAbility.getInstance()) - .setTargetPointer(new FixedTargets(permanents, game)), source); + FilterPermanent affectedFilter = new FilterPermanent(); + affectedFilter.add(new PermanentReferenceInCollectionPredicate(permanents, game)); + new GainControlAllEffect(Duration.EndOfTurn, affectedFilter).apply(game, source); + game.getState().processAction(game); + new UntapAllEffect(affectedFilter).apply(game, source); + game.addEffect(new GainAbilityAllEffect(HasteAbility.getInstance(), Duration.EndOfTurn, affectedFilter), source); } if (fortune > 0) { controller.drawCards(fortune, source, game);