diff --git a/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java b/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java index fccfb47523f..1ac7af667b3 100644 --- a/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java +++ b/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java @@ -27,6 +27,9 @@ */ package mage.cards.k; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; import mage.MageInt; import mage.MageObjectReference; import mage.abilities.TriggeredAbilityImpl; @@ -46,10 +49,6 @@ import mage.game.permanent.Permanent; import mage.target.targetpointer.FixedTarget; import mage.watchers.Watcher; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; - /** * * @author LevelX2 @@ -70,8 +69,10 @@ public class KiraGreatGlassSpinner extends CardImpl { // Creatures you control have "Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability." Effect effect = new CounterTargetEffect(); effect.setText("counter that spell or ability"); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new KiraGreatGlassSpinnerAbility(effect), Duration.WhileOnBattlefield, new FilterCreaturePermanent("creatures"))), - new CreatureWasTargetedThisTurnWatcher()); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new GainAbilityControlledEffect(new KiraGreatGlassSpinnerAbility(effect), Duration.WhileOnBattlefield, + new FilterCreaturePermanent("creatures"))), + new KiraGreatGlassSpinnerWatcher()); } @@ -110,7 +111,7 @@ class KiraGreatGlassSpinnerAbility extends TriggeredAbilityImpl { if (event.getTargetId().equals(this.getSourceId())) { Permanent permanent = game.getPermanent(event.getTargetId()); if (permanent != null && permanent.isCreature()) { - CreatureWasTargetedThisTurnWatcher watcher = (CreatureWasTargetedThisTurnWatcher) game.getState().getWatchers().get("CreatureWasTargetedThisTurn"); + KiraGreatGlassSpinnerWatcher watcher = (KiraGreatGlassSpinnerWatcher) game.getState().getWatchers().get(KiraGreatGlassSpinnerWatcher.class.getName()); if (watcher != null && watcher.notMoreThanOnceTargetedThisTurn(permanent, game)) { for (Effect effect : getEffects()) { effect.setTargetPointer(new FixedTarget(event.getSourceId())); @@ -129,15 +130,15 @@ class KiraGreatGlassSpinnerAbility extends TriggeredAbilityImpl { } -class CreatureWasTargetedThisTurnWatcher extends Watcher { +class KiraGreatGlassSpinnerWatcher extends Watcher { private final Map creaturesTargeted = new HashMap<>(); - public CreatureWasTargetedThisTurnWatcher() { - super("CreatureWasTargetedThisTurn", WatcherScope.GAME); + public KiraGreatGlassSpinnerWatcher() { + super(KiraGreatGlassSpinnerWatcher.class.getName(), WatcherScope.GAME); } - public CreatureWasTargetedThisTurnWatcher(final CreatureWasTargetedThisTurnWatcher watcher) { + public KiraGreatGlassSpinnerWatcher(final KiraGreatGlassSpinnerWatcher watcher) { super(watcher); this.creaturesTargeted.putAll(creaturesTargeted); } @@ -146,7 +147,7 @@ class CreatureWasTargetedThisTurnWatcher extends Watcher { public void watch(GameEvent event, Game game) { if (event.getType() == GameEvent.EventType.TARGETED) { Permanent permanent = game.getPermanent(event.getTargetId()); - if (permanent != null && permanent.isCreature()) { + if (permanent != null) { MageObjectReference mor = new MageObjectReference(permanent, game); int amount = 0; if (creaturesTargeted.containsKey(mor)) { @@ -171,7 +172,7 @@ class CreatureWasTargetedThisTurnWatcher extends Watcher { } @Override - public CreatureWasTargetedThisTurnWatcher copy() { - return new CreatureWasTargetedThisTurnWatcher(this); + public KiraGreatGlassSpinnerWatcher copy() { + return new KiraGreatGlassSpinnerWatcher(this); } }