[WOE] Implement Ingenious Prodigy

This commit is contained in:
theelk801 2023-08-18 20:01:01 -04:00
parent 7394164073
commit 54f6d7c468
3 changed files with 66 additions and 1 deletions

View file

@ -0,0 +1,64 @@
package mage.cards.i;
import mage.MageInt;
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
import mage.abilities.common.EntersBattlefieldAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.SourceHasCounterCondition;
import mage.abilities.costs.common.RemoveCountersSourceCost;
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
import mage.abilities.effects.common.DoIfCostPaid;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.EntersBattlefieldWithXCountersEffect;
import mage.abilities.keyword.SkulkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.counters.CounterType;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class IngeniousProdigy extends CardImpl {
private static final Condition condition = new SourceHasCounterCondition(CounterType.P1P1);
public IngeniousProdigy(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{X}{U}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(0);
this.toughness = new MageInt(1);
// Skulk
this.addAbility(new SkulkAbility());
// Ingenious Prodigy enters the battlefield with X +1/+1 counters on it.
this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.P1P1.createInstance())));
// At the beginning of your upkeep, if Ingenious Prodigy has one or more +1/+1 counters on it, you may remove a +1/+1 counter from it. If you do, draw a card.
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
new BeginningOfUpkeepTriggeredAbility(
new DoIfCostPaid(
new DrawCardSourceControllerEffect(1),
new RemoveCountersSourceCost(CounterType.P1P1.createInstance())
), TargetController.YOU, false
), condition, "At the beginning of your upkeep, if {this} has one or more " +
"+1/+1 counters on it, you may remove a +1/+1 counter from it. If you do, draw a card."
));
}
private IngeniousProdigy(final IngeniousProdigy card) {
super(card);
}
@Override
public IngeniousProdigy copy() {
return new IngeniousProdigy(this);
}
}

View file

@ -55,6 +55,7 @@ public final class WildsOfEldraine extends ExpansionSet {
cards.add(new SetCardInfo("Greta, Sweettooth Scourge", 205, Rarity.UNCOMMON, mage.cards.g.GretaSweettoothScourge.class));
cards.add(new SetCardInfo("Hopeless Nightmare", 95, Rarity.COMMON, mage.cards.h.HopelessNightmare.class));
cards.add(new SetCardInfo("Howling Galefang", 175, Rarity.UNCOMMON, mage.cards.h.HowlingGalefang.class));
cards.add(new SetCardInfo("Ingenious Prodigy", 56, Rarity.RARE, mage.cards.i.IngeniousProdigy.class));
cards.add(new SetCardInfo("Into the Fae Court", 57, Rarity.COMMON, mage.cards.i.IntoTheFaeCourt.class));
cards.add(new SetCardInfo("Island", 263, Rarity.LAND, mage.cards.basiclands.Island.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Johann, Apprentice Sorcerer", 207, Rarity.UNCOMMON, mage.cards.j.JohannApprenticeSorcerer.class));

View file

@ -50190,7 +50190,7 @@ Farsight Ritual|Wilds of Eldraine|49|R|{2}{U}{U}|Instant|||Bargain$Look at the t
Gadwick's First Duel|Wilds of Eldraine|51|U|{1}{U}|Enchantment - Saga|||(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)$I -- Create a Cursed Role token attached to up to one target creature.$II -- Scry 2.$III -- When you cast your next instant or sorcery spell with mana value 3 or less this turn, copy that spell. You may choose new targets for the copy.|
Ice Out|Wilds of Eldraine|54|C|{1}{U}{U}|Instant|||Bargain$This spell costs {1} less to cast if it's bargained.$Counter target spell.|
Icewrought Sentry|Wilds of Eldraine|55|U|{2}{U}|Creature - Elemental Soldier|2|3|Vigilance$Whenever Icewrought Sentry attacks, you may pay {1}{U}. When you do, tap target creature an opponent controls.$Whenever you tap an untapped creature an opponent controls, Icewrought Sentry gets +2/+1 until end of turn.|
Ingenious Progidy|Wilds of Eldraine|56|R|{X}{U}|Creature - Human Wizard|0|1|Skulk$Ingenious Progidy enters the battlefield with X +1/+1 counters on it.$At the beginning of your upkeep, if Ingenious Progidy has one or more +1/+1 counters on it, you may remove a +1/+1 counter from it. If you do, draw a card.|
Ingenious Prodigy|Wilds of Eldraine|56|R|{X}{U}|Creature - Human Wizard|0|1|Skulk$Ingenious Prodigy enters the battlefield with X +1/+1 counters on it.$At the beginning of your upkeep, if Ingenious Prodigy has one or more +1/+1 counters on it, you may remove a +1/+1 counter from it. If you do, draw a card.|
Into the Fae Court|Wilds of Eldraine|57|C|{3}{U}{U}|Sorcery|||Draw three cards. Create a 1/1 blue Faerie creature token with flying and "This creature can block only creatures with flying."|
Johann's Stopgap|Wilds of Eldraine|58|C|{3}{U}|Sorcery|||Bargain$This spell costs {2} less to cast if it's bargained.$Return target nonland permanent to its owner's hand. Draw a card.|
Living Lectern|Wilds of Eldraine|59|C|{1}{U}|Artifact Creature - Construct|0|4|{1}, Sacrifice Living Lectern: Draw a card. Create a Sorcerer Role token attached to up to one other target creature you control. Activate only as a sorcery.|