Implemented Teferi's Tutelage (mill errata not complete)

This commit is contained in:
Evan Kranzler 2020-06-07 13:40:19 -04:00
parent 36c3db4da1
commit 65d2f3c9c4
3 changed files with 45 additions and 7 deletions

View file

@ -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);
}
}

View file

@ -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));

View file

@ -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();
}
}