From 16ea17ad0ca227c886e1c35d5321d2a67b6f18a3 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 10 Sep 2018 15:29:45 -0400 Subject: [PATCH] Implemented Niv-Mizzet, Parun --- .../src/mage/cards/n/NivMizzetParun.java | 63 +++++++++++++++++++ Mage.Sets/src/mage/sets/GuildsOfRavnica.java | 1 + 2 files changed, 64 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/n/NivMizzetParun.java diff --git a/Mage.Sets/src/mage/cards/n/NivMizzetParun.java b/Mage.Sets/src/mage/cards/n/NivMizzetParun.java new file mode 100644 index 0000000000..8cfccd5137 --- /dev/null +++ b/Mage.Sets/src/mage/cards/n/NivMizzetParun.java @@ -0,0 +1,63 @@ +package mage.cards.n; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.CantBeCounteredAbility; +import mage.abilities.common.DrawCardControllerTriggeredAbility; +import mage.abilities.common.SpellCastAllTriggeredAbility; +import mage.abilities.effects.common.DamageTargetEffect; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.filter.StaticFilters; +import mage.target.common.TargetAnyTarget; + +/** + * + * @author TheElk801 + */ +public final class NivMizzetParun extends CardImpl { + + public NivMizzetParun(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{U}{U}{U}{R}{R}{R}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.DRAGON); + this.subtype.add(SubType.WIZARD); + this.power = new MageInt(5); + this.toughness = new MageInt(5); + + // This spell can't be countered. + this.addAbility(new CantBeCounteredAbility()); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + + // Whenever you draw a card, Niv-Mizzet, Parun deals 1 damage to any target. + Ability ability = new DrawCardControllerTriggeredAbility( + new DamageTargetEffect(1), false + ); + ability.addTarget(new TargetAnyTarget()); + this.addAbility(ability); + + // Whenever a player casts an instant or sorcery spell, you draw a card. + this.addAbility(new SpellCastAllTriggeredAbility( + new DrawCardSourceControllerEffect(1).setText("you draw a card"), + StaticFilters.FILTER_SPELL_AN_INSTANT_OR_SORCERY, false + )); + } + + public NivMizzetParun(final NivMizzetParun card) { + super(card); + } + + @Override + public NivMizzetParun copy() { + return new NivMizzetParun(this); + } +} diff --git a/Mage.Sets/src/mage/sets/GuildsOfRavnica.java b/Mage.Sets/src/mage/sets/GuildsOfRavnica.java index 05a93da417..9aab93198a 100644 --- a/Mage.Sets/src/mage/sets/GuildsOfRavnica.java +++ b/Mage.Sets/src/mage/sets/GuildsOfRavnica.java @@ -49,6 +49,7 @@ public final class GuildsOfRavnica extends ExpansionSet { cards.add(new SetCardInfo("Murmuring Mystic", 45, Rarity.UNCOMMON, mage.cards.m.MurmuringMystic.class)); cards.add(new SetCardInfo("Narcomoeba", 47, Rarity.RARE, mage.cards.n.Narcomoeba.class)); cards.add(new SetCardInfo("Necrotic Wound", 79, Rarity.UNCOMMON, mage.cards.n.NecroticWound.class)); + cards.add(new SetCardInfo("Niv-Mizzet, Parun", 192, Rarity.RARE, mage.cards.n.NivMizzetParun.class)); cards.add(new SetCardInfo("Overgrown Tomb", 253, Rarity.RARE, mage.cards.o.OvergrownTomb.class)); cards.add(new SetCardInfo("Plains", 260, Rarity.LAND, mage.cards.basiclands.Plains.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Quasiduplicate", 51, Rarity.RARE, mage.cards.q.Quasiduplicate.class));