From 536b4959e06f3dc1b8f1926e64fe4dd4cecbc7ed Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 6 Apr 2020 08:46:31 -0400 Subject: [PATCH] Implemented Nikara, Lair Scavenger --- .../src/mage/cards/n/NikaraLairScavenger.java | 65 +++++++++++++++++++ .../src/mage/sets/Commander2020Edition.java | 1 + 2 files changed, 66 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/n/NikaraLairScavenger.java diff --git a/Mage.Sets/src/mage/cards/n/NikaraLairScavenger.java b/Mage.Sets/src/mage/cards/n/NikaraLairScavenger.java new file mode 100644 index 0000000000..f93bd3e489 --- /dev/null +++ b/Mage.Sets/src/mage/cards/n/NikaraLairScavenger.java @@ -0,0 +1,65 @@ +package mage.cards.n; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.LeavesBattlefieldAllTriggeredAbility; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.effects.common.LoseLifeSourceControllerEffect; +import mage.abilities.keyword.MenaceAbility; +import mage.abilities.keyword.PartnerWithAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.FilterPermanent; +import mage.filter.common.FilterControlledCreaturePermanent; +import mage.filter.predicate.permanent.AnotherPredicate; +import mage.filter.predicate.permanent.CounterAnyPredicate; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class NikaraLairScavenger extends CardImpl { + + private static final FilterPermanent filter + = new FilterControlledCreaturePermanent("another creature you control"); + + static { + filter.add(CounterAnyPredicate.instance); + filter.add(AnotherPredicate.instance); + } + + public NikaraLairScavenger(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.CLERIC); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Partner with Yannik, Scavenging Sentinel + this.addAbility(new PartnerWithAbility("Yannik, Scavenging Sentinel")); + + // Menace + this.addAbility(new MenaceAbility()); + + // Whenever another creature you control leaves the battlefield, if it had one or more counters on it, you draw a card and lose 1 life. + Ability ability = new LeavesBattlefieldAllTriggeredAbility(new DrawCardSourceControllerEffect(1) + .setText("if it had one or more counters on it, you draw a card"), filter); + ability.addEffect(new LoseLifeSourceControllerEffect(1).concatBy("and")); + this.addAbility(ability); + } + + private NikaraLairScavenger(final NikaraLairScavenger card) { + super(card); + } + + @Override + public NikaraLairScavenger copy() { + return new NikaraLairScavenger(this); + } +} diff --git a/Mage.Sets/src/mage/sets/Commander2020Edition.java b/Mage.Sets/src/mage/sets/Commander2020Edition.java index 9b56e0b3a9..ec807fb16f 100644 --- a/Mage.Sets/src/mage/sets/Commander2020Edition.java +++ b/Mage.Sets/src/mage/sets/Commander2020Edition.java @@ -46,6 +46,7 @@ public final class Commander2020Edition extends ExpansionSet { cards.add(new SetCardInfo("Masked Admirers", 163, Rarity.RARE, mage.cards.m.MaskedAdmirers.class)); cards.add(new SetCardInfo("Nahiri, the Harbinger", 223, Rarity.MYTHIC, mage.cards.n.NahiriTheHarbinger.class)); cards.add(new SetCardInfo("Netherborn Altar", 45, Rarity.RARE, mage.cards.n.NetherbornAltar.class)); + cards.add(new SetCardInfo("Nikara, Lair Scavenger", 3, Rarity.MYTHIC, mage.cards.n.NikaraLairScavenger.class)); cards.add(new SetCardInfo("Nissa, Steward of Elements", 224, Rarity.MYTHIC, mage.cards.n.NissaStewardOfElements.class)); cards.add(new SetCardInfo("Obscuring Haze", 61, Rarity.RARE, mage.cards.o.ObscuringHaze.class)); cards.add(new SetCardInfo("Otrimi, the Ever-Playful", 12, Rarity.COMMON, mage.cards.o.OtrimiTheEverPlayful.class));