From f5223b010b12768836bfb82ea74e9894cb82b2df Mon Sep 17 00:00:00 2001 From: theelk801 Date: Fri, 31 Mar 2023 08:46:06 -0400 Subject: [PATCH] [MOM] Implement Storm the Seedcore --- .../src/mage/cards/s/StormTheSeedcore.java | 53 +++++++++++++++++++ .../src/mage/sets/MarchOfTheMachine.java | 1 + 2 files changed, 54 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/s/StormTheSeedcore.java diff --git a/Mage.Sets/src/mage/cards/s/StormTheSeedcore.java b/Mage.Sets/src/mage/cards/s/StormTheSeedcore.java new file mode 100644 index 0000000000..bc6757909f --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/StormTheSeedcore.java @@ -0,0 +1,53 @@ +package mage.cards.s; + +import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; +import mage.abilities.effects.common.counter.DistributeCountersEffect; +import mage.abilities.keyword.TrampleAbility; +import mage.abilities.keyword.VigilanceAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.counters.CounterType; +import mage.filter.StaticFilters; +import mage.target.common.TargetCreaturePermanentAmount; +import mage.target.common.TargetPermanentAmount; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class StormTheSeedcore extends CardImpl { + + public StormTheSeedcore(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{G}{G}"); + + // Distribute four +1/+1 counter among up to four target creatures you control. Creatures you control gain vigilance and trample until end of turn. + this.getSpellAbility().addEffect(new DistributeCountersEffect( + CounterType.P1P1, 4, false, + "up to four target creatures you control" + )); + TargetPermanentAmount target = new TargetCreaturePermanentAmount(4, StaticFilters.FILTER_CONTROLLED_CREATURES); + target.setMinNumberOfTargets(0); + target.setMaxNumberOfTargets(4); + this.getSpellAbility().addTarget(target); + this.getSpellAbility().addEffect(new GainAbilityControlledEffect( + VigilanceAbility.getInstance(), Duration.EndOfTurn, + StaticFilters.FILTER_CONTROLLED_CREATURES + ).setText("creatures you control gain vigilance")); + this.getSpellAbility().addEffect(new GainAbilityControlledEffect( + TrampleAbility.getInstance(), Duration.EndOfTurn, + StaticFilters.FILTER_CONTROLLED_CREATURES + ).setText("and trample until end of turn")); + } + + private StormTheSeedcore(final StormTheSeedcore card) { + super(card); + } + + @Override + public StormTheSeedcore copy() { + return new StormTheSeedcore(this); + } +} diff --git a/Mage.Sets/src/mage/sets/MarchOfTheMachine.java b/Mage.Sets/src/mage/sets/MarchOfTheMachine.java index ac997b7582..de4bafdd52 100644 --- a/Mage.Sets/src/mage/sets/MarchOfTheMachine.java +++ b/Mage.Sets/src/mage/sets/MarchOfTheMachine.java @@ -55,6 +55,7 @@ public final class MarchOfTheMachine extends ExpansionSet { cards.add(new SetCardInfo("Ruins Recluse", 336, Rarity.UNCOMMON, mage.cards.r.RuinsRecluse.class)); cards.add(new SetCardInfo("Scoured Barrens", 272, Rarity.COMMON, mage.cards.s.ScouredBarrens.class)); cards.add(new SetCardInfo("Stoke the Flames", 166, Rarity.UNCOMMON, mage.cards.s.StokeTheFlames.class)); + cards.add(new SetCardInfo("Storm the Seedcore", 206, Rarity.UNCOMMON, mage.cards.s.StormTheSeedcore.class)); cards.add(new SetCardInfo("Swamp", 279, Rarity.LAND, mage.cards.basiclands.Swamp.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Swiftwater Cliffs", 273, Rarity.COMMON, mage.cards.s.SwiftwaterCliffs.class)); cards.add(new SetCardInfo("Thornwood Falls", 274, Rarity.COMMON, mage.cards.t.ThornwoodFalls.class));