From aac5135c44846544fc16111e3735bee3bbf3b917 Mon Sep 17 00:00:00 2001 From: jmharmon <37360760+jmharmon@users.noreply.github.com> Date: Tue, 9 Oct 2018 20:13:23 -0700 Subject: [PATCH] Implement Soul Strings --- Mage.Sets/src/mage/cards/s/SoulStrings.java | 41 +++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/s/SoulStrings.java diff --git a/Mage.Sets/src/mage/cards/s/SoulStrings.java b/Mage.Sets/src/mage/cards/s/SoulStrings.java new file mode 100644 index 0000000000..b1a70905c3 --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/SoulStrings.java @@ -0,0 +1,41 @@ +package mage.cards.s; + +import mage.abilities.costs.mana.VariableManaCost; +import mage.abilities.effects.Effect; +import mage.abilities.effects.common.DoUnlessAnyPlayerPaysEffect; +import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.filter.common.FilterCreatureCard; +import mage.target.common.TargetCardInGraveyard; + +import java.util.UUID; + +/** + * + * @author jmharmon + */ + +public final class SoulStrings extends CardImpl { + + public SoulStrings(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{X}{B}"); + + // Return two target creature cards from your graveyard to your hand unless any player pays {X}. + Effect effect = new DoUnlessAnyPlayerPaysEffect( + new ReturnFromGraveyardToHandTargetEffect(), new VariableManaCost() + ); + this.getSpellAbility().addEffect(effect); + this.getSpellAbility().addTarget(new TargetCardInGraveyard(2, new FilterCreatureCard("creature cards from your graveyard"))); + } + + public SoulStrings(final SoulStrings card) { + super(card); + } + + @Override + public SoulStrings copy() { + return new SoulStrings(this); + } +}