mirror of
https://github.com/correl/mage.git
synced 2024-11-15 03:00:16 +00:00
Merge pull request #6151 from magefree/refactorSubTypePredicate
Refactored SubTypePredicate to be part of SubType
This commit is contained in:
commit
5a6f9022c0
1660 changed files with 2070 additions and 3781 deletions
|
@ -12,7 +12,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -23,7 +22,7 @@ public final class ATST extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Trooper creatures");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.TROOPER));
|
||||
filter.add(SubType.TROOPER.getPredicate());
|
||||
}
|
||||
|
||||
public ATST(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -10,7 +10,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCardInHand;
|
||||
|
||||
|
@ -25,7 +24,7 @@ public final class Abolish extends CardImpl {
|
|||
private static final FilterCard filterCost = new FilterCard("Plains card");
|
||||
|
||||
static {
|
||||
filterCost.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filterCost.add(SubType.PLAINS.getPredicate());
|
||||
}
|
||||
|
||||
public Abolish(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -18,7 +18,6 @@ import mage.filter.common.FilterControlledCreaturePermanent;
|
|||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.AbilityPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
@ -33,7 +32,7 @@ public final class AboshanCephalidEmperor extends CardImpl {
|
|||
static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures without flying");
|
||||
|
||||
static {
|
||||
filter1.add(new SubtypePredicate(SubType.CEPHALID));
|
||||
filter1.add(SubType.CEPHALID.getPredicate());
|
||||
filter2.add(Predicates.not(new AbilityPredicate(FlyingAbility.class)));
|
||||
}
|
||||
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -28,7 +27,7 @@ public final class AcademyJourneymage extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control a Wizard");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.WIZARD));
|
||||
filter.add(SubType.WIZARD.getPredicate());
|
||||
}
|
||||
|
||||
public AcademyJourneymage(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.other.AuraCardCanAttachToPermanentId;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -68,7 +67,7 @@ class AcademyResearchersEffect extends OneShotEffect {
|
|||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
FilterCard filterCardInHand = new FilterCard();
|
||||
filterCardInHand.add(new SubtypePredicate(SubType.AURA));
|
||||
filterCardInHand.add(SubType.AURA.getPredicate());
|
||||
Player controller = game.getPlayer(source.getControllerId());
|
||||
Permanent academyResearchers = game.getPermanent(source.getSourceId());
|
||||
if (controller != null && academyResearchers != null) {
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.filter.FilterCard;
|
|||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.mageobject.SupertypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
|
||||
|
@ -35,9 +34,9 @@ public final class AcclaimedContender extends CardImpl {
|
|||
static {
|
||||
filter.add(AnotherPredicate.instance);
|
||||
filter2.add(Predicates.or(
|
||||
new SubtypePredicate(SubType.KNIGHT),
|
||||
new SubtypePredicate(SubType.AURA),
|
||||
new SubtypePredicate(SubType.EQUIPMENT),
|
||||
SubType.KNIGHT.getPredicate(),
|
||||
SubType.AURA.getPredicate(),
|
||||
SubType.EQUIPMENT.getPredicate(),
|
||||
Predicates.and(
|
||||
new SupertypePredicate(SuperType.LEGENDARY),
|
||||
CardType.ARTIFACT.getPredicate()
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterAttackingCreature;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetAttackingCreature;
|
||||
|
||||
/**
|
||||
|
@ -27,7 +26,7 @@ public final class AccursedHorde extends CardImpl {
|
|||
private static final FilterAttackingCreature filter = new FilterAttackingCreature("attacking Zombie");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ZOMBIE));
|
||||
filter.add(SubType.ZOMBIE.getPredicate());
|
||||
}
|
||||
|
||||
public AccursedHorde(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -8,7 +8,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -18,7 +17,7 @@ public final class AcidRain extends CardImpl {
|
|||
|
||||
private static final FilterPermanent filter = new FilterPermanent("Forests");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.FOREST));
|
||||
filter.add(SubType.FOREST.getPredicate());
|
||||
}
|
||||
|
||||
public AcidRain(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
|
||||
/**
|
||||
|
@ -28,7 +27,7 @@ public final class AcidSpewerDragon extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(AnotherPredicate.instance);
|
||||
filter.add(new SubtypePredicate(SubType.DRAGON));
|
||||
filter.add(SubType.DRAGON.getPredicate());
|
||||
}
|
||||
|
||||
public AcidSpewerDragon(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -24,7 +23,7 @@ public final class AcidWebSpider extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Equipment");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
public AcidWebSpider (UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.ColorPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +24,7 @@ public final class ActiveVolcano extends CardImpl {
|
|||
private static final FilterPermanent filterIsland = new FilterPermanent("Island");
|
||||
static {
|
||||
filterBlue.add(new ColorPredicate(ObjectColor.BLUE));
|
||||
filterIsland.add(new SubtypePredicate(SubType.ISLAND));
|
||||
filterIsland.add(SubType.ISLAND.getPredicate());
|
||||
}
|
||||
|
||||
public ActiveVolcano(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
||||
import java.util.UUID;
|
||||
|
@ -26,7 +25,7 @@ public final class AdelizTheCinderWind extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate(SubType.WIZARD));
|
||||
filter.add(SubType.WIZARD.getPredicate());
|
||||
}
|
||||
|
||||
public AdelizTheCinderWind(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.permanent.token.RebelStarshipToken;
|
||||
|
@ -29,7 +28,7 @@ public final class AdmiralAckbar extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Starship creatures");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.STARSHIP));
|
||||
filter.add(SubType.STARSHIP.getPredicate());
|
||||
}
|
||||
|
||||
public AdmiralAckbar(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.*;
|
|||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.common.FilterNonlandPermanent;
|
||||
import mage.filter.predicate.Predicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.DamagedPlayerEvent;
|
||||
|
@ -33,7 +32,7 @@ public final class AdmiralBeckettBrass extends CardImpl {
|
|||
private static final FilterNonlandPermanent filter2 = new FilterNonlandPermanent("nonland permanent controlled by a player who was dealt combat damage by three or more Pirates this turn");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PIRATE));
|
||||
filter.add(SubType.PIRATE.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter2.add(new ControllerDealtDamageByPiratesPredicate());
|
||||
}
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.TargetController;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.target.Target;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
@ -27,7 +26,7 @@ public final class AdvocateOfTheBeast extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Beast creature you control");
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate(SubType.BEAST));
|
||||
filter.add(SubType.BEAST.getPredicate());
|
||||
}
|
||||
|
||||
public AdvocateOfTheBeast(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -29,7 +28,7 @@ public final class AerialModification extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(Predicates.or(CardType.CREATURE.getPredicate(),
|
||||
new SubtypePredicate(SubType.VEHICLE)));
|
||||
SubType.VEHICLE.getPredicate()));
|
||||
}
|
||||
|
||||
public AerialModification(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledArtifactPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -24,7 +23,7 @@ public final class AeronautAdmiral extends CardImpl {
|
|||
private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("Vehicles");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.VEHICLE));
|
||||
filter.add(SubType.VEHICLE.getPredicate());
|
||||
}
|
||||
|
||||
public AeronautAdmiral(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -11,7 +11,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.events.GameEvent.EventType;
|
||||
|
@ -28,7 +27,7 @@ public final class AetherCharge extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Beast you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.BEAST));
|
||||
filter.add(SubType.BEAST.getPredicate());
|
||||
}
|
||||
|
||||
public AetherCharge(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -28,7 +27,7 @@ public final class AetherMeltdown extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("creature or vehicle");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE)));
|
||||
filter.add(Predicates.or(CardType.CREATURE.getPredicate(), SubType.VEHICLE.getPredicate()));
|
||||
}
|
||||
|
||||
public AetherMeltdown(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -10,7 +10,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -21,8 +20,8 @@ public final class AetherShockwave extends CardImpl {
|
|||
private static final FilterCreaturePermanent filterSpirit = new FilterCreaturePermanent("Spirits");
|
||||
private static final FilterCreaturePermanent filterNonSpirit = new FilterCreaturePermanent("non-Spirit creatures");
|
||||
static {
|
||||
filterSpirit.add(new SubtypePredicate(SubType.SPIRIT));
|
||||
filterNonSpirit.add(Predicates.not(new SubtypePredicate(SubType.SPIRIT)));
|
||||
filterSpirit.add(SubType.SPIRIT.getPredicate());
|
||||
filterNonSpirit.add(Predicates.not(SubType.SPIRIT.getPredicate()));
|
||||
}
|
||||
|
||||
public AetherShockwave(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -24,7 +24,6 @@ import mage.constants.TargetController;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.watchers.common.AttackedThisTurnWatcher;
|
||||
|
@ -38,7 +37,7 @@ public final class Aggression extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.WALL)));
|
||||
filter.add(Predicates.not(SubType.WALL.getPredicate()));
|
||||
}
|
||||
|
||||
public Aggression(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -9,7 +9,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -20,7 +19,7 @@ public final class AirborneAid extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Bird on the battlefield");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.BIRD));
|
||||
filter.add(SubType.BIRD.getPredicate());
|
||||
}
|
||||
|
||||
public AirborneAid(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetAnyTarget;
|
||||
|
||||
|
@ -29,7 +28,7 @@ public final class AirdropCondor extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a Goblin creature");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GOBLIN));
|
||||
filter.add(SubType.GOBLIN.getPredicate());
|
||||
}
|
||||
|
||||
public AirdropCondor(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -19,7 +19,6 @@ import mage.counters.CounterType;
|
|||
import mage.filter.FilterCard;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.target.common.TargetCreaturePermanentAmount;
|
||||
|
||||
|
@ -35,7 +34,7 @@ public final class AjaniMentorOfHeroes extends CardImpl {
|
|||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filterCard.add(Predicates.or(
|
||||
new SubtypePredicate(SubType.AURA),
|
||||
SubType.AURA.getPredicate(),
|
||||
CardType.CREATURE.getPredicate(),
|
||||
CardType.PLANESWALKER.getPredicate()));
|
||||
}
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.TargetController;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -27,7 +26,7 @@ public final class AjanisComrade extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(CardType.PLANESWALKER.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.AJANI));
|
||||
filter.add(SubType.AJANI.getPredicate());
|
||||
}
|
||||
|
||||
public AjanisComrade(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.events.ZoneChangeEvent;
|
||||
|
@ -29,7 +28,7 @@ public final class AjanisLastStand extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent();
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filter.add(SubType.PLAINS.getPredicate());
|
||||
}
|
||||
|
||||
public AjanisLastStand(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +24,7 @@ public final class AkoumBattlesinger extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("have Ally creatures");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ALLY));
|
||||
filter.add(SubType.ALLY.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.cards.Cards;
|
|||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
@ -29,7 +28,7 @@ public final class AkoumFlameseeker extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("an untapped Ally you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ALLY));
|
||||
filter.add(SubType.ALLY.getPredicate());
|
||||
filter.add(Predicates.not(TappedPredicate.instance));
|
||||
}
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AkutaBornOfAsh extends CardImpl {
|
|||
|
||||
private static final FilterControlledPermanent filterSwamp = new FilterControlledPermanent("a Swamp");
|
||||
static {
|
||||
filterSwamp.add(new SubtypePredicate(SubType.SWAMP));
|
||||
filterSwamp.add(SubType.SWAMP.getPredicate());
|
||||
}
|
||||
|
||||
public AkutaBornOfAsh(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +24,7 @@ public final class AliBaba extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Wall");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.WALL));
|
||||
filter.add(SubType.WALL.getPredicate());
|
||||
}
|
||||
|
||||
public AliBaba(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -18,7 +18,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.FilterSpell;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -30,7 +29,7 @@ public final class AllyEncampment extends CardImpl {
|
|||
private static final FilterSpell FILTER = new FilterSpell("an Ally spell");
|
||||
|
||||
static {
|
||||
FILTER.add(new SubtypePredicate(SubType.ALLY));
|
||||
FILTER.add(SubType.ALLY.getPredicate());
|
||||
}
|
||||
|
||||
public AllyEncampment(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AlphaKavu extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Kavu creature");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.KAVU));
|
||||
filter.add(SubType.KAVU.getPredicate());
|
||||
}
|
||||
|
||||
public AlphaKavu(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,9 +16,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.permanent.token.TokenImpl;
|
||||
import mage.game.permanent.token.Token;
|
||||
import mage.game.permanent.token.custom.CreatureToken;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
@ -33,7 +30,7 @@ public final class AmbushCommander extends CardImpl {
|
|||
private static final FilterControlledPermanent filter2 = new FilterControlledPermanent("Forests you control");
|
||||
|
||||
static {
|
||||
filter2.add(new SubtypePredicate(SubType.FOREST));
|
||||
filter2.add(SubType.FOREST.getPredicate());
|
||||
}
|
||||
|
||||
public AmbushCommander(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterPermanentCard;
|
||||
import mage.filter.predicate.mageobject.ConvertedManaCostPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCardInLibrary;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AmrouScout extends CardImpl {
|
|||
|
||||
private static final FilterPermanentCard filter = new FilterPermanentCard("Rebel permanent card with converted mana cost 3 or less");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.REBEL));
|
||||
filter.add(SubType.REBEL.getPredicate());
|
||||
filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4));
|
||||
}
|
||||
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
@ -27,7 +26,7 @@ public final class AnabaAncestor extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Another target Minotaur creature");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.MINOTAUR));
|
||||
filter.add(SubType.MINOTAUR.getPredicate());
|
||||
filter.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -23,7 +22,7 @@ public final class AnabaSpiritCrafter extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Minotaur creatures");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.MINOTAUR));
|
||||
filter.add(SubType.MINOTAUR.getPredicate());
|
||||
}
|
||||
|
||||
public AnabaSpiritCrafter(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class AncestorsProphet extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Clerics you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.CLERIC));
|
||||
filter.add(SubType.CLERIC.getPredicate());
|
||||
filter.add(Predicates.not(TappedPredicate.instance));
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ 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;
|
||||
|
||||
/**
|
||||
|
@ -23,7 +22,7 @@ public final class AncientAmphitheater extends CardImpl {
|
|||
|
||||
private static final FilterCard filter = new FilterCard("a Giant from your hand");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GIANT));
|
||||
filter.add(SubType.GIANT.getPredicate());
|
||||
}
|
||||
|
||||
public AncientAmphitheater(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.Target;
|
||||
import mage.target.common.TargetCardInYourGraveyard;
|
||||
|
||||
|
@ -20,7 +19,7 @@ public final class AngelOfFlightAlabaster extends CardImpl {
|
|||
private static final FilterCard filter = new FilterCard("Spirit card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.SPIRIT));
|
||||
filter.add(SubType.SPIRIT.getPredicate());
|
||||
}
|
||||
|
||||
public AngelOfFlightAlabaster(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -18,7 +18,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreatureCard;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
||||
|
@ -76,7 +75,7 @@ class AngelOfGlorysRiseEffect extends OneShotEffect {
|
|||
.getActivePermanents(new FilterCreaturePermanent(SubType.ZOMBIE, "Zombie"), source.getControllerId(), source.getSourceId(), game));
|
||||
controller.moveCards(toExile, Zone.EXILED, source, game);
|
||||
FilterCreatureCard filterHuman = new FilterCreatureCard();
|
||||
filterHuman.add(new SubtypePredicate(SubType.HUMAN));
|
||||
filterHuman.add(SubType.HUMAN.getPredicate());
|
||||
controller.moveCards(controller.getGraveyard().getCards(filterHuman, game), Zone.BATTLEFIELD, source, game);
|
||||
}
|
||||
return true;
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Duration;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterAttackingCreature;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +24,7 @@ public final class AngelicCaptain extends CardImpl {
|
|||
private static final FilterAttackingCreature filter = new FilterAttackingCreature("other attacking Ally");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ALLY));
|
||||
filter.add(SubType.ALLY.getPredicate());
|
||||
filter.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ import mage.constants.TurnPhase;
|
|||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.token.AngelToken;
|
||||
|
@ -33,7 +32,7 @@ public final class AngelicFavor extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("If you control a Plains");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filter.add(SubType.PLAINS.getPredicate());
|
||||
}
|
||||
private static final FilterControlledCreaturePermanent untappedCreatureYouControl = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -30,7 +29,7 @@ public final class AngelicOverseer extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Human");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.HUMAN));
|
||||
filter.add(SubType.HUMAN.getPredicate());
|
||||
}
|
||||
|
||||
public AngelicOverseer(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -31,7 +30,7 @@ public final class Anger extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(CardType.LAND.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.MOUNTAIN));
|
||||
filter.add(SubType.MOUNTAIN.getPredicate());
|
||||
}
|
||||
|
||||
public Anger(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -20,7 +20,6 @@ import mage.filter.FilterCard;
|
|||
import mage.filter.StaticFilters;
|
||||
import mage.filter.common.FilterCreatureCard;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.players.Player;
|
||||
|
@ -53,7 +52,7 @@ public final class AngrathMinotaurPirate extends CardImpl {
|
|||
|
||||
// -3: Return target Pirate card from your graveyard to the battlefield.
|
||||
FilterCard filterPirateCard = new FilterCreatureCard("pirate card from your graveyard");
|
||||
filterPirateCard.add(new SubtypePredicate(SubType.PIRATE));
|
||||
filterPirateCard.add(SubType.PIRATE.getPredicate());
|
||||
Ability ability2 = new LoyaltyAbility(new ReturnFromGraveyardToBattlefieldTargetEffect()
|
||||
.setText("Return target Pirate card from your graveyard to the battlefield"), -3);
|
||||
ability2.addTarget(new TargetCardInYourGraveyard(filterPirateCard));
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -26,7 +25,7 @@ public final class AngrathsAmbusher extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(CardType.PLANESWALKER.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.ANGRATH));
|
||||
filter.add(SubType.ANGRATH.getPredicate());
|
||||
}
|
||||
|
||||
public AngrathsAmbusher(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +24,7 @@ public final class AngryMob extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Swamps you opponents control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.SWAMP));
|
||||
filter.add(SubType.SWAMP.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.OPPONENT));
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class AnimateWall extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Wall");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.WALL));
|
||||
filter.add(SubType.WALL.getPredicate());
|
||||
}
|
||||
|
||||
public AnimateWall(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -10,7 +10,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -22,7 +21,7 @@ public final class AnointedDeacon extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Vampire");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.VAMPIRE));
|
||||
filter.add(SubType.VAMPIRE.getPredicate());
|
||||
}
|
||||
|
||||
public AnointedDeacon(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.SuperType;
|
|||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -24,7 +23,7 @@ public final class AnowonTheRuinSage extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("non-Vampire creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.VAMPIRE)));
|
||||
filter.add(Predicates.not(SubType.VAMPIRE.getPredicate()));
|
||||
}
|
||||
|
||||
public AnowonTheRuinSage(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Outcome;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterCreatureCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
import mage.target.common.TargetCardInYourGraveyard;
|
||||
|
@ -55,7 +54,7 @@ enum AphettoDredgingAdjuster implements TargetAdjuster {
|
|||
if (controller != null && controller.choose(Outcome.PutCreatureInPlay, typeChoice, game)) {
|
||||
String chosenType = typeChoice.getChoice();
|
||||
FilterCreatureCard filter = new FilterCreatureCard(chosenType + " cards");
|
||||
filter.add(new SubtypePredicate(SubType.byDescription(chosenType)));
|
||||
filter.add(SubType.byDescription(chosenType).getPredicate());
|
||||
ability.addTarget(new TargetCardInYourGraveyard(0, 3, filter));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
@ -29,7 +28,7 @@ public final class AphettoGrifter extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(Predicates.not(TappedPredicate.instance));
|
||||
filter.add(new SubtypePredicate(SubType.WIZARD));
|
||||
filter.add(SubType.WIZARD.getPredicate());
|
||||
}
|
||||
|
||||
public AphettoGrifter(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ 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.TargetCardInYourGraveyard;
|
||||
|
||||
/**
|
||||
|
@ -24,7 +23,7 @@ public final class AphettoVulture extends CardImpl {
|
|||
private static final FilterCard filter = new FilterCard("Zombie card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ZOMBIE));
|
||||
filter.add(SubType.ZOMBIE.getPredicate());
|
||||
}
|
||||
|
||||
public AphettoVulture(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ 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;
|
||||
|
||||
import java.util.UUID;
|
||||
|
@ -28,7 +27,7 @@ public final class ApothecaryGeist extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(AnotherPredicate.instance);
|
||||
filter.add(new SubtypePredicate(SubType.SPIRIT));
|
||||
filter.add(SubType.SPIRIT.getPredicate());
|
||||
}
|
||||
|
||||
public ApothecaryGeist(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Duration;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.permanent.token.MerfolkHexproofToken;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
|
@ -28,7 +27,7 @@ public final class AquaticIncursion extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Merfolk");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.MERFOLK));
|
||||
filter.add(SubType.MERFOLK.getPredicate());
|
||||
}
|
||||
|
||||
public AquaticIncursion(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.common.TargetLandPermanent;
|
||||
|
@ -28,7 +27,7 @@ public final class AquitectsWill extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Merfolk");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.MERFOLK));
|
||||
filter.add(SubType.MERFOLK.getPredicate());
|
||||
}
|
||||
|
||||
public AquitectsWill(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.combat.CombatGroup;
|
||||
import mage.game.permanent.token.SpiderToken;
|
||||
|
@ -28,7 +27,7 @@ public final class Arachnogenesis extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Spider creatures");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.SPIDER)));
|
||||
filter.add(Predicates.not(SubType.SPIDER.getPredicate()));
|
||||
}
|
||||
|
||||
public Arachnogenesis(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -19,7 +19,6 @@ import mage.filter.FilterCard;
|
|||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.NamePredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -38,7 +37,7 @@ public final class ArachnusSpinner extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Spider you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.SPIDER));
|
||||
filter.add(SubType.SPIDER.getPredicate());
|
||||
filter.add(Predicates.not(TappedPredicate.instance));
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
|
@ -39,10 +38,10 @@ public final class ArahboRoarOfTheWorld extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter2 = new FilterControlledCreaturePermanent("another Cat you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.CAT));
|
||||
filter.add(SubType.CAT.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(AnotherPredicate.instance);
|
||||
filter2.add(new SubtypePredicate(SubType.CAT));
|
||||
filter2.add(SubType.CAT.getPredicate());
|
||||
filter2.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter2.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Duration;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class ArashinForemost extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("another target Warrior creature you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.WARRIOR));
|
||||
filter.add(SubType.WARRIOR.getPredicate());
|
||||
filter.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,6 @@ import mage.constants.*;
|
|||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -34,7 +33,7 @@ public final class ArchangelAvacyn extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a non-Angel creature you control");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.ANGEL)));
|
||||
filter.add(Predicates.not(SubType.ANGEL.getPredicate()));
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
|
@ -32,7 +31,7 @@ public final class ArchdemonOfGreed extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Human");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.HUMAN));
|
||||
filter.add(SubType.HUMAN.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.permanent.token.ZombieToken;
|
||||
|
||||
/**
|
||||
|
@ -28,7 +27,7 @@ public final class ArchdemonOfUnx extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Zombie creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.ZOMBIE)));
|
||||
filter.add(Predicates.not(SubType.ZOMBIE.getPredicate()));
|
||||
}
|
||||
|
||||
public ArchdemonOfUnx(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class ArchwayAngel extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterControlledPermanent("Gate you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GATE));
|
||||
filter.add(SubType.GATE.getPredicate());
|
||||
}
|
||||
|
||||
public ArchwayAngel(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -28,7 +27,7 @@ public final class ArcticAven extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Plains");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filter.add(SubType.PLAINS.getPredicate());
|
||||
}
|
||||
|
||||
public ArcticAven(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -9,7 +9,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
||||
|
@ -25,7 +24,7 @@ public final class ArmamentMaster extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Other Kor creatures you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.KOR));
|
||||
filter.add(SubType.KOR.getPredicate());
|
||||
}
|
||||
|
||||
public ArmamentMaster(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
@ -54,7 +53,7 @@ class ArmamentMasterEffect extends ContinuousEffectImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Other Kor creatures you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.KOR));
|
||||
filter.add(SubType.KOR.getPredicate());
|
||||
}
|
||||
|
||||
public ArmamentMasterEffect() {
|
||||
|
|
|
@ -10,7 +10,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterControlledArtifactPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetAttackingCreature;
|
||||
|
||||
/**
|
||||
|
@ -22,7 +21,7 @@ public final class ArmedResponse extends CardImpl {
|
|||
private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("Equipment you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterLandPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
@ -27,7 +26,7 @@ public final class ArmoredAscension extends CardImpl {
|
|||
private static final FilterLandPermanent filter = new FilterLandPermanent("Plains you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filter.add(SubType.PLAINS.getPredicate());
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.filter.FilterPermanent;
|
|||
import mage.filter.common.FilterArtifactPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardIdPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AttachedToPredicate;
|
||||
import mage.filter.predicate.permanent.PermanentIdPredicate;
|
||||
import mage.game.Game;
|
||||
|
@ -55,7 +54,7 @@ class ArmoryAutomatonEffect extends OneShotEffect {
|
|||
private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("Equipment");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
public ArmoryAutomatonEffect() {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -27,7 +26,7 @@ public final class ArmoryGuard extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Gate");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GATE));
|
||||
filter.add(SubType.GATE.getPredicate());
|
||||
}
|
||||
|
||||
public ArmoryGuard(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class ArmsDealer extends CardImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Goblin");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GOBLIN));
|
||||
filter.add(SubType.GOBLIN.getPredicate());
|
||||
}
|
||||
|
||||
public ArmsDealer(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -24,7 +23,7 @@ public final class ArterialFlow extends CardImpl {
|
|||
|
||||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("If you control a Vampire,");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.VAMPIRE));
|
||||
filter.add(SubType.VAMPIRE.getPredicate());
|
||||
}
|
||||
|
||||
public ArterialFlow(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -11,7 +11,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.TargetPermanent;
|
||||
|
@ -25,7 +24,7 @@ public final class ArtificersHex extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Equipment");
|
||||
static {
|
||||
filter.add(CardType.ARTIFACT.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
public ArtificersHex(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -24,7 +24,6 @@ import mage.filter.common.FilterControlledCreaturePermanent;
|
|||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.PowerPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.token.KnightToken;
|
||||
|
@ -81,7 +80,7 @@ class AryelTapXTargetCost extends VariableCostImpl {
|
|||
|
||||
static {
|
||||
filter.add(Predicates.not(TappedPredicate.instance));
|
||||
filter.add(new SubtypePredicate(SubType.KNIGHT));
|
||||
filter.add(SubType.KNIGHT.getPredicate());
|
||||
}
|
||||
|
||||
public AryelTapXTargetCost() {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterLandPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
@ -55,7 +54,7 @@ class HalfForestsDownCount implements DynamicValue {
|
|||
private static final FilterLandPermanent filter = new FilterLandPermanent();
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.FOREST));
|
||||
filter.add(SubType.FOREST.getPredicate());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -85,7 +84,7 @@ class HalfForestsUpCount implements DynamicValue {
|
|||
private static final FilterLandPermanent filter = new FilterLandPermanent();
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.FOREST));
|
||||
filter.add(SubType.FOREST.getPredicate());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AssemblyWorker extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Assembly-Worker creature");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ASSEMBLY_WORKER));
|
||||
filter.add(SubType.ASSEMBLY_WORKER.getPredicate());
|
||||
}
|
||||
|
||||
public AssemblyWorker(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -28,7 +27,7 @@ public final class AstromechDroid extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("starship creature");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.STARSHIP));
|
||||
filter.add(SubType.STARSHIP.getPredicate());
|
||||
}
|
||||
|
||||
public AstromechDroid(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -58,7 +57,7 @@ class AtarkaWorldRenderEffect extends TriggeredAbilityImpl {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("dragon you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.DRAGON));
|
||||
filter.add(SubType.DRAGON.getPredicate());
|
||||
}
|
||||
|
||||
public AtarkaWorldRenderEffect() {
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
@ -26,7 +25,7 @@ public final class Atogatog extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate(SubType.ATOG));
|
||||
filter.add(SubType.ATOG.getPredicate());
|
||||
}
|
||||
|
||||
public Atogatog(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
||||
/**
|
||||
|
@ -27,7 +26,7 @@ public final class AttendantOfVraska extends CardImpl {
|
|||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(CardType.PLANESWALKER.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.VRASKA));
|
||||
filter.add(SubType.VRASKA.getPredicate());
|
||||
}
|
||||
|
||||
public AttendantOfVraska(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCardInYourGraveyard;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AtzocanSeer extends CardImpl {
|
|||
private static final FilterCard filter = new FilterCard("Dinosaur from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.DINOSAUR));
|
||||
filter.add(SubType.DINOSAUR.getPredicate());
|
||||
}
|
||||
|
||||
public AtzocanSeer(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -12,7 +12,6 @@ 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;
|
||||
|
||||
/**
|
||||
|
@ -23,7 +22,7 @@ public final class AuntiesHovel extends CardImpl {
|
|||
|
||||
private static final FilterCard filter = new FilterCard("a Goblin card from your hand");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GOBLIN));
|
||||
filter.add(SubType.GOBLIN.getPredicate());
|
||||
}
|
||||
|
||||
public AuntiesHovel(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.TargetController;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.DamagedPlayerEvent;
|
||||
|
@ -60,7 +59,7 @@ class AuntiesSnitchTriggeredAbility extends TriggeredAbilityImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Goblin or Rogue you control");
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(Predicates.or(new SubtypePredicate(SubType.GOBLIN), new SubtypePredicate(SubType.ROGUE)));
|
||||
filter.add(Predicates.or(SubType.GOBLIN.getPredicate(), SubType.ROGUE.getPredicate()));
|
||||
}
|
||||
|
||||
public AuntiesSnitchTriggeredAbility() {
|
||||
|
|
|
@ -10,7 +10,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Outcome;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.players.Player;
|
||||
|
@ -64,7 +63,7 @@ public final class AuraBarbs extends CardImpl {
|
|||
}
|
||||
}
|
||||
|
||||
filterEnchantments.add(new SubtypePredicate(SubType.AURA));
|
||||
filterEnchantments.add(SubType.AURA.getPredicate());
|
||||
for (Permanent auraEnchantment : game.getBattlefield().getActivePermanents(filterEnchantments, source.getControllerId(), source.getSourceId(), game)) {
|
||||
if (auraEnchantment.getAttachedTo() != null) {
|
||||
Permanent attachedToCreature = game.getPermanent(auraEnchantment.getAttachedTo());
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterEnchantmentPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -31,7 +30,7 @@ public final class AuraFinesse extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate(SubType.AURA));
|
||||
filter.add(SubType.AURA.getPredicate());
|
||||
}
|
||||
|
||||
public AuraFinesse(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -25,7 +24,7 @@ public final class AuraGnarlid extends CardImpl {
|
|||
private static final FilterPermanent filter = new FilterPermanent("Aura on the battlefield");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.AURA));
|
||||
filter.add(SubType.AURA.getPredicate());
|
||||
}
|
||||
|
||||
public AuraGnarlid(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -16,7 +16,6 @@ import mage.filter.Filter;
|
|||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.ObjectPlayer;
|
||||
import mage.filter.predicate.ObjectPlayerPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -35,7 +34,7 @@ public final class AuraGraft extends CardImpl {
|
|||
|
||||
// Gain control of target Aura that's attached to a permanent. Attach it to another permanent it can enchant.
|
||||
FilterPermanent filter = new FilterPermanent("Aura that's attached to a permanent");
|
||||
filter.add(new SubtypePredicate(SubType.AURA));
|
||||
filter.add(SubType.AURA.getPredicate());
|
||||
filter.add(new AttachedToPermanentPredicate());
|
||||
this.getSpellAbility().addTarget(new TargetPermanent(filter));
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.other.AuraCardCanAttachToLKIPermanentId;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -65,7 +64,7 @@ class AuratouchedMageEffect extends OneShotEffect {
|
|||
|
||||
if (controller != null) {
|
||||
FilterCard filter = new FilterCard("aura that could enchant " + source.getSourceObject(game).getName());
|
||||
filter.add(new SubtypePredicate(SubType.AURA));
|
||||
filter.add(SubType.AURA.getPredicate());
|
||||
filter.add(new AuraCardCanAttachToLKIPermanentId(source.getSourceId()));
|
||||
TargetCardInLibrary target = new TargetCardInLibrary(filter);
|
||||
target.setNotTarget(true);
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -30,8 +29,8 @@ public final class AuriokSteelshaper extends CardImpl {
|
|||
|
||||
static {
|
||||
soldiersOrKnights.add(Predicates.or(
|
||||
new SubtypePredicate(SubType.SOLDIER),
|
||||
new SubtypePredicate(SubType.KNIGHT)
|
||||
SubType.SOLDIER.getPredicate(),
|
||||
SubType.KNIGHT.getPredicate()
|
||||
));
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Outcome;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.players.Player;
|
||||
|
@ -27,7 +26,7 @@ public final class AuriokSurvivors extends CardImpl {
|
|||
private static final FilterCard filter = new FilterCard("Equipment card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
public AuriokSurvivors(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.Outcome;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
@ -30,7 +29,7 @@ public final class AuriokWindwalker extends CardImpl {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Equipment you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.EQUIPMENT));
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
public AuriokWindwalker(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.constants.CardType;
|
|||
import mage.constants.Duration;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterAttackingCreature;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class Aurochs extends CardImpl {
|
|||
private static final FilterAttackingCreature filter1 = new FilterAttackingCreature("other attacking Aurochs");
|
||||
|
||||
static {
|
||||
filter1.add(new SubtypePredicate(SubType.AUROCHS));
|
||||
filter1.add(SubType.AUROCHS.getPredicate());
|
||||
filter1.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.common.FilterAttackingCreature;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.AnotherPredicate;
|
||||
import mage.target.common.TargetCardInLibrary;
|
||||
|
||||
|
@ -31,8 +30,8 @@ public final class AurochsHerd extends CardImpl {
|
|||
private static final FilterAttackingCreature filter2 = new FilterAttackingCreature("other attacking Aurochs");
|
||||
|
||||
static {
|
||||
filter1.add(new SubtypePredicate(SubType.AUROCHS));
|
||||
filter2.add(new SubtypePredicate(SubType.AUROCHS));
|
||||
filter1.add(SubType.AUROCHS.getPredicate());
|
||||
filter2.add(SubType.AUROCHS.getPredicate());
|
||||
filter2.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
@ -26,7 +25,7 @@ public final class AvacynianPriest extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Human creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.HUMAN)));
|
||||
filter.add(Predicates.not(SubType.HUMAN.getPredicate()));
|
||||
}
|
||||
|
||||
public AvacynianPriest(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -13,7 +13,6 @@ import mage.constants.Duration;
|
|||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -25,8 +24,8 @@ public final class AvenBrigadier extends CardImpl {
|
|||
private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("Soldier creatures");
|
||||
|
||||
static {
|
||||
filter1.add(new SubtypePredicate(SubType.BIRD));
|
||||
filter2.add(new SubtypePredicate(SubType.SOLDIER));
|
||||
filter1.add(SubType.BIRD.getPredicate());
|
||||
filter2.add(SubType.SOLDIER.getPredicate());
|
||||
}
|
||||
|
||||
public AvenBrigadier(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.counters.CounterType;
|
|||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterControlledLandPermanent;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.permanent.token.PlantToken;
|
||||
|
||||
/**
|
||||
|
@ -30,7 +29,7 @@ public final class AvengerOfZendikar extends CardImpl {
|
|||
private static final FilterControlledPermanent filterLand = new FilterControlledLandPermanent();
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLANT));
|
||||
filter.add(SubType.PLANT.getPredicate());
|
||||
}
|
||||
|
||||
public AvengerOfZendikar (UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -14,7 +14,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -26,7 +25,7 @@ public final class AvidReclaimer extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(CardType.PLANESWALKER.getPredicate());
|
||||
filter.add(new SubtypePredicate(SubType.NISSA));
|
||||
filter.add(SubType.NISSA.getPredicate());
|
||||
}
|
||||
|
||||
public AvidReclaimer(UUID ownerId, CardSetInfo setInfo) {
|
||||
|
|
|
@ -9,7 +9,6 @@ import mage.constants.SubType;
|
|||
import mage.filter.FilterSpell;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.other.TargetsPermanentPredicate;
|
||||
import mage.target.TargetSpell;
|
||||
|
||||
|
@ -24,7 +23,7 @@ public final class AvoidFate extends CardImpl {
|
|||
private static final FilterSpell filter = new FilterSpell("instant or Aura spell that targets a permanent you control");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(CardType.INSTANT.getPredicate(), new SubtypePredicate(SubType.AURA)));
|
||||
filter.add(Predicates.or(CardType.INSTANT.getPredicate(), SubType.AURA.getPredicate()));
|
||||
filter.add(new TargetsPermanentPredicate(StaticFilters.FILTER_CONTROLLED_PERMANENT));
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ import mage.constants.SubType;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -52,7 +51,7 @@ class AwokenHorrorAbility extends TriggeredAbilityImpl {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Horror creatures");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new SubtypePredicate(SubType.HORROR)));
|
||||
filter.add(Predicates.not(SubType.HORROR.getPredicate()));
|
||||
}
|
||||
|
||||
public AwokenHorrorAbility() {
|
||||
|
|
|
@ -17,7 +17,6 @@ import mage.constants.TargetController;
|
|||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
||||
/**
|
||||
|
@ -30,8 +29,8 @@ public final class AysenCrusader extends CardImpl {
|
|||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
new SubtypePredicate(SubType.SOLDIER),
|
||||
new SubtypePredicate(SubType.WARRIOR)
|
||||
SubType.SOLDIER.getPredicate(),
|
||||
SubType.WARRIOR.getPredicate()
|
||||
));
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue