diff --git a/Mage.Sets/src/mage/cards/t/TeferisTutelage.java b/Mage.Sets/src/mage/cards/t/TeferisTutelage.java new file mode 100644 index 00000000000..1b31489e790 --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/TeferisTutelage.java @@ -0,0 +1,40 @@ +package mage.cards.t; + +import mage.abilities.Ability; +import mage.abilities.common.DrawCardControllerTriggeredAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.DrawDiscardControllerEffect; +import mage.abilities.effects.common.PutLibraryIntoGraveTargetEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.target.common.TargetOpponent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class TeferisTutelage extends CardImpl { + + public TeferisTutelage(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}"); + + // When Teferi's Tutelage enters the battlefield, draw a card, then discard a card. + this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawDiscardControllerEffect(1, 1))); + + // Whenever you draw a card, target opponent mills two cards. + Ability ability = new DrawCardControllerTriggeredAbility(new PutLibraryIntoGraveTargetEffect(2), false); + ability.addTarget(new TargetOpponent()); + this.addAbility(ability); + } + + private TeferisTutelage(final TeferisTutelage card) { + super(card); + } + + @Override + public TeferisTutelage copy() { + return new TeferisTutelage(this); + } +} diff --git a/Mage.Sets/src/mage/sets/CoreSet2021.java b/Mage.Sets/src/mage/sets/CoreSet2021.java index 34594138f22..edf23bc1748 100644 --- a/Mage.Sets/src/mage/sets/CoreSet2021.java +++ b/Mage.Sets/src/mage/sets/CoreSet2021.java @@ -70,6 +70,7 @@ public final class CoreSet2021 extends ExpansionSet { cards.add(new SetCardInfo("Storm Caller", 335, Rarity.COMMON, mage.cards.s.StormCaller.class)); cards.add(new SetCardInfo("Teferi's Ageless Insight", 76, Rarity.RARE, mage.cards.t.TeferisAgelessInsight.class)); cards.add(new SetCardInfo("Teferi's Protege", 77, Rarity.COMMON, mage.cards.t.TeferisProtege.class)); + cards.add(new SetCardInfo("Teferi's Tutelage", 78, Rarity.UNCOMMON, mage.cards.t.TeferisTutelage.class)); cards.add(new SetCardInfo("Teferi's Wavecaster", 327, Rarity.RARE, mage.cards.t.TeferisWavecaster.class)); cards.add(new SetCardInfo("Teferi, Master of Time", 75, Rarity.MYTHIC, mage.cards.t.TeferiMasterOfTime.class)); cards.add(new SetCardInfo("Tormod's Crypt", 241, Rarity.UNCOMMON, mage.cards.t.TormodsCrypt.class)); diff --git a/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java index 665a930257a..412e1ae3559 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java @@ -65,23 +65,20 @@ public class PutLibraryIntoGraveTargetEffect extends OneShotEffect { sb.append("that target"); } - sb.append(" puts the top "); + sb.append(" mills "); if (message.isEmpty()) { if (amount.toString().equals("1")) { - sb.append("card "); + sb.append("a card"); } else { - sb.append(CardUtil.numberToText(amount.toString())).append(" cards "); + sb.append(CardUtil.numberToText(amount.toString())).append(" cards"); } } else { - sb.append(" X cards "); + sb.append(" X cards, where X is the number of "); } - sb.append("of their library into their graveyard"); if (!message.isEmpty()) { - sb.append(", where X is the number of "); sb.append(message); } return sb.toString(); } - }