From e365aa7b2da9954e7af4fbe4d1d51e06a87c4e64 Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Sat, 17 Jun 2023 18:01:45 +0400 Subject: [PATCH] If you revealed a Dragon card or controlled a Dragon - fixed game error on usage (miss watcher) --- Mage.Sets/src/mage/cards/d/DraconicRoar.java | 2 ++ Mage.Sets/src/mage/cards/d/DragonlordsPrerogative.java | 3 ++- Mage.Sets/src/mage/cards/f/FoulTongueInvocation.java | 2 ++ Mage.Sets/src/mage/cards/s/SilumgarsScorn.java | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Mage.Sets/src/mage/cards/d/DraconicRoar.java b/Mage.Sets/src/mage/cards/d/DraconicRoar.java index 6bcb8922161f..eedaaec55289 100644 --- a/Mage.Sets/src/mage/cards/d/DraconicRoar.java +++ b/Mage.Sets/src/mage/cards/d/DraconicRoar.java @@ -12,6 +12,7 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetCreaturePermanent; +import mage.watchers.common.DragonOnTheBattlefieldWhileSpellWasCastWatcher; import java.util.UUID; @@ -29,6 +30,7 @@ public DraconicRoar(UUID ownerId, CardSetInfo setInfo) { // Draconic Roar deals 3 damage to target creature. If you revealed a Dragon card or controlled a Dragon as you cast Draconic Roar, Draconic Roar deals 3 damage to that creature's controller. this.getSpellAbility().addEffect(new DraconicRoarEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); + this.getSpellAbility().addWatcher(new DragonOnTheBattlefieldWhileSpellWasCastWatcher()); } private DraconicRoar(final DraconicRoar card) { diff --git a/Mage.Sets/src/mage/cards/d/DragonlordsPrerogative.java b/Mage.Sets/src/mage/cards/d/DragonlordsPrerogative.java index 405555be6170..db349439a766 100644 --- a/Mage.Sets/src/mage/cards/d/DragonlordsPrerogative.java +++ b/Mage.Sets/src/mage/cards/d/DragonlordsPrerogative.java @@ -10,6 +10,7 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; +import mage.watchers.common.DragonOnTheBattlefieldWhileSpellWasCastWatcher; import java.util.UUID; @@ -30,7 +31,7 @@ public DragonlordsPrerogative(UUID ownerId, CardSetInfo setInfo) { new ConditionalContinuousRuleModifyingEffect( new CantBeCounteredSourceEffect(), RevealedOrControlledDragonCondition.instance ).setText("if you revealed a Dragon card or controlled a Dragon as you cast this spell, this spell can't be countered") - )); + ), new DragonOnTheBattlefieldWhileSpellWasCastWatcher()); // Draw four cards. this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(4)); diff --git a/Mage.Sets/src/mage/cards/f/FoulTongueInvocation.java b/Mage.Sets/src/mage/cards/f/FoulTongueInvocation.java index 8f5a39603184..afacf04195b5 100644 --- a/Mage.Sets/src/mage/cards/f/FoulTongueInvocation.java +++ b/Mage.Sets/src/mage/cards/f/FoulTongueInvocation.java @@ -10,6 +10,7 @@ import mage.constants.CardType; import mage.filter.StaticFilters; import mage.target.TargetPlayer; +import mage.watchers.common.DragonOnTheBattlefieldWhileSpellWasCastWatcher; import java.util.UUID; @@ -33,6 +34,7 @@ public FoulTongueInvocation(UUID ownerId, CardSetInfo setInfo) { "If you revealed a Dragon card or controlled a Dragon as you cast this spell, you gain 4 life." )); this.getSpellAbility().addTarget(new TargetPlayer()); + this.getSpellAbility().addWatcher(new DragonOnTheBattlefieldWhileSpellWasCastWatcher()); } private FoulTongueInvocation(final FoulTongueInvocation card) { diff --git a/Mage.Sets/src/mage/cards/s/SilumgarsScorn.java b/Mage.Sets/src/mage/cards/s/SilumgarsScorn.java index d922fd459603..a4eab835ec05 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarsScorn.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarsScorn.java @@ -10,6 +10,7 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.target.TargetSpell; +import mage.watchers.common.DragonOnTheBattlefieldWhileSpellWasCastWatcher; import java.util.UUID; @@ -31,6 +32,7 @@ public SilumgarsScorn(UUID ownerId, CardSetInfo setInfo) { "If you revealed a Dragon card or controlled a Dragon as you cast this spell, counter that spell instead" )); this.getSpellAbility().addTarget(new TargetSpell()); + this.getSpellAbility().addWatcher(new DragonOnTheBattlefieldWhileSpellWasCastWatcher()); } private SilumgarsScorn(final SilumgarsScorn card) {