diff --git a/Mage.Sets/src/mage/cards/a/ArdenvalePaladin.java b/Mage.Sets/src/mage/cards/a/ArdenvalePaladin.java
index 4c93d789588..7dc40f0f7ca 100644
--- a/Mage.Sets/src/mage/cards/a/ArdenvalePaladin.java
+++ b/Mage.Sets/src/mage/cards/a/ArdenvalePaladin.java
@@ -9,7 +9,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -32,7 +31,7 @@ public final class ArdenvalePaladin extends CardImpl {
AdamantCondition.WHITE, "
Adamant — " +
"If at least three white mana was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
}
private ArdenvalePaladin(final ArdenvalePaladin card) {
diff --git a/Mage.Sets/src/mage/cards/a/AzoriusHerald.java b/Mage.Sets/src/mage/cards/a/AzoriusHerald.java
index 9c1c0cae8eb..72008c39607 100644
--- a/Mage.Sets/src/mage/cards/a/AzoriusHerald.java
+++ b/Mage.Sets/src/mage/cards/a/AzoriusHerald.java
@@ -13,7 +13,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -33,7 +32,7 @@ public final class AzoriusHerald extends CardImpl {
// When Azorius Herald enters the battlefield, you gain 4 life.
this.addAbility(new EntersBattlefieldTriggeredAbility(new GainLifeEffect(4)));
// When Azorius Herald enters the battlefield, sacrifice it unless {U} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.U)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.U)), false));
}
private AzoriusHerald(final AzoriusHerald card) {
diff --git a/Mage.Sets/src/mage/cards/b/BatwingBrume.java b/Mage.Sets/src/mage/cards/b/BatwingBrume.java
index 2fb21707307..2f70da83942 100644
--- a/Mage.Sets/src/mage/cards/b/BatwingBrume.java
+++ b/Mage.Sets/src/mage/cards/b/BatwingBrume.java
@@ -20,7 +20,6 @@ import mage.constants.Outcome;
import mage.filter.common.FilterAttackingCreature;
import mage.game.Game;
import mage.players.Player;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -42,7 +41,6 @@ public final class BatwingBrume extends CardImpl {
new BatwingBrumeEffect(),
new ManaWasSpentCondition(ColoredManaSymbol.B), "Each player loses 1 life for each attacking creature they control if {B} was spent to cast this spell"));
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {W}{B} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/b/BergStrider.java b/Mage.Sets/src/mage/cards/b/BergStrider.java
index 85c3538f488..80dbf49013a 100644
--- a/Mage.Sets/src/mage/cards/b/BergStrider.java
+++ b/Mage.Sets/src/mage/cards/b/BergStrider.java
@@ -47,7 +47,7 @@ public final class BergStrider extends CardImpl {
Ability ability = new EntersBattlefieldTriggeredAbility(new TapTargetEffect());
ability.addEffect(new BergStriderEffect());
ability.addTarget(new TargetPermanent(filter));
- this.addAbility(ability, new ManaSpentToCastWatcher());
+ this.addAbility(ability);
}
private BergStrider(final BergStrider card) {
diff --git a/Mage.Sets/src/mage/cards/c/CankerousThirst.java b/Mage.Sets/src/mage/cards/c/CankerousThirst.java
index d1906aa9b46..ea3a3e04aa1 100644
--- a/Mage.Sets/src/mage/cards/c/CankerousThirst.java
+++ b/Mage.Sets/src/mage/cards/c/CankerousThirst.java
@@ -19,7 +19,6 @@ import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.common.TargetCreaturePermanent;
import mage.target.targetpointer.FixedTarget;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -36,7 +35,6 @@ public final class CankerousThirst extends CardImpl {
this.getSpellAbility().addTarget(new TargetCreaturePermanent(new FilterCreaturePermanent("creature (1th effect -3/-3)")));
this.getSpellAbility().addTarget(new TargetCreaturePermanent(new FilterCreaturePermanent("creature (2nd effect +3/+3)")));
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {B}{G} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private CankerousThirst(final CankerousThirst card) {
diff --git a/Mage.Sets/src/mage/cards/c/ClockworkServant.java b/Mage.Sets/src/mage/cards/c/ClockworkServant.java
index 0e38967ad99..cbabb5ecbbe 100644
--- a/Mage.Sets/src/mage/cards/c/ClockworkServant.java
+++ b/Mage.Sets/src/mage/cards/c/ClockworkServant.java
@@ -9,7 +9,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -30,7 +29,7 @@ public final class ClockworkServant extends CardImpl {
new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)),
AdamantCondition.ANY, "
Adamant — When {this} enters the battlefield, " +
"if at least three mana of the same color was spent to cast it, draw a card."
- ), new ManaSpentToCastWatcher());
+ ));
}
private ClockworkServant(final ClockworkServant card) {
diff --git a/Mage.Sets/src/mage/cards/c/CourtHussar.java b/Mage.Sets/src/mage/cards/c/CourtHussar.java
index afb23b35fb6..4808edfac53 100644
--- a/Mage.Sets/src/mage/cards/c/CourtHussar.java
+++ b/Mage.Sets/src/mage/cards/c/CourtHussar.java
@@ -16,7 +16,6 @@ import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -39,7 +38,7 @@ public final class CourtHussar extends CardImpl {
new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false),
false));
// When Court Hussar enters the battlefield, sacrifice it unless {W} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.W)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.W)), false));
}
private CourtHussar(final CourtHussar card) {
diff --git a/Mage.Sets/src/mage/cards/c/CryptChampion.java b/Mage.Sets/src/mage/cards/c/CryptChampion.java
index c3cb29d99ef..fbf59417c09 100644
--- a/Mage.Sets/src/mage/cards/c/CryptChampion.java
+++ b/Mage.Sets/src/mage/cards/c/CryptChampion.java
@@ -27,7 +27,6 @@ import mage.game.Game;
import mage.players.Player;
import mage.target.Target;
import mage.target.common.TargetCardInGraveyard;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -49,7 +48,7 @@ public final class CryptChampion extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new CryptChampionEffect()));
// When Crypt Champion enters the battlefield, sacrifice it unless {R} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.R)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.R)), false));
}
private CryptChampion(final CryptChampion card) {
diff --git a/Mage.Sets/src/mage/cards/d/DawnglowInfusion.java b/Mage.Sets/src/mage/cards/d/DawnglowInfusion.java
index 5af3c9d805d..c48878fea3b 100644
--- a/Mage.Sets/src/mage/cards/d/DawnglowInfusion.java
+++ b/Mage.Sets/src/mage/cards/d/DawnglowInfusion.java
@@ -12,7 +12,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -33,7 +32,6 @@ public final class DawnglowInfusion extends CardImpl {
new GainLifeEffect(xValue),
new ManaWasSpentCondition(ColoredManaSymbol.W), " And X life if {W} was spent to cast it"));
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {G}{W} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/e/EmberethPaladin.java b/Mage.Sets/src/mage/cards/e/EmberethPaladin.java
index 001ca3a7b69..a744ea5d94d 100644
--- a/Mage.Sets/src/mage/cards/e/EmberethPaladin.java
+++ b/Mage.Sets/src/mage/cards/e/EmberethPaladin.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -35,7 +34,7 @@ public final class EmberethPaladin extends CardImpl {
new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false, AdamantCondition.RED,
"
Adamant — If at least three red mana was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
}
private EmberethPaladin(final EmberethPaladin card) {
diff --git a/Mage.Sets/src/mage/cards/f/Firespout.java b/Mage.Sets/src/mage/cards/f/Firespout.java
index 92889cf53dd..395f2b72141 100644
--- a/Mage.Sets/src/mage/cards/f/Firespout.java
+++ b/Mage.Sets/src/mage/cards/f/Firespout.java
@@ -12,7 +12,6 @@ import mage.constants.ColoredManaSymbol;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.AbilityPredicate;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -40,7 +39,6 @@ public final class Firespout extends CardImpl {
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(
new DamageAllEffect(3, filter2),
new ManaWasSpentCondition(ColoredManaSymbol.G), "and 3 damage to each creature with flying if {G} was spent to cast it. (Do both if {R}{G} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private Firespout(final Firespout card) {
diff --git a/Mage.Sets/src/mage/cards/f/ForebodingFruit.java b/Mage.Sets/src/mage/cards/f/ForebodingFruit.java
index 14cf2f44166..506fa270887 100644
--- a/Mage.Sets/src/mage/cards/f/ForebodingFruit.java
+++ b/Mage.Sets/src/mage/cards/f/ForebodingFruit.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.game.permanent.token.FoodToken;
import mage.target.TargetPlayer;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -32,7 +31,6 @@ public final class ForebodingFruit extends CardImpl {
new CreateTokenEffect(new FoodToken()), AdamantCondition.BLACK, "
Adamant — " +
"If at least three black mana was spent to cast this spell, create a Food token."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private ForebodingFruit(final ForebodingFruit card) {
diff --git a/Mage.Sets/src/mage/cards/f/FractalHarness.java b/Mage.Sets/src/mage/cards/f/FractalHarness.java
index 775144b8211..71785fe42bb 100644
--- a/Mage.Sets/src/mage/cards/f/FractalHarness.java
+++ b/Mage.Sets/src/mage/cards/f/FractalHarness.java
@@ -17,7 +17,6 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.game.permanent.token.QuandrixToken;
import mage.game.permanent.token.Token;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -32,7 +31,7 @@ public final class FractalHarness extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// When Fractal Harness enters the battlefield, create a 0/0 green and blue Fractal creature token. Put X +1/+1 counters on it and attach Fractal Harness to it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new FractalHarnessTokenEffect()), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new FractalHarnessTokenEffect()));
// Whenever equipped creature attacks, double the number of +1/+1 counters on it.
this.addAbility(new AttacksAttachedTriggeredAbility(
diff --git a/Mage.Sets/src/mage/cards/g/GadwickTheWizened.java b/Mage.Sets/src/mage/cards/g/GadwickTheWizened.java
index 518703bb0c7..15aa8dad65b 100644
--- a/Mage.Sets/src/mage/cards/g/GadwickTheWizened.java
+++ b/Mage.Sets/src/mage/cards/g/GadwickTheWizened.java
@@ -19,7 +19,6 @@ import mage.filter.FilterSpell;
import mage.filter.common.FilterNonlandPermanent;
import mage.filter.predicate.mageobject.ColorPredicate;
import mage.target.TargetPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -50,7 +49,7 @@ public final class GadwickTheWizened extends CardImpl {
// When Gadwick, the Wizened enters the battlefield, draw X cards.
this.addAbility(new EntersBattlefieldTriggeredAbility(
new DrawCardSourceControllerEffect(ManacostVariableValue.instance)
- ), new ManaSpentToCastWatcher());
+ ));
// Whenever you cast a blue spell, tap target nonland permanent an opponent controls.
Ability ability = new SpellCastControllerTriggeredAbility(new TapTargetEffect(), filter, false);
diff --git a/Mage.Sets/src/mage/cards/g/GarenbrigPaladin.java b/Mage.Sets/src/mage/cards/g/GarenbrigPaladin.java
index a065fc257aa..4aadaabda2c 100644
--- a/Mage.Sets/src/mage/cards/g/GarenbrigPaladin.java
+++ b/Mage.Sets/src/mage/cards/g/GarenbrigPaladin.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -32,7 +31,7 @@ public final class GarenbrigPaladin extends CardImpl {
CounterType.P1P1.createInstance()), AdamantCondition.GREEN,
"
Adamant — If at least three green mana was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
// Garenbrig Paladin can't be blocked by creatures with power 2 or less.
this.addAbility(new DauntAbility());
diff --git a/Mage.Sets/src/mage/cards/g/GruulScrapper.java b/Mage.Sets/src/mage/cards/g/GruulScrapper.java
index 859ae27abf8..c2ba1a253e2 100644
--- a/Mage.Sets/src/mage/cards/g/GruulScrapper.java
+++ b/Mage.Sets/src/mage/cards/g/GruulScrapper.java
@@ -14,7 +14,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -31,7 +30,7 @@ public final class GruulScrapper extends CardImpl {
this.toughness = new MageInt(2);
//When Gruul Scrapper enters the battlefield, if Red was spent to cast Gruul Scrapper, it gains haste until end of turn.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new ConditionalContinuousEffect(new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaWasSpentCondition(ColoredManaSymbol.R), " if {R} was spent to cast this spell, it gains haste until end of turn")), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new ConditionalContinuousEffect(new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaWasSpentCondition(ColoredManaSymbol.R), " if {R} was spent to cast this spell, it gains haste until end of turn")));
}
diff --git a/Mage.Sets/src/mage/cards/h/HengeWalker.java b/Mage.Sets/src/mage/cards/h/HengeWalker.java
index 1550201d9ce..767e62c7b50 100644
--- a/Mage.Sets/src/mage/cards/h/HengeWalker.java
+++ b/Mage.Sets/src/mage/cards/h/HengeWalker.java
@@ -9,7 +9,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -31,7 +30,7 @@ public final class HengeWalker extends CardImpl {
AdamantCondition.ANY, "
Adamant — " +
"If at least three mana of the same color was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
}
private HengeWalker(final HengeWalker card) {
diff --git a/Mage.Sets/src/mage/cards/i/InvertTheSkies.java b/Mage.Sets/src/mage/cards/i/InvertTheSkies.java
index a19693bea88..a738dce64fe 100644
--- a/Mage.Sets/src/mage/cards/i/InvertTheSkies.java
+++ b/Mage.Sets/src/mage/cards/i/InvertTheSkies.java
@@ -17,7 +17,6 @@ import mage.constants.Duration;
import mage.constants.TargetController;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -49,7 +48,6 @@ public final class InvertTheSkies extends CardImpl {
"and creatures you control gain flying until end of turn if {U} was spent to cast it"));
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {G}{U} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/l/LocthwainPaladin.java b/Mage.Sets/src/mage/cards/l/LocthwainPaladin.java
index ab4ffa5d211..93b314d8d4e 100644
--- a/Mage.Sets/src/mage/cards/l/LocthwainPaladin.java
+++ b/Mage.Sets/src/mage/cards/l/LocthwainPaladin.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -36,7 +35,7 @@ public final class LocthwainPaladin extends CardImpl {
AdamantCondition.BLACK, "
Adamant — " +
"If at least three black mana was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
}
private LocthwainPaladin(final LocthwainPaladin card) {
diff --git a/Mage.Sets/src/mage/cards/m/Moonhold.java b/Mage.Sets/src/mage/cards/m/Moonhold.java
index 816dfa154ef..752e63a3bc0 100644
--- a/Mage.Sets/src/mage/cards/m/Moonhold.java
+++ b/Mage.Sets/src/mage/cards/m/Moonhold.java
@@ -20,7 +20,6 @@ import mage.constants.Outcome;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.target.TargetPlayer;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -44,7 +43,6 @@ public final class Moonhold extends CardImpl {
new LockedInCondition(new ManaWasSpentCondition(ColoredManaSymbol.W))));
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addEffect(new InfoEffect(" (Do both if {R}{W} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private Moonhold(final Moonhold card) {
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfBrokkos.java b/Mage.Sets/src/mage/cards/m/MythosOfBrokkos.java
index 21a313547c5..430751fadfe 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfBrokkos.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfBrokkos.java
@@ -17,7 +17,6 @@ import mage.players.Player;
import mage.target.TargetCard;
import mage.target.common.TargetCardInLibrary;
import mage.target.common.TargetCardInYourGraveyard;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -32,7 +31,6 @@ public final class MythosOfBrokkos extends CardImpl {
// If {U}{B} was spent to cast Mythos of Brokkos, search your library for a card, put that card into your graveyard, then shuffle your library.
// Return up to two permanent cards from your graveyard to your hand.
this.getSpellAbility().addEffect(new MythosOfBrokkosEffect());
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private MythosOfBrokkos(final MythosOfBrokkos card) {
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfIlluna.java b/Mage.Sets/src/mage/cards/m/MythosOfIlluna.java
index 317324f6b0e..34ed73ced4f 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfIlluna.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfIlluna.java
@@ -18,7 +18,6 @@ import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.TargetPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -33,7 +32,6 @@ public final class MythosOfIlluna extends CardImpl {
// Create a token that's a copy of target permanent. If {R}{G} was spent to cast this spell, instead create a token that's a copy of that permanent, except the token has "When this permanent enters the battlefield, if it's a creature, it fights up to one target creature you don't control."
this.getSpellAbility().addEffect(new MythosOfIllunaEffect());
this.getSpellAbility().addTarget(new TargetPermanent());
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private MythosOfIlluna(final MythosOfIlluna card) {
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfNethroi.java b/Mage.Sets/src/mage/cards/m/MythosOfNethroi.java
index 1492c08fd99..9d7ef4e85e9 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfNethroi.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfNethroi.java
@@ -13,7 +13,6 @@ import mage.constants.Outcome;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetNonlandPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -28,7 +27,6 @@ public final class MythosOfNethroi extends CardImpl {
// Destroy target nonland permanent if it's a creature or if {G}{W} was spent to cast this spell.
this.getSpellAbility().addEffect(new MythosOfNethroiEffect());
this.getSpellAbility().addTarget(new TargetNonlandPermanent());
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private MythosOfNethroi(final MythosOfNethroi card) {
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfSnapdax.java b/Mage.Sets/src/mage/cards/m/MythosOfSnapdax.java
index 30c859a3799..c45bcb4a917 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfSnapdax.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfSnapdax.java
@@ -18,7 +18,6 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.TargetPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.*;
import java.util.stream.Collectors;
@@ -33,7 +32,6 @@ public class MythosOfSnapdax extends CardImpl {
// Each player chooses an artifact, a creature, an enchantment, and a planeswalker from among the nonland permanents they control, then sacrifices the rest. If {B}{R} was spent to cast this spell, you choose the permanents for each player instead.
this.getSpellAbility().addEffect(new MythosOfSnapdaxEffect());
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private MythosOfSnapdax(final MythosOfSnapdax card) {
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java b/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
index 5249c21263d..d93dc7196cc 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
@@ -17,7 +17,6 @@ import mage.constants.Outcome;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetCreatureOrPlaneswalkerAmount;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -44,7 +43,6 @@ public final class MythosOfVadrok extends CardImpl {
"until your next turn, those permanents can't attack or block " +
"and their activated abilities can't be activated."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private MythosOfVadrok(final MythosOfVadrok card) {
diff --git a/Mage.Sets/src/mage/cards/n/NikoAris.java b/Mage.Sets/src/mage/cards/n/NikoAris.java
index e8947090cf7..c43af1c8281 100644
--- a/Mage.Sets/src/mage/cards/n/NikoAris.java
+++ b/Mage.Sets/src/mage/cards/n/NikoAris.java
@@ -30,7 +30,6 @@ import mage.game.permanent.token.ShardToken;
import mage.target.TargetPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.watchers.common.CardsDrawnThisTurnWatcher;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.Objects;
import java.util.UUID;
@@ -58,7 +57,7 @@ public final class NikoAris extends CardImpl {
// When Niko Aris enters the battlefield, create X Shard tokens.
this.addAbility(new EntersBattlefieldTriggeredAbility(
new CreateTokenEffect(new ShardToken(), ManacostVariableValue.instance)
- ), new ManaSpentToCastWatcher());
+ ));
// +1: Up to one target creature you control can't be blocked this turn. Whenever that creature deals damage this turn, return it to its owner's hand.
Ability ability = new LoyaltyAbility(new CantBeBlockedTargetEffect(Duration.EndOfTurn), 1);
diff --git a/Mage.Sets/src/mage/cards/o/OgreSavant.java b/Mage.Sets/src/mage/cards/o/OgreSavant.java
index 980b5f1a81d..278af44e902 100644
--- a/Mage.Sets/src/mage/cards/o/OgreSavant.java
+++ b/Mage.Sets/src/mage/cards/o/OgreSavant.java
@@ -14,7 +14,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.target.common.TargetCreaturePermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -33,8 +32,7 @@ public final class OgreSavant extends CardImpl {
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect(),false);
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(new ConditionalInterveningIfTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.U),
- "if {U} was spent to cast this spell, return target creature to its owner's hand."),
- new ManaSpentToCastWatcher());
+ "if {U} was spent to cast this spell, return target creature to its owner's hand."));
}
private OgreSavant(final OgreSavant card) {
diff --git a/Mage.Sets/src/mage/cards/o/OnceAndFuture.java b/Mage.Sets/src/mage/cards/o/OnceAndFuture.java
index 792d329a4aa..346e34f2f52 100644
--- a/Mage.Sets/src/mage/cards/o/OnceAndFuture.java
+++ b/Mage.Sets/src/mage/cards/o/OnceAndFuture.java
@@ -12,7 +12,6 @@ import mage.game.Game;
import mage.players.Player;
import mage.target.Target;
import mage.target.common.TargetCardInYourGraveyard;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -36,7 +35,6 @@ public final class OnceAndFuture extends CardImpl {
target.setTargetTag(2);
this.getSpellAbility().addTarget(target);
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private OnceAndFuture(final OnceAndFuture card) {
diff --git a/Mage.Sets/src/mage/cards/o/Outmuscle.java b/Mage.Sets/src/mage/cards/o/Outmuscle.java
index 41ba760ce07..ee2dfabe1b5 100644
--- a/Mage.Sets/src/mage/cards/o/Outmuscle.java
+++ b/Mage.Sets/src/mage/cards/o/Outmuscle.java
@@ -18,7 +18,6 @@ import mage.game.permanent.Permanent;
import mage.target.TargetPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.targetpointer.FixedTarget;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -35,7 +34,6 @@ public final class Outmuscle extends CardImpl {
this.getSpellAbility().addEffect(new OutmuscleEffect());
this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent());
this.getSpellAbility().addTarget(new TargetPermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private Outmuscle(final Outmuscle card) {
diff --git a/Mage.Sets/src/mage/cards/p/PatagiaViper.java b/Mage.Sets/src/mage/cards/p/PatagiaViper.java
index 36e1efc3413..a1bc8f971f8 100644
--- a/Mage.Sets/src/mage/cards/p/PatagiaViper.java
+++ b/Mage.Sets/src/mage/cards/p/PatagiaViper.java
@@ -14,7 +14,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.game.permanent.token.PatagiaViperSnakeToken;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -36,7 +35,7 @@ public final class PatagiaViper extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new PatagiaViperSnakeToken(), 2), false));
// When Patagia Viper enters the battlefield, sacrifice it unless {U} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.U)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.U)), false));
}
private PatagiaViper(final PatagiaViper card) {
diff --git a/Mage.Sets/src/mage/cards/p/Plaxmanta.java b/Mage.Sets/src/mage/cards/p/Plaxmanta.java
index 0de998cae3f..8e84e2573ff 100644
--- a/Mage.Sets/src/mage/cards/p/Plaxmanta.java
+++ b/Mage.Sets/src/mage/cards/p/Plaxmanta.java
@@ -16,7 +16,6 @@ import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -38,7 +37,7 @@ public final class Plaxmanta extends CardImpl {
new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES)));
// When Plaxmanta enters the battlefield, sacrifice it unless {G} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.G)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.G)), false));
}
private Plaxmanta(final Plaxmanta card) {
diff --git a/Mage.Sets/src/mage/cards/r/RadiantEpicure.java b/Mage.Sets/src/mage/cards/r/RadiantEpicure.java
index 479a818cbe3..5da5d1862cd 100644
--- a/Mage.Sets/src/mage/cards/r/RadiantEpicure.java
+++ b/Mage.Sets/src/mage/cards/r/RadiantEpicure.java
@@ -34,7 +34,7 @@ public final class RadiantEpicure extends CardImpl {
// Converge — When Radiant Epicure enters the battlefield, each opponent loses X life and you gain X life, where X is the number of colors of mana spent to cast this spell.
this.addAbility(new EntersBattlefieldTriggeredAbility(
new RadiantEpicureEffect(), false, "Converge — "
- ), new ManaSpentToCastWatcher());
+ ));
}
private RadiantEpicure(final RadiantEpicure card) {
diff --git a/Mage.Sets/src/mage/cards/r/RallyForTheThrone.java b/Mage.Sets/src/mage/cards/r/RallyForTheThrone.java
index 86e39e86e97..9df7fc87320 100644
--- a/Mage.Sets/src/mage/cards/r/RallyForTheThrone.java
+++ b/Mage.Sets/src/mage/cards/r/RallyForTheThrone.java
@@ -11,7 +11,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.StaticFilters;
import mage.game.permanent.token.HumanToken;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -35,7 +34,6 @@ public final class RallyForTheThrone extends CardImpl {
"If at least three white mana was spent to cast this spell, " +
"you gain 1 life for each creature you control."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private RallyForTheThrone(final RallyForTheThrone card) {
diff --git a/Mage.Sets/src/mage/cards/r/RepelIntruders.java b/Mage.Sets/src/mage/cards/r/RepelIntruders.java
index caea78ac98e..14ddd8b7dfc 100644
--- a/Mage.Sets/src/mage/cards/r/RepelIntruders.java
+++ b/Mage.Sets/src/mage/cards/r/RepelIntruders.java
@@ -12,7 +12,6 @@ import mage.constants.ColoredManaSymbol;
import mage.filter.common.FilterCreatureSpell;
import mage.game.permanent.token.KithkinSoldierToken;
import mage.target.TargetSpell;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -36,7 +35,6 @@ public final class RepelIntruders extends CardImpl {
new ManaWasSpentCondition(ColoredManaSymbol.U), " Counter up to one target creature spell if {U} was spent to cast this spell"));
this.getSpellAbility().addTarget(target);
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {W}{U} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/r/RevenantPatriarch.java b/Mage.Sets/src/mage/cards/r/RevenantPatriarch.java
index e8ae19d5c59..c0afb01cd23 100644
--- a/Mage.Sets/src/mage/cards/r/RevenantPatriarch.java
+++ b/Mage.Sets/src/mage/cards/r/RevenantPatriarch.java
@@ -15,7 +15,6 @@ import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
import mage.target.TargetPlayer;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -33,7 +32,7 @@ public final class RevenantPatriarch extends CardImpl {
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new SkipCombatStepEffect(Duration.OneUse).setText("target player skips their next combat phase."), false);
ability.addTarget(new TargetPlayer());
this.addAbility(new ConditionalInterveningIfTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.W),
- "if {W} was spent to cast it, target player skips their next combat phase."), new ManaSpentToCastWatcher());
+ "if {W} was spent to cast it, target player skips their next combat phase."));
// Revenant Patriarch can't block.
this.addAbility(new CantBlockAbility());
}
diff --git a/Mage.Sets/src/mage/cards/r/RiversGrasp.java b/Mage.Sets/src/mage/cards/r/RiversGrasp.java
index f3d8d9ae6cb..d6bdf5b16cb 100644
--- a/Mage.Sets/src/mage/cards/r/RiversGrasp.java
+++ b/Mage.Sets/src/mage/cards/r/RiversGrasp.java
@@ -21,7 +21,6 @@ import mage.target.Target;
import mage.target.TargetCard;
import mage.target.TargetPlayer;
import mage.target.common.TargetCreaturePermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -47,7 +46,6 @@ public final class RiversGrasp extends CardImpl {
this.getSpellAbility().addTarget(targetPlayer);
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {U}{B} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private RiversGrasp(final RiversGrasp card) {
diff --git a/Mage.Sets/src/mage/cards/s/SearingBarrage.java b/Mage.Sets/src/mage/cards/s/SearingBarrage.java
index 3032de92a33..c8ae4f7caf8 100644
--- a/Mage.Sets/src/mage/cards/s/SearingBarrage.java
+++ b/Mage.Sets/src/mage/cards/s/SearingBarrage.java
@@ -8,7 +8,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.target.common.TargetCreaturePermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -30,7 +29,6 @@ public final class SearingBarrage extends CardImpl {
"
Adamant — If at least three red mana was spent to cast this spell, " +
"{this} deals 3 damage to that creature's controller."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private SearingBarrage(final SearingBarrage card) {
diff --git a/Mage.Sets/src/mage/cards/s/ShriekingGrotesque.java b/Mage.Sets/src/mage/cards/s/ShriekingGrotesque.java
index d59cd1f9e26..638d1f20492 100644
--- a/Mage.Sets/src/mage/cards/s/ShriekingGrotesque.java
+++ b/Mage.Sets/src/mage/cards/s/ShriekingGrotesque.java
@@ -15,7 +15,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.target.TargetPlayer;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -36,7 +35,7 @@ public final class ShriekingGrotesque extends CardImpl {
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DiscardTargetEffect(1), false);
ability.addTarget(new TargetPlayer());
this.addAbility(new ConditionalInterveningIfTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.B),
- "if {B} was spent to cast this spell, target player discards a card."), new ManaSpentToCastWatcher());
+ "if {B} was spent to cast this spell, target player discards a card."));
}
private ShriekingGrotesque(final ShriekingGrotesque card) {
diff --git a/Mage.Sets/src/mage/cards/s/SilverflameRitual.java b/Mage.Sets/src/mage/cards/s/SilverflameRitual.java
index c49488678fc..2095301a806 100644
--- a/Mage.Sets/src/mage/cards/s/SilverflameRitual.java
+++ b/Mage.Sets/src/mage/cards/s/SilverflameRitual.java
@@ -15,7 +15,6 @@ import mage.constants.Outcome;
import mage.counters.CounterType;
import mage.filter.StaticFilters;
import mage.game.Game;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -38,7 +37,6 @@ public final class SilverflameRitual extends CardImpl {
"
Adamant — If at least three white mana was spent to cast this spell, " +
"creatures you control gain vigilance until end of turn."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private SilverflameRitual(final SilverflameRitual card) {
diff --git a/Mage.Sets/src/mage/cards/s/SlayingFire.java b/Mage.Sets/src/mage/cards/s/SlayingFire.java
index 45b715cb314..1e9d762c0fa 100644
--- a/Mage.Sets/src/mage/cards/s/SlayingFire.java
+++ b/Mage.Sets/src/mage/cards/s/SlayingFire.java
@@ -7,7 +7,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.target.common.TargetAnyTarget;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -28,7 +27,6 @@ public final class SlayingFire extends CardImpl {
"it deals 4 damage instead."
));
this.getSpellAbility().addTarget(new TargetAnyTarget());
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private SlayingFire(final SlayingFire card) {
diff --git a/Mage.Sets/src/mage/cards/s/SquealingDevil.java b/Mage.Sets/src/mage/cards/s/SquealingDevil.java
index 3366cc9c6ba..b96ec07eed5 100644
--- a/Mage.Sets/src/mage/cards/s/SquealingDevil.java
+++ b/Mage.Sets/src/mage/cards/s/SquealingDevil.java
@@ -26,7 +26,6 @@ import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.common.TargetCreaturePermanent;
import mage.target.targetpointer.FixedTarget;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -50,7 +49,7 @@ public final class SquealingDevil extends CardImpl {
this.addAbility(ability);
// When Squealing Devil enters the battlefield, sacrifice it unless {B} was spent to cast it.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.B)), false), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.B)), false));
}
diff --git a/Mage.Sets/src/mage/cards/s/SteamcoreWeird.java b/Mage.Sets/src/mage/cards/s/SteamcoreWeird.java
index 9d5c194f2bd..7333d208fa1 100644
--- a/Mage.Sets/src/mage/cards/s/SteamcoreWeird.java
+++ b/Mage.Sets/src/mage/cards/s/SteamcoreWeird.java
@@ -14,7 +14,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.target.common.TargetAnyTarget;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -32,8 +31,7 @@ public final class SteamcoreWeird extends CardImpl {
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
ability.addTarget(new TargetAnyTarget());
this.addAbility(new ConditionalInterveningIfTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.R),
- "if {R} was spent to cast this spell, it deals 2 damage to any target."),
- new ManaSpentToCastWatcher());
+ "if {R} was spent to cast this spell, it deals 2 damage to any target."));
}
private SteamcoreWeird(final SteamcoreWeird card) {
diff --git a/Mage.Sets/src/mage/cards/s/StumpsquallHydra.java b/Mage.Sets/src/mage/cards/s/StumpsquallHydra.java
index 2434e8580d8..7bde96ae959 100644
--- a/Mage.Sets/src/mage/cards/s/StumpsquallHydra.java
+++ b/Mage.Sets/src/mage/cards/s/StumpsquallHydra.java
@@ -21,7 +21,6 @@ import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.TargetAmount;
import mage.target.common.TargetCreatureOrPlaneswalkerAmount;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -38,7 +37,7 @@ public final class StumpsquallHydra extends CardImpl {
this.toughness = new MageInt(1);
// When Stumpsquall Hydra enters the battlefield, distribute X +1/+1 counters among it and any number of commanders.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new StumpsquallHydraEffect()), new ManaSpentToCastWatcher());
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new StumpsquallHydraEffect()));
}
private StumpsquallHydra(final StumpsquallHydra card) {
diff --git a/Mage.Sets/src/mage/cards/t/TinStreetHooligan.java b/Mage.Sets/src/mage/cards/t/TinStreetHooligan.java
index 001bed698d8..00d1d4cc7d2 100644
--- a/Mage.Sets/src/mage/cards/t/TinStreetHooligan.java
+++ b/Mage.Sets/src/mage/cards/t/TinStreetHooligan.java
@@ -14,7 +14,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.target.common.TargetArtifactPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -36,7 +35,7 @@ public final class TinStreetHooligan extends CardImpl {
new ManaWasSpentCondition(ColoredManaSymbol.G),
"When {this} enters the battlefield, if {G} was spent to cast Tin Street Hooligan, destroy target artifact.");
ability.addTarget(new TargetArtifactPermanent());
- this.addAbility(ability, new ManaSpentToCastWatcher());
+ this.addAbility(ability);
}
private TinStreetHooligan(final TinStreetHooligan card) {
diff --git a/Mage.Sets/src/mage/cards/t/TorrentOfSouls.java b/Mage.Sets/src/mage/cards/t/TorrentOfSouls.java
index 5560ffe37db..066a935d58b 100644
--- a/Mage.Sets/src/mage/cards/t/TorrentOfSouls.java
+++ b/Mage.Sets/src/mage/cards/t/TorrentOfSouls.java
@@ -26,7 +26,6 @@ import mage.players.Player;
import mage.target.Target;
import mage.target.TargetPlayer;
import mage.target.common.TargetCardInYourGraveyard;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -51,7 +50,6 @@ public final class TorrentOfSouls extends CardImpl {
this.getSpellAbility().addTarget(targetPlayer);
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {B}{R} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/t/TurnIntoAPumpkin.java b/Mage.Sets/src/mage/cards/t/TurnIntoAPumpkin.java
index 93246265811..749040bb976 100644
--- a/Mage.Sets/src/mage/cards/t/TurnIntoAPumpkin.java
+++ b/Mage.Sets/src/mage/cards/t/TurnIntoAPumpkin.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.game.permanent.token.FoodToken;
import mage.target.common.TargetNonlandPermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -33,7 +32,6 @@ public final class TurnIntoAPumpkin extends CardImpl {
"
Adamant — If at least three blue mana " +
"was spent to cast this spell, create a Food token."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private TurnIntoAPumpkin(final TurnIntoAPumpkin card) {
diff --git a/Mage.Sets/src/mage/cards/u/UnexplainedVision.java b/Mage.Sets/src/mage/cards/u/UnexplainedVision.java
index 3fb0d06e51c..bfca6cf922f 100644
--- a/Mage.Sets/src/mage/cards/u/UnexplainedVision.java
+++ b/Mage.Sets/src/mage/cards/u/UnexplainedVision.java
@@ -7,7 +7,6 @@ import mage.abilities.effects.keyword.ScryEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -27,7 +26,6 @@ public final class UnexplainedVision extends CardImpl {
new ScryEffect(3), AdamantCondition.BLUE, "
Adamant — " +
"If at least three blue mana was spent to cast this spell, scry 3."
));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
private UnexplainedVision(final UnexplainedVision card) {
diff --git a/Mage.Sets/src/mage/cards/u/UnnervingAssault.java b/Mage.Sets/src/mage/cards/u/UnnervingAssault.java
index ec90efb3b7c..4234257366b 100644
--- a/Mage.Sets/src/mage/cards/u/UnnervingAssault.java
+++ b/Mage.Sets/src/mage/cards/u/UnnervingAssault.java
@@ -13,7 +13,6 @@ import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.filter.common.FilterCreaturePermanent;
-import mage.watchers.common.ManaSpentToCastWatcher;
/**
*
@@ -41,7 +40,6 @@ public final class UnnervingAssault extends CardImpl {
new BoostAllEffect(1, 0, Duration.EndOfTurn, filter2, false),
new ManaWasSpentCondition(ColoredManaSymbol.R), " and creatures you control get +1/+0 until end of turn if {R} was spent to cast it"));
this.getSpellAbility().addEffect(new InfoEffect("(Do both if {U}{R} was spent.)"));
- this.getSpellAbility().addWatcher(new ManaSpentToCastWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/v/VantressPaladin.java b/Mage.Sets/src/mage/cards/v/VantressPaladin.java
index 2c1ef9dfef1..72935dc03de 100644
--- a/Mage.Sets/src/mage/cards/v/VantressPaladin.java
+++ b/Mage.Sets/src/mage/cards/v/VantressPaladin.java
@@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
-import mage.watchers.common.ManaSpentToCastWatcher;
import java.util.UUID;
@@ -36,7 +35,7 @@ public final class VantressPaladin extends CardImpl {
AdamantCondition.BLUE, "
Adamant — " +
"If at least three blue mana was spent to cast this spell, " +
"{this} enters the battlefield with a +1/+1 counter on it.", ""
- ), new ManaSpentToCastWatcher());
+ ));
}
private VantressPaladin(final VantressPaladin card) {
diff --git a/Mage/src/main/java/mage/game/GameImpl.java b/Mage/src/main/java/mage/game/GameImpl.java
index 53eda2a74ae..81939b25d42 100644
--- a/Mage/src/main/java/mage/game/GameImpl.java
+++ b/Mage/src/main/java/mage/game/GameImpl.java
@@ -1142,6 +1142,7 @@ public abstract class GameImpl implements Game, Serializable {
getState().addWatcher(new AttackedThisTurnWatcher());
getState().addWatcher(new PlayersAttackedThisTurnWatcher());
getState().addWatcher(new CardsDrawnThisTurnWatcher());
+ getState().addWatcher(new ManaSpentToCastWatcher());
}
public void initPlayerDefaultWatchers(UUID playerId) {
diff --git a/Mage/src/main/java/mage/watchers/common/ManaSpentToCastWatcher.java b/Mage/src/main/java/mage/watchers/common/ManaSpentToCastWatcher.java
index 79b9ffdd036..99d132f7239 100644
--- a/Mage/src/main/java/mage/watchers/common/ManaSpentToCastWatcher.java
+++ b/Mage/src/main/java/mage/watchers/common/ManaSpentToCastWatcher.java
@@ -11,6 +11,7 @@ import mage.watchers.Watcher;
/**
* Watcher saves the mana that was spent to cast a spell
+ * automatically added in each game
*
* @author LevelX2
*/