mirror of
https://github.com/correl/mage.git
synced 2024-12-25 03:00:15 +00:00
[VOW] Implemented Fell Stinger
This commit is contained in:
parent
eb68350d04
commit
6d488d9900
3 changed files with 59 additions and 3 deletions
52
Mage.Sets/src/mage/cards/f/FellStinger.java
Normal file
52
Mage.Sets/src/mage/cards/f/FellStinger.java
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
package mage.cards.f;
|
||||||
|
|
||||||
|
import mage.MageInt;
|
||||||
|
import mage.abilities.Ability;
|
||||||
|
import mage.abilities.common.ExploitCreatureTriggeredAbility;
|
||||||
|
import mage.abilities.effects.common.DrawCardTargetEffect;
|
||||||
|
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||||
|
import mage.abilities.keyword.DeathtouchAbility;
|
||||||
|
import mage.abilities.keyword.ExploitAbility;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.target.TargetPlayer;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author TheElk801
|
||||||
|
*/
|
||||||
|
public final class FellStinger extends CardImpl {
|
||||||
|
|
||||||
|
public FellStinger(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}");
|
||||||
|
|
||||||
|
this.subtype.add(SubType.ZOMBIE);
|
||||||
|
this.subtype.add(SubType.SCORPION);
|
||||||
|
this.power = new MageInt(3);
|
||||||
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
|
// Deathtouch
|
||||||
|
this.addAbility(DeathtouchAbility.getInstance());
|
||||||
|
|
||||||
|
// Exploit
|
||||||
|
this.addAbility(new ExploitAbility());
|
||||||
|
|
||||||
|
// When Fell Stinger exploits a creature, target player draws two cards and loses 2 life.
|
||||||
|
Ability ability = new ExploitCreatureTriggeredAbility(new DrawCardTargetEffect(2));
|
||||||
|
ability.addEffect(new LoseLifeTargetEffect(2));
|
||||||
|
ability.addTarget(new TargetPlayer());
|
||||||
|
this.addAbility(ability);
|
||||||
|
}
|
||||||
|
|
||||||
|
private FellStinger(final FellStinger card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public FellStinger copy() {
|
||||||
|
return new FellStinger(this);
|
||||||
|
}
|
||||||
|
}
|
|
@ -35,6 +35,7 @@ public final class InnistradCrimsonVow extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Deathcap Glade", 261, Rarity.RARE, mage.cards.d.DeathcapGlade.class));
|
cards.add(new SetCardInfo("Deathcap Glade", 261, Rarity.RARE, mage.cards.d.DeathcapGlade.class));
|
||||||
cards.add(new SetCardInfo("Dig Up", 197, Rarity.RARE, mage.cards.d.DigUp.class));
|
cards.add(new SetCardInfo("Dig Up", 197, Rarity.RARE, mage.cards.d.DigUp.class));
|
||||||
cards.add(new SetCardInfo("Dreamroot Cascade", 262, Rarity.RARE, mage.cards.d.DreamrootCascade.class));
|
cards.add(new SetCardInfo("Dreamroot Cascade", 262, Rarity.RARE, mage.cards.d.DreamrootCascade.class));
|
||||||
|
cards.add(new SetCardInfo("Fell Stinger", 112, Rarity.UNCOMMON, mage.cards.f.FellStinger.class));
|
||||||
cards.add(new SetCardInfo("Forest", 276, Rarity.LAND, mage.cards.basiclands.Forest.class, FULL_ART_BFZ_VARIOUS));
|
cards.add(new SetCardInfo("Forest", 276, Rarity.LAND, mage.cards.basiclands.Forest.class, FULL_ART_BFZ_VARIOUS));
|
||||||
cards.add(new SetCardInfo("Gluttonous Guest", 114, Rarity.COMMON, mage.cards.g.GluttonousGuest.class));
|
cards.add(new SetCardInfo("Gluttonous Guest", 114, Rarity.COMMON, mage.cards.g.GluttonousGuest.class));
|
||||||
cards.add(new SetCardInfo("Gryff Rider", 15, Rarity.COMMON, mage.cards.g.GryffRider.class));
|
cards.add(new SetCardInfo("Gryff Rider", 15, Rarity.COMMON, mage.cards.g.GryffRider.class));
|
||||||
|
|
|
@ -11,12 +11,15 @@ import mage.game.permanent.Permanent;
|
||||||
import mage.target.targetpointer.FixedTarget;
|
import mage.target.targetpointer.FixedTarget;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author LevelX2
|
* @author LevelX2
|
||||||
*/
|
*/
|
||||||
public class ExploitCreatureTriggeredAbility extends TriggeredAbilityImpl {
|
public class ExploitCreatureTriggeredAbility extends TriggeredAbilityImpl {
|
||||||
|
|
||||||
private SetTargetPointer setTargetPointer;
|
private final SetTargetPointer setTargetPointer;
|
||||||
|
|
||||||
|
public ExploitCreatureTriggeredAbility(Effect effect) {
|
||||||
|
this(effect, false);
|
||||||
|
}
|
||||||
|
|
||||||
public ExploitCreatureTriggeredAbility(Effect effect, boolean optional) {
|
public ExploitCreatureTriggeredAbility(Effect effect, boolean optional) {
|
||||||
this(effect, optional, SetTargetPointer.NONE);
|
this(effect, optional, SetTargetPointer.NONE);
|
||||||
|
@ -75,6 +78,6 @@ public class ExploitCreatureTriggeredAbility extends TriggeredAbilityImpl {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getTriggerPhrase() {
|
public String getTriggerPhrase() {
|
||||||
return "When {this} exploits a creature, " ;
|
return "When {this} exploits a creature, ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue