From bb722086baddace7f9d2980d0acee80cab6e3389 Mon Sep 17 00:00:00 2001 From: Steven Knipe Date: Fri, 8 Nov 2024 20:15:07 -0800 Subject: [PATCH] [J25] Razorgrass Invoker --- .../src/mage/cards/r/RazorgrassInvoker.java | 51 +++++++++++++++++++ .../src/mage/sets/FoundationsJumpstart.java | 1 + 2 files changed, 52 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/r/RazorgrassInvoker.java diff --git a/Mage.Sets/src/mage/cards/r/RazorgrassInvoker.java b/Mage.Sets/src/mage/cards/r/RazorgrassInvoker.java new file mode 100644 index 00000000000..0bbced7dc8e --- /dev/null +++ b/Mage.Sets/src/mage/cards/r/RazorgrassInvoker.java @@ -0,0 +1,51 @@ +package mage.cards.r; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.continuous.BoostSourceEffect; +import mage.abilities.effects.common.continuous.BoostTargetEffect; +import mage.abilities.keyword.VigilanceAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.filter.StaticFilters; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author notgreat + */ +public final class RazorgrassInvoker extends CardImpl { + + public RazorgrassInvoker(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{G}"); + + this.subtype.add(SubType.ELF); + this.subtype.add(SubType.SCOUT); + this.power = new MageInt(4); + this.toughness = new MageInt(3); + + // Vigilance + this.addAbility(VigilanceAbility.getInstance()); + + // {8}: Razorgrass Invoker and up to one other target creature each get +3/+3 until end of turn. + Ability ability = new SimpleActivatedAbility(new BoostSourceEffect(3, 3, Duration.EndOfTurn).setText("{this}"), new ManaCostsImpl<>("{8}")); + ability.addEffect(new BoostTargetEffect(3, 3, Duration.EndOfTurn).setText("and up to one other target creature each get +3/+3 until end of turn")); + ability.addTarget(new TargetCreaturePermanent(0, 1, StaticFilters.FILTER_ANOTHER_TARGET_CREATURE, false)); + this.addAbility(ability); + } + + private RazorgrassInvoker(final RazorgrassInvoker card) { + super(card); + } + + @Override + public RazorgrassInvoker copy() { + return new RazorgrassInvoker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/FoundationsJumpstart.java b/Mage.Sets/src/mage/sets/FoundationsJumpstart.java index 966607c923c..cabef3e5d08 100644 --- a/Mage.Sets/src/mage/sets/FoundationsJumpstart.java +++ b/Mage.Sets/src/mage/sets/FoundationsJumpstart.java @@ -520,6 +520,7 @@ public final class FoundationsJumpstart extends ExpansionSet { cards.add(new SetCardInfo("Rally of Wings", 238, Rarity.UNCOMMON, mage.cards.r.RallyOfWings.class)); cards.add(new SetCardInfo("Rampant Growth", 704, Rarity.COMMON, mage.cards.r.RampantGrowth.class)); cards.add(new SetCardInfo("Rapacious Dragon", 588, Rarity.UNCOMMON, mage.cards.r.RapaciousDragon.class)); + cards.add(new SetCardInfo("Razorgrass Invoker", 22, Rarity.COMMON, mage.cards.r.RazorgrassInvoker.class)); cards.add(new SetCardInfo("Read the Bones", 479, Rarity.COMMON, mage.cards.r.ReadTheBones.class)); cards.add(new SetCardInfo("Realm Seekers", 705, Rarity.RARE, mage.cards.r.RealmSeekers.class)); cards.add(new SetCardInfo("Reaper from the Abyss", 480, Rarity.MYTHIC, mage.cards.r.ReaperFromTheAbyss.class));