mirror of
https://github.com/magefree/mage.git
synced 2025-12-22 19:41:59 -08:00
fixed several damage triggers not being combat damage triggers (#4026)
This commit is contained in:
parent
96f3896d56
commit
7de174a718
7 changed files with 36 additions and 36 deletions
|
|
@ -29,7 +29,7 @@ package mage.cards.a;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||||
import mage.abilities.keyword.ModularAbility;
|
import mage.abilities.keyword.ModularAbility;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
|
|
@ -45,13 +45,13 @@ import mage.counters.CounterType;
|
||||||
public class ArcboundSlith extends CardImpl {
|
public class ArcboundSlith extends CardImpl {
|
||||||
|
|
||||||
public ArcboundSlith(UUID ownerId, CardSetInfo setInfo) {
|
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.subtype.add(SubType.SLITH);
|
||||||
this.power = new MageInt(0);
|
this.power = new MageInt(0);
|
||||||
this.toughness = new MageInt(0);
|
this.toughness = new MageInt(0);
|
||||||
|
|
||||||
// Whenever Arcbound Slith deals combat damage to a player, put a +1/+1 counter on it.
|
// 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
|
// Modular 1
|
||||||
this.addAbility(new ModularAbility(this, 1));
|
this.addAbility(new ModularAbility(this, 1));
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ package mage.cards.d;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.effects.OneShotEffect;
|
import mage.abilities.effects.OneShotEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
|
|
@ -47,14 +47,14 @@ import mage.players.Player;
|
||||||
public class DivinerSpirit extends CardImpl {
|
public class DivinerSpirit extends CardImpl {
|
||||||
|
|
||||||
public DivinerSpirit(UUID ownerId, CardSetInfo setInfo) {
|
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.subtype.add(SubType.SPIRIT);
|
||||||
|
|
||||||
this.power = new MageInt(2);
|
this.power = new MageInt(2);
|
||||||
this.toughness = new MageInt(4);
|
this.toughness = new MageInt(4);
|
||||||
|
|
||||||
// Whenever Diviner Spirit deals combat damage to a player, you and that player each draw that many cards.
|
// 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) {
|
public DivinerSpirit(final DivinerSpirit card) {
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ package mage.cards.g;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||||
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||||
import mage.abilities.effects.common.UnlessPaysDelayedEffect;
|
import mage.abilities.effects.common.UnlessPaysDelayedEffect;
|
||||||
|
|
@ -46,13 +46,13 @@ import mage.constants.PhaseStep;
|
||||||
public class GlassAsp extends CardImpl {
|
public class GlassAsp extends CardImpl {
|
||||||
|
|
||||||
public GlassAsp(UUID ownerId, CardSetInfo setInfo) {
|
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.subtype.add(SubType.SNAKE);
|
||||||
this.power = new MageInt(2);
|
this.power = new MageInt(2);
|
||||||
this.toughness = new MageInt(1);
|
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.
|
// 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(
|
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new UnlessPaysDelayedEffect(
|
||||||
new ManaCostsImpl("{2}"), new LoseLifeTargetEffect(2), PhaseStep.DRAW, true,
|
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."),
|
"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));
|
false, true));
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.common.SimpleStaticAbility;
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
import mage.abilities.effects.AsThoughEffectImpl;
|
import mage.abilities.effects.AsThoughEffectImpl;
|
||||||
import mage.abilities.effects.OneShotEffect;
|
import mage.abilities.effects.OneShotEffect;
|
||||||
|
|
@ -70,7 +70,7 @@ public class KheruMindEater extends CardImpl {
|
||||||
this.addAbility(new MenaceAbility());
|
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.
|
// 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.
|
// You may look at and play cards exiled with Kheru Mind-Eater.
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new KheruMindEaterEffect()));
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new KheruMindEaterEffect()));
|
||||||
|
|
|
||||||
|
|
@ -24,14 +24,14 @@
|
||||||
* The views and conclusions contained in the software and documentation are those of the
|
* 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
|
* authors and should not be interpreted as representing official policies, either expressed
|
||||||
* or implied, of BetaSteward_at_googlemail.com.
|
* or implied, of BetaSteward_at_googlemail.com.
|
||||||
*/
|
*/
|
||||||
package mage.cards.n;
|
package mage.cards.n;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.common.SimpleStaticAbility;
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
import mage.abilities.effects.AsThoughEffectImpl;
|
import mage.abilities.effects.AsThoughEffectImpl;
|
||||||
import mage.abilities.effects.OneShotEffect;
|
import mage.abilities.effects.OneShotEffect;
|
||||||
|
|
@ -51,23 +51,23 @@ import mage.players.Player;
|
||||||
import mage.util.CardUtil;
|
import mage.util.CardUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FAQ
|
* FAQ
|
||||||
*
|
*
|
||||||
* The card is exiled face up. All players may look at it.
|
* The card is exiled face up. All players may look at it. Playing a card exiled
|
||||||
* Playing a card exiled with Nightveil Specter follows all the normal rules for
|
* with Nightveil Specter follows all the normal rules for playing that card.
|
||||||
* playing that card. You must pay its costs, and you must follow all timing
|
* You must pay its costs, and you must follow all timing restrictions, for
|
||||||
* restrictions, for example.
|
* example.
|
||||||
*
|
*
|
||||||
* Nightveil Specter's last ability applies to cards exiled with that specific
|
* Nightveil Specter's last ability applies to cards exiled with that specific
|
||||||
* Nightveil Specter, not any other creature named Nightveil Specter. You should
|
* Nightveil Specter, not any other creature named Nightveil Specter. You should
|
||||||
* keep cards exiled by different Nightveil Specters separate.
|
* keep cards exiled by different Nightveil Specters separate.
|
||||||
*
|
*
|
||||||
* @author LevelX2
|
* @author LevelX2
|
||||||
*/
|
*/
|
||||||
public class NightveilSpecter extends CardImpl {
|
public class NightveilSpecter extends CardImpl {
|
||||||
|
|
||||||
public NightveilSpecter(UUID ownerId, CardSetInfo setInfo) {
|
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.subtype.add(SubType.SPECTER);
|
||||||
|
|
||||||
this.power = new MageInt(2);
|
this.power = new MageInt(2);
|
||||||
|
|
@ -77,7 +77,7 @@ public class NightveilSpecter extends CardImpl {
|
||||||
this.addAbility(FlyingAbility.getInstance());
|
this.addAbility(FlyingAbility.getInstance());
|
||||||
|
|
||||||
// Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of his or her library.
|
// 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.
|
// You may play cards exiled with Nightveil Specter.
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NightveilSpecterEffect()));
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NightveilSpecterEffect()));
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.common.AttacksTriggeredAbility;
|
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.HalfValue;
|
||||||
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
||||||
import mage.abilities.dynamicvalue.common.PermanentsTargetOpponentControlsCount;
|
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.
|
// 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 = 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");
|
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);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ package mage.cards.r;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.abilities.common.DealsDamageToAPlayerTriggeredAbility;
|
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||||
import mage.abilities.effects.common.ExileCardsFromTopOfLibraryTargetEffect;
|
import mage.abilities.effects.common.ExileCardsFromTopOfLibraryTargetEffect;
|
||||||
import mage.abilities.keyword.MorphAbility;
|
import mage.abilities.keyword.MorphAbility;
|
||||||
|
|
@ -53,7 +53,7 @@ public class RavenGuildMaster extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
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.
|
// 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}
|
// Morph {2}{U}{U}
|
||||||
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{U}{U}")));
|
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{U}{U}")));
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue