diff --git a/Mage.Sets/src/mage/cards/t/TheWeatherseedTreaty.java b/Mage.Sets/src/mage/cards/t/TheWeatherseedTreaty.java new file mode 100644 index 00000000000..234632d0955 --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/TheWeatherseedTreaty.java @@ -0,0 +1,71 @@ +package mage.cards.t; + +import java.util.UUID; + +import mage.abilities.common.SagaAbility; +import mage.abilities.dynamicvalue.common.DomainValue; +import mage.abilities.effects.Effects; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.effects.common.continuous.BoostTargetEffect; +import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; +import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; +import mage.abilities.keyword.TrampleAbility; +import mage.constants.Duration; +import mage.constants.SagaChapter; +import mage.constants.SubType; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.filter.StaticFilters; +import mage.game.permanent.token.SaprolingToken; +import mage.target.common.TargetCardInLibrary; +import mage.target.common.TargetControlledCreaturePermanent; + +/** + * + * @author weirddan455 + */ +public final class TheWeatherseedTreaty extends CardImpl { + + public TheWeatherseedTreaty(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}"); + + this.subtype.add(SubType.SAGA); + + // Read ahead + SagaAbility sagaAbility = new SagaAbility(this, SagaChapter.CHAPTER_III, true); + + // I -- Search your library for a basic land card, put it onto the battlefield tapped, then shuffle. + sagaAbility.addChapterEffect( + this, SagaChapter.CHAPTER_I, + new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND), true) + ); + + // II -- Create a 1/1 green Saproling creature token. + sagaAbility.addChapterEffect( + this, SagaChapter.CHAPTER_II, new CreateTokenEffect(new SaprolingToken()) + ); + + // III -- Domain -- Target creature you control gets +X/+X and gains trample until end of turn, where X is the number of basic land types among lands you control. + sagaAbility.addChapterEffect( + this, SagaChapter.CHAPTER_III, SagaChapter.CHAPTER_III, + new Effects( + new BoostTargetEffect(DomainValue.REGULAR, DomainValue.REGULAR, Duration.EndOfTurn) + .setText("Domain — Target creature you control gets +X/+X"), + new GainAbilityTargetEffect(TrampleAbility.getInstance()) + .setText("and gains trample until end of turn, where X is the number of basic land types among lands you control") + ), + new TargetControlledCreaturePermanent() + ); + this.addAbility(sagaAbility); + } + + private TheWeatherseedTreaty(final TheWeatherseedTreaty card) { + super(card); + } + + @Override + public TheWeatherseedTreaty copy() { + return new TheWeatherseedTreaty(this); + } +} diff --git a/Mage.Sets/src/mage/sets/DominariaUnited.java b/Mage.Sets/src/mage/sets/DominariaUnited.java index ae7ebe24fb6..a57919b1f61 100644 --- a/Mage.Sets/src/mage/sets/DominariaUnited.java +++ b/Mage.Sets/src/mage/sets/DominariaUnited.java @@ -210,6 +210,7 @@ public final class DominariaUnited extends ExpansionSet { cards.add(new SetCardInfo("The Cruelty of Gix", 87, Rarity.RARE, mage.cards.t.TheCrueltyOfGix.class)); cards.add(new SetCardInfo("The Elder Dragon War", 121, Rarity.RARE, mage.cards.t.TheElderDragonWar.class)); cards.add(new SetCardInfo("The Raven Man", 103, Rarity.RARE, mage.cards.t.TheRavenMan.class)); + cards.add(new SetCardInfo("The Weatherseed Treaty", 188, Rarity.UNCOMMON, mage.cards.t.TheWeatherseedTreaty.class)); cards.add(new SetCardInfo("The World Spell", 189, Rarity.MYTHIC, mage.cards.t.TheWorldSpell.class)); cards.add(new SetCardInfo("Threats Undetected", 185, Rarity.RARE, mage.cards.t.ThreatsUndetected.class)); cards.add(new SetCardInfo("Thrill of Possibility", 148, Rarity.COMMON, mage.cards.t.ThrillOfPossibility.class));