diff --git a/Mage.Sets/src/mage/cards/a/Aggression.java b/Mage.Sets/src/mage/cards/a/Aggression.java index e5fd158f0a8..470f3b89da4 100644 --- a/Mage.Sets/src/mage/cards/a/Aggression.java +++ b/Mage.Sets/src/mage/cards/a/Aggression.java @@ -64,8 +64,7 @@ public final class Aggression extends CardImpl { new DestroyAttachedToEffect("enchanted"), TargetController.CONTROLLER_ATTACHED_TO), DidNotAttackThisTurnEnchantedCondition.instance, - "At the beginning of the end step of enchanted creature's controller, destroy that creature if it didn't attack this turn."), - new AttackedThisTurnWatcher()); + "At the beginning of the end step of enchanted creature's controller, destroy that creature if it didn't attack this turn.")); } diff --git a/Mage.Sets/src/mage/cards/a/AngelsTrumpet.java b/Mage.Sets/src/mage/cards/a/AngelsTrumpet.java index 0c09689fd7f..8826d33a545 100644 --- a/Mage.Sets/src/mage/cards/a/AngelsTrumpet.java +++ b/Mage.Sets/src/mage/cards/a/AngelsTrumpet.java @@ -31,7 +31,7 @@ public final class AngelsTrumpet extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, new FilterCreaturePermanent()))); // At the beginning of each player's end step, tap all untapped creatures that player controls that didn't attack this turn. Angel's Trumpet deals damage to the player equal to the number of creatures tapped this way. - this.addAbility(new BeginningOfEndStepTriggeredAbility(new AngelsTrumpetTapEffect(), TargetController.ANY, false), new AttackedThisTurnWatcher()); + this.addAbility(new BeginningOfEndStepTriggeredAbility(new AngelsTrumpetTapEffect(), TargetController.ANY, false)); } private AngelsTrumpet(final AngelsTrumpet card) { diff --git a/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java b/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java index 7785ff2e6e3..bbc4f2ea311 100644 --- a/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java +++ b/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java @@ -37,7 +37,7 @@ public final class AvatarOfSlaughter extends CardImpl { effect = new AttacksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES); effect.setText("and attack each combat if able"); ability.addEffect(effect); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private AvatarOfSlaughter(final AvatarOfSlaughter card) { diff --git a/Mage.Sets/src/mage/cards/b/Berserk.java b/Mage.Sets/src/mage/cards/b/Berserk.java index ec13f4322ae..f24a58c0ca0 100644 --- a/Mage.Sets/src/mage/cards/b/Berserk.java +++ b/Mage.Sets/src/mage/cards/b/Berserk.java @@ -47,7 +47,6 @@ public final class Berserk extends CardImpl { this.getSpellAbility().addEffect(effect); this.getSpellAbility().addEffect(new BerserkDestroyEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); } diff --git a/Mage.Sets/src/mage/cards/c/ChargingCinderhorn.java b/Mage.Sets/src/mage/cards/c/ChargingCinderhorn.java index 12d55ac3a33..29ae530ff93 100644 --- a/Mage.Sets/src/mage/cards/c/ChargingCinderhorn.java +++ b/Mage.Sets/src/mage/cards/c/ChargingCinderhorn.java @@ -40,7 +40,7 @@ public final class ChargingCinderhorn extends CardImpl { effect.setText("put a fury counter on {this}. Then {this} deals damage equal to the number of fury counters on it to that player"); BeginningOfEndStepTriggeredAbility ability = new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, effect, TargetController.ANY, new ChargingCinderhornCondition(), false); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private ChargingCinderhorn(final ChargingCinderhorn card) { diff --git a/Mage.Sets/src/mage/cards/e/ErgRaiders.java b/Mage.Sets/src/mage/cards/e/ErgRaiders.java index 5fcf9a75b64..22a7091b2fb 100644 --- a/Mage.Sets/src/mage/cards/e/ErgRaiders.java +++ b/Mage.Sets/src/mage/cards/e/ErgRaiders.java @@ -43,7 +43,6 @@ public final class ErgRaiders extends CardImpl { new BeginningOfEndStepTriggeredAbility(effect, TargetController.YOU, false), new InvertCondition(AttackedThisTurnSourceCondition.instance), "At the beginning of your end step, if {this} didn't attack this turn, {this} deals 2 damage to you unless it came under your control this turn."); - ability.addWatcher(new AttackedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/f/FuryOfTheHorde.java b/Mage.Sets/src/mage/cards/f/FuryOfTheHorde.java index f810bc6a9fd..7be92336414 100644 --- a/Mage.Sets/src/mage/cards/f/FuryOfTheHorde.java +++ b/Mage.Sets/src/mage/cards/f/FuryOfTheHorde.java @@ -36,7 +36,6 @@ public final class FuryOfTheHorde extends CardImpl { // Untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. this.getSpellAbility().addEffect(new UntapAllThatAttackedEffect()); this.getSpellAbility().addEffect(new AddCombatAndMainPhaseEffect()); - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); } diff --git a/Mage.Sets/src/mage/cards/g/GrandMelee.java b/Mage.Sets/src/mage/cards/g/GrandMelee.java index 82550b1a17b..d8680b3fff5 100644 --- a/Mage.Sets/src/mage/cards/g/GrandMelee.java +++ b/Mage.Sets/src/mage/cards/g/GrandMelee.java @@ -24,7 +24,7 @@ public final class GrandMelee extends CardImpl { // All creatures attack each turn if able. Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new AttacksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES)); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); // All creatures block each turn if able. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES))); diff --git a/Mage.Sets/src/mage/cards/i/ImaginaryThreats.java b/Mage.Sets/src/mage/cards/i/ImaginaryThreats.java index cf37c07aa6e..3027a35d83b 100644 --- a/Mage.Sets/src/mage/cards/i/ImaginaryThreats.java +++ b/Mage.Sets/src/mage/cards/i/ImaginaryThreats.java @@ -32,7 +32,6 @@ public final class ImaginaryThreats extends CardImpl { // Creatures target opponent controls attack this turn if able. During that player's next untap step, creatures they control don't untap. getSpellAbility().addEffect(new ImaginaryThreatsEffect()); - getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); getSpellAbility().addTarget(new TargetOpponent()); getSpellAbility().addEffect(new DontUntapInPlayersNextUntapStepAllEffect(new FilterCreaturePermanent()) .setText("During that player's next untap step, creatures they control don't untap")); diff --git a/Mage.Sets/src/mage/cards/i/InciteWar.java b/Mage.Sets/src/mage/cards/i/InciteWar.java index 91bba5d8a12..46960a39414 100644 --- a/Mage.Sets/src/mage/cards/i/InciteWar.java +++ b/Mage.Sets/src/mage/cards/i/InciteWar.java @@ -34,7 +34,6 @@ public final class InciteWar extends CardImpl { // Choose one - Creatures target player controls attack this turn if able; this.getSpellAbility().addEffect(new InciteWarMustAttackEffect()); this.getSpellAbility().addTarget(new TargetPlayer()); - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); // or creatures you control gain first strike until end of turn. Mode mode = new Mode(new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); diff --git a/Mage.Sets/src/mage/cards/i/InfernoHellion.java b/Mage.Sets/src/mage/cards/i/InfernoHellion.java index df819ac8168..ab6e06604f5 100644 --- a/Mage.Sets/src/mage/cards/i/InfernoHellion.java +++ b/Mage.Sets/src/mage/cards/i/InfernoHellion.java @@ -45,7 +45,6 @@ public final class InfernoHellion extends CardImpl { + "if {this} attacked or blocked this turn, " + "its owner shuffles it into their library." ); - ability.addWatcher(new AttackedThisTurnWatcher()); ability.addWatcher(new BlockedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/i/Instigator.java b/Mage.Sets/src/mage/cards/i/Instigator.java index c516f9e5819..61cb4fb52fb 100644 --- a/Mage.Sets/src/mage/cards/i/Instigator.java +++ b/Mage.Sets/src/mage/cards/i/Instigator.java @@ -43,7 +43,6 @@ public final class Instigator extends CardImpl { ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); ability.addTarget(new TargetPlayer()); - ability.addWatcher(new AttackedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/i/InstillFuror.java b/Mage.Sets/src/mage/cards/i/InstillFuror.java index 31477705725..7632d6685dc 100644 --- a/Mage.Sets/src/mage/cards/i/InstillFuror.java +++ b/Mage.Sets/src/mage/cards/i/InstillFuror.java @@ -50,7 +50,7 @@ public final class InstillFuror extends CardImpl { "sacrifice this creature unless it attacked this turn"), TargetController.YOU, false); Effect effect = new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield); effect.setText("Enchanted creature has \"At the beginning of your end step, sacrifice this creature unless it attacked this turn.\""); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect), new AttackedThisTurnWatcher()); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/i/Insubordination.java b/Mage.Sets/src/mage/cards/i/Insubordination.java index 531c5b72735..7e077dd2270 100644 --- a/Mage.Sets/src/mage/cards/i/Insubordination.java +++ b/Mage.Sets/src/mage/cards/i/Insubordination.java @@ -42,8 +42,7 @@ public final class Insubordination extends CardImpl { new DamageAttachedControllerEffect(2), TargetController.CONTROLLER_ATTACHED_TO), DidNotAttackThisTurnEnchantedCondition.instance, - "At the beginning of the end step of enchanted creature's controller, {this} deals 2 damage to that player unless that creature attacked this turn."), - new AttackedThisTurnWatcher()); + "At the beginning of the end step of enchanted creature's controller, {this} deals 2 damage to that player unless that creature attacked this turn.")); } private Insubordination(final Insubordination card) { diff --git a/Mage.Sets/src/mage/cards/i/InvasionOfGobakhan.java b/Mage.Sets/src/mage/cards/i/InvasionOfGobakhan.java index 633c0038f06..534e621bc6c 100644 --- a/Mage.Sets/src/mage/cards/i/InvasionOfGobakhan.java +++ b/Mage.Sets/src/mage/cards/i/InvasionOfGobakhan.java @@ -40,7 +40,7 @@ public final class InvasionOfGobakhan extends CardImpl { // When Invasion of Gobakhan enters the battlefield, look at target opponent's hand. You may exile a nonland card from it. For as long as that card remains exiled, its owner may play it. A spell cast this way costs {2} more to cast. Ability ability = new EntersBattlefieldTriggeredAbility(new InvasionOfGobakhanEffect()); ability.addTarget(new TargetOpponent()); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private InvasionOfGobakhan(final InvasionOfGobakhan card) { diff --git a/Mage.Sets/src/mage/cards/k/KardurDoomscourge.java b/Mage.Sets/src/mage/cards/k/KardurDoomscourge.java index 8aa552a8bf7..7572404f937 100644 --- a/Mage.Sets/src/mage/cards/k/KardurDoomscourge.java +++ b/Mage.Sets/src/mage/cards/k/KardurDoomscourge.java @@ -39,7 +39,6 @@ public final class KardurDoomscourge extends CardImpl { StaticFilters.FILTER_OPPONENTS_PERMANENT_CREATURE, Duration.UntilYourNextTurn ).setText("until your next turn, creatures your opponents control attack each combat if able")); ability.addEffect(new KardurDoomscourgeEffect()); - ability.addWatcher(new AttackedThisTurnWatcher()); this.addAbility(ability); // Whenever an attacking creature dies, each opponent loses 1 life and you gain 1 life. diff --git a/Mage.Sets/src/mage/cards/k/KeldonTwilight.java b/Mage.Sets/src/mage/cards/k/KeldonTwilight.java index 33ae159fe52..e3144d2fd88 100644 --- a/Mage.Sets/src/mage/cards/k/KeldonTwilight.java +++ b/Mage.Sets/src/mage/cards/k/KeldonTwilight.java @@ -37,7 +37,7 @@ public final class KeldonTwilight extends CardImpl { effect.setText("that player sacrifices a creature they controlled since the beginning of the turn"); BeginningOfEndStepTriggeredAbility ability = new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, effect, TargetController.ANY, new KeldonTwilightCondition(), false); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private KeldonTwilight(final KeldonTwilight card) { diff --git a/Mage.Sets/src/mage/cards/l/Lurker.java b/Mage.Sets/src/mage/cards/l/Lurker.java index 2627aff0812..e49aa6bfe47 100644 --- a/Mage.Sets/src/mage/cards/l/Lurker.java +++ b/Mage.Sets/src/mage/cards/l/Lurker.java @@ -39,7 +39,6 @@ public final class Lurker extends CardImpl { new CantBeTargetedSourceEffect(new FilterSpell(), Duration.WhileOnBattlefield), new InvertCondition(new OrCondition(AttackedThisTurnSourceCondition.instance, BlockedThisTurnSourceCondition.instance))); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect.setText("{this} can't be the target of spells unless it attacked or blocked this turn")); - ability.addWatcher(new AttackedThisTurnWatcher()); ability.addWatcher(new BlockedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/m/MadDog.java b/Mage.Sets/src/mage/cards/m/MadDog.java index d451b2813c8..4cf9161da0d 100644 --- a/Mage.Sets/src/mage/cards/m/MadDog.java +++ b/Mage.Sets/src/mage/cards/m/MadDog.java @@ -38,7 +38,6 @@ public final class MadDog extends CardImpl { Ability ability = new ConditionalInterveningIfTriggeredAbility(new BeginningOfEndStepTriggeredAbility( new SacrificeSourceEffect(), TargetController.YOU, false), condition, "At the beginning of your end step, if {this} didn't attack or come under your control this turn, sacrifice it"); - ability.addWatcher(new AttackedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/m/MaddeningImp.java b/Mage.Sets/src/mage/cards/m/MaddeningImp.java index fa03f73daa0..06a989f264d 100644 --- a/Mage.Sets/src/mage/cards/m/MaddeningImp.java +++ b/Mage.Sets/src/mage/cards/m/MaddeningImp.java @@ -56,7 +56,7 @@ public final class MaddeningImp extends CardImpl { + "At the beginning of the next end step, destroy each of those creatures that didn't attack this turn. " + "Activate only during an opponent's turn and only before combat."); ability.addEffect(new MaddeningImpCreateDelayedTriggeredAbilityEffect()); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/m/MetzaliTowerOfTriumph.java b/Mage.Sets/src/mage/cards/m/MetzaliTowerOfTriumph.java index 01043b63781..a148866056b 100644 --- a/Mage.Sets/src/mage/cards/m/MetzaliTowerOfTriumph.java +++ b/Mage.Sets/src/mage/cards/m/MetzaliTowerOfTriumph.java @@ -50,7 +50,6 @@ public final class MetzaliTowerOfTriumph extends CardImpl { // {2}{W}, {T}: Choose a creature at random that attacked this turn. Destroy that creature. ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MetzaliTowerOfTriumphEffect(), new ManaCostsImpl<>("{2}{W}")); ability.addCost(new TapSourceCost()); - ability.addWatcher(new AttackedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/m/MoraugFuryOfAkoum.java b/Mage.Sets/src/mage/cards/m/MoraugFuryOfAkoum.java index d02ea14be07..9728b92ca72 100644 --- a/Mage.Sets/src/mage/cards/m/MoraugFuryOfAkoum.java +++ b/Mage.Sets/src/mage/cards/m/MoraugFuryOfAkoum.java @@ -37,7 +37,7 @@ public final class MoraugFuryOfAkoum extends CardImpl { this.toughness = new MageInt(6); // Each creature you control gets +1/+0 for each time it has attacked this turn. - this.addAbility(new SimpleStaticAbility(new MoraugFuryOfAkoumBoostEffect()), new AttackedThisTurnWatcher()); + this.addAbility(new SimpleStaticAbility(new MoraugFuryOfAkoumBoostEffect())); // Landfall — Whenever a land enters the battlefield under your control, if it's your main phase, there's an additional combat phase after this phase. At the beginning of that combat, untap all creatures you control. this.addAbility(new ConditionalInterveningIfTriggeredAbility( diff --git a/Mage.Sets/src/mage/cards/n/NettlingImp.java b/Mage.Sets/src/mage/cards/n/NettlingImp.java index eed3ea63884..48f8a7da94b 100644 --- a/Mage.Sets/src/mage/cards/n/NettlingImp.java +++ b/Mage.Sets/src/mage/cards/n/NettlingImp.java @@ -54,7 +54,7 @@ public final class NettlingImp extends CardImpl { + "Activate only during an opponent's turn, before attackers are declared."); ability.addEffect(new NettlingImpDelayedDestroyEffect()); ability.addTarget(new TargetCreaturePermanent(filter)); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/n/Norritt.java b/Mage.Sets/src/mage/cards/n/Norritt.java index 9e034364049..a12b3fdc1d9 100644 --- a/Mage.Sets/src/mage/cards/n/Norritt.java +++ b/Mage.Sets/src/mage/cards/n/Norritt.java @@ -69,7 +69,7 @@ public final class Norritt extends CardImpl { + "Activate only before attackers are declared."); ability2.addEffect(new NorrittDelayedDestroyEffect()); ability2.addTarget(new TargetCreaturePermanent(filterCreature)); - this.addAbility(ability2, new AttackedThisTurnWatcher()); + this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/o/OracleEnVec.java b/Mage.Sets/src/mage/cards/o/OracleEnVec.java index 85619582235..042c879eed7 100644 --- a/Mage.Sets/src/mage/cards/o/OracleEnVec.java +++ b/Mage.Sets/src/mage/cards/o/OracleEnVec.java @@ -49,7 +49,7 @@ public final class OracleEnVec extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new OracleEnVecEffect(), new TapSourceCost(), MyTurnCondition.instance); ability.addTarget(new TargetOpponent()); ability.addHint(MyTurnHint.instance); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private OracleEnVec(final OracleEnVec card) { diff --git a/Mage.Sets/src/mage/cards/r/RelentlessAssault.java b/Mage.Sets/src/mage/cards/r/RelentlessAssault.java index a3679f29b51..f4ed42f3842 100644 --- a/Mage.Sets/src/mage/cards/r/RelentlessAssault.java +++ b/Mage.Sets/src/mage/cards/r/RelentlessAssault.java @@ -19,7 +19,6 @@ public final class RelentlessAssault extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{R}{R}"); // Untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); this.getSpellAbility().addEffect(new UntapAllThatAttackedEffect()); this.getSpellAbility().addEffect(new AddCombatAndMainPhaseEffect()); } diff --git a/Mage.Sets/src/mage/cards/r/RidersOfTheMark.java b/Mage.Sets/src/mage/cards/r/RidersOfTheMark.java index 11fe9b1d576..e80086b9ea7 100644 --- a/Mage.Sets/src/mage/cards/r/RidersOfTheMark.java +++ b/Mage.Sets/src/mage/cards/r/RidersOfTheMark.java @@ -71,7 +71,6 @@ public final class RidersOfTheMark extends CardImpl { + "1/1 white Human Soldier creature tokens equal to its toughness." )); - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); } private RidersOfTheMark(final RidersOfTheMark card) { @@ -120,4 +119,4 @@ class RidersOfTheMarkEffect extends OneShotEffect { return true; } -} \ No newline at end of file +} diff --git a/Mage.Sets/src/mage/cards/r/RobberOfTheRich.java b/Mage.Sets/src/mage/cards/r/RobberOfTheRich.java index 4d8298f83d5..2ab326cebe2 100644 --- a/Mage.Sets/src/mage/cards/r/RobberOfTheRich.java +++ b/Mage.Sets/src/mage/cards/r/RobberOfTheRich.java @@ -52,7 +52,7 @@ public final class RobberOfTheRich extends CardImpl { "if defending player has more cards in hand than you, exile the top card of their library. " + "During any turn you attacked with a Rogue, you may cast that card and " + "you may spend mana as though it were mana of any color to cast that spell." - ).addHint(new ConditionHint(new RogueAttackedThisTurnCondition(null))), new AttackedThisTurnWatcher()); + ).addHint(new ConditionHint(new RogueAttackedThisTurnCondition(null)))); } private RobberOfTheRich(final RobberOfTheRich card) { @@ -163,4 +163,3 @@ class RobberOfTheRichEffect extends OneShotEffect { return false; } } - diff --git a/Mage.Sets/src/mage/cards/s/SeasonOfTheWitch.java b/Mage.Sets/src/mage/cards/s/SeasonOfTheWitch.java index 21d0518e9c7..b047f23b55a 100644 --- a/Mage.Sets/src/mage/cards/s/SeasonOfTheWitch.java +++ b/Mage.Sets/src/mage/cards/s/SeasonOfTheWitch.java @@ -43,7 +43,6 @@ public final class SeasonOfTheWitch extends CardImpl { // At the beginning of the end step, destroy all untapped creatures that didn't attack this turn, except for creatures that couldn't attack. Ability ability = new BeginningOfEndStepTriggeredAbility(new SeasonOfTheWitchEffect(), TargetController.ANY, false); - ability.addWatcher(new AttackedThisTurnWatcher()); ability.addWatcher(new CouldAttackThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SirensCall.java b/Mage.Sets/src/mage/cards/s/SirensCall.java index b197b728aab..124398e2e98 100644 --- a/Mage.Sets/src/mage/cards/s/SirensCall.java +++ b/Mage.Sets/src/mage/cards/s/SirensCall.java @@ -42,7 +42,6 @@ public final class SirensCall extends CardImpl { // At the beginning of the next end step, destroy all non-Wall creatures that player controls that didn't attack this turn. Ignore this effect for each creature the player didn't control continuously since the beginning of the turn. this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new SirensCallDestroyEffect()))); - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); } private SirensCall(final SirensCall card) { diff --git a/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java b/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java index 5541b193e0c..bcacae3449c 100644 --- a/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java +++ b/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java @@ -57,7 +57,7 @@ public final class TaigamOjutaiMaster extends CardImpl { Ability ability = new ConditionalInterveningIfTriggeredAbility(new TaigamOjutaiMasterTriggeredAbility(), AttackedThisTurnSourceCondition.instance, effectText); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private TaigamOjutaiMaster(final TaigamOjutaiMaster card) { diff --git a/Mage.Sets/src/mage/cards/t/TheFifthDoctor.java b/Mage.Sets/src/mage/cards/t/TheFifthDoctor.java index 4fe139b6d4c..bac63d60da2 100644 --- a/Mage.Sets/src/mage/cards/t/TheFifthDoctor.java +++ b/Mage.Sets/src/mage/cards/t/TheFifthDoctor.java @@ -52,7 +52,7 @@ public final class TheFifthDoctor extends CardImpl { TargetController.YOU, false ); ability.addEffect(new UntapAllEffect(filter).setText("Untap those creatures")); - this.addAbility(ability.withFlavorWord("Peaceful Coexistence"), new AttackedThisTurnWatcher()); + this.addAbility(ability.withFlavorWord("Peaceful Coexistence")); } private TheFifthDoctor(final TheFifthDoctor card) { @@ -72,4 +72,4 @@ enum TheFifthDoctorPredicate implements Predicate { public boolean apply(Permanent input, Game game) { return !game.getState().getWatcher(AttackedThisTurnWatcher.class).checkIfAttacked(input, game); } -} \ No newline at end of file +} diff --git a/Mage.Sets/src/mage/cards/v/VizierOfDeferment.java b/Mage.Sets/src/mage/cards/v/VizierOfDeferment.java index efef911ca39..b77e64c3b9a 100644 --- a/Mage.Sets/src/mage/cards/v/VizierOfDeferment.java +++ b/Mage.Sets/src/mage/cards/v/VizierOfDeferment.java @@ -40,7 +40,6 @@ public final class VizierOfDeferment extends CardImpl { // When Vizier of Deferment enters the battlefield, you may exile target creature if it attacked or blocked this turn. Return that card to the battlefield under its owner's control at the beginning of the next end step. Ability ability = new EntersBattlefieldTriggeredAbility(new VizierOfDefermentEffect(), true); ability.addTarget(new TargetCreaturePermanent()); - ability.addWatcher(new AttackedThisTurnWatcher()); ability.addWatcher(new BlockedThisTurnWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/w/WavesOfAggression.java b/Mage.Sets/src/mage/cards/w/WavesOfAggression.java index f74ca589175..96a8dac9fec 100644 --- a/Mage.Sets/src/mage/cards/w/WavesOfAggression.java +++ b/Mage.Sets/src/mage/cards/w/WavesOfAggression.java @@ -20,7 +20,6 @@ public final class WavesOfAggression extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{R/W}{R/W}"); // Untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. - this.getSpellAbility().addWatcher(new AttackedThisTurnWatcher()); this.getSpellAbility().addEffect(new UntapAllThatAttackedEffect()); this.getSpellAbility().addEffect(new AddCombatAndMainPhaseEffect()); // Retrace diff --git a/Mage.Sets/src/mage/cards/w/WeddingAnnouncement.java b/Mage.Sets/src/mage/cards/w/WeddingAnnouncement.java index b4c84d8afd7..3a4738eca62 100644 --- a/Mage.Sets/src/mage/cards/w/WeddingAnnouncement.java +++ b/Mage.Sets/src/mage/cards/w/WeddingAnnouncement.java @@ -48,7 +48,7 @@ public final class WeddingAnnouncement extends CardImpl { new SourceHasCounterCondition(CounterType.INVITATION, 3), "Then if {this} has three or more invitation counters on it, transform it" )); - this.addAbility(ability, new AttackedThisTurnWatcher()); + this.addAbility(ability); } private WeddingAnnouncement(final WeddingAnnouncement card) { diff --git a/Mage.Sets/src/mage/cards/w/WorldAtWar.java b/Mage.Sets/src/mage/cards/w/WorldAtWar.java index 5dfbbd898d5..031484aede1 100644 --- a/Mage.Sets/src/mage/cards/w/WorldAtWar.java +++ b/Mage.Sets/src/mage/cards/w/WorldAtWar.java @@ -32,7 +32,7 @@ public final class WorldAtWar extends CardImpl { this.getSpellAbility().addEffect(new WorldAtWarEffect()); // Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.) - this.addAbility(new ReboundAbility(), new AttackedThisTurnWatcher()); + this.addAbility(new ReboundAbility()); } private WorldAtWar(final WorldAtWar card) { diff --git a/Mage/src/main/java/mage/abilities/common/AttacksFirstTimeTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/AttacksFirstTimeTriggeredAbility.java index 54bedb60434..1b08b4add72 100644 --- a/Mage/src/main/java/mage/abilities/common/AttacksFirstTimeTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/AttacksFirstTimeTriggeredAbility.java @@ -17,7 +17,6 @@ public class AttacksFirstTimeTriggeredAbility extends TriggeredAbilityImpl { public AttacksFirstTimeTriggeredAbility(Effect effect, boolean optional) { super(Zone.BATTLEFIELD, effect, optional); - this.addWatcher(new AttackedThisTurnWatcher()); setTriggerPhrase("Whenever {this} attacks for the first time each turn, "); } diff --git a/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java b/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java index 843f862b067..5a88e50ddbd 100644 --- a/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java @@ -28,7 +28,6 @@ public class BoastAbility extends ActivatedAbilityImpl { public BoastAbility(Effect effect, Cost cost) { super(Zone.BATTLEFIELD, effect, cost); this.maxActivationsPerTurn = 1; - this.addWatcher(new AttackedThisTurnWatcher()); this.condition = BoastCondition.instance; this.addHint(BoastHint.instance); }