Implemented Excavating Anurid

This commit is contained in:
Evan Kranzler 2019-05-31 21:47:41 -04:00
parent 82c9ab63d6
commit 285e72dc9d
2 changed files with 71 additions and 0 deletions

View file

@ -0,0 +1,70 @@
package mage.cards.e;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.CardsInControllerGraveCondition;
import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.DoIfCostPaid;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.StaticFilters;
import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class ExcavatingAnurid extends CardImpl {
private static final Condition condition = new CardsInControllerGraveCondition(7);
public ExcavatingAnurid(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{G}");
this.subtype.add(SubType.FROG);
this.subtype.add(SubType.BEAST);
this.power = new MageInt(4);
this.toughness = new MageInt(4);
// When Excavating Anurid enters the battlefield, you may sacrifice a land. If you do, draw a card.
this.addAbility(new EntersBattlefieldTriggeredAbility(new DoIfCostPaid(
new DrawCardSourceControllerEffect(1),
new SacrificeTargetCost(new TargetControlledPermanent(
StaticFilters.FILTER_CONTROLLED_LAND_SHORT_TEXT
))
)));
// Threshold As long as seven or more cards are in your graveyard, Excavating Anurid gets +1/+1 and has vigilance.
Ability ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield),
condition, "As long as seven or more cards are in your graveyard, {this} gets +1/+1"
));
ability.addEffect(new ConditionalContinuousEffect(new GainAbilitySourceEffect(
VigilanceAbility.getInstance(), Duration.WhileOnBattlefield
), condition, "and has vigilance"));
ability.setAbilityWord(AbilityWord.THRESHOLD);
this.addAbility(ability);
}
private ExcavatingAnurid(final ExcavatingAnurid card) {
super(card);
}
@Override
public ExcavatingAnurid copy() {
return new ExcavatingAnurid(this);
}
}

View file

@ -69,6 +69,7 @@ public final class ModernHorizons extends ExpansionSet {
cards.add(new SetCardInfo("Ephemerate", 7, Rarity.COMMON, mage.cards.e.Ephemerate.class));
cards.add(new SetCardInfo("Etchings of the Chosen", 198, Rarity.UNCOMMON, mage.cards.e.EtchingsOfTheChosen.class));
cards.add(new SetCardInfo("Everdream", 47, Rarity.UNCOMMON, mage.cards.e.Everdream.class));
cards.add(new SetCardInfo("Excavating Anurid", 163, Rarity.COMMON, mage.cards.e.ExcavatingAnurid.class));
cards.add(new SetCardInfo("Exclude", 48, Rarity.UNCOMMON, mage.cards.e.Exclude.class));
cards.add(new SetCardInfo("Fact or Fiction", 50, Rarity.UNCOMMON, mage.cards.f.FactOrFiction.class));
cards.add(new SetCardInfo("Faerie Seer", 51, Rarity.COMMON, mage.cards.f.FaerieSeer.class));