From 9500d8e154bbf679a61e0daf3463e9c8d8f85aea Mon Sep 17 00:00:00 2001 From: jmharmon <37360760+jmharmon@users.noreply.github.com> Date: Tue, 9 Oct 2018 20:12:09 -0700 Subject: [PATCH 1/3] Implement Soul Strings --- Mage.Sets/src/mage/sets/Prophecy.java | 1 + 1 file changed, 1 insertion(+) diff --git a/Mage.Sets/src/mage/sets/Prophecy.java b/Mage.Sets/src/mage/sets/Prophecy.java index 428e91c8763..66b0ea67afb 100644 --- a/Mage.Sets/src/mage/sets/Prophecy.java +++ b/Mage.Sets/src/mage/sets/Prophecy.java @@ -136,6 +136,7 @@ public final class Prophecy extends ExpansionSet { cards.add(new SetCardInfo("Silt Crawler", 123, Rarity.COMMON, mage.cards.s.SiltCrawler.class)); cards.add(new SetCardInfo("Snag", 124, Rarity.UNCOMMON, mage.cards.s.Snag.class)); cards.add(new SetCardInfo("Soul Charmer", 24, Rarity.COMMON, mage.cards.s.SoulCharmer.class)); + cards.add(new SetCardInfo("Soul Strings", 78, Rarity.COMMON, mage.cards.s.SoulStrings.class)); cards.add(new SetCardInfo("Spiketail Drake", 48, Rarity.UNCOMMON, mage.cards.s.SpiketailDrake.class)); cards.add(new SetCardInfo("Spiketail Hatchling", 49, Rarity.COMMON, mage.cards.s.SpiketailHatchling.class)); cards.add(new SetCardInfo("Spitting Spider", 125, Rarity.UNCOMMON, mage.cards.s.SpittingSpider.class)); 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 2/3] 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 00000000000..b1a70905c3a --- /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); + } +} From a513cf09aef700506f2f8de3c0b97a71156753a5 Mon Sep 17 00:00:00 2001 From: jmharmon <37360760+jmharmon@users.noreply.github.com> Date: Tue, 9 Oct 2018 21:56:18 -0700 Subject: [PATCH 3/3] Update SoulStrings.java --- Mage.Sets/src/mage/cards/s/SoulStrings.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mage.Sets/src/mage/cards/s/SoulStrings.java b/Mage.Sets/src/mage/cards/s/SoulStrings.java index b1a70905c3a..5ba36a191f4 100644 --- a/Mage.Sets/src/mage/cards/s/SoulStrings.java +++ b/Mage.Sets/src/mage/cards/s/SoulStrings.java @@ -27,7 +27,7 @@ public final class SoulStrings extends CardImpl { new ReturnFromGraveyardToHandTargetEffect(), new VariableManaCost() ); this.getSpellAbility().addEffect(effect); - this.getSpellAbility().addTarget(new TargetCardInGraveyard(2, new FilterCreatureCard("creature cards from your graveyard"))); + this.getSpellAbility().addTarget(new TargetCardInYourGraveyard(2, new FilterCreatureCard("creature cards from your graveyard"))); } public SoulStrings(final SoulStrings card) {