From 2c501fff46816bc558e2f814b6655e0abf9d0770 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Fri, 15 Jan 2021 20:29:41 -0500 Subject: [PATCH] [KHM] Implemented Fynn, the Fangbearer --- .../src/mage/cards/f/FynnTheFangbearer.java | 60 +++++++++++++++++++ Mage.Sets/src/mage/sets/Kaldheim.java | 1 + 2 files changed, 61 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/f/FynnTheFangbearer.java diff --git a/Mage.Sets/src/mage/cards/f/FynnTheFangbearer.java b/Mage.Sets/src/mage/cards/f/FynnTheFangbearer.java new file mode 100644 index 0000000000..4f59904fbc --- /dev/null +++ b/Mage.Sets/src/mage/cards/f/FynnTheFangbearer.java @@ -0,0 +1,60 @@ +package mage.cards.f; + +import mage.MageInt; +import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.abilities.keyword.DeathtouchAbility; +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.counters.CounterType; +import mage.filter.FilterPermanent; +import mage.filter.common.FilterControlledCreaturePermanent; +import mage.filter.predicate.mageobject.AbilityPredicate; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class FynnTheFangbearer extends CardImpl { + + private static final FilterPermanent filter + = new FilterControlledCreaturePermanent("creature you control with deathtouch"); + + static { + filter.add(new AbilityPredicate(DeathtouchAbility.class)); + } + + public FynnTheFangbearer(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.WARRIOR); + this.power = new MageInt(1); + this.toughness = new MageInt(3); + + // Deathtouch + this.addAbility(DeathtouchAbility.getInstance()); + + // Whenever a creature you control with deathtouch deals combat damage to a player, that player gets two poison counters. + this.addAbility(new DealsDamageToAPlayerAllTriggeredAbility( + new AddCountersTargetEffect(CounterType.POISON.createInstance(2)) + .setText("that player gets two poison counters"), + filter, false, SetTargetPointer.PLAYER, true, true + )); + } + + private FynnTheFangbearer(final FynnTheFangbearer card) { + super(card); + } + + @Override + public FynnTheFangbearer copy() { + return new FynnTheFangbearer(this); + } +} diff --git a/Mage.Sets/src/mage/sets/Kaldheim.java b/Mage.Sets/src/mage/sets/Kaldheim.java index 12f45e20e2..aa669b57cd 100644 --- a/Mage.Sets/src/mage/sets/Kaldheim.java +++ b/Mage.Sets/src/mage/sets/Kaldheim.java @@ -131,6 +131,7 @@ public final class Kaldheim extends ExpansionSet { cards.add(new SetCardInfo("Frostpeak Yeti", 57, Rarity.COMMON, mage.cards.f.FrostpeakYeti.class)); cards.add(new SetCardInfo("Frostpyre Arcanist", 58, Rarity.UNCOMMON, mage.cards.f.FrostpyreArcanist.class)); cards.add(new SetCardInfo("Funeral Longboat", 238, Rarity.COMMON, mage.cards.f.FuneralLongboat.class)); + cards.add(new SetCardInfo("Fynn, the Fangbearer", 170, Rarity.UNCOMMON, mage.cards.f.FynnTheFangbearer.class)); cards.add(new SetCardInfo("Gates of Istfell", 256, Rarity.UNCOMMON, mage.cards.g.GatesOfIstfell.class)); cards.add(new SetCardInfo("Giant's Amulet", 59, Rarity.UNCOMMON, mage.cards.g.GiantsAmulet.class)); cards.add(new SetCardInfo("Giant's Grasp", 384, Rarity.UNCOMMON, mage.cards.g.GiantsGrasp.class));