[SPM] implement Spider-Slayer, Hatred Honed

This commit is contained in:
jmlundeen 2025-09-05 11:40:34 -05:00
parent 388635140f
commit 32282a42b7
2 changed files with 69 additions and 0 deletions

View file

@ -0,0 +1,68 @@
package mage.cards.s;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.DealsDamageToACreatureTriggeredAbility;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.ExileSourceFromGraveCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.DestroyTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.filter.common.FilterCreaturePermanent;
import mage.game.permanent.token.RobotFlyingToken;
import java.util.UUID;
/**
*
* @author Jmlundeen
*/
public final class SpiderSlayerHatredHoned extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a Spider");
static {
filter.add(SubType.SPIDER.getPredicate());
}
public SpiderSlayerHatredHoned(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{2}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.VILLAIN);
this.power = new MageInt(2);
this.toughness = new MageInt(1);
// Whenever Spider-Slayer deals damage to a Spider, destroy that creature.
this.addAbility(new DealsDamageToACreatureTriggeredAbility(
new DestroyTargetEffect(),
false,
false,
true,
filter
));
// {6}, Exile this card from your graveyard: Create two tapped 1/1 colorless Robot artifact creature tokens with flying.
Ability ability = new SimpleActivatedAbility(
new CreateTokenEffect(new RobotFlyingToken(), 2, true),
new ManaCostsImpl<>("{6}")
);
ability.addCost(new ExileSourceFromGraveCost());
this.addAbility(ability);
}
private SpiderSlayerHatredHoned(final SpiderSlayerHatredHoned card) {
super(card);
}
@Override
public SpiderSlayerHatredHoned copy() {
return new SpiderSlayerHatredHoned(this);
}
}

View file

@ -241,6 +241,7 @@ public final class MarvelsSpiderMan extends ExpansionSet {
cards.add(new SetCardInfo("Spider-Sense", 254, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Spider-Sense", 254, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Spider-Sense", 284, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Spider-Sense", 284, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Spider-Sense", 46, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Spider-Sense", 46, Rarity.RARE, mage.cards.s.SpiderSense.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Spider-Slayer, Hatred Honed", 175, Rarity.UNCOMMON, mage.cards.s.SpiderSlayerHatredHoned.class));
cards.add(new SetCardInfo("Spider-Suit", 176, Rarity.UNCOMMON, mage.cards.s.SpiderSuit.class)); cards.add(new SetCardInfo("Spider-Suit", 176, Rarity.UNCOMMON, mage.cards.s.SpiderSuit.class));
cards.add(new SetCardInfo("Spider-UK", 17, Rarity.UNCOMMON, mage.cards.s.SpiderUK.class)); cards.add(new SetCardInfo("Spider-UK", 17, Rarity.UNCOMMON, mage.cards.s.SpiderUK.class));
cards.add(new SetCardInfo("Spider-Woman, Stunning Savior", 152, Rarity.RARE, mage.cards.s.SpiderWomanStunningSavior.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Spider-Woman, Stunning Savior", 152, Rarity.RARE, mage.cards.s.SpiderWomanStunningSavior.class, NON_FULL_USE_VARIOUS));