diff --git a/Mage.Sets/src/mage/cards/w/WillOfTheSultai.java b/Mage.Sets/src/mage/cards/w/WillOfTheSultai.java new file mode 100644 index 00000000000..fa49ce6513b --- /dev/null +++ b/Mage.Sets/src/mage/cards/w/WillOfTheSultai.java @@ -0,0 +1,57 @@ +package mage.cards.w; + +import mage.abilities.Mode; +import mage.abilities.condition.common.ControlACommanderCondition; +import mage.abilities.dynamicvalue.common.LandsYouControlCount; +import mage.abilities.effects.common.MillCardsTargetEffect; +import mage.abilities.effects.common.ReturnFromYourGraveyardToBattlefieldAllEffect; +import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.abilities.hint.common.LandsYouControlHint; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.counters.CounterType; +import mage.filter.StaticFilters; +import mage.target.TargetPlayer; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class WillOfTheSultai extends CardImpl { + + public WillOfTheSultai(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{G}"); + + // Choose one. If you control a commander as you cast this spell, you may choose both instead. + this.getSpellAbility().getModes().setChooseText( + "Choose one. If you control a commander as you cast this spell, you may choose both instead." + ); + this.getSpellAbility().getModes().setMoreCondition(2, ControlACommanderCondition.instance); + + // * Target player mills three cards. Return all land cards from your graveyard to the battlefield tapped. + this.getSpellAbility().addEffect(new MillCardsTargetEffect(3)); + this.getSpellAbility().addTarget(new TargetPlayer()); + this.getSpellAbility().addEffect(new ReturnFromYourGraveyardToBattlefieldAllEffect(StaticFilters.FILTER_CARD_LANDS)); + + // * Put X +1/+1 counters on target creature, where X is the number of lands you control. It gains trample until end of turn. + this.getSpellAbility().addMode(new Mode(new AddCountersTargetEffect( + CounterType.P1P1.createInstance(0), LandsYouControlCount.instance + )).addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance()) + .setText("it gains trample until end of turn")).addTarget(new TargetCreaturePermanent())); + this.getSpellAbility().addHint(LandsYouControlHint.instance); + } + + private WillOfTheSultai(final WillOfTheSultai card) { + super(card); + } + + @Override + public WillOfTheSultai copy() { + return new WillOfTheSultai(this); + } +} diff --git a/Mage.Sets/src/mage/sets/TarkirDragonstormCommander.java b/Mage.Sets/src/mage/sets/TarkirDragonstormCommander.java index adb2ba286e6..022875588b2 100644 --- a/Mage.Sets/src/mage/sets/TarkirDragonstormCommander.java +++ b/Mage.Sets/src/mage/sets/TarkirDragonstormCommander.java @@ -362,6 +362,7 @@ public final class TarkirDragonstormCommander extends ExpansionSet { cards.add(new SetCardInfo("Welcome the Dead", 30, Rarity.RARE, mage.cards.w.WelcomeTheDead.class)); cards.add(new SetCardInfo("Welcoming Vampire", 140, Rarity.RARE, mage.cards.w.WelcomingVampire.class)); cards.add(new SetCardInfo("Whirlwind of Thought", 311, Rarity.RARE, mage.cards.w.WhirlwindOfThought.class)); + cards.add(new SetCardInfo("Will of the Sultai", 49, Rarity.RARE, mage.cards.w.WillOfTheSultai.class)); cards.add(new SetCardInfo("Will of the Temur", 24, Rarity.RARE, mage.cards.w.WillOfTheTemur.class)); cards.add(new SetCardInfo("Windbrisk Heights", 411, Rarity.RARE, mage.cards.w.WindbriskHeights.class)); cards.add(new SetCardInfo("Wingmantle Chaplain", 141, Rarity.UNCOMMON, mage.cards.w.WingmantleChaplain.class));