From fc22db2c73c036eac445d162b5279c8f705654a6 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Tue, 17 May 2022 22:22:31 -0400 Subject: [PATCH] [CLB] Implemented Stirge --- Mage.Sets/src/mage/cards/s/Stirge.java | 55 +++++++++++++++++++ .../CommanderLegendsBattleForBaldursGate.java | 1 + Utils/mtg-cards-data.txt | 2 + 3 files changed, 58 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/s/Stirge.java diff --git a/Mage.Sets/src/mage/cards/s/Stirge.java b/Mage.Sets/src/mage/cards/s/Stirge.java new file mode 100644 index 0000000000..907f2afc06 --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/Stirge.java @@ -0,0 +1,55 @@ +package mage.cards.s; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.CantBlockAbility; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.costs.common.PayLifeCost; +import mage.abilities.costs.common.SacrificeSourceCost; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class Stirge extends CardImpl { + + public Stirge(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{B}"); + + this.subtype.add(SubType.INSECT); + this.subtype.add(SubType.BAT); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + + // Stirge can't block. + this.addAbility(new CantBlockAbility()); + + // Blood Drain — {1}{B}, Pay 1 life, Sacrifice Stirge: Draw a card. + Ability ability = new SimpleActivatedAbility( + new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{1}{B}") + ); + ability.addCost(new PayLifeCost(1)); + ability.addCost(new SacrificeSourceCost()); + this.addAbility(ability.withFlavorWord("Blood Drain")); + } + + private Stirge(final Stirge card) { + super(card); + } + + @Override + public Stirge copy() { + return new Stirge(this); + } +} diff --git a/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java b/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java index 8986a77a72..f88479deca 100644 --- a/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java +++ b/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java @@ -45,6 +45,7 @@ public final class CommanderLegendsBattleForBaldursGate extends ExpansionSet { cards.add(new SetCardInfo("Sea of Clouds", 360, Rarity.RARE, mage.cards.s.SeaOfClouds.class)); cards.add(new SetCardInfo("Sky Diamond", 337, Rarity.COMMON, mage.cards.s.SkyDiamond.class)); cards.add(new SetCardInfo("Spire Garden", 361, Rarity.RARE, mage.cards.s.SpireGarden.class)); + cards.add(new SetCardInfo("Stirge", 150, Rarity.COMMON, mage.cards.s.Stirge.class)); cards.add(new SetCardInfo("Tymora's Invoker", 101, Rarity.COMMON, mage.cards.t.TymorasInvoker.class)); cards.add(new SetCardInfo("Wand of Wonder", 204, Rarity.RARE, mage.cards.w.WandOfWonder.class)); cards.add(new SetCardInfo("White Plume Adventurer", 49, Rarity.RARE, mage.cards.w.WhitePlumeAdventurer.class)); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 7ac38dea15..e1baa7b24e 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -44212,9 +44212,11 @@ Cultist of the Absolute|Commander Legends: Battle for Baldur's Gate|123|R|{B}|Le Elder Brain|Commander Legends: Battle for Baldur's Gate|125|R|{5}{B}{B}|Creature - Horror|6|6|Menace$Whenever Elder Brain attacks a player, exile all cards from that player's hand, then they draw that many cards. You may play lands and cast spells from among the exiled cards for as long as they remain exiled. If you cast a spell this way, you may spend mana as though it were mana of any color to cast it.| Passageway Seer|Commander Legends: Battle for Baldur's Gate|141|U|{3}{B}|Creature - Tiefling Warlock|2|2|Lifelink$When Passageway Seer enters the battlefield, you take the initiative.$At the beginning of your end step, if you have the initiative, put a +1/+1 counter on Passageway Seer.| Sarevok, Deathbringer|Commander Legends: Battle for Baldur's Gate|144|U|{3}{B}|Legendary Creature - Human Knight|3|4|At the beginning of each player's end step, if no permanents left the battlefield this turn, that player loses X life, where X is Sarevok's power.$Choose a Background| +Stirge|Commander Legends: Battle for Baldur's Gate|150|C|{B}|Creature - Insect Bat|1|1|Flying$Stirge can't block.$Blood Drain — {1}{B}, Pay 1 life, Sacrifice Stirge: Draw a card.| Fireball|Commander Legends: Battle for Baldur's Gate|175|U|{X}{R}|Sorcery|||This spell costs {1} more to cast for each target beyond the first.$Fireball deals X damage divided evenly, rounded down, among any number of targets.| Lightning Bolt|Commander Legends: Battle for Baldur's Gate|187|C|{R}|Instant|||Lightning Bolt deals 3 damage to any target.| Livaan, Cultist of Tiamat|Commander Legends: Battle for Baldur's Gate|188|U|{2}{R}|Legendary Creature - Dragon Shaman|1|3|Whenever you cast a noncreature spell, target creature gets +X/+0 until end of turn, where X is that spell's mana value.$Choose a Background| +Nemesis Phoenix|Commander Legends: Battle for Baldur's Gate|189|U|{3}{R}{R}|Creature - Phoenix|4|2|Flying${2}{R}: Return Nemesis Phoenix from your graveyard to the battlefield tapped and attacking. Activate only during the declare attackers step and only if you're attacking two or more opponents.| Wand of Wonder|Commander Legends: Battle for Baldur's Gate|204|R|{3}{R}|Artifact|||{4}, {T}: Roll a d20. Each opponent exiles cards from the top of their library until they exile an instant or sorcery card, then shuffles the rest into their library. You may cast up to X instant and/or sorcery spells from among cards exiled this way without paying their mana costs.$1-9 & X is one$10-19 & X is two.$20 & X is three.| Bramble Sovereign|Commander Legends: Battle for Baldur's Gate|218|M|{2}{G}{G}|Creature - Dryad|4|4|Whenever another nontoken creature enters the battlefield, you may pay {1}{G}. If you do, that creature's controller creates a token that's a copy of that creature.| Cloakwood Hermit|Commander Legends: Battle for Baldur's Gate|221|U|{2}{G}|Legendary Enchantment - Background|||Commander creatures you own have "At the beginning of your end step, if a creature card was put into your graveyard from anywhere this turn, create two tapped 1/1 green Squirrel creature tokens."|