From 6ba8c6fb90fd8b727e0d3a65a6778c8564ee684c Mon Sep 17 00:00:00 2001 From: theelk801 Date: Wed, 19 Nov 2025 09:11:05 -0500 Subject: [PATCH] [TLE] Implement Katara's Reversal --- .../src/mage/cards/k/KatarasReversal.java | 47 +++++++++++++++++++ .../sets/AvatarTheLastAirbenderEternal.java | 1 + 2 files changed, 48 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/k/KatarasReversal.java diff --git a/Mage.Sets/src/mage/cards/k/KatarasReversal.java b/Mage.Sets/src/mage/cards/k/KatarasReversal.java new file mode 100644 index 00000000000..93af60adaa7 --- /dev/null +++ b/Mage.Sets/src/mage/cards/k/KatarasReversal.java @@ -0,0 +1,47 @@ +package mage.cards.k; + +import mage.abilities.effects.common.CounterTargetEffect; +import mage.abilities.effects.common.UntapTargetEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.filter.StaticFilters; +import mage.target.TargetPermanent; +import mage.target.TargetStackObject; +import mage.target.targetpointer.SecondTargetPointer; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class KatarasReversal extends CardImpl { + + public KatarasReversal(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{U}{U}"); + + // Counter up to four target spells and/or abilities. + this.getSpellAbility().addEffect(new CounterTargetEffect() + .setText("counter up to four target spells and/or abilities")); + this.getSpellAbility().addTarget(new TargetStackObject( + 0, 4, StaticFilters.FILTER_SPELL_OR_ABILITY + )); + + // Untap up to four target artifacts and/or creatures. + this.getSpellAbility().addEffect(new UntapTargetEffect() + .setTargetPointer(new SecondTargetPointer()) + .setText("
Untap up to four target artifacts and/or creatures")); + this.getSpellAbility().addTarget(new TargetPermanent( + 0, 4, StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_CREATURE + )); + } + + private KatarasReversal(final KatarasReversal card) { + super(card); + } + + @Override + public KatarasReversal copy() { + return new KatarasReversal(this); + } +} diff --git a/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java b/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java index a2158739c56..c7519cdbab7 100644 --- a/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java +++ b/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java @@ -165,6 +165,7 @@ public final class AvatarTheLastAirbenderEternal extends ExpansionSet { cards.add(new SetCardInfo("Jet, Rebel Leader", 172, Rarity.RARE, mage.cards.j.JetRebelLeader.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Jet, Rebel Leader", 78, Rarity.RARE, mage.cards.j.JetRebelLeader.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Join the Dance", 50, Rarity.MYTHIC, mage.cards.j.JoinTheDance.class)); + cards.add(new SetCardInfo("Katara's Reversal", 63, Rarity.RARE, mage.cards.k.KatarasReversal.class)); cards.add(new SetCardInfo("Katara, Heroic Healer", 215, Rarity.UNCOMMON, mage.cards.k.KataraHeroicHealer.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Katara, Heroic Healer", 269, Rarity.UNCOMMON, mage.cards.k.KataraHeroicHealer.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Katara, Seeking Revenge", 148, Rarity.UNCOMMON, mage.cards.k.KataraSeekingRevenge.class));