mirror of
https://github.com/magefree/mage.git
synced 2025-12-21 02:52:02 -08:00
StaticFilters.FILTER_SPELL_AN_ENCHANTMENT
This commit is contained in:
parent
c60bf037a4
commit
2ec4401cee
17 changed files with 34 additions and 137 deletions
|
|
@ -8,7 +8,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
@ -17,12 +17,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class ArgothianEnchantress extends CardImpl {
|
public final class ArgothianEnchantress extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an Enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public ArgothianEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
public ArgothianEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
|
||||||
this.subtype.add(SubType.HUMAN);
|
this.subtype.add(SubType.HUMAN);
|
||||||
|
|
@ -35,7 +29,7 @@ public final class ArgothianEnchantress extends CardImpl {
|
||||||
this.addAbility(ShroudAbility.getInstance());
|
this.addAbility(ShroudAbility.getInstance());
|
||||||
|
|
||||||
// Whenever you cast an Enchantment spell, you draw a card.
|
// Whenever you cast an Enchantment spell, you draw a card.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1, "you"), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1, "you"), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private ArgothianEnchantress(final ArgothianEnchantress card) {
|
private ArgothianEnchantress(final ArgothianEnchantress card) {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.b;
|
package mage.cards.b;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -11,18 +10,13 @@ import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.counters.CounterType;
|
import mage.counters.CounterType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author fireshoes
|
* @author fireshoes
|
||||||
*/
|
*/
|
||||||
public final class BlessedSpirits extends CardImpl {
|
public final class BlessedSpirits extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public BlessedSpirits(UUID ownerId, CardSetInfo setInfo) {
|
public BlessedSpirits(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{W}");
|
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{W}");
|
||||||
|
|
@ -34,7 +28,7 @@ public final class BlessedSpirits extends CardImpl {
|
||||||
this.addAbility(FlyingAbility.getInstance());
|
this.addAbility(FlyingAbility.getInstance());
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, put a +1/+1 counter on Blessed Spirits.
|
// Whenever you cast an enchantment spell, put a +1/+1 counter on Blessed Spirits.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private BlessedSpirits(final BlessedSpirits card) {
|
private BlessedSpirits(final BlessedSpirits card) {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.b;
|
package mage.cards.b;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -12,7 +11,7 @@ import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.Duration;
|
import mage.constants.Duration;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.target.common.TargetCreaturePermanent;
|
import mage.target.common.TargetCreaturePermanent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -21,11 +20,6 @@ import mage.target.common.TargetCreaturePermanent;
|
||||||
*/
|
*/
|
||||||
public final class Blightcaster extends CardImpl {
|
public final class Blightcaster extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public Blightcaster(UUID ownerId, CardSetInfo setInfo) {
|
public Blightcaster(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}");
|
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}");
|
||||||
this.subtype.add(SubType.HUMAN, SubType.WIZARD);
|
this.subtype.add(SubType.HUMAN, SubType.WIZARD);
|
||||||
|
|
@ -35,7 +29,7 @@ public final class Blightcaster extends CardImpl {
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, you may have target creature get -2/-2 until end of turn.
|
// Whenever you cast an enchantment spell, you may have target creature get -2/-2 until end of turn.
|
||||||
Effect effect = new BoostTargetEffect(-2,-2, Duration.EndOfTurn);
|
Effect effect = new BoostTargetEffect(-2,-2, Duration.EndOfTurn);
|
||||||
Ability ability = new SpellCastControllerTriggeredAbility(effect, filter, true);
|
Ability ability = new SpellCastControllerTriggeredAbility(effect, StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, true);
|
||||||
ability.addTarget(new TargetCreaturePermanent());
|
ability.addTarget(new TargetCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.counters.CounterType;
|
import mage.counters.CounterType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -20,10 +20,6 @@ import mage.filter.common.FilterControlledCreaturePermanent;
|
||||||
*/
|
*/
|
||||||
public final class CelestialAncient extends CardImpl {
|
public final class CelestialAncient extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
public CelestialAncient(UUID ownerId, CardSetInfo setInfo) {
|
public CelestialAncient(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W}{W}");
|
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W}{W}");
|
||||||
this.subtype.add(SubType.ELEMENTAL);
|
this.subtype.add(SubType.ELEMENTAL);
|
||||||
|
|
@ -35,7 +31,8 @@ public final class CelestialAncient extends CardImpl {
|
||||||
this.addAbility(FlyingAbility.getInstance());
|
this.addAbility(FlyingAbility.getInstance());
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, put a +1/+1 counter on each creature you control.
|
// Whenever you cast an enchantment spell, put a +1/+1 counter on each creature you control.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()),filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(),
|
||||||
|
new FilterControlledCreaturePermanent()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private CelestialAncient(final CelestialAncient card) {
|
private CelestialAncient(final CelestialAncient card) {
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
@ -16,12 +16,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class DawnhartGeist extends CardImpl {
|
public final class DawnhartGeist extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public DawnhartGeist(UUID ownerId, CardSetInfo setInfo) {
|
public DawnhartGeist(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}");
|
||||||
|
|
||||||
|
|
@ -31,7 +25,7 @@ public final class DawnhartGeist extends CardImpl {
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, you gain 2 life.
|
// Whenever you cast an enchantment spell, you gain 2 life.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new GainLifeEffect(2), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new GainLifeEffect(2), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private DawnhartGeist(final DawnhartGeist card) {
|
private DawnhartGeist(final DawnhartGeist card) {
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.*;
|
import mage.constants.*;
|
||||||
import mage.counters.CounterType;
|
import mage.counters.CounterType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.game.permanent.token.DaxosSpiritToken;
|
import mage.game.permanent.token.DaxosSpiritToken;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -20,12 +20,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class DaxosTheReturned extends CardImpl {
|
public final class DaxosTheReturned extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public DaxosTheReturned(UUID ownerId, CardSetInfo setInfo) {
|
public DaxosTheReturned(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{B}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{B}");
|
||||||
this.supertype.add(SuperType.LEGENDARY);
|
this.supertype.add(SuperType.LEGENDARY);
|
||||||
|
|
@ -37,7 +31,7 @@ public final class DaxosTheReturned extends CardImpl {
|
||||||
// Whenever you cast an enchantment spell, you get an experience counter.
|
// Whenever you cast an enchantment spell, you get an experience counter.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersPlayersEffect(
|
this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersPlayersEffect(
|
||||||
CounterType.EXPERIENCE.createInstance(), TargetController.YOU
|
CounterType.EXPERIENCE.createInstance(), TargetController.YOU
|
||||||
), filter, false));
|
), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
|
|
||||||
// {1}{W}{B}: Create a white and black Spirit enchantment creature token. It has
|
// {1}{W}{B}: Create a white and black Spirit enchantment creature token. It has
|
||||||
// "This creature's power and toughness are each equal to the number of experience counters you have."
|
// "This creature's power and toughness are each equal to the number of experience counters you have."
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.e;
|
package mage.cards.e;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -7,7 +6,7 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -15,19 +14,12 @@ import mage.filter.FilterSpell;
|
||||||
*/
|
*/
|
||||||
public final class EnchantresssPresence extends CardImpl {
|
public final class EnchantresssPresence extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public EnchantresssPresence(UUID ownerId, CardSetInfo setInfo) {
|
public EnchantresssPresence(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}");
|
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}");
|
||||||
|
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, draw a card.
|
// Whenever you cast an enchantment spell, draw a card.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private EnchantresssPresence(final EnchantresssPresence card) {
|
private EnchantresssPresence(final EnchantresssPresence card) {
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.counters.CounterType;
|
import mage.counters.CounterType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.target.common.TargetCreaturePermanent;
|
import mage.target.common.TargetCreaturePermanent;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -19,12 +19,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class GenerousVisitor extends CardImpl {
|
public final class GenerousVisitor extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public GenerousVisitor(UUID ownerId, CardSetInfo setInfo) {
|
public GenerousVisitor(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{G}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{G}");
|
||||||
|
|
||||||
|
|
@ -34,7 +28,7 @@ public final class GenerousVisitor extends CardImpl {
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, put a +1/+1 counter on target creature.
|
// Whenever you cast an enchantment spell, put a +1/+1 counter on target creature.
|
||||||
Ability ability = new SpellCastControllerTriggeredAbility(
|
Ability ability = new SpellCastControllerTriggeredAbility(
|
||||||
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), filter, false
|
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false
|
||||||
);
|
);
|
||||||
ability.addTarget(new TargetCreaturePermanent());
|
ability.addTarget(new TargetCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,6 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.Duration;
|
import mage.constants.Duration;
|
||||||
import mage.filter.FilterSpell;
|
|
||||||
import mage.filter.StaticFilters;
|
import mage.filter.StaticFilters;
|
||||||
import mage.game.Game;
|
import mage.game.Game;
|
||||||
import mage.game.permanent.Permanent;
|
import mage.game.permanent.Permanent;
|
||||||
|
|
@ -28,12 +27,6 @@ import mage.game.permanent.token.SpiritClericToken;
|
||||||
*/
|
*/
|
||||||
public final class HallowedHaunting extends CardImpl {
|
public final class HallowedHaunting extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public HallowedHaunting(UUID ownerId, CardSetInfo setInfo) {
|
public HallowedHaunting(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}{W}");
|
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}{W}");
|
||||||
|
|
||||||
|
|
@ -45,7 +38,7 @@ public final class HallowedHaunting extends CardImpl {
|
||||||
)));
|
)));
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, create a white Spirit Cleric creature token with "This creature's power and toughness are each equal to the number of Spirits you control."
|
// Whenever you cast an enchantment spell, create a white Spirit Cleric creature token with "This creature's power and toughness are each equal to the number of Spirits you control."
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new SpiritClericToken()), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new SpiritClericToken()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private HallowedHaunting(final HallowedHaunting card) {
|
private HallowedHaunting(final HallowedHaunting card) {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.h;
|
package mage.cards.h;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -13,7 +12,7 @@ import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.constants.Zone;
|
import mage.constants.Zone;
|
||||||
import mage.filter.FilterCard;
|
import mage.filter.FilterCard;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -22,11 +21,9 @@ import mage.filter.FilterSpell;
|
||||||
public final class HeraldOfThePantheon extends CardImpl {
|
public final class HeraldOfThePantheon extends CardImpl {
|
||||||
|
|
||||||
private static final FilterCard filter = new FilterCard("Enchantment spells");
|
private static final FilterCard filter = new FilterCard("Enchantment spells");
|
||||||
private static final FilterSpell filter2 = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
static {
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
filter.add(CardType.ENCHANTMENT.getPredicate());
|
||||||
filter2.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public HeraldOfThePantheon(UUID ownerId, CardSetInfo setInfo) {
|
public HeraldOfThePantheon(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
|
@ -40,7 +37,7 @@ public final class HeraldOfThePantheon extends CardImpl {
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, you gain 1 life.
|
// Whenever you cast an enchantment spell, you gain 1 life.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new GainLifeEffect(1), filter2, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new GainLifeEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private HeraldOfThePantheon(final HeraldOfThePantheon card) {
|
private HeraldOfThePantheon(final HeraldOfThePantheon card) {
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.*;
|
import mage.constants.*;
|
||||||
import mage.counters.CounterType;
|
import mage.counters.CounterType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.game.Game;
|
import mage.game.Game;
|
||||||
import mage.game.events.GameEvent;
|
import mage.game.events.GameEvent;
|
||||||
import mage.game.events.ZoneChangeEvent;
|
import mage.game.events.ZoneChangeEvent;
|
||||||
|
|
@ -29,12 +29,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class KamiOfTransience extends CardImpl {
|
public final class KamiOfTransience extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public KamiOfTransience(UUID ownerId, CardSetInfo setInfo) {
|
public KamiOfTransience(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
|
||||||
|
|
||||||
|
|
@ -47,7 +41,7 @@ public final class KamiOfTransience extends CardImpl {
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, put a +1/+1 counter on Kami of Transience.
|
// Whenever you cast an enchantment spell, put a +1/+1 counter on Kami of Transience.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(
|
this.addAbility(new SpellCastControllerTriggeredAbility(
|
||||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance()), filter, false
|
new AddCountersSourceEffect(CounterType.P1P1.createInstance()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false
|
||||||
));
|
));
|
||||||
|
|
||||||
// At the beginning of each end step, if an enchantment was put into your graveyard from the battlefield this turn, you may return Kami of Transience from your graveyard to your hand.
|
// At the beginning of each end step, if an enchantment was put into your graveyard from the battlefield this turn, you may return Kami of Transience from your graveyard to your hand.
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.m;
|
package mage.cards.m;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -9,7 +8,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -17,12 +16,6 @@ import mage.filter.FilterSpell;
|
||||||
*/
|
*/
|
||||||
public final class MesaEnchantress extends CardImpl {
|
public final class MesaEnchantress extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public MesaEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
public MesaEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}{W}");
|
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}{W}");
|
||||||
this.subtype.add(SubType.HUMAN);
|
this.subtype.add(SubType.HUMAN);
|
||||||
|
|
@ -31,7 +24,7 @@ public final class MesaEnchantress extends CardImpl {
|
||||||
this.power = new MageInt(0);
|
this.power = new MageInt(0);
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), filter, true));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
private MesaEnchantress(final MesaEnchantress card) {
|
private MesaEnchantress(final MesaEnchantress card) {
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ import mage.constants.SubType;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -16,12 +16,6 @@ import mage.filter.FilterSpell;
|
||||||
*/
|
*/
|
||||||
public final class SatyrEnchanter extends CardImpl {
|
public final class SatyrEnchanter extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public SatyrEnchanter(UUID ownerId, CardSetInfo setInfo) {
|
public SatyrEnchanter(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}{W}");
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}{W}");
|
||||||
|
|
||||||
|
|
@ -32,7 +26,7 @@ public final class SatyrEnchanter extends CardImpl {
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, draw a card.
|
// Whenever you cast an enchantment spell, draw a card.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(
|
this.addAbility(new SpellCastControllerTriggeredAbility(
|
||||||
new DrawCardSourceControllerEffect(1), filter, false
|
new DrawCardSourceControllerEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
|
|
||||||
|
|
||||||
package mage.cards.s;
|
package mage.cards.s;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
@ -8,7 +6,7 @@ import mage.abilities.effects.common.CreateTokenEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.game.permanent.token.AngelToken;
|
import mage.game.permanent.token.AngelToken;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -17,17 +15,11 @@ import mage.game.permanent.token.AngelToken;
|
||||||
*/
|
*/
|
||||||
public final class SigilOfTheEmptyThrone extends CardImpl {
|
public final class SigilOfTheEmptyThrone extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public SigilOfTheEmptyThrone(UUID ownerId, CardSetInfo setInfo) {
|
public SigilOfTheEmptyThrone(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{W}{W}");
|
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{W}{W}");
|
||||||
|
|
||||||
|
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new AngelToken()), filter, false));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new AngelToken()), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
private SigilOfTheEmptyThrone(final SigilOfTheEmptyThrone card) {
|
private SigilOfTheEmptyThrone(final SigilOfTheEmptyThrone card) {
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.constants.SuperType;
|
import mage.constants.SuperType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
@ -19,12 +19,6 @@ import java.util.UUID;
|
||||||
*/
|
*/
|
||||||
public final class SythisHarvestsHand extends CardImpl {
|
public final class SythisHarvestsHand extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public SythisHarvestsHand(UUID ownerId, CardSetInfo setInfo) {
|
public SythisHarvestsHand(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{G}{W}");
|
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{G}{W}");
|
||||||
|
|
||||||
|
|
@ -34,7 +28,7 @@ public final class SythisHarvestsHand extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, you gain 1 life and draw a card.
|
// Whenever you cast an enchantment spell, you gain 1 life and draw a card.
|
||||||
Ability ability = new SpellCastControllerTriggeredAbility(new GainLifeEffect(1), filter, false);
|
Ability ability = new SpellCastControllerTriggeredAbility(new GainLifeEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false);
|
||||||
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy("and"));
|
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy("and"));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ import mage.abilities.effects.common.continuous.BoostSourceEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.*;
|
import mage.constants.*;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
import mage.filter.common.FilterEnchantmentPermanent;
|
import mage.filter.common.FilterEnchantmentPermanent;
|
||||||
import mage.game.Game;
|
import mage.game.Game;
|
||||||
import mage.game.events.GameEvent;
|
import mage.game.events.GameEvent;
|
||||||
|
|
@ -69,15 +69,9 @@ public final class TuvasaTheSunlit extends CardImpl {
|
||||||
|
|
||||||
class TuvasaTheSunlitTriggeredAbility extends SpellCastControllerTriggeredAbility {
|
class TuvasaTheSunlitTriggeredAbility extends SpellCastControllerTriggeredAbility {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public TuvasaTheSunlitTriggeredAbility() {
|
public TuvasaTheSunlitTriggeredAbility() {
|
||||||
super(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1),
|
super(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1),
|
||||||
filter, false, SetTargetPointer.SPELL);
|
StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, false, SetTargetPointer.SPELL);
|
||||||
}
|
}
|
||||||
|
|
||||||
public TuvasaTheSunlitTriggeredAbility(final TuvasaTheSunlitTriggeredAbility ability) {
|
public TuvasaTheSunlitTriggeredAbility(final TuvasaTheSunlitTriggeredAbility ability) {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.v;
|
package mage.cards.v;
|
||||||
|
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
|
|
@ -8,7 +7,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.StaticFilters;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
@ -17,12 +16,6 @@ import java.util.UUID;
|
||||||
* @author Plopman
|
* @author Plopman
|
||||||
*/
|
*/
|
||||||
public final class VerduranEnchantress extends CardImpl {
|
public final class VerduranEnchantress extends CardImpl {
|
||||||
|
|
||||||
private static final FilterSpell filter = new FilterSpell("an enchantment spell");
|
|
||||||
|
|
||||||
static {
|
|
||||||
filter.add(CardType.ENCHANTMENT.getPredicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
public VerduranEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
public VerduranEnchantress(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}");
|
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}");
|
||||||
|
|
@ -33,7 +26,7 @@ public final class VerduranEnchantress extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// Whenever you cast an enchantment spell, you may draw a card.
|
// Whenever you cast an enchantment spell, you may draw a card.
|
||||||
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), filter, true));
|
this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), StaticFilters.FILTER_SPELL_AN_ENCHANTMENT, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
private VerduranEnchantress(final VerduranEnchantress card) {
|
private VerduranEnchantress(final VerduranEnchantress card) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue