diff --git a/Mage.Sets/src/mage/cards/d/DokuchiSilencer.java b/Mage.Sets/src/mage/cards/d/DokuchiSilencer.java new file mode 100644 index 0000000000..f4e6a63b53 --- /dev/null +++ b/Mage.Sets/src/mage/cards/d/DokuchiSilencer.java @@ -0,0 +1,65 @@ +package mage.cards.d; + +import mage.MageInt; +import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility; +import mage.abilities.common.delayed.ReflexiveTriggeredAbility; +import mage.abilities.costs.common.DiscardTargetCost; +import mage.abilities.effects.common.DestroyTargetEffect; +import mage.abilities.effects.common.DoWhenCostPaid; +import mage.abilities.keyword.NinjutsuAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.constants.TargetController; +import mage.filter.FilterPermanent; +import mage.filter.StaticFilters; +import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent; +import mage.target.TargetPermanent; +import mage.target.common.TargetCardInHand; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class DokuchiSilencer extends CardImpl { + + private static final FilterPermanent filter + = new FilterCreatureOrPlaneswalkerPermanent("creature or planeswalker an opponent controls"); + + static { + filter.add(TargetController.OPPONENT.getControllerPredicate()); + } + + public DokuchiSilencer(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{B}"); + + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.NINJA); + this.power = new MageInt(2); + this.toughness = new MageInt(1); + + // Ninjutsu {1}{B} + this.addAbility(new NinjutsuAbility("{1}{B}")); + + // Whenever Dokuchi Silencer deals combat damage to a player, you may discard a creature card. When you do, destroy target creature or planeswalker an opponent controls. + ReflexiveTriggeredAbility ability = new ReflexiveTriggeredAbility(new DestroyTargetEffect(), false); + ability.addTarget(new TargetPermanent(filter)); + this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility( + new DoWhenCostPaid( + ability, new DiscardTargetCost(new TargetCardInHand(StaticFilters.FILTER_CARD_CREATURE)), + "Discard a creature card?" + ), false + )); + } + + private DokuchiSilencer(final DokuchiSilencer card) { + super(card); + } + + @Override + public DokuchiSilencer copy() { + return new DokuchiSilencer(this); + } +} diff --git a/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java b/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java index f1a955392c..c2c9819ad0 100644 --- a/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java +++ b/Mage.Sets/src/mage/sets/KamigawaNeonDynasty.java @@ -53,6 +53,7 @@ public final class KamigawaNeonDynasty extends ExpansionSet { cards.add(new SetCardInfo("Coiling Stalker", 179, Rarity.COMMON, mage.cards.c.CoilingStalker.class)); cards.add(new SetCardInfo("Covert Technician", 49, Rarity.UNCOMMON, mage.cards.c.CovertTechnician.class)); cards.add(new SetCardInfo("Dokuchi Shadow-Walker", 94, Rarity.COMMON, mage.cards.d.DokuchiShadowWalker.class)); + cards.add(new SetCardInfo("Dokuchi Silencer", 95, Rarity.COMMON, mage.cards.d.DokuchiSilencer.class)); cards.add(new SetCardInfo("Echo of Death's Wail", 124, Rarity.RARE, mage.cards.e.EchoOfDeathsWail.class)); cards.add(new SetCardInfo("Eiganjo Exemplar", 10, Rarity.COMMON, mage.cards.e.EiganjoExemplar.class)); cards.add(new SetCardInfo("Eiganjo Uprising", 217, Rarity.RARE, mage.cards.e.EiganjoUprising.class)); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 4138e5a74b..8196cc57d9 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -43576,6 +43576,7 @@ Assassin's Ink|Kamigawa: Neon Dynasty|87|U|{2}{B}{B}|Instant|||This spell costs Biting-Palm Ninja|Kamigawa: Neon Dynasty|88|R|{2}{B}|Creature - Human Ninja|3|3|Ninjutsu {2}{B}$Biting-Palm Ninja enters the battlefield with a menace counter on it.$Whenever Biting-Palm Ninja deals combat damage to a player, you may remove a menace counter from it. When you do, that player reveals their hand and you choose a nonland card from it. Exile that card.| Blade of the Oni|Kamigawa: Neon Dynasty|89|M|{1}{B}|Artifact Creature - Equipment Demon|3|1|Menace$Equipped creature has base power and toughness 5/5, has menace, and is a black Demon in addition to its other colors and types.$Reconfigure {2}{B}{B}| Dokuchi Shadow-Walker|Kamigawa: Neon Dynasty|94|C|{4}{B}{B}|Creature - Ogre Ninja|5|5|Ninjutsu {3}{B}| +Dokuchi Silencer|Kamigawa: Neon Dynasty|95|C|{1}{B}|Creature - Human Ninja|2|1|Ninjutsu {1}{B}$Whenever Dokuchi Silencer deals combat damage to a player, you may discard a creature card. When you do, destroy target creature or planeswalker an opponent controls.| Enormous Energy Blade|Kamigawa: Neon Dynasty|96|U|{2}{B}|Artifact - Equipment|||Equipped create gets +4/+0.$Whenever Enormous Energy Blade becomes attached to a creature, tap that creature.$Equip {2}| Gravelighter|Kamigawa: Neon Dynasty|98|U|{2}{B}|Creature - Spirit|2|2|Flying$When Gravelighter enters the battlefield, draw a card if a creature died this turn. Otherwise, each player sacrifices a creature.| Hidetsugu, Devouring Chaos|Kamigawa: Neon Dynasty|99|R|{3}{B}|Legendary Creature - Ogre Demon|4|4|{B}, Sacrifice a creature: Scry 2.${2}{R}, {T}: Exile the top card of your library. You may play that card this turn. When you exile a nonland card this way, Hidetsugu, Devouring Chaos deals damage equal to the exiled card's mana value to any target.|