From c0082e4aef2263473acab663e5c129c4d0bb2697 Mon Sep 17 00:00:00 2001 From: theelk801 Date: Tue, 28 May 2024 19:40:53 -0400 Subject: [PATCH] [MH3] Implement Solar Transformer --- .../src/mage/cards/s/SolarTransformer.java | 47 +++++++++++++++++++ Mage.Sets/src/mage/sets/ModernHorizons3.java | 1 + 2 files changed, 48 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/s/SolarTransformer.java diff --git a/Mage.Sets/src/mage/cards/s/SolarTransformer.java b/Mage.Sets/src/mage/cards/s/SolarTransformer.java new file mode 100644 index 00000000000..611a52e0253 --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/SolarTransformer.java @@ -0,0 +1,47 @@ +package mage.cards.s; + +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTappedAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.costs.common.PayEnergyCost; +import mage.abilities.effects.common.counter.GetEnergyCountersControllerEffect; +import mage.abilities.mana.AnyColorManaAbility; +import mage.abilities.mana.ColorlessManaAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class SolarTransformer extends CardImpl { + + public SolarTransformer(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}"); + + // Solar Transformer enters the battlefield tapped. + this.addAbility(new EntersBattlefieldTappedAbility()); + + // When Solar Transformer enters the battlefield, you get {E}{E}{E}. + this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(3))); + + // {T}: Add {C}. + this.addAbility(new ColorlessManaAbility()); + + // {T}, Pay {E}: Add one mana of any color. + Ability ability = new AnyColorManaAbility(); + ability.addCost(new PayEnergyCost(1)); + this.addAbility(ability); + } + + private SolarTransformer(final SolarTransformer card) { + super(card); + } + + @Override + public SolarTransformer copy() { + return new SolarTransformer(this); + } +} diff --git a/Mage.Sets/src/mage/sets/ModernHorizons3.java b/Mage.Sets/src/mage/sets/ModernHorizons3.java index 12f945c05ea..77835c7de3b 100644 --- a/Mage.Sets/src/mage/sets/ModernHorizons3.java +++ b/Mage.Sets/src/mage/sets/ModernHorizons3.java @@ -159,6 +159,7 @@ public final class ModernHorizons3 extends ExpansionSet { cards.add(new SetCardInfo("Six", 169, Rarity.RARE, mage.cards.s.Six.class)); cards.add(new SetCardInfo("Skoa, Embermage", 138, Rarity.COMMON, mage.cards.s.SkoaEmbermage.class)); cards.add(new SetCardInfo("Snow-Covered Wastes", 229, Rarity.UNCOMMON, mage.cards.s.SnowCoveredWastes.class, NON_FULL_USE_VARIOUS)); + cards.add(new SetCardInfo("Solar Transformer", 211, Rarity.UNCOMMON, mage.cards.s.SolarTransformer.class)); cards.add(new SetCardInfo("Sorin of House Markov", 245, Rarity.MYTHIC, mage.cards.s.SorinOfHouseMarkov.class)); cards.add(new SetCardInfo("Sorin, Ravenous Neonate", 245, Rarity.MYTHIC, mage.cards.s.SorinRavenousNeonate.class)); cards.add(new SetCardInfo("Sowing Mycospawn", 170, Rarity.RARE, mage.cards.s.SowingMycospawn.class));