From 37009e85bb486959414197a55a7cf5b08854d475 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Wed, 2 Jun 2021 08:54:36 -0400 Subject: [PATCH] [MH2] Implemented Goblin Anarchomancer --- .../src/mage/cards/g/GoblinAnarchomancer.java | 52 +++++++++++++++++++ Mage.Sets/src/mage/sets/ModernHorizons2.java | 1 + Utils/mtg-cards-data.txt | 1 + 3 files changed, 54 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/g/GoblinAnarchomancer.java diff --git a/Mage.Sets/src/mage/cards/g/GoblinAnarchomancer.java b/Mage.Sets/src/mage/cards/g/GoblinAnarchomancer.java new file mode 100644 index 0000000000..9786d11815 --- /dev/null +++ b/Mage.Sets/src/mage/cards/g/GoblinAnarchomancer.java @@ -0,0 +1,52 @@ +package mage.cards.g; + +import mage.MageInt; +import mage.ObjectColor; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.filter.FilterCard; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class GoblinAnarchomancer extends CardImpl { + + private static final FilterCard filter = new FilterCard(); + + static { + filter.add(Predicates.or( + new ColorPredicate(ObjectColor.RED), + new ColorPredicate(ObjectColor.GREEN) + )); + } + + public GoblinAnarchomancer(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}{G}"); + + this.subtype.add(SubType.GOBLIN); + this.subtype.add(SubType.SHAMAN); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Each spell you cast that's red or green costs {1} less to cast. + this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1) + .setText("each spell you cast that's red or green costs {1} less to cast"))); + } + + private GoblinAnarchomancer(final GoblinAnarchomancer card) { + super(card); + } + + @Override + public GoblinAnarchomancer copy() { + return new GoblinAnarchomancer(this); + } +} diff --git a/Mage.Sets/src/mage/sets/ModernHorizons2.java b/Mage.Sets/src/mage/sets/ModernHorizons2.java index 614c48dccc..d0a65893c6 100644 --- a/Mage.Sets/src/mage/sets/ModernHorizons2.java +++ b/Mage.Sets/src/mage/sets/ModernHorizons2.java @@ -106,6 +106,7 @@ public final class ModernHorizons2 extends ExpansionSet { cards.add(new SetCardInfo("Glimmer Bairn", 413, Rarity.COMMON, mage.cards.g.GlimmerBairn.class)); cards.add(new SetCardInfo("Glinting Creeper", 164, Rarity.UNCOMMON, mage.cards.g.GlintingCreeper.class)); cards.add(new SetCardInfo("Glorious Enforcer", 14, Rarity.UNCOMMON, mage.cards.g.GloriousEnforcer.class)); + cards.add(new SetCardInfo("Goblin Anarchomancer", 200, Rarity.COMMON, mage.cards.g.GoblinAnarchomancer.class)); cards.add(new SetCardInfo("Goblin Bombardment", 279, Rarity.RARE, mage.cards.g.GoblinBombardment.class)); cards.add(new SetCardInfo("Goldmire Bridge", 247, Rarity.COMMON, mage.cards.g.GoldmireBridge.class)); cards.add(new SetCardInfo("Gorilla Shaman", 280, Rarity.UNCOMMON, mage.cards.g.GorillaShaman.class)); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 94593c879e..bf3abd4d6e 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -41483,6 +41483,7 @@ Ethersworn Sphinx|Modern Horizons 2|195|U|{7}{W}{U}|Artifact Creature - Sphinx|4 Garth One-Eye|Modern Horizons 2|197|M|{W}{U}{B}{R}{G}|Legendary Creature - Human Wizard|5|5|{T}: Choose a card name that hasn't been chosen from among Disenchant, Braingeyser, Terror, Shivan Dragon, Regrowth, and Black Lotus. Create a copy of the card with the chosen name. You may cast the copy.| General Ferrous Rokiric|Modern Horizons 2|198|R|{1}{R}{W}|Legendary Creature - Human Soldier|3|1|Hexproof from monocolored$Whenever you cast a multicolored spell, create a 4/4 red and white Golem artifact creature token.| Geyadrone Dihada|Modern Horizons 2|199|M|{1}{U}{B}{R}|Legendary Planeswalker - Dihada|4|Protection from permanents with corruption counters on them$+1: Each opponent loses 2 life and you gain 2 life. Put a corruption counter on up to one other target creature or planeswalker.$−3: Gain control of target creature or planeswalker until end of tun. Untap it and put a corruption counter on it. It gains haste until end of turn.$−7: Gain control of each permanent with a corruption counter on it.| +Goblin Anarchomancer|Modern Horizons 2|200|C|{R}{G}|Creature - Goblin Shaman|2|2|Each spell you cast that's red or green costs {1} less to cast.| Graceful Restoration|Modern Horizons 2|201|U|{3}{W}{B}|Sorcery|||Choose one —$• Return target creature card from your graveyard to the battlefield with an additional +1/+1 counter on it.$• Return up to two target creature cards with power 2 or less from your graveyard to the battlefield.| Grist, the Hunger Tide|Modern Horizons 2|202|M|{1}{B}{G}|Legendary Planeswalker - Grist|3|As long as Grist, the Hunger Tide isn't on the battlefield, it's a 1/1 Insect creature in addition to its other types.$+1: Create a 1/1 black and green Insect creature token, then mill a card. If an Insect card was milled this way, put a loyalty counter on Grist and repeat this process.$−2: You may sacrifice a creature. When you do, destroy target creature or planeswalker.$−5: Each opponent loses life equal to the number of creature cards in your graveyard.| Lazotep Chancellor|Modern Horizons 2|203|U|{U}{B}|Creature - Zombie Wizard|1|3|Whenever you discard a card, you may pay {1}. If you do, amass 2.|