fixed several damage triggers not being combat damage triggers (#4026)

This commit is contained in:
Evan Kranzler 2017-09-19 13:02:09 -04:00
parent 96f3896d56
commit 7de174a718
7 changed files with 36 additions and 36 deletions

View file

@ -29,7 +29,7 @@ package mage.cards.a;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.keyword.ModularAbility;
import mage.cards.CardImpl;
@ -45,14 +45,14 @@ import mage.counters.CounterType;
public class ArcboundSlith extends CardImpl {
public ArcboundSlith(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{2}");
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{2}");
this.subtype.add(SubType.SLITH);
this.power = new MageInt(0);
this.toughness = new MageInt(0);
// Whenever Arcbound Slith deals combat damage to a player, put a +1/+1 counter on it.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(), true), false));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(), true), false));
// Modular 1
this.addAbility(new ModularAbility(this, 1));
}

View file

@ -30,7 +30,7 @@ package mage.cards.d;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.effects.OneShotEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -47,14 +47,14 @@ import mage.players.Player;
public class DivinerSpirit extends CardImpl {
public DivinerSpirit(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{U}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}");
this.subtype.add(SubType.SPIRIT);
this.power = new MageInt(2);
this.toughness = new MageInt(4);
// Whenever Diviner Spirit deals combat damage to a player, you and that player each draw that many cards.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new DivinerSpiritEffect(), false, true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DivinerSpiritEffect(), false, true));
}
public DivinerSpirit(final DivinerSpirit card) {

View file

@ -29,7 +29,7 @@ package mage.cards.g;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.abilities.effects.common.UnlessPaysDelayedEffect;
@ -46,16 +46,16 @@ import mage.constants.PhaseStep;
public class GlassAsp extends CardImpl {
public GlassAsp(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}{G}");
this.subtype.add(SubType.SNAKE);
this.power = new MageInt(2);
this.toughness = new MageInt(1);
// Whenever Glass Asp deals combat damage to a player, that player loses 2 life at the beginning of his or her next draw step unless he or she pays {2} before that step.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new UnlessPaysDelayedEffect(
new ManaCostsImpl("{2}"), new LoseLifeTargetEffect(2), PhaseStep.DRAW, true,
"that player loses 2 life at the beginning of his or her next draw step unless he or she pays {2} before that draw step."),
false, true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new UnlessPaysDelayedEffect(
new ManaCostsImpl("{2}"), new LoseLifeTargetEffect(2), PhaseStep.DRAW, true,
"that player loses 2 life at the beginning of his or her next draw step unless he or she pays {2} before that draw step."),
false, true));
}
public GlassAsp(final GlassAsp card) {

View file

@ -31,7 +31,7 @@ import java.util.UUID;
import mage.MageInt;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.AsThoughEffectImpl;
import mage.abilities.effects.OneShotEffect;
@ -70,7 +70,7 @@ public class KheruMindEater extends CardImpl {
this.addAbility(new MenaceAbility());
// Whenever Kheru Mind-Eater deals combat damage to a player, that player exiles a card from his or her hand face down.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new KheruMindEaterExileEffect(), false, true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new KheruMindEaterExileEffect(), false, true));
// You may look at and play cards exiled with Kheru Mind-Eater.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new KheruMindEaterEffect()));

View file

@ -24,14 +24,14 @@
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
*/
package mage.cards.n;
import java.util.UUID;
import mage.MageInt;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.AsThoughEffectImpl;
import mage.abilities.effects.OneShotEffect;
@ -51,23 +51,23 @@ import mage.players.Player;
import mage.util.CardUtil;
/**
* FAQ
*
* The card is exiled face up. All players may look at it.
* Playing a card exiled with Nightveil Specter follows all the normal rules for
* playing that card. You must pay its costs, and you must follow all timing
* restrictions, for example.
*
* Nightveil Specter's last ability applies to cards exiled with that specific
* Nightveil Specter, not any other creature named Nightveil Specter. You should
* keep cards exiled by different Nightveil Specters separate.
*
* @author LevelX2
*/
* FAQ
*
* The card is exiled face up. All players may look at it. Playing a card exiled
* with Nightveil Specter follows all the normal rules for playing that card.
* You must pay its costs, and you must follow all timing restrictions, for
* example.
*
* Nightveil Specter's last ability applies to cards exiled with that specific
* Nightveil Specter, not any other creature named Nightveil Specter. You should
* keep cards exiled by different Nightveil Specters separate.
*
* @author LevelX2
*/
public class NightveilSpecter extends CardImpl {
public NightveilSpecter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{U/B}{U/B}{U/B}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{U/B}{U/B}{U/B}");
this.subtype.add(SubType.SPECTER);
this.power = new MageInt(2);
@ -77,7 +77,7 @@ public class NightveilSpecter extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of his or her library.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new NightveilSpecterExileEffect(),false, true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new NightveilSpecterExileEffect(), false, true));
// You may play cards exiled with Nightveil Specter.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NightveilSpecterEffect()));

View file

@ -31,7 +31,7 @@ import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.dynamicvalue.common.HalfValue;
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
import mage.abilities.dynamicvalue.common.PermanentsTargetOpponentControlsCount;
@ -85,7 +85,7 @@ public class RakdosTheDefiler extends CardImpl {
// Whenever Rakdos deals combat damage to a player, that player sacrifices half the non-Demon permanents he or she controls, rounded up.
effect = new SacrificeEffect(damageToPlayerTriggerFilter, new HalfValue(new PermanentsTargetOpponentControlsCount(damageToPlayerTriggerFilter), true), "");
effect.setText("that player sacrifices half the non-Demon permanents he or she controls, rounded up");
ability = new DealsDamageToAPlayerTriggeredAbility(effect, false, true);
ability = new DealsCombatDamageToAPlayerTriggeredAbility(effect, false, true);
this.addAbility(ability);
}

View file

@ -29,7 +29,7 @@ package mage.cards.r;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.ExileCardsFromTopOfLibraryTargetEffect;
import mage.abilities.keyword.MorphAbility;
@ -53,7 +53,7 @@ public class RavenGuildMaster extends CardImpl {
this.toughness = new MageInt(1);
// Whenever Raven Guild Master deals combat damage to a player, that player exiles the top ten cards of his or her library.
this.addAbility(new DealsDamageToAPlayerTriggeredAbility(new ExileCardsFromTopOfLibraryTargetEffect(10, "that player"), false, true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new ExileCardsFromTopOfLibraryTargetEffect(10, "that player"), false, true));
// Morph {2}{U}{U}
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{U}{U}")));