From e879233ea1beb6103163c0ccdd6bb02b65ad517f Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Tue, 9 Jun 2020 08:18:42 -0400 Subject: [PATCH] Implemented Jolrael, Mwonvuli Recluse --- .../mage/cards/j/JolraelMwonvuliRecluse.java | 54 +++++++++++++++++++ Mage.Sets/src/mage/sets/CoreSet2021.java | 1 + .../game/permanent/token/GreenCatToken2.java | 28 ++++++++++ 3 files changed, 83 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/j/JolraelMwonvuliRecluse.java create mode 100644 Mage/src/main/java/mage/game/permanent/token/GreenCatToken2.java diff --git a/Mage.Sets/src/mage/cards/j/JolraelMwonvuliRecluse.java b/Mage.Sets/src/mage/cards/j/JolraelMwonvuliRecluse.java new file mode 100644 index 00000000000..49e20864a8e --- /dev/null +++ b/Mage.Sets/src/mage/cards/j/JolraelMwonvuliRecluse.java @@ -0,0 +1,54 @@ +package mage.cards.j; + +import mage.MageInt; +import mage.abilities.common.DrawSecondCardTriggeredAbility; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.dynamicvalue.common.CardsInControllerHandCount; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.effects.common.continuous.SetPowerToughnessAllEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.StaticFilters; +import mage.game.permanent.token.GreenCatToken2; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class JolraelMwonvuliRecluse extends CardImpl { + + public JolraelMwonvuliRecluse(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.DRUID); + this.power = new MageInt(1); + this.toughness = new MageInt(2); + + // Whenever you draw your second card each turn, create a 2/2 green Cat creature token. + this.addAbility(new DrawSecondCardTriggeredAbility(new CreateTokenEffect(new GreenCatToken2()), false)); + + // {4}{G}{G}: Until end of turn, creatures you control have base power and toughness X/X, where X is the number of cards in your hand. + this.addAbility(new SimpleActivatedAbility(new SetPowerToughnessAllEffect( + CardsInControllerHandCount.instance, CardsInControllerHandCount.instance, + Duration.EndOfTurn, StaticFilters.FILTER_CONTROLLED_CREATURES, true + ).setText("until end of turn, creatures you control have base power and toughness X/X, " + + "where X is the number of cards in your hand"), new ManaCostsImpl("{4}{G}{G}"))); + } + + private JolraelMwonvuliRecluse(final JolraelMwonvuliRecluse card) { + super(card); + } + + @Override + public JolraelMwonvuliRecluse copy() { + return new JolraelMwonvuliRecluse(this); + } +} diff --git a/Mage.Sets/src/mage/sets/CoreSet2021.java b/Mage.Sets/src/mage/sets/CoreSet2021.java index 5996a641e69..d4980a46449 100644 --- a/Mage.Sets/src/mage/sets/CoreSet2021.java +++ b/Mage.Sets/src/mage/sets/CoreSet2021.java @@ -65,6 +65,7 @@ public final class CoreSet2021 extends ExpansionSet { cards.add(new SetCardInfo("Indulging Patrician", 219, Rarity.UNCOMMON, mage.cards.i.IndulgingPatrician.class)); cards.add(new SetCardInfo("Island", 310, Rarity.LAND, mage.cards.basiclands.Island.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Jeskai Elder", 53, Rarity.UNCOMMON, mage.cards.j.JeskaiElder.class)); + cards.add(new SetCardInfo("Jolrael, Mwonvuli Recluse", 191, Rarity.RARE, mage.cards.j.JolraelMwonvuliRecluse.class)); cards.add(new SetCardInfo("Keral Keep Disciples", 334, Rarity.UNCOMMON, mage.cards.k.KeralKeepDisciples.class)); cards.add(new SetCardInfo("Liliana's Scorn", 329, Rarity.RARE, mage.cards.l.LilianasScorn.class)); cards.add(new SetCardInfo("Liliana's Scrounger", 330, Rarity.UNCOMMON, mage.cards.l.LilianasScrounger.class)); diff --git a/Mage/src/main/java/mage/game/permanent/token/GreenCatToken2.java b/Mage/src/main/java/mage/game/permanent/token/GreenCatToken2.java new file mode 100644 index 00000000000..403aa94477b --- /dev/null +++ b/Mage/src/main/java/mage/game/permanent/token/GreenCatToken2.java @@ -0,0 +1,28 @@ +package mage.game.permanent.token; + +import mage.MageInt; +import mage.constants.CardType; +import mage.constants.SubType; + +/** + * @author TheElk801 + */ +public final class GreenCatToken2 extends TokenImpl { + + public GreenCatToken2() { + super("Cat", "2/2 green Cat creature token"); + cardType.add(CardType.CREATURE); + color.setGreen(true); + subtype.add(SubType.CAT); + power = new MageInt(2); + toughness = new MageInt(2); + } + + private GreenCatToken2(final GreenCatToken2 token) { + super(token); + } + + public GreenCatToken2 copy() { + return new GreenCatToken2(this); + } +}