[VOW] Implemented Kessig Wolf Rider

This commit is contained in:
Evan Kranzler 2021-11-01 09:02:51 -04:00
parent a92100eb1a
commit e36dac83f2
3 changed files with 84 additions and 0 deletions

View file

@ -0,0 +1,53 @@
package mage.cards.k;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.ExileFromGraveCost;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.keyword.MenaceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.game.permanent.token.RedWolfToken;
import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class KessigWolfrider extends CardImpl {
public KessigWolfrider(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.KNIGHT);
this.power = new MageInt(1);
this.toughness = new MageInt(2);
// Menace
this.addAbility(new MenaceAbility());
// {2}{R}, {T}, Exile three cards from your graveyard: Create a 3/2 red Wolf creature token.
Ability ability = new SimpleActivatedAbility(
new CreateTokenEffect(new RedWolfToken()), new ManaCostsImpl<>("2}{R}")
);
ability.addCost(new TapSourceCost());
ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard(3, 3)));
this.addAbility(ability);
}
private KessigWolfrider(final KessigWolfrider card) {
super(card);
}
@Override
public KessigWolfrider copy() {
return new KessigWolfrider(this);
}
}

View file

@ -63,6 +63,7 @@ public final class InnistradCrimsonVow extends ExpansionSet {
cards.add(new SetCardInfo("Halana and Alena, Partners", 239, Rarity.RARE, mage.cards.h.HalanaAndAlenaPartners.class));
cards.add(new SetCardInfo("Hallowed Haunting", 17, Rarity.MYTHIC, mage.cards.h.HallowedHaunting.class));
cards.add(new SetCardInfo("Island", 270, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Kessig Wolfrider", 165, Rarity.RARE, mage.cards.k.KessigWolfrider.class));
cards.add(new SetCardInfo("Kindly Ancestor", 22, Rarity.COMMON, mage.cards.k.KindlyAncestor.class));
cards.add(new SetCardInfo("Lunar Rejection", 67, Rarity.UNCOMMON, mage.cards.l.LunarRejection.class));
cards.add(new SetCardInfo("Massive Might", 208, Rarity.COMMON, mage.cards.m.MassiveMight.class));

View file

@ -0,0 +1,30 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.constants.CardType;
import mage.constants.SubType;
/**
* @author TheElk801
*/
public final class RedWolfToken extends TokenImpl {
public RedWolfToken() {
super("Wolf", "3/2 red Wolf creature token");
cardType.add(CardType.CREATURE);
color.setRed(true);
subtype.add(SubType.WOLF);
power = new MageInt(3);
toughness = new MageInt(2);
}
private RedWolfToken(final RedWolfToken token) {
super(token);
}
@Override
public RedWolfToken copy() {
return new RedWolfToken(this);
}
}