From 35a44e7271e92977d0bcc0798f9e6269916bcb8c Mon Sep 17 00:00:00 2001 From: theelk801 Date: Mon, 14 Jul 2025 18:22:58 -0400 Subject: [PATCH] [EOE] Implement Atmospheric Greenhouse --- .../mage/cards/a/AtmosphericGreenhouse.java | 54 +++++++++++++++++++ Mage.Sets/src/mage/sets/EdgeOfEternities.java | 1 + 2 files changed, 55 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/a/AtmosphericGreenhouse.java diff --git a/Mage.Sets/src/mage/cards/a/AtmosphericGreenhouse.java b/Mage.Sets/src/mage/cards/a/AtmosphericGreenhouse.java new file mode 100644 index 00000000000..a2c47a84658 --- /dev/null +++ b/Mage.Sets/src/mage/cards/a/AtmosphericGreenhouse.java @@ -0,0 +1,54 @@ +package mage.cards.a; + +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersAllEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.abilities.keyword.StationAbility; +import mage.abilities.keyword.StationLevelAbility; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.counters.CounterType; +import mage.filter.StaticFilters; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class AtmosphericGreenhouse extends CardImpl { + + public AtmosphericGreenhouse(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}{G}"); + + this.subtype.add(SubType.SPACECRAFT); + + // When this Spacecraft enters, put a +1/+1 counter on each creature you control. + this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect( + CounterType.P1P1.createInstance(), StaticFilters.FILTER_CONTROLLED_CREATURE + ))); + + // Station + this.addAbility(new StationAbility()); + + // STATION 8+ + // Flying + // Trample + // 5/4 + this.addAbility(new StationLevelAbility(8) + .withLevelAbility(FlyingAbility.getInstance()) + .withLevelAbility(TrampleAbility.getInstance()) + .withPT(5, 4)); + } + + private AtmosphericGreenhouse(final AtmosphericGreenhouse card) { + super(card); + } + + @Override + public AtmosphericGreenhouse copy() { + return new AtmosphericGreenhouse(this); + } +} diff --git a/Mage.Sets/src/mage/sets/EdgeOfEternities.java b/Mage.Sets/src/mage/sets/EdgeOfEternities.java index 0c1c5bc2779..b5d2cf31d2d 100644 --- a/Mage.Sets/src/mage/sets/EdgeOfEternities.java +++ b/Mage.Sets/src/mage/sets/EdgeOfEternities.java @@ -42,6 +42,7 @@ public final class EdgeOfEternities extends ExpansionSet { cards.add(new SetCardInfo("Archenemy's Charm", 88, Rarity.RARE, mage.cards.a.ArchenemysCharm.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Astelli Reclaimer", 288, Rarity.RARE, mage.cards.a.AstelliReclaimer.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Astelli Reclaimer", 4, Rarity.RARE, mage.cards.a.AstelliReclaimer.class, NON_FULL_USE_VARIOUS)); + cards.add(new SetCardInfo("Atmospheric Greenhouse", 171, Rarity.UNCOMMON, mage.cards.a.AtmosphericGreenhouse.class)); cards.add(new SetCardInfo("Banishing Light", 6, Rarity.COMMON, mage.cards.b.BanishingLight.class)); cards.add(new SetCardInfo("Beyond the Quiet", 7, Rarity.RARE, mage.cards.b.BeyondTheQuiet.class)); cards.add(new SetCardInfo("Bioengineered Future", 172, Rarity.RARE, mage.cards.b.BioengineeredFuture.class, NON_FULL_USE_VARIOUS));