From 0d2577e051930bc4253da109828ed082ef12d404 Mon Sep 17 00:00:00 2001 From: Craig Brennan Date: Sat, 5 Feb 2022 00:44:23 +0000 Subject: [PATCH] [NEO] Implemented Mirrorshell Crab (#8650) --- .../src/mage/cards/m/MirrorshellCrab.java | 48 +++++++++++++++++++ .../src/mage/sets/KamigawaNeonDynasty.java | 1 + 2 files changed, 49 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/m/MirrorshellCrab.java diff --git a/Mage.Sets/src/mage/cards/m/MirrorshellCrab.java b/Mage.Sets/src/mage/cards/m/MirrorshellCrab.java new file mode 100644 index 00000000000..5f699e5eb48 --- /dev/null +++ b/Mage.Sets/src/mage/cards/m/MirrorshellCrab.java @@ -0,0 +1,48 @@ +package mage.cards.m; + +import java.util.UUID; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.costs.mana.GenericManaCost; +import mage.abilities.effects.common.CounterUnlessPaysEffect; +import mage.abilities.keyword.ChannelAbility; +import mage.abilities.keyword.WardAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.target.TargetStackObject; + +/** + * @author Addictiveme + */ +public final class MirrorshellCrab extends CardImpl { + + public MirrorshellCrab(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE,CardType.ARTIFACT}, "{5}{U}{U}"); + + this.subtype.add(SubType.CRAB); + this.power = new MageInt(5); + this.toughness = new MageInt(7); + + // Ward {3} + this.addAbility(new WardAbility(new GenericManaCost(3))); + + // Channel - {2}{U}, Discard Mirrorshell Crab: + // Counter target spell or ability unless its controller pays {3} + Ability channelAbility = new ChannelAbility("{2}{U}", new CounterUnlessPaysEffect(new GenericManaCost(3)) + .setText("Counter target spell or ability unless its controller pays {3}")); + channelAbility.addTarget(new TargetStackObject()); + this.addAbility(channelAbility); + } + + private MirrorshellCrab(final MirrorshellCrab card) { + super(card); + } + + @Override + public MirrorshellCrab copy() { + return new MirrorshellCrab(this); + } +} \ No newline at end of file diff --git a/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java b/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java index fdd92b66bc0..01177545a5a 100644 --- a/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java +++ b/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java @@ -119,6 +119,7 @@ public final class KamigawaNeonDynasty extends ExpansionSet { cards.add(new SetCardInfo("Mech Hangar", 270, Rarity.UNCOMMON, mage.cards.m.MechHangar.class)); cards.add(new SetCardInfo("Memory of Toshiro", 108, Rarity.UNCOMMON, mage.cards.m.MemoryOfToshiro.class)); cards.add(new SetCardInfo("Michiko's Reign of Truth", 29, Rarity.UNCOMMON, mage.cards.m.MichikosReignOfTruth.class)); + cards.add(new SetCardInfo("Mirrorshell Crab", 63, Rarity.COMMON, mage.cards.m.MirrorshellCrab.class)); cards.add(new SetCardInfo("Mnemonic Sphere", 64, Rarity.COMMON, mage.cards.m.MnemonicSphere.class)); cards.add(new SetCardInfo("Mobilizer Mech", 65, Rarity.UNCOMMON, mage.cards.m.MobilizerMech.class)); cards.add(new SetCardInfo("Moon-Circuit Hacker", 67, Rarity.COMMON, mage.cards.m.MoonCircuitHacker.class));