From c75c4058979aff60856651c2363d64d3dbfdd7f6 Mon Sep 17 00:00:00 2001 From: theelk801 Date: Thu, 6 Apr 2023 00:28:21 -0400 Subject: [PATCH] [MOM] Implement Tangled Skyline --- .../src/mage/cards/t/TangledSkyline.java | 48 +++++++++++++++++++ .../src/mage/sets/MarchOfTheMachine.java | 1 + 2 files changed, 49 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/t/TangledSkyline.java diff --git a/Mage.Sets/src/mage/cards/t/TangledSkyline.java b/Mage.Sets/src/mage/cards/t/TangledSkyline.java new file mode 100644 index 00000000000..2017ef0146b --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/TangledSkyline.java @@ -0,0 +1,48 @@ +package mage.cards.t; + +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.common.GainLifeEffect; +import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; +import mage.abilities.effects.keyword.IncubateEffect; +import mage.abilities.keyword.ReachAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.filter.FilterPermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class TangledSkyline extends CardImpl { + + private static final FilterPermanent filter = new FilterPermanent(SubType.PHYREXIAN, "Phyrexians"); + + public TangledSkyline(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{4}{G}"); + + // When Tangled Skyline enters the battlefield, you gain 5 life and incubate 5. + Ability ability = new EntersBattlefieldTriggeredAbility(new GainLifeEffect(5)); + ability.addEffect(new IncubateEffect(5).concatBy("and")); + this.addAbility(ability); + + // Phyrexians you control have reach. + this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect( + ReachAbility.getInstance(), Duration.WhileOnBattlefield, filter + ))); + } + + private TangledSkyline(final TangledSkyline card) { + super(card); + } + + @Override + public TangledSkyline copy() { + return new TangledSkyline(this); + } +} diff --git a/Mage.Sets/src/mage/sets/MarchOfTheMachine.java b/Mage.Sets/src/mage/sets/MarchOfTheMachine.java index d2275e484ca..cd765fd0a31 100644 --- a/Mage.Sets/src/mage/sets/MarchOfTheMachine.java +++ b/Mage.Sets/src/mage/sets/MarchOfTheMachine.java @@ -153,6 +153,7 @@ public final class MarchOfTheMachine extends ExpansionSet { cards.add(new SetCardInfo("Sunfall", 40, Rarity.RARE, mage.cards.s.Sunfall.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("Tangled Skyline", 209, Rarity.UNCOMMON, mage.cards.t.TangledSkyline.class)); cards.add(new SetCardInfo("Tenured Oilcaster", 126, Rarity.COMMON, mage.cards.t.TenuredOilcaster.class)); cards.add(new SetCardInfo("Thornwood Falls", 274, Rarity.COMMON, mage.cards.t.ThornwoodFalls.class)); cards.add(new SetCardInfo("Thunderhead Squadron", 81, Rarity.COMMON, mage.cards.t.ThunderheadSquadron.class));