From 898e3a37d1036d0692d19f5a54cfa97e050f3bf9 Mon Sep 17 00:00:00 2001 From: theelk801 Date: Thu, 20 Nov 2025 13:11:22 -0500 Subject: [PATCH] [TLE] Implement That's Rough Buddy --- .../src/mage/cards/t/ThatsRoughBuddy.java | 48 +++++++++++++++++++ .../sets/AvatarTheLastAirbenderEternal.java | 1 + 2 files changed, 49 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/t/ThatsRoughBuddy.java diff --git a/Mage.Sets/src/mage/cards/t/ThatsRoughBuddy.java b/Mage.Sets/src/mage/cards/t/ThatsRoughBuddy.java new file mode 100644 index 00000000000..21ef23bc7de --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/ThatsRoughBuddy.java @@ -0,0 +1,48 @@ +package mage.cards.t; + +import mage.abilities.condition.common.CreatureLeftThisTurnCondition; +import mage.abilities.decorator.ConditionalOneShotEffect; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.counters.CounterType; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class ThatsRoughBuddy extends CardImpl { + + public ThatsRoughBuddy(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{W}"); + + this.subtype.add(SubType.LESSON); + + // Put a +1/+1 counter on target creature. Put two +1/+1 counters on that creature instead if a creature left the battlefield under your control this turn. + this.getSpellAbility().addEffect(new ConditionalOneShotEffect( + new AddCountersTargetEffect(CounterType.P1P1.createInstance(2)), + new AddCountersTargetEffect(CounterType.P1P1.createInstance()), + CreatureLeftThisTurnCondition.instance, "put a +1/+1 counter on target creature. Put two +1/+1 " + + "counters on that creature instead if a creature left the battlefield under your control this turn" + )); + this.getSpellAbility().addTarget(new TargetCreaturePermanent()); + this.getSpellAbility().addHint(CreatureLeftThisTurnCondition.getHint()); + + // Draw a card. + this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1).concatBy("
")); + } + + private ThatsRoughBuddy(final ThatsRoughBuddy card) { + super(card); + } + + @Override + public ThatsRoughBuddy copy() { + return new ThatsRoughBuddy(this); + } +} diff --git a/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java b/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java index e12e5227fad..a0def5f3cdf 100644 --- a/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java +++ b/Mage.Sets/src/mage/sets/AvatarTheLastAirbenderEternal.java @@ -276,6 +276,7 @@ public final class AvatarTheLastAirbenderEternal extends ExpansionSet { cards.add(new SetCardInfo("Tectonic Split", 144, Rarity.RARE, mage.cards.t.TectonicSplit.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Tectonic Split", 208, Rarity.RARE, mage.cards.t.TectonicSplit.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Teferi's Protection", 7, Rarity.MYTHIC, mage.cards.t.TeferisProtection.class)); + cards.add(new SetCardInfo("That's Rough Buddy", 87, Rarity.UNCOMMON, mage.cards.t.ThatsRoughBuddy.class)); cards.add(new SetCardInfo("The Art of Tea", 129, Rarity.COMMON, mage.cards.t.TheArtOfTea.class)); cards.add(new SetCardInfo("The Blue Spirit", 178, Rarity.RARE, mage.cards.t.TheBlueSpirit.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("The Blue Spirit", 90, Rarity.RARE, mage.cards.t.TheBlueSpirit.class, NON_FULL_USE_VARIOUS));