From 9ec45e796c2717000fed2651ec959dd10145ed1e Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 27 Dec 2020 21:07:37 -0500 Subject: [PATCH] [KHM] Implemented Toski, Bearer of Secrets --- .../mage/cards/t/ToskiBearerOfSecrets.java | 57 +++++++++++++++++++ Mage.Sets/src/mage/sets/Kaldheim.java | 1 + Utils/mtg-cards-data.txt | 1 + 3 files changed, 59 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/t/ToskiBearerOfSecrets.java diff --git a/Mage.Sets/src/mage/cards/t/ToskiBearerOfSecrets.java b/Mage.Sets/src/mage/cards/t/ToskiBearerOfSecrets.java new file mode 100644 index 0000000000..1676ad3e02 --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/ToskiBearerOfSecrets.java @@ -0,0 +1,57 @@ +package mage.cards.t; + +import mage.MageInt; +import mage.abilities.common.AttacksEachCombatStaticAbility; +import mage.abilities.common.CantBeCounteredSourceAbility; +import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.keyword.IndestructibleAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SetTargetPointer; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.StaticFilters; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class ToskiBearerOfSecrets extends CardImpl { + + public ToskiBearerOfSecrets(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{G}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.SQUIRREL); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + // This spell can't be countered. + this.addAbility(new CantBeCounteredSourceAbility()); + + // Indestructible + this.addAbility(IndestructibleAbility.getInstance()); + + // Toski, Bearer of Secrets attacks each combat if able. + this.addAbility(new AttacksEachCombatStaticAbility()); + + // Whenever a creature you control deals combat damage to a player, draw a card. + this.addAbility(new DealsDamageToAPlayerAllTriggeredAbility( + new DrawCardSourceControllerEffect(1), + StaticFilters.FILTER_CONTROLLED_A_CREATURE, + false, SetTargetPointer.NONE, true + )); + } + + private ToskiBearerOfSecrets(final ToskiBearerOfSecrets card) { + super(card); + } + + @Override + public ToskiBearerOfSecrets copy() { + return new ToskiBearerOfSecrets(this); + } +} diff --git a/Mage.Sets/src/mage/sets/Kaldheim.java b/Mage.Sets/src/mage/sets/Kaldheim.java index aefc5bad90..81c897ef8c 100644 --- a/Mage.Sets/src/mage/sets/Kaldheim.java +++ b/Mage.Sets/src/mage/sets/Kaldheim.java @@ -53,6 +53,7 @@ public final class Kaldheim extends ExpansionSet { cards.add(new SetCardInfo("Starnheim Aspirant", 380, Rarity.UNCOMMON, mage.cards.s.StarnheimAspirant.class)); cards.add(new SetCardInfo("Surtland Elementalist", 375, Rarity.RARE, mage.cards.s.SurtlandElementalist.class)); cards.add(new SetCardInfo("Surtland Flinger", 377, Rarity.RARE, mage.cards.s.SurtlandFlinger.class)); + cards.add(new SetCardInfo("Toski, Bearer of Secrets", 197, Rarity.RARE, mage.cards.t.ToskiBearerOfSecrets.class)); cards.add(new SetCardInfo("Youthful Valkyrie", 382, Rarity.UNCOMMON, mage.cards.y.YouthfulValkyrie.class)); } } diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index bbfe674477..e2fc9fc8b8 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -40023,6 +40023,7 @@ Halvar, God of Battle|Kaldheim|15|M|{2}{W}{W}|Legendary Creature - God|4|4|Creat Sword of the Realms|Kaldheim|15|M|{1}{W}|Legendary Artifact - Equipment|||Equipped creature gets +2/+0 and has vigilance.$Whenever equipped creature dies, return it to its owner's hand.$Equip {1}{W}| Magda, Brazen Outlaw|Kaldheim|142|R|{1}{R}|Legendary Creature - Dwarf Berserker|2|1|Other Dwarves you control get +1/+0.$Whenever a Dwarf you control becomes tapped, create a Treasure token.$Sacrifice five Treasures: Search your library for an artifact or Dragon card, put that card onto the battlefield, then shuffle your library.| Realmwalker|Kaldheim|188|R|{2}{G}|Creature - Shapeshifter|2|3|Changeling$As Realmwalker enters the battlefield, choose a creature type.$You may look at the top card of your library any time.$You may cast creature spells of the chosen type from the top of your library.| +Toski, Bearer of Secrets|Kaldheim|197|R|{3}{G}|Legendary Creature - Squirrel|1|1|This spell can't be countered.$Indestructible$Toski, Bearer of Secrets attacks each combat if able.$Whenever a creature you control deals combat damage to a player, draw a card.| Kaya the Inexorable|Kaldheim|218|M|{3}{W}{B}|Legendary Planeswalker - Kaya|5|+1: Put a ghostform counter on up to one target nontoken creature. It gains "When this creature dies or is put into exile, return it to its owner's hand and create a 1/1 white Spirit creature token with flying."$−3: Exile target nonland permanent.$−7: You get an emblem with "At the beginning of your upkeep, you may cast a legendary spell from your hand, from your graveyard, or from among cards you own in exile without paying its mana cost."| Sarulf, Realm Eater|Kaldheim|228|R|{1}{B}{G}|Legendary Creature - Wolf|3|3|Whenever a permanent an opponent controls is put into a graveyard from the battlefield, put a +1/+1 counter on Sarulf, Realm Eater.$At the beginning of your upkeep, if Sarulf has one or more +1/+1 counters on it, you may remove all of them. If you do, exile each other nonland permanent with converted mana cost less than or equal to the number of counters removed this way.| Showdown of the Skalds|Kaldheim|229|R|{2}{R}{W}|Enchantment - Saga|||(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)$I — Exile the top four cards of your library. Until the end of your next turn, you may play those cards.$II, III — Whenever you cast a spell this turn, put a +1/+1 counter on target creature you control.|