finish rewriting subtypepredicate

This commit is contained in:
igoudt 2017-05-20 22:41:04 +02:00
parent 8ab4f5b454
commit 6d83a4a65f
342 changed files with 736 additions and 634 deletions

View file

@ -34,6 +34,7 @@ import mage.abilities.effects.OneShotEffect;
import mage.cards.*;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.common.FilterControlledPermanent;
@ -104,7 +105,7 @@ class BalaGedThiefEffect extends OneShotEffect {
Player you = game.getPlayer(source.getControllerId());
FilterControlledPermanent filter = new FilterControlledPermanent();
filter.add(new SubtypePredicate("Ally"));
filter.add(new SubtypePredicate(SubType.ALLY));
int numberOfAllies = game.getBattlefield().countAll(filter, you.getId(), game);

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.ColorPredicate;
@ -77,7 +78,7 @@ class BalefulStareEffect extends OneShotEffect {
private static final FilterCard filter = new FilterCard("Mountain or red card");
static {
filter.add(Predicates.or(new SubtypePredicate("Mountain"),
filter.add(Predicates.or(new SubtypePredicate(SubType.MOUNTAIN),
new ColorPredicate(ObjectColor.RED)));
}

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -53,7 +54,7 @@ public class BasalSliver extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("All Slivers");
static {
filter.add(new SubtypePredicate("Sliver"));
filter.add(new SubtypePredicate(SubType.SLIVER));
}
public BasalSliver(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class BatteringSliver extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("all Sliver creatures");
static {
filter.add(new SubtypePredicate("Sliver"));
filter.add(new SubtypePredicate(SubType.SLIVER));
}
public BatteringSliver(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.FilterSpell;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,8 +51,8 @@ public class BattlewandOak extends CardImpl {
private static final FilterPermanent filterForest = new FilterPermanent("a Forest");
private static final FilterSpell filterTreefolk = new FilterSpell("a Treefolk spell");
static {
filterForest.add(new SubtypePredicate("Forest"));
filterTreefolk.add(new SubtypePredicate("Treefolk"));
filterForest.add(new SubtypePredicate(SubType.FOREST));
filterTreefolk.add(new SubtypePredicate(SubType.TREEFOLK));
}
public BattlewandOak(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.ShuffleSpellEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.permanent.token.InsectToken;
@ -48,7 +49,7 @@ public class BeaconOfCreation extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Forest you control");
static {
filter.add(new SubtypePredicate("Forest"));
filter.add(new SubtypePredicate(SubType.FOREST));
}
public BeaconOfCreation(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,10 +34,7 @@ import mage.abilities.effects.common.continuous.GainAbilityAllEffect;
import mage.abilities.keyword.MenaceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
@ -54,7 +51,7 @@ public class BelligerentSliver extends CardImpl {
static {
filter.add(new ControllerPredicate(TargetController.YOU));
filter.add(new SubtypePredicate("Sliver"));
filter.add(new SubtypePredicate(SubType.SLIVER));
}
public BelligerentSliver(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.filter.common.FilterLandPermanent;
@ -57,7 +58,7 @@ public class BenBenAkkiHermit extends CardImpl {
static {
filter.add(Predicates.not(new TappedPredicate()));
filter.add(new SubtypePredicate("Mountain"));
filter.add(new SubtypePredicate(SubType.MOUNTAIN));
}
public BenBenAkkiHermit (UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,6 +40,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
@ -60,7 +61,7 @@ public class Benthicore extends CardImpl {
static {
filter.add(Predicates.not(new TappedPredicate()));
filter.add(new SubtypePredicate("Merfolk"));
filter.add(new SubtypePredicate(SubType.MERFOLK));
}
public Benthicore(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class BerserkMurlodont extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a Beast");
static {
filter.add(new SubtypePredicate("Beast"));
filter.add(new SubtypePredicate(SubType.BEAST));
}
public BerserkMurlodont(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ 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.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -53,7 +54,7 @@ public class BlasterMage extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Wall");
static {
filter.add(new SubtypePredicate("Wall"));
filter.add(new SubtypePredicate(SubType.WALL));
}
public BlasterMage(UUID ownerId, CardSetInfo setInfo) {

View file

@ -39,6 +39,7 @@ import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -58,7 +59,7 @@ public class BloodChinFanatic extends CardImpl {
static {
filter.add(new AnotherPredicate());
filter.add(new SubtypePredicate("Warrior"));
filter.add(new SubtypePredicate(SubType.WARRIOR));
}
public BloodChinFanatic(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.filter.FilterCard;
@ -56,8 +57,8 @@ public class BloodSpeaker extends CardImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a Demon under your control");
private static final FilterCard filterCard = new FilterCard("Demon card");
static {
filter.add(new SubtypePredicate("Demon"));
filterCard.add(new SubtypePredicate("Demon"));
filter.add(new SubtypePredicate(SubType.DEMON));
filterCard.add(new SubtypePredicate(SubType.DEMON));
}
public BloodSpeaker (UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -59,7 +60,7 @@ public class BloodTribute extends CardImpl {
static {
filter.add(Predicates.not(new TappedPredicate()));
filter.add(new SubtypePredicate("Vampire"));
filter.add(new SubtypePredicate(SubType.VAMPIRE));
}
public BloodTribute(UUID ownerId, CardSetInfo setInfo) {

View file

@ -108,7 +108,7 @@ class BludgeonBrawlAddSubtypeEffect extends ContinuousEffectImpl {
public boolean apply(Game game, Ability source) {
FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature, non-Equipment artifact");
filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE)));
filter.add(Predicates.not(new SubtypePredicate("Equipment")));
filter.add(Predicates.not(new SubtypePredicate(SubType.EQUIPMENT)));
Cards affectedPermanents = new CardsImpl();
List<Permanent> permanents = game.getBattlefield().getActivePermanents(filter, source.getControllerId(), game);

View file

@ -36,6 +36,7 @@ import mage.abilities.keyword.SwampwalkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterSpell;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class BogStriderAsh extends CardImpl {
private static final FilterSpell filter = new FilterSpell("a Goblin spell");
static {
filter.add(new SubtypePredicate("Goblin"));
filter.add(new SubtypePredicate(SubType.GOBLIN));
}
public BogStriderAsh(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.abilities.keyword.MorphAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -52,7 +53,7 @@ public class Boneknitter extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Zombie");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public Boneknitter(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
@ -50,8 +51,8 @@ public class BoskBanneret extends CardImpl {
static {
filter.add(Predicates.or(
new SubtypePredicate("Treefolk"),
new SubtypePredicate("Shaman")));
new SubtypePredicate(SubType.TREEFOLK),
new SubtypePredicate(SubType.SHAMAN)));
}
public BoskBanneret(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.common.FilterCreaturePermanent;
@ -58,7 +59,7 @@ public class Brawn extends CardImpl {
static {
filter.add(new CardTypePredicate(CardType.LAND));
filter.add(new SubtypePredicate("Forest"));
filter.add(new SubtypePredicate(SubType.FOREST));
}
public Brawn(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.abilities.keyword.ReinforceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
@ -52,8 +53,8 @@ public class BrighthearthBanneret extends CardImpl {
static {
filter.add(Predicates.or(
new SubtypePredicate("Elemental"),
new SubtypePredicate("Warrior")));
new SubtypePredicate(SubType.ELEMENTAL),
new SubtypePredicate(SubType.WARRIOR)));
}
public BrighthearthBanneret(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.DynamicManaEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -47,7 +48,7 @@ public class BrightstoneRitual extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Goblin on the battlefield");
static {
filter.add(new SubtypePredicate("Goblin"));
filter.add(new SubtypePredicate(SubType.GOBLIN));
}
public BrightstoneRitual(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game;
@ -82,8 +83,8 @@ class BroodBirthingEffect extends OneShotEffect {
@Override
public boolean apply(Game game, Ability source) {
FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Eldrazi Spawn");
filter.add(new SubtypePredicate("Eldrazi"));
filter.add(new SubtypePredicate("Spawn"));
filter.add(new SubtypePredicate(SubType.ELDRAZI));
filter.add(new SubtypePredicate(SubType.SPAWN));
EldraziSpawnToken token = new EldraziSpawnToken();
int count = game.getBattlefield().countAll(filter, source.getControllerId(), game) > 0 ? 3 : 1;

View file

@ -109,7 +109,7 @@ class BrunaLightOfAlabasterEffect extends OneShotEffect {
filterAura.add(new SubtypePredicate(SubType.AURA));
filterAura.add(new AuraPermanentCanAttachToPermanentId(bruna));
filterAuraCard.add(new CardTypePredicate(CardType.ENCHANTMENT));
filterAuraCard.add(new SubtypePredicate("Aura"));
filterAuraCard.add(new SubtypePredicate(SubType.AURA));
filterAuraCard.add(new AuraCardCanAttachToPermanentId(bruna));
if (player == null) {

View file

@ -38,6 +38,7 @@ import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -55,7 +56,7 @@ public class CabalArchon extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("a Cleric");
static {
filter.add(new SubtypePredicate("Cleric"));
filter.add(new SubtypePredicate(SubType.CLERIC));
}
public CabalArchon(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterPermanentCard;
import mage.filter.predicate.mageobject.ConvertedManaCostPredicate;
@ -54,7 +55,7 @@ public class CateranKidnappers extends CardImpl {
private static final FilterPermanentCard filter = new FilterPermanentCard("Mercenary permanent card with converted mana cost 3 or less");
static {
filter.add(new SubtypePredicate("Mercenary"));
filter.add(new SubtypePredicate(SubType.MERCENARY));
filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4));
}

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -77,7 +78,7 @@ class CeaselessSearbladesTriggeredAbility extends TriggeredAbilityImpl {
private static final FilterCard filter = new FilterCard("an Elemental");
static {
filter.add(new SubtypePredicate("Elemental"));
filter.add(new SubtypePredicate(SubType.ELEMENTAL));
}
CeaselessSearbladesTriggeredAbility() {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterControlledCreaturePermanent;
@ -49,7 +50,7 @@ public class ChampionOfTheParish extends CardImpl {
private static final FilterPermanent filter = new FilterControlledCreaturePermanent("another Human");
static {
filter.add(new SubtypePredicate("Human"));
filter.add(new SubtypePredicate(SubType.HUMAN));
filter.add(new AnotherPredicate());
}

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.TargetPermanent;
@ -52,7 +53,7 @@ public class ChaosCharm extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Wall");
static {
filter.add(new SubtypePredicate("Wall"));
filter.add(new SubtypePredicate(SubType.WALL));
}
public ChaosCharm(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.abilities.keyword.MonstrosityAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.TargetController;
import mage.counters.CounterType;
@ -65,7 +66,7 @@ public class ChiefChirpa extends CardImpl {
diedFilter.add(new ColorPredicate(ObjectColor.GREEN));
diedFilter.add(new ControllerPredicate(TargetController.YOU));
ewokFilter.add(new SubtypePredicate("Ewok"));
ewokFilter.add(new SubtypePredicate(SubType.EWOK));
ewokFilter.add(new AnotherPredicate());
}

View file

@ -34,6 +34,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -49,7 +50,7 @@ public class ChiefOfTheScale extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Warrior creatures");
static {
filter.add(new SubtypePredicate("Warrior"));
filter.add(new SubtypePredicate(SubType.WARRIOR));
}
public ChiefOfTheScale(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,8 +52,8 @@ public class ChokedEstuary extends CardImpl {
private static final FilterCard filter = new FilterCard("an Island or Swamp card from your hand");
static {
filter.add(Predicates.or(new SubtypePredicate("Island"),
new SubtypePredicate("Swamp")));
filter.add(Predicates.or(new SubtypePredicate(SubType.ISLAND),
new SubtypePredicate(SubType.SWAMP)));
}
public ChokedEstuary(UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,6 +40,7 @@ import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +55,7 @@ public class ClifftopRetreat extends CardImpl {
private static final FilterLandPermanent filter = new FilterLandPermanent();
static {
filter.add(Predicates.or(new SubtypePredicate("Mountain"), new SubtypePredicate("Plains")));
filter.add(Predicates.or(new SubtypePredicate(SubType.MOUNTAIN), new SubtypePredicate(SubType.PLAINS)));
}
public ClifftopRetreat(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class ClotSliver extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Slivers");
static {
filter.add(new SubtypePredicate("Sliver"));
filter.add(new SubtypePredicate(SubType.SLIVER));
}
public ClotSliver(UUID ownerId, CardSetInfo setInfo) {

View file

@ -31,6 +31,7 @@ import mage.abilities.effects.common.WishEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -45,7 +46,7 @@ public class CoaxFromTheBlindEternities extends CardImpl {
private static final FilterCard filter = new FilterCard("an Eldrazi card");
static {
filter.add(new SubtypePredicate("Eldrazi"));
filter.add(new SubtypePredicate(SubType.ELDRAZI));
}
public CoaxFromTheBlindEternities(UUID ownerId, CardSetInfo setInfo) {

View file

@ -39,6 +39,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterPlaneswalkerPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -52,7 +53,7 @@ public class CompanionOfTheTrials extends CardImpl {
private static final FilterPlaneswalkerPermanent filter = new FilterPlaneswalkerPermanent("you control a Gideon planeswalker");
static {
filter.add(new SubtypePredicate("Gideon"));
filter.add(new SubtypePredicate(SubType.GIDEON));
}
public CompanionOfTheTrials(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,6 +34,7 @@ import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -48,7 +49,7 @@ public class CourageousOutrider extends CardImpl {
private static final FilterCard filter = new FilterCard("a Human card");
static {
filter.add(new SubtypePredicate("Human"));
filter.add(new SubtypePredicate(SubType.HUMAN));
}
public CourageousOutrider(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.abilities.effects.common.continuous.BoostSourceWhileControlsEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class CrimsonMuckwader extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Swamp");
static {
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
}
public CrimsonMuckwader(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterAttackingCreature;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -53,7 +54,7 @@ public class CrossroadsConsecrator extends CardImpl {
private final static FilterAttackingCreature filter = new FilterAttackingCreature("attacking Human");
static {
filter.add(new SubtypePredicate("Human"));
filter.add(new SubtypePredicate(SubType.HUMAN));
}
public CrossroadsConsecrator(UUID ownerId, CardSetInfo setInfo) {

View file

@ -31,10 +31,7 @@ import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
@ -50,7 +47,7 @@ public class CrucibleOfFire extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Dragon creatures");
static {
filter.add(new ControllerPredicate(TargetController.YOU));
filter.add(new SubtypePredicate("Dragon"));
filter.add(new SubtypePredicate(SubType.DRAGON));
}
public CrucibleOfFire(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.abilities.mana.TriggeredManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledLandPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -79,7 +80,7 @@ class CryptGhastTriggeredAbility extends TriggeredManaAbility {
private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("Swamp");
static {
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
}
public CryptGhastTriggeredAbility() {

View file

@ -33,10 +33,7 @@ import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect;
import mage.abilities.effects.common.TapAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +48,7 @@ public class CurseOfMaritLage extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Islands");
static {
filter.add(new SubtypePredicate("Island"));
filter.add(new SubtypePredicate(SubType.ISLAND));
}
public CurseOfMaritLage(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -72,7 +73,7 @@ class CutTheTethersEffect extends OneShotEffect {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Spirit creatures");
static {
filter.add(new SubtypePredicate("Spirit"));
filter.add(new SubtypePredicate(SubType.SPIRIT));
}
public CutTheTethersEffect() {

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class DakmorSorceress extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Swamps you control");
static {
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
}
public DakmorSorceress(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.GainLifeEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -49,7 +50,7 @@ public class DarkHeartOfTheWood extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Forest");
static {
filter.add(new SubtypePredicate("Forest"));
filter.add(new SubtypePredicate(SubType.FOREST));
}
public DarkHeartOfTheWood(UUID ownerId, CardSetInfo setInfo) {

View file

@ -68,7 +68,7 @@ public class DarkIntimations extends CardImpl {
static {
filter.add(new CardTypePredicate(CardType.PLANESWALKER));
filter.add(new SubtypePredicate("Bolas"));
filter.add(new SubtypePredicate(SubType.BOLAS));
}
public DarkIntimations(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game;
@ -86,7 +87,7 @@ class ZombiesControlledByTargetPlayerCount implements DynamicValue {
private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("Zombies");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
@Override

View file

@ -35,6 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.common.FilterCreaturePermanent;
@ -52,8 +53,8 @@ public class DaruWarchief extends CardImpl {
private static final FilterCreaturePermanent filterCreatures = new FilterCreaturePermanent("Soldier creatures");
static {
filter.add(new SubtypePredicate("Soldier"));
filterCreatures.add(new SubtypePredicate("Soldier"));
filter.add(new SubtypePredicate(SubType.SOLDIER));
filterCreatures.add(new SubtypePredicate(SubType.SOLDIER));
}
public DaruWarchief(UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,6 +40,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
@ -59,9 +60,9 @@ public class DauntlessDourbark extends CardImpl {
final static private FilterControlledPermanent filter2 = new FilterControlledPermanent();
static {
filter.add(Predicates.or(new SubtypePredicate("Forest"),
new SubtypePredicate("Treefolk")));
filter2.add(new SubtypePredicate("Treefolk"));
filter.add(Predicates.or(new SubtypePredicate(SubType.FOREST),
new SubtypePredicate(SubType.TREEFOLK)));
filter2.add(new SubtypePredicate(SubType.TREEFOLK));
filter2.add(new AnotherPredicate());
}

View file

@ -37,6 +37,7 @@ import mage.abilities.effects.common.continuous.BoostSourceWhileControlsEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -53,7 +54,7 @@ public class DauntlessRiverMarshal extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("an Island");
static {
filter.add(new SubtypePredicate("Island"));
filter.add(new SubtypePredicate(SubType.ISLAND));
}

View file

@ -35,6 +35,7 @@ import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
@ -53,8 +54,8 @@ public class DeathlessBehemoth extends CardImpl {
static {
filter.add(Predicates.and(
new SubtypePredicate("Eldrazi"),
new SubtypePredicate("Scion")));
new SubtypePredicate(SubType.ELDRAZI),
new SubtypePredicate(SubType.SCION)));
}
public DeathlessBehemoth(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,10 +38,7 @@ import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.counters.CounterType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -59,7 +56,7 @@ public class DeathsporeThallid extends CardImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Saproling");
static {
filter.add(new SubtypePredicate("Saproling"));
filter.add(new SubtypePredicate(SubType.SAPROLING));
}
public DeathsporeThallid(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,10 +38,7 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.NameACardEffect;
import mage.abilities.effects.common.continuous.GainAbilityAllEffect;
import mage.cards.*;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game;
@ -59,7 +56,7 @@ public class DementiaSliver extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("All Slivers");
static {
filter.add(new SubtypePredicate("Sliver"));
filter.add(new SubtypePredicate(SubType.SLIVER));
}
public DementiaSliver(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.abilities.effects.common.ExileTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterArtifactOrEnchantmentPermanent;
import mage.filter.common.FilterControlledPermanent;
@ -56,7 +57,7 @@ public class DevoutChaplain extends CardImpl {
static {
humanFilter.add(Predicates.not(new TappedPredicate()));
humanFilter.add(new SubtypePredicate("Human"));
humanFilter.add(new SubtypePredicate(SubType.HUMAN));
}
public DevoutChaplain(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -58,7 +59,7 @@ public class DiregrafCaptain extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Zombie");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public DiregrafCaptain(UUID ownerId, CardSetInfo setInfo) {
@ -91,7 +92,7 @@ class DiregrafCaptainTriggeredAbility extends TriggeredAbilityImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Zombie");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public DiregrafCaptainTriggeredAbility() {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.counters.CounterType;
import mage.filter.FilterSpell;
import mage.filter.common.FilterCreatureCard;
@ -57,7 +58,7 @@ public class DiregrafColossus extends CardImpl {
private static final FilterSpell filter = new FilterSpell("a Zombie spell");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public DiregrafColossus(UUID ownerId, CardSetInfo setInfo) {
@ -90,7 +91,7 @@ class DiregrafColossusEffect extends OneShotEffect {
private static final FilterCreatureCard filter = new FilterCreatureCard();
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public DiregrafColossusEffect() {

View file

@ -35,6 +35,7 @@ import mage.abilities.keyword.SoulbondAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreaturePermanent;
@ -52,7 +53,7 @@ public class DiregrafEscort extends CardImpl {
private static final FilterPermanent filter = new FilterCreaturePermanent("Zombies");
static {
filter.add(new SubtypePredicate("Zombie"));
filter.add(new SubtypePredicate(SubType.ZOMBIE));
}
public DiregrafEscort(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.AttachedToPredicate;
@ -91,7 +92,7 @@ public class Disarm extends CardImpl {
FilterPermanent equipmentFilter = new FilterPermanent();
equipmentFilter.add(new AttachedToPredicate(creatureFilter));
equipmentFilter.add(new SubtypePredicate("Equipment"));
equipmentFilter.add(new SubtypePredicate(SubType.EQUIPMENT));
for (Permanent equipment : game.getBattlefield().getAllActivePermanents(equipmentFilter, game)) {
creature.removeAttachment(equipment.getId(), game);

View file

@ -41,6 +41,7 @@ import mage.cards.CardSetInfo;
import mage.cards.f.FinalIteration;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.filter.FilterPermanent;
import mage.filter.FilterSpell;
@ -105,7 +106,7 @@ class DocentOfPerfectionEffect extends OneShotEffect {
private static final FilterPermanent filter = new FilterPermanent("Wizards");
static {
filter.add(new SubtypePredicate("Wizard"));
filter.add(new SubtypePredicate(SubType.WIZARD));
filter.add(new ControllerPredicate(TargetController.YOU));
}

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class DoubtlessOne extends CardImpl {
final static FilterPermanent filter = new FilterPermanent("Clerics on the battlefield");
static {
filter.add(new SubtypePredicate("Cleric"));
filter.add(new SubtypePredicate(SubType.CLERIC));
}
public DoubtlessOne(UUID ownerId, CardSetInfo setInfo) {

View file

@ -39,10 +39,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
@ -59,7 +56,7 @@ public class DragonloftIdol extends CardImpl {
static {
filter.add(new ControllerPredicate(TargetController.YOU));
filter.add(new SubtypePredicate("Dragon"));
filter.add(new SubtypePredicate(SubType.DRAGON));
}
public DragonloftIdol(UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,6 +40,7 @@ import mage.abilities.mana.RedManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -55,7 +56,7 @@ public class DragonskullSummit extends CardImpl {
private static final FilterLandPermanent filter = new FilterLandPermanent();
static {
filter.add(Predicates.or(new SubtypePredicate("Swamp"), new SubtypePredicate("Mountain")));
filter.add(Predicates.or(new SubtypePredicate(SubType.SWAMP), new SubtypePredicate(SubType.MOUNTAIN)));
}
public DragonskullSummit(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class DrogskolCaptain extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Spirit");
static {
filter.add(new SubtypePredicate("Spirit"));
filter.add(new SubtypePredicate(SubType.SPIRIT));
}
public DrogskolCaptain(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledLandPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class DromarsCavern extends CardImpl {
private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("non-Lair land");
static{
filter.add(Predicates.not(new SubtypePredicate("Lair")));
filter.add(Predicates.not(new SubtypePredicate(SubType.LAIR)));
}
public DromarsCavern(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.LAND},"");

View file

@ -40,6 +40,7 @@ import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -55,7 +56,7 @@ public class DrownedCatacomb extends CardImpl {
private static final FilterLandPermanent filter = new FilterLandPermanent();
static {
filter.add(Predicates.or(new SubtypePredicate("Swamp"), new SubtypePredicate("Island")));
filter.add(Predicates.or(new SubtypePredicate(SubType.SWAMP), new SubtypePredicate(SubType.ISLAND)));
}
public DrownedCatacomb(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class DungroveElder extends CardImpl {
final static FilterControlledPermanent filterLands = new FilterControlledPermanent("Forests you control");
static {
filterLands.add(new SubtypePredicate("Forest"));
filterLands.add(new SubtypePredicate(SubType.FOREST));
}
public DungroveElder (UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ 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.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -51,7 +52,7 @@ public class DwarvenDemolitionTeam extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Wall");
static{
filter.add(new SubtypePredicate("Wall"));
filter.add(new SubtypePredicate(SubType.WALL));
}
public DwarvenDemolitionTeam(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +55,7 @@ public class DwarvenPony extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Dwarf creature");
static {
filter.add(new SubtypePredicate("Dwarf"));
filter.add(new SubtypePredicate(SubType.DWARF));
}
public DwarvenPony(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.abilities.effects.common.CreateTokenEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.AnotherPredicate;
@ -54,7 +55,7 @@ public class DwynensElite extends CardImpl {
static {
filter.add(new AnotherPredicate());
filter.add(new SubtypePredicate("Elf"));
filter.add(new SubtypePredicate(SubType.ELF));
}
public DwynensElite(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ 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.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -53,7 +54,7 @@ public class Earthblighter extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Goblin");
static {
filter.add(new SubtypePredicate("Goblin"));
filter.add(new SubtypePredicate(SubType.GOBLIN));
}
public Earthblighter(UUID ownerId, CardSetInfo setInfo) {

View file

@ -56,7 +56,7 @@ public class EchoBaseCommando extends CardImpl {
private static final Filter filter = new FilterPermanent("Beasts");
static {
filter.add(new SubtypePredicate("Beast"));
filter.add(new SubtypePredicate(SubType.BEAST));
}
public EchoBaseCommando(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,6 +34,7 @@ import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -48,7 +49,7 @@ public class Edgewalker extends CardImpl {
private static final FilterCard filter = new FilterCard("Cleric spells");
static {
filter.add(new SubtypePredicate("Cleric"));
filter.add(new SubtypePredicate(SubType.CLERIC));
}
public Edgewalker(UUID ownerId, CardSetInfo setInfo) {

View file

@ -32,6 +32,7 @@ import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.common.TargetCardInLibrary;
@ -46,7 +47,7 @@ public class EerieProcession extends CardImpl {
private static final FilterCard filter = new FilterCard("Arcane card");
static {
filter.add(new SubtypePredicate("Arcane"));
filter.add(new SubtypePredicate(SubType.ARCANE));
}
public EerieProcession(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.abilities.effects.common.GainLifeEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class ElvishEulogist extends CardImpl {
private static final FilterCard filter = new FilterCard("Elf");
static {
filter.add(new SubtypePredicate("Elf"));
filter.add(new SubtypePredicate(SubType.ELF));
}
public ElvishEulogist(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
import mage.filter.FilterSpell;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -48,7 +49,7 @@ public class ElvishHandservant extends CardImpl {
private static final FilterSpell filter = new FilterSpell("Giant");
static {
filter.add(new SubtypePredicate("Giant"));
filter.add(new SubtypePredicate(SubType.GIANT));
}
public ElvishHandservant(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterEnchantmentPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +55,7 @@ public class EmeraldCharm extends CardImpl {
private static final FilterEnchantmentPermanent filter = new FilterEnchantmentPermanent("non-Aura enchantment");
static {
filter.add(Predicates.not(new SubtypePredicate("Aura")));
filter.add(Predicates.not(new SubtypePredicate(SubType.AURA)));
}
public EmeraldCharm(UUID ownerId, CardSetInfo setInfo) {

View file

@ -28,14 +28,11 @@
package mage.cards.e;
import mage.abilities.Ability;
import mage.constants.ComparisonType;
import mage.constants.*;
import mage.abilities.effects.OneShotEffect;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.common.FilterCreaturePermanent;
@ -77,7 +74,7 @@ class EngulfTheShoreEffect extends OneShotEffect {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("number of Islands you control");
static {
filter.add(new SubtypePredicate("Island"));
filter.add(new SubtypePredicate(SubType.ISLAND));
}
public EngulfTheShoreEffect() {

View file

@ -34,10 +34,7 @@ import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.ForestwalkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.PhaseStep;
import mage.constants.TargetController;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -55,7 +52,7 @@ public class ErhnamDjinn extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Wall creature an opponent controls");
static {
filter.add(Predicates.not(new SubtypePredicate("Wall")));
filter.add(Predicates.not(new SubtypePredicate(SubType.WALL)));
filter.add(new ControllerPredicate(TargetController.OPPONENT));
}

View file

@ -37,6 +37,7 @@ import mage.abilities.mana.SimpleManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledLandPermanent;
import mage.filter.predicate.Predicates;
@ -55,7 +56,7 @@ public class Everglades extends CardImpl {
private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("an untapped Swamp");
static {
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
filter.add(Predicates.not(new TappedPredicate()));
}

View file

@ -34,10 +34,7 @@ import mage.abilities.effects.common.combat.CantAttackAnyPlayerAllEffect;
import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -55,8 +52,8 @@ public class EvilEyeOfOrmsByGore extends CardImpl {
private static final FilterCreaturePermanent cantBeBlockedByFilter = new FilterCreaturePermanent("except by Walls");
static {
cantBeBlockedByFilter.add(Predicates.not(new SubtypePredicate("Wall")));
cantAttackFilter.add(Predicates.not((new SubtypePredicate("Eye"))));
cantBeBlockedByFilter.add(Predicates.not(new SubtypePredicate(SubType.WALL)));
cantAttackFilter.add(Predicates.not((new SubtypePredicate(SubType.EYE))));
cantAttackFilter.add(new ControllerPredicate(TargetController.YOU));
}

View file

@ -34,10 +34,7 @@ import mage.abilities.effects.common.DestroyTargetEffect;
import mage.abilities.effects.common.combat.CantAttackAnyPlayerAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +51,7 @@ public class EvilEyeOfUrborg extends CardImpl {
private static final FilterCreaturePermanent cantAttackFilter = new FilterCreaturePermanent("Non-Eye creatures you control");
static {
cantAttackFilter.add(Predicates.not((new SubtypePredicate("Eye"))));
cantAttackFilter.add(Predicates.not((new SubtypePredicate(SubType.EYE))));
cantAttackFilter.add(new ControllerPredicate(TargetController.YOU));
}

View file

@ -35,10 +35,7 @@ import mage.abilities.costs.mana.ColoredManaCost;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.common.TargetControlledPermanent;
@ -54,7 +51,7 @@ public class Facevaulter extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Goblin");
static {
filter.add(new SubtypePredicate("Goblin"));
filter.add(new SubtypePredicate(SubType.GOBLIN));
}
public Facevaulter(UUID ownerId, CardSetInfo setInfo) {

View file

@ -39,6 +39,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +55,7 @@ public class FaerieNoble extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Faerie creatures");
static {
filter.add(new SubtypePredicate("Faerie"));
filter.add(new SubtypePredicate(SubType.FAERIE));
}
public FaerieNoble(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.abilities.effects.common.GainLifeEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game;
@ -75,7 +76,7 @@ class FeastOfBloodCost extends CostImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent();
static {
filter.add(new SubtypePredicate("Vampire"));
filter.add(new SubtypePredicate(SubType.VAMPIRE));
}
public FeastOfBloodCost() {

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -52,7 +53,7 @@ public class FendeepSummoner extends CardImpl {
static final FilterLandPermanent filter = new FilterLandPermanent("Swamp");
static {
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
}
public FendeepSummoner(UUID ownerId, CardSetInfo setInfo) {

View file

@ -36,6 +36,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -50,7 +51,7 @@ public class FieldMarshal extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Soldier creatures");
static {
filter.add(new SubtypePredicate("Soldier"));
filter.add(new SubtypePredicate(SubType.SOLDIER));
}
public FieldMarshal(UUID ownerId, CardSetInfo setInfo) {

View file

@ -60,7 +60,7 @@ public class FiendOfTheShadows extends CardImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a Human");
static {
filter.add(new SubtypePredicate("Human"));
filter.add(new SubtypePredicate(SubType.HUMAN));
}
public FiendOfTheShadows(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,6 +38,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.common.FilterCreaturePermanent;
@ -58,7 +59,7 @@ public class Filth extends CardImpl {
static {
filter.add(new CardTypePredicate(CardType.LAND));
filter.add(new SubtypePredicate("Swamp"));
filter.add(new SubtypePredicate(SubType.SWAMP));
}
public Filth(UUID ownerId, CardSetInfo setInfo) {

View file

@ -38,10 +38,7 @@ import mage.abilities.effects.common.continuous.GainAbilityAllEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.FilterSpell;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
@ -62,7 +59,7 @@ public class FinalIteration extends CardImpl {
private static final FilterSpell filterSpell = new FilterSpell("an instant or sorcery spell");
static {
filter.add(new SubtypePredicate("Wizard"));
filter.add(new SubtypePredicate(SubType.WIZARD));
filter.add(new ControllerPredicate(TargetController.YOU));
filterSpell.add(Predicates.or(
new CardTypePredicate(CardType.INSTANT),

View file

@ -37,6 +37,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.common.TargetCreaturePermanent;
@ -52,7 +53,7 @@ public class FireDragon extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("for each Mountain you control");
static {
filter.add(new SubtypePredicate("Mountain"));
filter.add(new SubtypePredicate(SubType.MOUNTAIN));
}
public FireDragon(UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,10 +40,7 @@ import mage.abilities.effects.common.ExileTargetEffect;
import mage.abilities.keyword.FlashbackAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.TimingRule;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.common.FilterControlledLandPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game;
@ -61,7 +58,7 @@ public class FirecatBlitz extends CardImpl {
private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("Mountains");
static {
filter.add(new SubtypePredicate("Mountain"));
filter.add(new SubtypePredicate(SubType.MOUNTAIN));
}
public FirecatBlitz(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,6 +34,7 @@ import mage.abilities.costs.mana.GenericManaCost;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.common.TargetCardInHand;
@ -48,7 +49,7 @@ public class FlamekinBladewhirl extends CardImpl {
private static final FilterCard filter = new FilterCard("an Elemental card from your hand");
static {
filter.add(new SubtypePredicate("Elemental"));
filter.add(new SubtypePredicate(SubType.ELEMENTAL));
}
public FlamekinBladewhirl(UUID ownerId, CardSetInfo setInfo) {

View file

@ -40,6 +40,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -57,7 +58,7 @@ public class FlamekinVillage extends CardImpl {
private static final FilterCard filter = new FilterCard("an Elemental card from your hand");
static {
filter.add(new SubtypePredicate("Elemental"));
filter.add(new SubtypePredicate(SubType.ELEMENTAL));
}
public FlamekinVillage(UUID ownerId, CardSetInfo setInfo) {

View file

@ -42,6 +42,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -58,7 +59,7 @@ public class FlamestickCourier extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Goblin creature");
static {
filter.add(new SubtypePredicate("Goblin"));
filter.add(new SubtypePredicate(SubType.GOBLIN));
}
public FlamestickCourier(UUID ownerId, CardSetInfo setInfo) {

View file

@ -31,6 +31,7 @@ import mage.abilities.effects.common.DestroyAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -45,7 +46,7 @@ public class Flashfires extends CardImpl {
private static final FilterLandPermanent filter = new FilterLandPermanent("Plains");
static{
filter.add(new SubtypePredicate("Plains"));
filter.add(new SubtypePredicate(SubType.PLAINS));
}
public Flashfires(UUID ownerId, CardSetInfo setInfo) {

View file

@ -35,6 +35,7 @@ import mage.abilities.effects.keyword.InvestigateEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -54,7 +55,7 @@ public class FleetingMemories extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("a Clue");
static {
filter.add(new SubtypePredicate("Clue"));
filter.add(new SubtypePredicate(SubType.CLUE));
}
public FleetingMemories(UUID ownerId, CardSetInfo setInfo) {

View file

@ -37,6 +37,7 @@ import mage.cards.CardSetInfo;
import mage.constants.AbilityType;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.FilterCard;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -57,7 +58,7 @@ public class FoulTongueInvocation extends CardImpl {
private static final FilterCard filter = new FilterCard("a Dragon card from your hand (you don't have to)");
static {
filter.add(new SubtypePredicate("Dragon"));
filter.add(new SubtypePredicate(SubType.DRAGON));
}
public FoulTongueInvocation(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,6 +34,7 @@ import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
@ -51,8 +52,8 @@ public class FrogtosserBanneret extends CardImpl {
static {
filter.add(Predicates.or(
new SubtypePredicate("Goblin"),
new SubtypePredicate("Rogue")));
new SubtypePredicate(SubType.GOBLIN),
new SubtypePredicate(SubType.ROGUE)));
}
public FrogtosserBanneret(UUID ownerId, CardSetInfo setInfo) {

View file

@ -32,6 +32,7 @@ import mage.abilities.effects.common.GainLifeEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -46,7 +47,7 @@ public class Fruition extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("for each Forest on the battlefield");
static {
filter.add(new SubtypePredicate("Forest"));
filter.add(new SubtypePredicate(SubType.FOREST));
}
public Fruition(UUID ownerId, CardSetInfo setInfo) {

View file

@ -33,6 +33,7 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterSpell;
import mage.filter.predicate.mageobject.SubtypePredicate;
@ -47,7 +48,7 @@ public class FugitiveDruid extends CardImpl {
private static final FilterSpell filter = new FilterSpell("an Aura spell");
static {
filter.add(new SubtypePredicate("Aura"));
filter.add(new SubtypePredicate(SubType.AURA));
}
public FugitiveDruid(UUID ownerId, CardSetInfo setInfo) {

View file

@ -34,6 +34,7 @@ import mage.abilities.effects.common.counter.AddCountersTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.counters.CounterType;
import mage.filter.FilterPermanent;
@ -51,7 +52,7 @@ public class FungalBloom extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("Fungus");
static {
filter.add(new SubtypePredicate("Fungus"));
filter.add(new SubtypePredicate(SubType.FUNGUS));
}
public FungalBloom(UUID ownerId, CardSetInfo setInfo) {

Some files were not shown because too many files have changed in this diff Show more