From ecf26585b59e81a5bd8561f6bba0c353471510a4 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 6 Jan 2020 19:21:27 -0500 Subject: [PATCH] refactored SupertypePredicate to be part of SuperType --- .../src/mage/cards/a/AbominableTreefolk.java | 3 +- .../src/mage/cards/a/AcclaimedContender.java | 3 +- .../mage/cards/a/AdventurersGuildhouse.java | 3 +- Mage.Sets/src/mage/cards/a/AlpineMoon.java | 3 +- Mage.Sets/src/mage/cards/a/Anathemancer.java | 3 +- Mage.Sets/src/mage/cards/a/ArcticFoxes.java | 3 +- .../src/mage/cards/a/ArenaOfTheAncients.java | 3 +- .../src/mage/cards/a/ArvadTheCursed.java | 3 +- Mage.Sets/src/mage/cards/a/Avalanche.java | 3 +- .../src/mage/cards/a/AyumiTheLastVisitor.java | 3 +- .../src/mage/cards/b/BalduvianConjurer.java | 3 +- .../src/mage/cards/b/BalduvianFrostwaker.java | 3 +- Mage.Sets/src/mage/cards/b/BantPanorama.java | 3 +- .../src/mage/cards/b/BenalishHonorGuard.java | 3 +- .../src/mage/cards/b/BlackbladeReforged.java | 3 +- .../src/mage/cards/b/BlindWithAnger.java | 3 +- Mage.Sets/src/mage/cards/b/Blizzard.java | 3 +- Mage.Sets/src/mage/cards/b/BlizzardStrix.java | 3 +- Mage.Sets/src/mage/cards/b/BloodMoon.java | 3 +- Mage.Sets/src/mage/cards/b/BountyAgent.java | 3 +- Mage.Sets/src/mage/cards/b/BurningEarth.java | 3 +- .../src/mage/cards/c/CabalStronghold.java | 3 +- Mage.Sets/src/mage/cards/c/CanopyVista.java | 3 +- Mage.Sets/src/mage/cards/c/CaptainSisay.java | 3 +- Mage.Sets/src/mage/cards/c/CastDown.java | 3 +- .../src/mage/cards/c/CathedralOfSerra.java | 3 +- .../src/mage/cards/c/ChillToTheBone.java | 3 +- Mage.Sets/src/mage/cards/c/CinderGlade.java | 3 +- .../src/mage/cards/c/CircuitousRoute.java | 3 +- Mage.Sets/src/mage/cards/c/ColdSnap.java | 3 +- Mage.Sets/src/mage/cards/c/ConiferWurm.java | 3 +- Mage.Sets/src/mage/cards/c/Cytoshape.java | 3 +- Mage.Sets/src/mage/cards/d/DayOfDestiny.java | 3 +- Mage.Sets/src/mage/cards/d/DeadOfWinter.java | 5 +- Mage.Sets/src/mage/cards/d/Detritivore.java | 3 +- Mage.Sets/src/mage/cards/d/DiamondFaerie.java | 3 +- .../src/mage/cards/d/DirectorKrennic.java | 3 +- Mage.Sets/src/mage/cards/d/DistrictGuide.java | 3 +- .../mage/cards/d/DjinnOfInfiniteDeceits.java | 3 +- .../src/mage/cards/d/DriftOfTheDead.java | 3 +- Mage.Sets/src/mage/cards/d/DroidFactory.java | 3 +- Mage.Sets/src/mage/cards/e/EarlyHarvest.java | 3 +- Mage.Sets/src/mage/cards/e/Earthcraft.java | 3 +- Mage.Sets/src/mage/cards/e/EiganjoCastle.java | 3 +- Mage.Sets/src/mage/cards/e/EmpressGalina.java | 3 +- Mage.Sets/src/mage/cards/e/Encroach.java | 3 +- Mage.Sets/src/mage/cards/e/EsperPanorama.java | 3 +- .../src/mage/cards/e/EverythingamajigB.java | 3 +- Mage.Sets/src/mage/cards/e/Excavator.java | 3 +- Mage.Sets/src/mage/cards/e/Extirpate.java | 3 +- .../src/mage/cards/e/EyeOfSingularity.java | 5 +- Mage.Sets/src/mage/cards/f/FieldOfRuin.java | 3 +- .../src/mage/cards/f/FieldmistBorderpost.java | 3 +- .../src/mage/cards/f/FirewildBorderpost.java | 3 +- .../src/mage/cards/f/FlowerFlourish.java | 3 +- .../src/mage/cards/f/FreyalisesRadiance.java | 3 +- Mage.Sets/src/mage/cards/g/GaeasTouch.java | 3 +- .../src/mage/cards/g/GangrenousZombies.java | 3 +- .../src/mage/cards/g/GargantuanGorilla.java | 3 +- .../src/mage/cards/g/GatecreeperVine.java | 3 +- .../src/mage/cards/g/GauntletOfPower.java | 3 +- .../src/mage/cards/g/GlacialCrevasses.java | 3 +- .../src/mage/cards/g/GlacialRevelation.java | 3 +- .../src/mage/cards/g/GoryosVengeance.java | 3 +- .../src/mage/cards/g/GrixisPanorama.java | 3 +- .../src/mage/cards/h/HallowedGround.java | 3 +- .../mage/cards/h/HeidarRimewindMaster.java | 3 +- Mage.Sets/src/mage/cards/h/HeroesPodium.java | 7 +- Mage.Sets/src/mage/cards/h/HerosBlade.java | 3 +- Mage.Sets/src/mage/cards/h/HerosDemise.java | 3 +- .../src/mage/cards/h/HonorWornShaku.java | 3 +- Mage.Sets/src/mage/cards/i/IceFangCoatl.java | 3 +- .../src/mage/cards/i/IcebergCancrix.java | 3 +- Mage.Sets/src/mage/cards/i/Imperiosaur.java | 3 +- Mage.Sets/src/mage/cards/i/IntoTheNorth.java | 3 +- .../mage/cards/i/IwamoriOfTheOpenFist.java | 3 +- .../cards/j/JaliraMasterPolymorphist.java | 3 +- Mage.Sets/src/mage/cards/j/JediEnclave.java | 3 +- Mage.Sets/src/mage/cards/j/JundPanorama.java | 3 +- Mage.Sets/src/mage/cards/j/JungleVillage.java | 3 +- .../src/mage/cards/k/KamahlsDruidicVow.java | 3 +- Mage.Sets/src/mage/cards/k/Karakas.java | 3 +- .../src/mage/cards/k/KarplusanGiant.java | 3 +- .../src/mage/cards/k/KashiTribeElite.java | 3 +- .../src/mage/cards/k/KethisTheHiddenHand.java | 5 +- .../mage/cards/k/KikiJikiMirrorBreaker.java | 3 +- Mage.Sets/src/mage/cards/k/KitsuneHealer.java | 3 +- Mage.Sets/src/mage/cards/k/KondasBanner.java | 3 +- .../src/mage/cards/k/KondasHatamoto.java | 3 +- .../src/mage/cards/l/LayBareTheHeart.java | 3 +- .../src/mage/cards/l/LegionsOfLimDul.java | 3 +- Mage.Sets/src/mage/cards/l/Lifespinner.java | 3 +- .../cards/l/LilianaDefiantNecromancer.java | 3 +- Mage.Sets/src/mage/cards/l/LivonyaSilone.java | 3 +- Mage.Sets/src/mage/cards/l/Lobotomy.java | 3 +- .../src/mage/cards/l/LoyalRetainers.java | 3 +- .../src/mage/cards/m/MagusOfTheMoon.java | 3 +- .../src/mage/cards/m/MaritLagesSlumber.java | 3 +- .../src/mage/cards/m/MercadiasDownfall.java | 3 +- .../cards/m/MinamoSchoolAtWatersEdge.java | 3 +- Mage.Sets/src/mage/cards/m/Mirrorweave.java | 3 +- .../src/mage/cards/m/MistveinBorderpost.java | 3 +- .../src/mage/cards/m/MobilizedDistrict.java | 3 +- .../src/mage/cards/m/MountainStronghold.java | 3 +- Mage.Sets/src/mage/cards/m/MoxAmber.java | 3 +- .../src/mage/cards/m/MyriadLandscape.java | 3 +- Mage.Sets/src/mage/cards/n/NayaPanorama.java | 3 +- .../src/mage/cards/n/NicolBolasDragonGod.java | 3 +- .../src/mage/cards/n/NissaVastwoodSeer.java | 3 +- .../src/mage/cards/n/NissasPilgrimage.java | 3 +- Mage.Sets/src/mage/cards/n/NissasTriumph.java | 3 +- Mage.Sets/src/mage/cards/o/OhranYeti.java | 3 +- .../cards/o/OkinaTempleToTheGrandfathers.java | 3 +- Mage.Sets/src/mage/cards/o/OldFogey.java | 3 +- Mage.Sets/src/mage/cards/o/OnThinIce.java | 3 +- Mage.Sets/src/mage/cards/o/OpenTheGates.java | 3 +- Mage.Sets/src/mage/cards/o/Ovinomancer.java | 3 +- Mage.Sets/src/mage/cards/p/PilgrimsEye.java | 3 +- Mage.Sets/src/mage/cards/p/PrairieStream.java | 3 +- Mage.Sets/src/mage/cards/p/PriceOfFame.java | 3 +- .../cards/p/PrimevalsGloriousRebirth.java | 3 +- .../src/mage/cards/p/PulseOfLlanowar.java | 3 +- .../cards/r/RekiTheHistoryOfKamigawa.java | 3 +- Mage.Sets/src/mage/cards/r/RimeDryad.java | 3 +- Mage.Sets/src/mage/cards/r/RimeTender.java | 3 +- .../src/mage/cards/r/RimeTransfusion.java | 3 +- .../src/mage/cards/r/RimefeatherOwl.java | 4 +- .../src/mage/cards/r/RimewindCryomancer.java | 3 +- .../src/mage/cards/r/RimewindTaskmage.java | 3 +- Mage.Sets/src/mage/cards/r/RonomHulk.java | 3 +- Mage.Sets/src/mage/cards/r/RonomSerpent.java | 5 +- Mage.Sets/src/mage/cards/s/SeafarersQuay.java | 3 +- Mage.Sets/src/mage/cards/s/ShefetMonitor.java | 3 +- .../cards/s/ShinkaTheBloodsoakedKeep.java | 3 +- .../mage/cards/s/ShizoDeathsStorehouse.java | 3 +- .../cards/s/SisayWeatherlightCaptain.java | 3 +- Mage.Sets/src/mage/cards/s/SithRuins.java | 3 +- Mage.Sets/src/mage/cards/s/Skred.java | 3 +- .../src/mage/cards/s/SmolderingMarsh.java | 3 +- Mage.Sets/src/mage/cards/s/SnowDevil.java | 3 +- Mage.Sets/src/mage/cards/s/Snowblind.java | 3 +- .../src/mage/cards/s/SpatulaOfTheAges.java | 3 +- Mage.Sets/src/mage/cards/s/StarCompass.java | 3 +- .../src/mage/cards/s/StormElemental.java | 3 +- Mage.Sets/src/mage/cards/s/SunkenHollow.java | 3 +- Mage.Sets/src/mage/cards/s/Sunstone.java | 3 +- .../src/mage/cards/s/SurgicalExtraction.java | 3 +- .../src/mage/cards/s/SwordOfTheChosen.java | 3 +- Mage.Sets/src/mage/cards/t/TempestDjinn.java | 3 +- .../src/mage/cards/t/TenzaGodosMaul.java | 3 +- .../src/mage/cards/t/ThaliasLancers.java | 3 +- .../src/mage/cards/t/TheBirthOfMeletis.java | 3 +- .../src/mage/cards/t/TheCircleOfLoyalty.java | 3 +- Mage.Sets/src/mage/cards/t/ThermalFlux.java | 5 +- .../mage/cards/t/TilonallisSkinshifter.java | 3 +- Mage.Sets/src/mage/cards/t/TimeOfNeed.java | 3 +- Mage.Sets/src/mage/cards/t/TradeCaravan.java | 3 +- Mage.Sets/src/mage/cards/t/TsaboTavoc.java | 5 +- .../src/mage/cards/u/UnderworldSlums.java | 3 +- Mage.Sets/src/mage/cards/u/UnholyCitadel.java | 3 +- .../src/mage/cards/u/UrzasRuinousBlast.java | 3 +- Mage.Sets/src/mage/cards/v/VassalsDuty.java | 3 +- .../src/mage/cards/v/VeinfireBorderpost.java | 3 +- Mage.Sets/src/mage/cards/v/VisceridDrone.java | 3 +- .../src/mage/cards/v/VolcanicOffering.java | 5 +- Mage.Sets/src/mage/cards/w/WaveOfVitriol.java | 3 +- Mage.Sets/src/mage/cards/w/Whiteout.java | 3 +- .../src/mage/cards/w/WildernessElemental.java | 3 +- .../src/mage/cards/w/WildfieldBorderpost.java | 3 +- Mage.Sets/src/mage/cards/w/WillowSatyr.java | 3 +- Mage.Sets/src/mage/cards/w/WintersNight.java | 4 +- Mage.Sets/src/mage/cards/w/WintersRest.java | 3 +- .../src/mage/cards/w/WitheringWisps.java | 3 +- .../src/mage/cards/w/WoodlandBellower.java | 3 +- .../src/mage/cards/w/WoollyMammoths.java | 3 +- .../src/mage/cards/w/WorldBottlingKit.java | 3 +- .../src/mage/cards/y/YomijiWhoBarsTheWay.java | 3 +- Mage.Sets/src/mage/cards/z/ZombieMusher.java | 3 +- .../common/LegendarySpellAbility.java | 3 +- .../abilities/costs/mana/SnowManaCost.java | 3 +- .../main/java/mage/constants/SuperType.java | 30 ++- .../main/java/mage/filter/StaticFilters.java | 3 +- .../filter/common/FilterBasicLandCard.java | 3 +- .../mage/filter/common/FilterLandCard.java | 3 +- .../filter/common/FilterLandPermanent.java | 5 +- .../mageobject/SupertypePredicate.java | 30 --- Mage/src/main/java/mage/game/GameImpl.java | 3 +- .../main/java/mage/game/combat/Combat.java | 227 +++++++++--------- .../target/common/TargetBasicLandCard.java | 3 +- .../common/TargetNonBasicLandPermanent.java | 3 +- 190 files changed, 341 insertions(+), 529 deletions(-) delete mode 100644 Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java diff --git a/Mage.Sets/src/mage/cards/a/AbominableTreefolk.java b/Mage.Sets/src/mage/cards/a/AbominableTreefolk.java index bceb6ee985..6e6ffbca3b 100644 --- a/Mage.Sets/src/mage/cards/a/AbominableTreefolk.java +++ b/Mage.Sets/src/mage/cards/a/AbominableTreefolk.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetOpponentsCreaturePermanent; import java.util.UUID; @@ -28,7 +27,7 @@ public final class AbominableTreefolk extends CardImpl { private static final FilterPermanent filter = new FilterControlledPermanent("snow permanents you control"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter); diff --git a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java index dc306a4c8c..7d77b6799d 100644 --- a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java +++ b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java @@ -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.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import java.util.UUID; @@ -38,7 +37,7 @@ public final class AcclaimedContender extends CardImpl { SubType.AURA.getPredicate(), SubType.EQUIPMENT.getPredicate(), Predicates.and( - new SupertypePredicate(SuperType.LEGENDARY), + SuperType.LEGENDARY.getPredicate(), CardType.ARTIFACT.getPredicate() ) )); diff --git a/Mage.Sets/src/mage/cards/a/AdventurersGuildhouse.java b/Mage.Sets/src/mage/cards/a/AdventurersGuildhouse.java index f52a02aa30..0d65831b1f 100644 --- a/Mage.Sets/src/mage/cards/a/AdventurersGuildhouse.java +++ b/Mage.Sets/src/mage/cards/a/AdventurersGuildhouse.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class AdventurersGuildhouse extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public AdventurersGuildhouse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlpineMoon.java b/Mage.Sets/src/mage/cards/a/AlpineMoon.java index 364fb82893..779769536a 100644 --- a/Mage.Sets/src/mage/cards/a/AlpineMoon.java +++ b/Mage.Sets/src/mage/cards/a/AlpineMoon.java @@ -13,7 +13,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -51,7 +50,7 @@ class AlpineMoonEffect extends ContinuousEffectImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } public AlpineMoonEffect() { diff --git a/Mage.Sets/src/mage/cards/a/Anathemancer.java b/Mage.Sets/src/mage/cards/a/Anathemancer.java index 95fec16758..0eb055aa48 100644 --- a/Mage.Sets/src/mage/cards/a/Anathemancer.java +++ b/Mage.Sets/src/mage/cards/a/Anathemancer.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.target.TargetPlayer; @@ -63,7 +62,7 @@ class AnathemancerCount implements DynamicValue { } FilterLandPermanent filter = new FilterLandPermanent(); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); filter.add(new ControllerIdPredicate(sourceAbility.getFirstTarget())); return game.getBattlefield().count(filter, sourceAbility.getSourceId(), sourceAbility.getControllerId(), game); diff --git a/Mage.Sets/src/mage/cards/a/ArcticFoxes.java b/Mage.Sets/src/mage/cards/a/ArcticFoxes.java index a7a503331c..b658e56e0e 100644 --- a/Mage.Sets/src/mage/cards/a/ArcticFoxes.java +++ b/Mage.Sets/src/mage/cards/a/ArcticFoxes.java @@ -13,7 +13,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.PowerPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import java.util.UUID; @@ -60,7 +59,7 @@ enum ArcticFoxesCondition implements Condition { private static final FilterPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } @Override diff --git a/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java b/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java index 60f5990d5a..473a370809 100644 --- a/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java +++ b/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java @@ -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.SupertypePredicate; /** * @@ -25,7 +24,7 @@ public final class ArenaOfTheAncients extends CardImpl { private static final FilterCreaturePermanent legendaryFilter = new FilterCreaturePermanent("legendary creatures"); static { - legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); + legendaryFilter.add(SuperType.LEGENDARY.getPredicate()); } public ArenaOfTheAncients(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArvadTheCursed.java b/Mage.Sets/src/mage/cards/a/ArvadTheCursed.java index 259b77902d..1a6fe19ddb 100644 --- a/Mage.Sets/src/mage/cards/a/ArvadTheCursed.java +++ b/Mage.Sets/src/mage/cards/a/ArvadTheCursed.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** @@ -27,7 +26,7 @@ public final class ArvadTheCursed extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creatures"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public ArvadTheCursed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Avalanche.java b/Mage.Sets/src/mage/cards/a/Avalanche.java index 703bd8f95a..9f4830420c 100644 --- a/Mage.Sets/src/mage/cards/a/Avalanche.java +++ b/Mage.Sets/src/mage/cards/a/Avalanche.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.target.TargetPermanent; import mage.target.targetadjustment.TargetAdjuster; @@ -44,7 +43,7 @@ enum AvalancheAdjuster implements TargetAdjuster { private static final FilterPermanent filter = new FilterLandPermanent("snow lands"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } @Override diff --git a/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java b/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java index b79f8a8a8b..9cc857ed15 100644 --- a/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java +++ b/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -20,7 +19,7 @@ public final class AyumiTheLastVisitor extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("Legendary land"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public AyumiTheLastVisitor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BalduvianConjurer.java b/Mage.Sets/src/mage/cards/b/BalduvianConjurer.java index e2a00d7149..2258b7a098 100644 --- a/Mage.Sets/src/mage/cards/b/BalduvianConjurer.java +++ b/Mage.Sets/src/mage/cards/b/BalduvianConjurer.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.permanent.token.custom.CreatureToken; import mage.target.TargetPermanent; @@ -25,7 +24,7 @@ public final class BalduvianConjurer extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public BalduvianConjurer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BalduvianFrostwaker.java b/Mage.Sets/src/mage/cards/b/BalduvianFrostwaker.java index 2dfa74a2a6..4f8558c999 100644 --- a/Mage.Sets/src/mage/cards/b/BalduvianFrostwaker.java +++ b/Mage.Sets/src/mage/cards/b/BalduvianFrostwaker.java @@ -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.SupertypePredicate; import mage.game.permanent.token.TokenImpl; import mage.target.TargetPermanent; @@ -26,7 +25,7 @@ public final class BalduvianFrostwaker extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public BalduvianFrostwaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BantPanorama.java b/Mage.Sets/src/mage/cards/b/BantPanorama.java index 49246b0c1f..352ec4cef7 100644 --- a/Mage.Sets/src/mage/cards/b/BantPanorama.java +++ b/Mage.Sets/src/mage/cards/b/BantPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -26,7 +25,7 @@ public final class BantPanorama extends CardImpl { static { filter.add(CardType.LAND.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.FOREST.getPredicate(), SubType.PLAINS.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java b/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java index 6cca792f35..55b52ac7b0 100644 --- a/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java +++ b/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class BenalishHonorGuard extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledCreaturePermanent("legendary creature you control"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public BenalishHonorGuard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BlackbladeReforged.java b/Mage.Sets/src/mage/cards/b/BlackbladeReforged.java index a3ab6f157a..5750ed8ae1 100644 --- a/Mage.Sets/src/mage/cards/b/BlackbladeReforged.java +++ b/Mage.Sets/src/mage/cards/b/BlackbladeReforged.java @@ -17,7 +17,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import java.util.UUID; @@ -32,7 +31,7 @@ public final class BlackbladeReforged extends CardImpl { = new FilterControlledCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public BlackbladeReforged(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BlindWithAnger.java b/Mage.Sets/src/mage/cards/b/BlindWithAnger.java index cacea89330..b46201f51d 100644 --- a/Mage.Sets/src/mage/cards/b/BlindWithAnger.java +++ b/Mage.Sets/src/mage/cards/b/BlindWithAnger.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -25,7 +24,7 @@ public final class BlindWithAnger extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public BlindWithAnger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Blizzard.java b/Mage.Sets/src/mage/cards/b/Blizzard.java index f6cc27d3ad..d5c68fa746 100644 --- a/Mage.Sets/src/mage/cards/b/Blizzard.java +++ b/Mage.Sets/src/mage/cards/b/Blizzard.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -32,7 +31,7 @@ public final class Blizzard extends CardImpl { private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with flying"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter2.add(new AbilityPredicate(FlyingAbility.class)); } diff --git a/Mage.Sets/src/mage/cards/b/BlizzardStrix.java b/Mage.Sets/src/mage/cards/b/BlizzardStrix.java index b3defdb175..aef99000ae 100644 --- a/Mage.Sets/src/mage/cards/b/BlizzardStrix.java +++ b/Mage.Sets/src/mage/cards/b/BlizzardStrix.java @@ -16,7 +16,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -37,7 +36,7 @@ public final class BlizzardStrix extends CardImpl { static { filter.add(AnotherPredicate.instance); filter2.add(AnotherPredicate.instance); - filter2.add(new SupertypePredicate(SuperType.SNOW)); + filter2.add(SuperType.SNOW.getPredicate()); } private static final Condition condition = new PermanentsOnTheBattlefieldCondition(filter2); diff --git a/Mage.Sets/src/mage/cards/b/BloodMoon.java b/Mage.Sets/src/mage/cards/b/BloodMoon.java index 1eef0357ac..9549501451 100644 --- a/Mage.Sets/src/mage/cards/b/BloodMoon.java +++ b/Mage.Sets/src/mage/cards/b/BloodMoon.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -46,7 +45,7 @@ class BloodMoonEffect extends ContinuousEffectImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } BloodMoonEffect() { diff --git a/Mage.Sets/src/mage/cards/b/BountyAgent.java b/Mage.Sets/src/mage/cards/b/BountyAgent.java index 28df060c84..a31d193b00 100644 --- a/Mage.Sets/src/mage/cards/b/BountyAgent.java +++ b/Mage.Sets/src/mage/cards/b/BountyAgent.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -28,7 +27,7 @@ public final class BountyAgent extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("legendary permanent that's an artifact, creature, or enchantment"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(Predicates.or( CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/b/BurningEarth.java b/Mage.Sets/src/mage/cards/b/BurningEarth.java index 901829dc53..b5371d4fd0 100644 --- a/Mage.Sets/src/mage/cards/b/BurningEarth.java +++ b/Mage.Sets/src/mage/cards/b/BurningEarth.java @@ -11,7 +11,6 @@ import mage.constants.SetTargetPointer; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -22,7 +21,7 @@ public final class BurningEarth extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("a player taps a nonbasic land"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } public BurningEarth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CabalStronghold.java b/Mage.Sets/src/mage/cards/c/CabalStronghold.java index a3ea0c289b..6892bd32b9 100644 --- a/Mage.Sets/src/mage/cards/c/CabalStronghold.java +++ b/Mage.Sets/src/mage/cards/c/CabalStronghold.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @author JRHerlehy @@ -27,7 +26,7 @@ public final class CabalStronghold extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("basic Swamp you control"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.SWAMP.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/c/CanopyVista.java b/Mage.Sets/src/mage/cards/c/CanopyVista.java index 80885f0885..8256840750 100644 --- a/Mage.Sets/src/mage/cards/c/CanopyVista.java +++ b/Mage.Sets/src/mage/cards/c/CanopyVista.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @author fireshoes @@ -27,7 +26,7 @@ public final class CanopyVista extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public CanopyVista(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CaptainSisay.java b/Mage.Sets/src/mage/cards/c/CaptainSisay.java index 5f782f4c93..c76a5812e0 100644 --- a/Mage.Sets/src/mage/cards/c/CaptainSisay.java +++ b/Mage.Sets/src/mage/cards/c/CaptainSisay.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -25,7 +24,7 @@ public final class CaptainSisay extends CardImpl { private static final FilterCard filter = new FilterCard("legendary card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public CaptainSisay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CastDown.java b/Mage.Sets/src/mage/cards/c/CastDown.java index 7d33160225..bb389ac15b 100644 --- a/Mage.Sets/src/mage/cards/c/CastDown.java +++ b/Mage.Sets/src/mage/cards/c/CastDown.java @@ -7,7 +7,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; import java.util.UUID; @@ -16,7 +15,7 @@ public final class CastDown extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public CastDown(UUID ownerId, CardSetInfo cardSetInfo){ diff --git a/Mage.Sets/src/mage/cards/c/CathedralOfSerra.java b/Mage.Sets/src/mage/cards/c/CathedralOfSerra.java index b570289989..854dca56f9 100644 --- a/Mage.Sets/src/mage/cards/c/CathedralOfSerra.java +++ b/Mage.Sets/src/mage/cards/c/CathedralOfSerra.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class CathedralOfSerra extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public CathedralOfSerra(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChillToTheBone.java b/Mage.Sets/src/mage/cards/c/ChillToTheBone.java index b6252925cc..a554de41de 100644 --- a/Mage.Sets/src/mage/cards/c/ChillToTheBone.java +++ b/Mage.Sets/src/mage/cards/c/ChillToTheBone.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -21,7 +20,7 @@ public final class ChillToTheBone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonsnow creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); + filter.add(Predicates.not(SuperType.SNOW.getPredicate())); } public ChillToTheBone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CinderGlade.java b/Mage.Sets/src/mage/cards/c/CinderGlade.java index af4d78ab35..236725d4f5 100644 --- a/Mage.Sets/src/mage/cards/c/CinderGlade.java +++ b/Mage.Sets/src/mage/cards/c/CinderGlade.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -28,7 +27,7 @@ public final class CinderGlade extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public CinderGlade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CircuitousRoute.java b/Mage.Sets/src/mage/cards/c/CircuitousRoute.java index 40c08bb80f..104fbf71c8 100644 --- a/Mage.Sets/src/mage/cards/c/CircuitousRoute.java +++ b/Mage.Sets/src/mage/cards/c/CircuitousRoute.java @@ -9,7 +9,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -25,7 +24,7 @@ public final class CircuitousRoute extends CardImpl { filter.add(Predicates.or( Predicates.and( CardType.LAND.getPredicate(), - new SupertypePredicate(SuperType.BASIC) + SuperType.BASIC.getPredicate() ), SubType.GATE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/c/ColdSnap.java b/Mage.Sets/src/mage/cards/c/ColdSnap.java index 8772ae0a60..dc1bae6331 100644 --- a/Mage.Sets/src/mage/cards/c/ColdSnap.java +++ b/Mage.Sets/src/mage/cards/c/ColdSnap.java @@ -12,7 +12,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; @@ -47,7 +46,7 @@ class ColdSnapDamageTargetEffect extends OneShotEffect{ private static final FilterLandPermanent filter = new FilterLandPermanent("snow lands"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public ColdSnapDamageTargetEffect() diff --git a/Mage.Sets/src/mage/cards/c/ConiferWurm.java b/Mage.Sets/src/mage/cards/c/ConiferWurm.java index 26efba0002..48d84ebe37 100644 --- a/Mage.Sets/src/mage/cards/c/ConiferWurm.java +++ b/Mage.Sets/src/mage/cards/c/ConiferWurm.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import java.util.UUID; @@ -28,7 +27,7 @@ public final class ConiferWurm extends CardImpl { = new FilterControlledPermanent("the number of snow permanents you control"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter); diff --git a/Mage.Sets/src/mage/cards/c/Cytoshape.java b/Mage.Sets/src/mage/cards/c/Cytoshape.java index 7eb623f60a..9777bd95fe 100644 --- a/Mage.Sets/src/mage/cards/c/Cytoshape.java +++ b/Mage.Sets/src/mage/cards/c/Cytoshape.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.Target; @@ -28,7 +27,7 @@ public final class Cytoshape extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public Cytoshape(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DayOfDestiny.java b/Mage.Sets/src/mage/cards/d/DayOfDestiny.java index 29d59617c4..90d991c187 100644 --- a/Mage.Sets/src/mage/cards/d/DayOfDestiny.java +++ b/Mage.Sets/src/mage/cards/d/DayOfDestiny.java @@ -11,7 +11,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -22,7 +21,7 @@ public final class DayOfDestiny extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Legendary creatures"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public DayOfDestiny(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeadOfWinter.java b/Mage.Sets/src/mage/cards/d/DeadOfWinter.java index b4af5ddadc..891d2ef78d 100644 --- a/Mage.Sets/src/mage/cards/d/DeadOfWinter.java +++ b/Mage.Sets/src/mage/cards/d/DeadOfWinter.java @@ -12,7 +12,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import java.util.UUID; @@ -25,8 +24,8 @@ public final class DeadOfWinter extends CardImpl { private static final FilterPermanent filter2 = new FilterControlledPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); - filter2.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(Predicates.not(SuperType.SNOW.getPredicate())); + filter2.add(SuperType.SNOW.getPredicate()); } private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter2, -1); diff --git a/Mage.Sets/src/mage/cards/d/Detritivore.java b/Mage.Sets/src/mage/cards/d/Detritivore.java index 37655a7a31..4eb96e2ad7 100644 --- a/Mage.Sets/src/mage/cards/d/Detritivore.java +++ b/Mage.Sets/src/mage/cards/d/Detritivore.java @@ -22,7 +22,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -102,7 +101,7 @@ class NonBasicLandsInOpponentsGraveyards implements DynamicValue { static { filter.add(CardType.LAND.getPredicate()); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } @Override diff --git a/Mage.Sets/src/mage/cards/d/DiamondFaerie.java b/Mage.Sets/src/mage/cards/d/DiamondFaerie.java index 99a752f20f..d880b7b9e3 100644 --- a/Mage.Sets/src/mage/cards/d/DiamondFaerie.java +++ b/Mage.Sets/src/mage/cards/d/DiamondFaerie.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class DiamondFaerie extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Snow creatures"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public DiamondFaerie(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DirectorKrennic.java b/Mage.Sets/src/mage/cards/d/DirectorKrennic.java index 6602f49e98..7478578791 100644 --- a/Mage.Sets/src/mage/cards/d/DirectorKrennic.java +++ b/Mage.Sets/src/mage/cards/d/DirectorKrennic.java @@ -13,7 +13,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.permanent.token.TrooperToken2; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class DirectorKrennic extends CardImpl { static { filterLand.add(CardType.LAND.getPredicate()); - filterLand.add(new SupertypePredicate(SuperType.BASIC)); + filterLand.add(SuperType.BASIC.getPredicate()); } public DirectorKrennic(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DistrictGuide.java b/Mage.Sets/src/mage/cards/d/DistrictGuide.java index f2a12ef805..ceab22ff44 100644 --- a/Mage.Sets/src/mage/cards/d/DistrictGuide.java +++ b/Mage.Sets/src/mage/cards/d/DistrictGuide.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -27,7 +26,7 @@ public final class DistrictGuide extends CardImpl { filter.add(Predicates.or( Predicates.and( CardType.LAND.getPredicate(), - new SupertypePredicate(SuperType.BASIC) + SuperType.BASIC.getPredicate() ), SubType.GATE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java b/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java index 4dc91e3f45..45f7f713ae 100644 --- a/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java +++ b/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -27,7 +26,7 @@ public final class DjinnOfInfiniteDeceits extends CardImpl { private static final String rule = "Exchange control of two target nonlegendary creatures"; private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public DjinnOfInfiniteDeceits(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java b/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java index cb8eb550b9..6ef0de4872 100644 --- a/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java +++ b/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -28,7 +27,7 @@ public final class DriftOfTheDead extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("snow lands you control"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(CardType.LAND.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/d/DroidFactory.java b/Mage.Sets/src/mage/cards/d/DroidFactory.java index e7085a8906..736b29a80c 100644 --- a/Mage.Sets/src/mage/cards/d/DroidFactory.java +++ b/Mage.Sets/src/mage/cards/d/DroidFactory.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.ArrayList; @@ -63,7 +62,7 @@ public final class DroidFactory extends CardImpl { subtypePredicates.add(SubType.PLAINS.getPredicate()); subtypePredicates.add(SubType.ISLAND.getPredicate()); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/e/EarlyHarvest.java b/Mage.Sets/src/mage/cards/e/EarlyHarvest.java index 414e8568ef..0ce1215a87 100644 --- a/Mage.Sets/src/mage/cards/e/EarlyHarvest.java +++ b/Mage.Sets/src/mage/cards/e/EarlyHarvest.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -44,7 +43,7 @@ class UntapAllLandsTargetEffect extends OneShotEffect { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public UntapAllLandsTargetEffect() { diff --git a/Mage.Sets/src/mage/cards/e/Earthcraft.java b/Mage.Sets/src/mage/cards/e/Earthcraft.java index af9a8424b8..dabc15ada1 100644 --- a/Mage.Sets/src/mage/cards/e/Earthcraft.java +++ b/Mage.Sets/src/mage/cards/e/Earthcraft.java @@ -14,7 +14,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledCreaturePermanent; @@ -30,7 +29,7 @@ public final class Earthcraft extends CardImpl { static { filterCreature.add(Predicates.not(TappedPredicate.instance)); filterLand.add(CardType.LAND.getPredicate()); - filterLand.add(new SupertypePredicate(SuperType.BASIC)); + filterLand.add(SuperType.BASIC.getPredicate()); } public Earthcraft(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EiganjoCastle.java b/Mage.Sets/src/mage/cards/e/EiganjoCastle.java index 2fc1a82e77..e326bd296b 100644 --- a/Mage.Sets/src/mage/cards/e/EiganjoCastle.java +++ b/Mage.Sets/src/mage/cards/e/EiganjoCastle.java @@ -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.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -24,7 +23,7 @@ public final class EiganjoCastle extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public EiganjoCastle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmpressGalina.java b/Mage.Sets/src/mage/cards/e/EmpressGalina.java index f07c72a432..dc81a4c902 100644 --- a/Mage.Sets/src/mage/cards/e/EmpressGalina.java +++ b/Mage.Sets/src/mage/cards/e/EmpressGalina.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -23,7 +22,7 @@ public final class EmpressGalina extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("legendary permanent"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public EmpressGalina(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Encroach.java b/Mage.Sets/src/mage/cards/e/Encroach.java index ee97c6745b..0ca80ad1a0 100644 --- a/Mage.Sets/src/mage/cards/e/Encroach.java +++ b/Mage.Sets/src/mage/cards/e/Encroach.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetOpponent; /** @@ -21,7 +20,7 @@ public final class Encroach extends CardImpl { private static final FilterCard filter = new FilterCard("a nonbasic land card"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); filter.add(CardType.LAND.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/e/EsperPanorama.java b/Mage.Sets/src/mage/cards/e/EsperPanorama.java index 905ba3f246..5c3fba203a 100644 --- a/Mage.Sets/src/mage/cards/e/EsperPanorama.java +++ b/Mage.Sets/src/mage/cards/e/EsperPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -27,7 +26,7 @@ public final class EsperPanorama extends CardImpl { static { filter.add(CardType.LAND.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.PLAINS.getPredicate(), SubType.ISLAND.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/e/EverythingamajigB.java b/Mage.Sets/src/mage/cards/e/EverythingamajigB.java index 4c87ca972a..8d81c09de1 100644 --- a/Mage.Sets/src/mage/cards/e/EverythingamajigB.java +++ b/Mage.Sets/src/mage/cards/e/EverythingamajigB.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.other.ExpansionSetPredicate; /** @@ -34,7 +33,7 @@ public final class EverythingamajigB extends CardImpl { static { filter.add(Predicates.and( - Predicates.not(new SupertypePredicate(SuperType.BASIC)), // all Un-set basic lands are black bordered cards, and thus illegal choices + Predicates.not(SuperType.BASIC.getPredicate()), // all Un-set basic lands are black bordered cards, and thus illegal choices Predicates.not(new NamePredicate("Steamflogger Boss")), // printed in Unstable with a black border Predicates.or(new ExpansionSetPredicate("UGL"), new ExpansionSetPredicate("UNH"), new ExpansionSetPredicate("UST")) )); diff --git a/Mage.Sets/src/mage/cards/e/Excavator.java b/Mage.Sets/src/mage/cards/e/Excavator.java index 7bd027d395..827f0d2c21 100644 --- a/Mage.Sets/src/mage/cards/e/Excavator.java +++ b/Mage.Sets/src/mage/cards/e/Excavator.java @@ -16,7 +16,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetControlledPermanent; @@ -31,7 +30,7 @@ public final class Excavator extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public Excavator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Extirpate.java b/Mage.Sets/src/mage/cards/e/Extirpate.java index f18fa00bb0..15daa5b04f 100644 --- a/Mage.Sets/src/mage/cards/e/Extirpate.java +++ b/Mage.Sets/src/mage/cards/e/Extirpate.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInGraveyard; @@ -34,7 +33,7 @@ public final class Extirpate extends CardImpl { private static final FilterCard filter = new FilterCard("card in a graveyard other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), SuperType.BASIC.getPredicate()))); } public Extirpate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java b/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java index d9619577b9..c3ba613992 100644 --- a/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java +++ b/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java @@ -13,7 +13,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -58,7 +57,7 @@ class EyeOfSingularityETBEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } EyeOfSingularityETBEffect() { @@ -146,7 +145,7 @@ class EyeOfSingularityTriggeredEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } EyeOfSingularityTriggeredEffect() { diff --git a/Mage.Sets/src/mage/cards/f/FieldOfRuin.java b/Mage.Sets/src/mage/cards/f/FieldOfRuin.java index 8070b83b55..c9422ac6e7 100644 --- a/Mage.Sets/src/mage/cards/f/FieldOfRuin.java +++ b/Mage.Sets/src/mage/cards/f/FieldOfRuin.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.StaticFilters; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.players.Player; @@ -38,7 +37,7 @@ public final class FieldOfRuin extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } public FieldOfRuin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FieldmistBorderpost.java b/Mage.Sets/src/mage/cards/f/FieldmistBorderpost.java index 476cd59c68..132176753f 100644 --- a/Mage.Sets/src/mage/cards/f/FieldmistBorderpost.java +++ b/Mage.Sets/src/mage/cards/f/FieldmistBorderpost.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class FieldmistBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public FieldmistBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java b/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java index 94b05cb3df..20c92155f1 100644 --- a/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java +++ b/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class FirewildBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public FirewildBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FlowerFlourish.java b/Mage.Sets/src/mage/cards/f/FlowerFlourish.java index 78d730682b..eaefaeff30 100644 --- a/Mage.Sets/src/mage/cards/f/FlowerFlourish.java +++ b/Mage.Sets/src/mage/cards/f/FlowerFlourish.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -25,7 +24,7 @@ public final class FlowerFlourish extends SplitCard { = new FilterCard("basic Forest or Plains card"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.FOREST.getPredicate(), SubType.PLAINS.getPredicate() diff --git a/Mage.Sets/src/mage/cards/f/FreyalisesRadiance.java b/Mage.Sets/src/mage/cards/f/FreyalisesRadiance.java index d0c902caa7..534e55ad7a 100644 --- a/Mage.Sets/src/mage/cards/f/FreyalisesRadiance.java +++ b/Mage.Sets/src/mage/cards/f/FreyalisesRadiance.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -25,7 +24,7 @@ public final class FreyalisesRadiance extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("snow permanents"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public FreyalisesRadiance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GaeasTouch.java b/Mage.Sets/src/mage/cards/g/GaeasTouch.java index 16577c9405..7f653d9396 100644 --- a/Mage.Sets/src/mage/cards/g/GaeasTouch.java +++ b/Mage.Sets/src/mage/cards/g/GaeasTouch.java @@ -12,7 +12,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -25,7 +24,7 @@ public final class GaeasTouch extends CardImpl { // You may put a basic Forest card from your hand onto the battlefield. Activate this ability only any time you could cast a sorcery and only once each turn. FilterCard filter = new FilterCard("basic Forest card"); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.FOREST.getPredicate()); LimitedTimesPerTurnActivatedAbility ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new PutCardFromHandOntoBattlefieldEffect(filter), new GenericManaCost(0), 1); diff --git a/Mage.Sets/src/mage/cards/g/GangrenousZombies.java b/Mage.Sets/src/mage/cards/g/GangrenousZombies.java index 3021158433..6180bff2ec 100644 --- a/Mage.Sets/src/mage/cards/g/GangrenousZombies.java +++ b/Mage.Sets/src/mage/cards/g/GangrenousZombies.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import java.util.UUID; @@ -29,7 +28,7 @@ public final class GangrenousZombies extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(SubType.SWAMP.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/g/GargantuanGorilla.java b/Mage.Sets/src/mage/cards/g/GargantuanGorilla.java index 72bd1170fb..0d0aaf7b2f 100644 --- a/Mage.Sets/src/mage/cards/g/GargantuanGorilla.java +++ b/Mage.Sets/src/mage/cards/g/GargantuanGorilla.java @@ -16,7 +16,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -65,7 +64,7 @@ class GargantuanGorillaSacrificeEffect extends OneShotEffect { static { filter.add(SubType.FOREST.getPredicate()); - filterSnow.add(new SupertypePredicate(SuperType.SNOW)); + filterSnow.add(SuperType.SNOW.getPredicate()); } public GargantuanGorillaSacrificeEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GatecreeperVine.java b/Mage.Sets/src/mage/cards/g/GatecreeperVine.java index 70138c00c4..d25f037435 100644 --- a/Mage.Sets/src/mage/cards/g/GatecreeperVine.java +++ b/Mage.Sets/src/mage/cards/g/GatecreeperVine.java @@ -13,7 +13,6 @@ import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.UUID; @@ -30,7 +29,7 @@ public final class GatecreeperVine extends CardImpl { Predicates.or( Predicates.and( CardType.LAND.getPredicate(), - new SupertypePredicate(SuperType.BASIC)), + SuperType.BASIC.getPredicate()), SubType.GATE.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/g/GauntletOfPower.java b/Mage.Sets/src/mage/cards/g/GauntletOfPower.java index 292d224f30..ffc69cd9ce 100644 --- a/Mage.Sets/src/mage/cards/g/GauntletOfPower.java +++ b/Mage.Sets/src/mage/cards/g/GauntletOfPower.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -35,7 +34,7 @@ public final class GauntletOfPower extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public GauntletOfPower(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java b/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java index 7750a3786c..fb2bd925fe 100644 --- a/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java +++ b/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -24,7 +23,7 @@ public final class GlacialCrevasses extends CardImpl { static { filter.add(SubType.MOUNTAIN.getPredicate()); - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public GlacialCrevasses(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlacialRevelation.java b/Mage.Sets/src/mage/cards/g/GlacialRevelation.java index 8821346301..0c14bd38de 100644 --- a/Mage.Sets/src/mage/cards/g/GlacialRevelation.java +++ b/Mage.Sets/src/mage/cards/g/GlacialRevelation.java @@ -12,7 +12,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -46,7 +45,7 @@ class GlacialRevelationEffect extends OneShotEffect { private static final FilterCard filter = new FilterPermanentCard("snow permanent cards"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } GlacialRevelationEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GoryosVengeance.java b/Mage.Sets/src/mage/cards/g/GoryosVengeance.java index 45b8fb8753..3a8621868a 100644 --- a/Mage.Sets/src/mage/cards/g/GoryosVengeance.java +++ b/Mage.Sets/src/mage/cards/g/GoryosVengeance.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -33,7 +32,7 @@ public final class GoryosVengeance extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("legendary creature card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public GoryosVengeance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java index c7b50df8d9..accf6f4dd5 100644 --- a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java +++ b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -27,7 +26,7 @@ public final class GrixisPanorama extends CardImpl { static { filter.add(CardType.LAND.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.ISLAND.getPredicate(), SubType.SWAMP.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/h/HallowedGround.java b/Mage.Sets/src/mage/cards/h/HallowedGround.java index 78b0b66327..8a855f2a63 100644 --- a/Mage.Sets/src/mage/cards/h/HallowedGround.java +++ b/Mage.Sets/src/mage/cards/h/HallowedGround.java @@ -14,7 +14,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class HallowedGround extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("nonsnow land you control"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); + filter.add(Predicates.not(SuperType.SNOW.getPredicate())); } public HallowedGround(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java index b204684e98..53d8b852b6 100644 --- a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java +++ b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java @@ -17,7 +17,6 @@ import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -29,7 +28,7 @@ public final class HeidarRimewindMaster extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public HeidarRimewindMaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeroesPodium.java b/Mage.Sets/src/mage/cards/h/HeroesPodium.java index 0c77aab946..d62456ce55 100644 --- a/Mage.Sets/src/mage/cards/h/HeroesPodium.java +++ b/Mage.Sets/src/mage/cards/h/HeroesPodium.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -31,7 +30,7 @@ public final class HeroesPodium extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Each legendary creature you control"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public HeroesPodium(UUID ownerId, CardSetInfo setInfo) { @@ -65,7 +64,7 @@ class HeroesPodiumLegendaryCount implements DynamicValue { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("other legendary creature you control"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } @Override @@ -98,7 +97,7 @@ class HeroesPodiumEffect extends OneShotEffect { private static final FilterCreatureCard filter = new FilterCreatureCard("a legendary creature card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public HeroesPodiumEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HerosBlade.java b/Mage.Sets/src/mage/cards/h/HerosBlade.java index 97a26c0584..4f4ba1e35a 100644 --- a/Mage.Sets/src/mage/cards/h/HerosBlade.java +++ b/Mage.Sets/src/mage/cards/h/HerosBlade.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -25,7 +24,7 @@ public final class HerosBlade extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("a legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/h/HerosDemise.java b/Mage.Sets/src/mage/cards/h/HerosDemise.java index 142f79adb2..98712ea3d0 100644 --- a/Mage.Sets/src/mage/cards/h/HerosDemise.java +++ b/Mage.Sets/src/mage/cards/h/HerosDemise.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -20,7 +19,7 @@ public final class HerosDemise extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public HerosDemise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java index b47eb2533a..f887aefa7c 100644 --- a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java +++ b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetControlledPermanent; @@ -28,7 +27,7 @@ public final class HonorWornShaku extends CardImpl { static { filter.add(Predicates.not(TappedPredicate.instance)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public HonorWornShaku(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IceFangCoatl.java b/Mage.Sets/src/mage/cards/i/IceFangCoatl.java index 8e15dc9c35..0e7f2a631b 100644 --- a/Mage.Sets/src/mage/cards/i/IceFangCoatl.java +++ b/Mage.Sets/src/mage/cards/i/IceFangCoatl.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import java.util.UUID; @@ -29,7 +28,7 @@ public final class IceFangCoatl extends CardImpl { private static final FilterPermanent filter = new FilterControlledPermanent(); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/i/IcebergCancrix.java b/Mage.Sets/src/mage/cards/i/IcebergCancrix.java index e502299ade..c0a59ad7b7 100644 --- a/Mage.Sets/src/mage/cards/i/IcebergCancrix.java +++ b/Mage.Sets/src/mage/cards/i/IcebergCancrix.java @@ -11,7 +11,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.TargetPlayer; @@ -26,7 +25,7 @@ public final class IcebergCancrix extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public IcebergCancrix(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/Imperiosaur.java b/Mage.Sets/src/mage/cards/i/Imperiosaur.java index 8eee244075..9ffe579113 100644 --- a/Mage.Sets/src/mage/cards/i/Imperiosaur.java +++ b/Mage.Sets/src/mage/cards/i/Imperiosaur.java @@ -11,7 +11,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -22,7 +21,7 @@ public final class Imperiosaur extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public Imperiosaur(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IntoTheNorth.java b/Mage.Sets/src/mage/cards/i/IntoTheNorth.java index e56c8805ab..2cdb237fdc 100644 --- a/Mage.Sets/src/mage/cards/i/IntoTheNorth.java +++ b/Mage.Sets/src/mage/cards/i/IntoTheNorth.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterLandCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -21,7 +20,7 @@ public final class IntoTheNorth extends CardImpl { private static final FilterLandCard filter = new FilterLandCard("snow land card"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public IntoTheNorth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java index 60aee16735..6af74e679a 100644 --- a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java +++ b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.Target; @@ -56,7 +55,7 @@ class IwamoriOfTheOpenFistEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("legendary creature card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(CardType.CREATURE.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java b/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java index 08335f6d3e..e42147258a 100644 --- a/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java +++ b/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.StaticFilters; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -30,7 +29,7 @@ public final class JaliraMasterPolymorphist extends CardImpl { private static final FilterCreatureCard filterCard = new FilterCreatureCard("nonlegendary creature card"); static { - filterCard.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filterCard.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public JaliraMasterPolymorphist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JediEnclave.java b/Mage.Sets/src/mage/cards/j/JediEnclave.java index 998f77e383..646df1fad9 100644 --- a/Mage.Sets/src/mage/cards/j/JediEnclave.java +++ b/Mage.Sets/src/mage/cards/j/JediEnclave.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.ArrayList; @@ -63,7 +62,7 @@ public final class JediEnclave extends CardImpl { subtypePredicates.add(SubType.PLAINS.getPredicate()); subtypePredicates.add(SubType.ISLAND.getPredicate()); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/j/JundPanorama.java b/Mage.Sets/src/mage/cards/j/JundPanorama.java index d5c941b3c0..8ec977e013 100644 --- a/Mage.Sets/src/mage/cards/j/JundPanorama.java +++ b/Mage.Sets/src/mage/cards/j/JundPanorama.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -28,7 +27,7 @@ public final class JundPanorama extends CardImpl { static { filter.add(CardType.LAND.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.SWAMP.getPredicate(), SubType.MOUNTAIN.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/j/JungleVillage.java b/Mage.Sets/src/mage/cards/j/JungleVillage.java index 32c7265bfb..6d47e99e27 100644 --- a/Mage.Sets/src/mage/cards/j/JungleVillage.java +++ b/Mage.Sets/src/mage/cards/j/JungleVillage.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.ArrayList; @@ -63,7 +62,7 @@ public final class JungleVillage extends CardImpl { subtypePredicates.add(SubType.MOUNTAIN.getPredicate()); subtypePredicates.add(SubType.FAERIE.getPredicate()); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java b/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java index bf86fd296e..f14f18ddf5 100644 --- a/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java +++ b/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java @@ -17,7 +17,6 @@ import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -77,7 +76,7 @@ class KamahlsDruidicVowEffect extends OneShotEffect { filter.add( Predicates.or( CardType.LAND.getPredicate(), - new SupertypePredicate(SuperType.LEGENDARY) + SuperType.LEGENDARY.getPredicate() )); TargetCard target1 = new TargetCard(0, Integer.MAX_VALUE, Zone.LIBRARY, filter); target1.setNotTarget(true); diff --git a/Mage.Sets/src/mage/cards/k/Karakas.java b/Mage.Sets/src/mage/cards/k/Karakas.java index 971738ff5b..3b3907a861 100644 --- a/Mage.Sets/src/mage/cards/k/Karakas.java +++ b/Mage.Sets/src/mage/cards/k/Karakas.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -24,7 +23,7 @@ public final class Karakas extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public Karakas(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KarplusanGiant.java b/Mage.Sets/src/mage/cards/k/KarplusanGiant.java index 9c1caee816..9fdb2cbe28 100644 --- a/Mage.Sets/src/mage/cards/k/KarplusanGiant.java +++ b/Mage.Sets/src/mage/cards/k/KarplusanGiant.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetControlledPermanent; @@ -28,7 +27,7 @@ public final class KarplusanGiant extends CardImpl { static { filter.add(Predicates.not(TappedPredicate.instance)); - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public KarplusanGiant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KashiTribeElite.java b/Mage.Sets/src/mage/cards/k/KashiTribeElite.java index 3aa21869c8..5fb4f70294 100644 --- a/Mage.Sets/src/mage/cards/k/KashiTribeElite.java +++ b/Mage.Sets/src/mage/cards/k/KashiTribeElite.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -25,7 +24,7 @@ public final class KashiTribeElite extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Legendary Snakes"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(SubType.SNAKE.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/k/KethisTheHiddenHand.java b/Mage.Sets/src/mage/cards/k/KethisTheHiddenHand.java index bb1d5204f3..ebb328aaa9 100644 --- a/Mage.Sets/src/mage/cards/k/KethisTheHiddenHand.java +++ b/Mage.Sets/src/mage/cards/k/KethisTheHiddenHand.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; @@ -30,8 +29,8 @@ public final class KethisTheHiddenHand extends CardImpl { private static final FilterCard filter2 = new FilterCard("legendary cards from your graveyard"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); - filter2.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); + filter2.add(SuperType.LEGENDARY.getPredicate()); } public KethisTheHiddenHand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java b/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java index c5b03a0f07..2122879c3e 100644 --- a/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java +++ b/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java @@ -20,7 +20,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetControlledCreaturePermanent; @@ -35,7 +34,7 @@ public final class KikiJikiMirrorBreaker extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("nonlegendary creature you control"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public KikiJikiMirrorBreaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KitsuneHealer.java b/Mage.Sets/src/mage/cards/k/KitsuneHealer.java index 9c2f75744d..d6969fe631 100644 --- a/Mage.Sets/src/mage/cards/k/KitsuneHealer.java +++ b/Mage.Sets/src/mage/cards/k/KitsuneHealer.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetAnyTarget; import mage.target.common.TargetCreaturePermanent; @@ -28,7 +27,7 @@ public final class KitsuneHealer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public KitsuneHealer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KondasBanner.java b/Mage.Sets/src/mage/cards/k/KondasBanner.java index 39ff2f9d87..fbe583449a 100644 --- a/Mage.Sets/src/mage/cards/k/KondasBanner.java +++ b/Mage.Sets/src/mage/cards/k/KondasBanner.java @@ -41,7 +41,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.Target; @@ -56,7 +55,7 @@ public final class KondasBanner extends CardImpl { private static final FilterControlledCreaturePermanent legendaryFilter = new FilterControlledCreaturePermanent("legendary creatures"); static { - legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); + legendaryFilter.add(SuperType.LEGENDARY.getPredicate()); } public KondasBanner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KondasHatamoto.java b/Mage.Sets/src/mage/cards/k/KondasHatamoto.java index bd5ce7e34c..8fe33f8e03 100644 --- a/Mage.Sets/src/mage/cards/k/KondasHatamoto.java +++ b/Mage.Sets/src/mage/cards/k/KondasHatamoto.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -27,7 +26,7 @@ public final class KondasHatamoto extends CardImpl { private static final String rule2 = "As long as you control a legendary Samurai, {this} has vigilance"; static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(SubType.SAMURAI.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java index e6b967b392..5273d27de2 100644 --- a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java +++ b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java @@ -10,7 +10,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPlayer; /** @@ -23,7 +22,7 @@ public final class LayBareTheHeart extends CardImpl { static { filter.add(Predicates.not(CardType.LAND.getPredicate())); - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public LayBareTheHeart(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java b/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java index aa7d7fd87e..e16e7753b2 100644 --- a/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java +++ b/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -21,7 +20,7 @@ public final class LegionsOfLimDul extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow swamp"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(SubType.SWAMP .getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/l/Lifespinner.java b/Mage.Sets/src/mage/cards/l/Lifespinner.java index 80b2eb9f58..3e0ca65ece 100644 --- a/Mage.Sets/src/mage/cards/l/Lifespinner.java +++ b/Mage.Sets/src/mage/cards/l/Lifespinner.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterPermanentCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetControlledPermanent; @@ -28,7 +27,7 @@ public final class Lifespinner extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("legendary Spirit permanent card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(SubType.SPIRIT.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java index f4db5ab2b7..15cb24f09b 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java @@ -16,7 +16,6 @@ import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.command.emblems.LilianaDefiantNecromancerEmblem; import mage.target.common.TargetCardInYourGraveyard; @@ -31,7 +30,7 @@ public final class LilianaDefiantNecromancer extends CardImpl { protected static final FilterCreatureCard filter = new FilterCreatureCard("nonlegendary creature with converted mana cost X from your graveyard"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public LilianaDefiantNecromancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LivonyaSilone.java b/Mage.Sets/src/mage/cards/l/LivonyaSilone.java index 0e70c9dcfd..f12e13d1b0 100644 --- a/Mage.Sets/src/mage/cards/l/LivonyaSilone.java +++ b/Mage.Sets/src/mage/cards/l/LivonyaSilone.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -22,7 +21,7 @@ public final class LivonyaSilone extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("Legendary land"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public LivonyaSilone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/Lobotomy.java b/Mage.Sets/src/mage/cards/l/Lobotomy.java index 771077fa4c..fd202a3171 100644 --- a/Mage.Sets/src/mage/cards/l/Lobotomy.java +++ b/Mage.Sets/src/mage/cards/l/Lobotomy.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -49,7 +48,7 @@ class LobotomyEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("card other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), SuperType.BASIC.getPredicate()))); } public LobotomyEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LoyalRetainers.java b/Mage.Sets/src/mage/cards/l/LoyalRetainers.java index e7dca6b1d2..71d70866cc 100644 --- a/Mage.Sets/src/mage/cards/l/LoyalRetainers.java +++ b/Mage.Sets/src/mage/cards/l/LoyalRetainers.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -27,7 +26,7 @@ public final class LoyalRetainers extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("legendary creature card from your graveyard"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public LoyalRetainers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java b/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java index d4f08962f3..08e9130be3 100644 --- a/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java +++ b/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -24,7 +23,7 @@ public final class MagusOfTheMoon extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); } public MagusOfTheMoon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MaritLagesSlumber.java b/Mage.Sets/src/mage/cards/m/MaritLagesSlumber.java index 5bfaa5c083..4588829ab9 100644 --- a/Mage.Sets/src/mage/cards/m/MaritLagesSlumber.java +++ b/Mage.Sets/src/mage/cards/m/MaritLagesSlumber.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.permanent.token.MaritLageToken; import java.util.UUID; @@ -31,7 +30,7 @@ public final class MaritLagesSlumber extends CardImpl { = new FilterControlledPermanent("{this} or another snow permanent"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } private static final Condition condition diff --git a/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java b/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java index 29f5ae26e8..20ccb488e4 100644 --- a/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java +++ b/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.filter.common.FilterAttackingCreature; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.combat.CombatGroup; import mage.game.permanent.Permanent; @@ -60,7 +59,7 @@ public final class MercadiasDownfall extends CardImpl { } } FilterLandPermanent filter = new FilterLandPermanent("nonbasic land"); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); System.out.println("The number of nonbasic lands is " + game.getBattlefield().countAll(filter, defenderId, game)); return game.getBattlefield().countAll(filter, defenderId, game); } diff --git a/Mage.Sets/src/mage/cards/m/MinamoSchoolAtWatersEdge.java b/Mage.Sets/src/mage/cards/m/MinamoSchoolAtWatersEdge.java index bf2d64ebd9..e9726ac279 100644 --- a/Mage.Sets/src/mage/cards/m/MinamoSchoolAtWatersEdge.java +++ b/Mage.Sets/src/mage/cards/m/MinamoSchoolAtWatersEdge.java @@ -16,7 +16,6 @@ import mage.constants.ColoredManaSymbol; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -28,7 +27,7 @@ public final class MinamoSchoolAtWatersEdge extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("legendary permanent"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/m/Mirrorweave.java b/Mage.Sets/src/mage/cards/m/Mirrorweave.java index 987deb7bc0..9be7608464 100644 --- a/Mage.Sets/src/mage/cards/m/Mirrorweave.java +++ b/Mage.Sets/src/mage/cards/m/Mirrorweave.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.PermanentIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -29,7 +28,7 @@ public final class Mirrorweave extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public Mirrorweave(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java b/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java index 7430364733..c04b14a4bc 100644 --- a/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java +++ b/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class MistveinBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public MistveinBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MobilizedDistrict.java b/Mage.Sets/src/mage/cards/m/MobilizedDistrict.java index 35a6304eed..7ccf90a1b1 100644 --- a/Mage.Sets/src/mage/cards/m/MobilizedDistrict.java +++ b/Mage.Sets/src/mage/cards/m/MobilizedDistrict.java @@ -17,7 +17,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.token.TokenImpl; @@ -34,7 +33,7 @@ public final class MobilizedDistrict extends CardImpl { private static final FilterPermanent filter = new FilterCreatureOrPlaneswalkerPermanent(); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/m/MountainStronghold.java b/Mage.Sets/src/mage/cards/m/MountainStronghold.java index 64775cba11..c89143fd1b 100644 --- a/Mage.Sets/src/mage/cards/m/MountainStronghold.java +++ b/Mage.Sets/src/mage/cards/m/MountainStronghold.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class MountainStronghold extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.RED)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public MountainStronghold(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoxAmber.java b/Mage.Sets/src/mage/cards/m/MoxAmber.java index 0ffa117ec0..ae6d86bd9d 100644 --- a/Mage.Sets/src/mage/cards/m/MoxAmber.java +++ b/Mage.Sets/src/mage/cards/m/MoxAmber.java @@ -10,7 +10,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -27,7 +26,7 @@ public final class MoxAmber extends CardImpl { filter.add(Predicates.or( Predicates.and( CardType.CREATURE.getPredicate(), - new SupertypePredicate(SuperType.LEGENDARY) + SuperType.LEGENDARY.getPredicate() ), CardType.PLANESWALKER.getPredicate()) ); diff --git a/Mage.Sets/src/mage/cards/m/MyriadLandscape.java b/Mage.Sets/src/mage/cards/m/MyriadLandscape.java index fa87e597e2..c41e0cd9c4 100644 --- a/Mage.Sets/src/mage/cards/m/MyriadLandscape.java +++ b/Mage.Sets/src/mage/cards/m/MyriadLandscape.java @@ -19,7 +19,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.target.common.TargetCardInLibrary; import mage.util.SubTypeList; @@ -73,7 +72,7 @@ class TargetCardInLibrarySharingLandType extends TargetCardInLibrary { .map(SubType::getPredicate) .collect(Collectors.toSet()) )); - filterBasicLandCard.add(new SupertypePredicate(SuperType.BASIC)); + filterBasicLandCard.add(SuperType.BASIC.getPredicate()); } public TargetCardInLibrarySharingLandType(int minNumTargets, int maxNumTargets) { diff --git a/Mage.Sets/src/mage/cards/n/NayaPanorama.java b/Mage.Sets/src/mage/cards/n/NayaPanorama.java index 2927cc3d44..0164aa9d68 100644 --- a/Mage.Sets/src/mage/cards/n/NayaPanorama.java +++ b/Mage.Sets/src/mage/cards/n/NayaPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -28,7 +27,7 @@ public final class NayaPanorama extends CardImpl { static { filter.add(CardType.LAND.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(Predicates.or( SubType.MOUNTAIN.getPredicate(), SubType.FOREST.getPredicate(), diff --git a/Mage.Sets/src/mage/cards/n/NicolBolasDragonGod.java b/Mage.Sets/src/mage/cards/n/NicolBolasDragonGod.java index 5c6e26462c..bc7f978963 100644 --- a/Mage.Sets/src/mage/cards/n/NicolBolasDragonGod.java +++ b/Mage.Sets/src/mage/cards/n/NicolBolasDragonGod.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent; import mage.filter.common.FilterPlaneswalkerPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -182,7 +181,7 @@ class NicolBolasDragonGodMinus8Effect extends OneShotEffect { private static final FilterPermanent filter = new FilterCreatureOrPlaneswalkerPermanent(); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } NicolBolasDragonGodMinus8Effect() { diff --git a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java index c3d64378a8..5912acb606 100644 --- a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java +++ b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -30,7 +29,7 @@ public final class NissaVastwoodSeer extends CardImpl { private static final FilterCard filter = new FilterCard("basic Forest card"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.FOREST.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/n/NissasPilgrimage.java b/Mage.Sets/src/mage/cards/n/NissasPilgrimage.java index 673fb5b1f5..be14d75104 100644 --- a/Mage.Sets/src/mage/cards/n/NissasPilgrimage.java +++ b/Mage.Sets/src/mage/cards/n/NissasPilgrimage.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -51,7 +50,7 @@ class NissasPilgrimageEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("basic Forest card"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.FOREST.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/n/NissasTriumph.java b/Mage.Sets/src/mage/cards/n/NissasTriumph.java index 9685b175eb..383ffeec2a 100644 --- a/Mage.Sets/src/mage/cards/n/NissasTriumph.java +++ b/Mage.Sets/src/mage/cards/n/NissasTriumph.java @@ -13,7 +13,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledPlaneswalkerPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.UUID; @@ -27,7 +26,7 @@ public final class NissasTriumph extends CardImpl { private static final FilterPermanent filter2 = new FilterControlledPlaneswalkerPermanent(SubType.NISSA); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.FOREST.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/o/OhranYeti.java b/Mage.Sets/src/mage/cards/o/OhranYeti.java index 51f2331990..809c0c25c3 100644 --- a/Mage.Sets/src/mage/cards/o/OhranYeti.java +++ b/Mage.Sets/src/mage/cards/o/OhranYeti.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -28,7 +27,7 @@ public final class OhranYeti extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("snow creature"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public OhranYeti(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java b/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java index c0de338c29..8e94cb3d17 100644 --- a/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java +++ b/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java @@ -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.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -24,7 +23,7 @@ public final class OkinaTempleToTheGrandfathers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public OkinaTempleToTheGrandfathers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OldFogey.java b/Mage.Sets/src/mage/cards/o/OldFogey.java index ba8f18c287..f6b5de1fb3 100644 --- a/Mage.Sets/src/mage/cards/o/OldFogey.java +++ b/Mage.Sets/src/mage/cards/o/OldFogey.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -32,7 +31,7 @@ public final class OldFogey extends CardImpl { static { filter.add(SubType.HOMARID.getPredicate()); - filter2.add(new SupertypePredicate(SuperType.SNOW)); + filter2.add(SuperType.SNOW.getPredicate()); filter2.add(SubType.PLAINS.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/o/OnThinIce.java b/Mage.Sets/src/mage/cards/o/OnThinIce.java index 93572c4d42..6629afa3d3 100644 --- a/Mage.Sets/src/mage/cards/o/OnThinIce.java +++ b/Mage.Sets/src/mage/cards/o/OnThinIce.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetOpponentsCreaturePermanent; @@ -29,7 +28,7 @@ public final class OnThinIce extends CardImpl { private static final FilterPermanent filter = new FilterControlledLandPermanent("snow land you control"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public OnThinIce(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OpenTheGates.java b/Mage.Sets/src/mage/cards/o/OpenTheGates.java index 1ba59961b1..5ee1edd55e 100644 --- a/Mage.Sets/src/mage/cards/o/OpenTheGates.java +++ b/Mage.Sets/src/mage/cards/o/OpenTheGates.java @@ -8,7 +8,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.UUID; @@ -23,7 +22,7 @@ public final class OpenTheGates extends CardImpl { static { filter.add(Predicates.or( Predicates.and( - new SupertypePredicate(SuperType.BASIC), + SuperType.BASIC.getPredicate(), CardType.LAND.getPredicate() ), SubType.GATE.getPredicate() )); diff --git a/Mage.Sets/src/mage/cards/o/Ovinomancer.java b/Mage.Sets/src/mage/cards/o/Ovinomancer.java index e4d839a228..6e13e0f57c 100644 --- a/Mage.Sets/src/mage/cards/o/Ovinomancer.java +++ b/Mage.Sets/src/mage/cards/o/Ovinomancer.java @@ -20,7 +20,6 @@ import mage.constants.SuperType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.SheepToken; @@ -36,7 +35,7 @@ public final class Ovinomancer extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("basic lands"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public Ovinomancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PilgrimsEye.java b/Mage.Sets/src/mage/cards/p/PilgrimsEye.java index d48e900f17..b2d5dadf66 100644 --- a/Mage.Sets/src/mage/cards/p/PilgrimsEye.java +++ b/Mage.Sets/src/mage/cards/p/PilgrimsEye.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.UUID; @@ -26,7 +25,7 @@ public final class PilgrimsEye extends CardImpl { private static final FilterCard filter = new FilterCard("basic land card"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(CardType.LAND.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/p/PrairieStream.java b/Mage.Sets/src/mage/cards/p/PrairieStream.java index 3c3973eb56..fc953732aa 100644 --- a/Mage.Sets/src/mage/cards/p/PrairieStream.java +++ b/Mage.Sets/src/mage/cards/p/PrairieStream.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -28,7 +27,7 @@ public final class PrairieStream extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public PrairieStream(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PriceOfFame.java b/Mage.Sets/src/mage/cards/p/PriceOfFame.java index 0aefe57301..4a8dd77d97 100644 --- a/Mage.Sets/src/mage/cards/p/PriceOfFame.java +++ b/Mage.Sets/src/mage/cards/p/PriceOfFame.java @@ -13,7 +13,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; import java.util.UUID; @@ -27,7 +26,7 @@ public final class PriceOfFame extends CardImpl { = new FilterCreaturePermanent("a legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } private static final Condition condition = new SourceTargetsPermanentCondition(filter); diff --git a/Mage.Sets/src/mage/cards/p/PrimevalsGloriousRebirth.java b/Mage.Sets/src/mage/cards/p/PrimevalsGloriousRebirth.java index 02a9a81a3d..386dd7912b 100644 --- a/Mage.Sets/src/mage/cards/p/PrimevalsGloriousRebirth.java +++ b/Mage.Sets/src/mage/cards/p/PrimevalsGloriousRebirth.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterPermanentCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; @@ -45,7 +44,7 @@ class PrimevalsGloriousRebirthEffect extends OneShotEffect { private static final FilterPermanentCard filter = new FilterPermanentCard(); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public PrimevalsGloriousRebirthEffect() { diff --git a/Mage.Sets/src/mage/cards/p/PulseOfLlanowar.java b/Mage.Sets/src/mage/cards/p/PulseOfLlanowar.java index e4ae658497..e199220f55 100644 --- a/Mage.Sets/src/mage/cards/p/PulseOfLlanowar.java +++ b/Mage.Sets/src/mage/cards/p/PulseOfLlanowar.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -50,7 +49,7 @@ class PulseOfLlanowarReplacementEffect extends ReplacementEffectImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } PulseOfLlanowarReplacementEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RekiTheHistoryOfKamigawa.java b/Mage.Sets/src/mage/cards/r/RekiTheHistoryOfKamigawa.java index 3edf764b6b..5bc9be8646 100644 --- a/Mage.Sets/src/mage/cards/r/RekiTheHistoryOfKamigawa.java +++ b/Mage.Sets/src/mage/cards/r/RekiTheHistoryOfKamigawa.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -22,7 +21,7 @@ public final class RekiTheHistoryOfKamigawa extends CardImpl { private static final FilterSpell filter = new FilterSpell("legendary spell"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public RekiTheHistoryOfKamigawa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimeDryad.java b/Mage.Sets/src/mage/cards/r/RimeDryad.java index 0153744d26..aa09328230 100644 --- a/Mage.Sets/src/mage/cards/r/RimeDryad.java +++ b/Mage.Sets/src/mage/cards/r/RimeDryad.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -21,7 +20,7 @@ public final class RimeDryad extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow forest"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(SubType.FOREST.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/r/RimeTender.java b/Mage.Sets/src/mage/cards/r/RimeTender.java index 0053ea2892..cf8c213c6c 100644 --- a/Mage.Sets/src/mage/cards/r/RimeTender.java +++ b/Mage.Sets/src/mage/cards/r/RimeTender.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.TargetPermanent; @@ -25,7 +24,7 @@ public final class RimeTender extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("another target snow permanent"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/RimeTransfusion.java b/Mage.Sets/src/mage/cards/r/RimeTransfusion.java index 20e7ac6b36..822e8f0b82 100644 --- a/Mage.Sets/src/mage/cards/r/RimeTransfusion.java +++ b/Mage.Sets/src/mage/cards/r/RimeTransfusion.java @@ -18,7 +18,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -33,7 +32,7 @@ public final class RimeTransfusion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("except by snow creatures until end of turn"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); + filter.add(Predicates.not(SuperType.SNOW.getPredicate())); } public RimeTransfusion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimefeatherOwl.java b/Mage.Sets/src/mage/cards/r/RimefeatherOwl.java index 5170f599d4..97f97d2c13 100644 --- a/Mage.Sets/src/mage/cards/r/RimefeatherOwl.java +++ b/Mage.Sets/src/mage/cards/r/RimefeatherOwl.java @@ -25,8 +25,6 @@ import mage.constants.SubLayer; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.CounterPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -43,7 +41,7 @@ public final class RimefeatherOwl extends CardImpl { static { filter.add(new CounterPredicate(CounterType.ICE)); - filter2.add(new SupertypePredicate(SuperType.SNOW)); + filter2.add(SuperType.SNOW.getPredicate()); } public RimefeatherOwl(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java index 006e9899ff..62c02e6b4b 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java +++ b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java @@ -17,7 +17,6 @@ import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetActivatedAbility; /** @@ -29,7 +28,7 @@ public final class RimewindCryomancer extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public RimewindCryomancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java index 8fd2efc852..622c446095 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java +++ b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java @@ -17,7 +17,6 @@ import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -29,7 +28,7 @@ public final class RimewindTaskmage extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public RimewindTaskmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RonomHulk.java b/Mage.Sets/src/mage/cards/r/RonomHulk.java index 052de94002..12e417ea65 100644 --- a/Mage.Sets/src/mage/cards/r/RonomHulk.java +++ b/Mage.Sets/src/mage/cards/r/RonomHulk.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -23,7 +22,7 @@ public final class RonomHulk extends CardImpl { private static final FilterCard filter = new FilterCard("snow"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public RonomHulk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RonomSerpent.java b/Mage.Sets/src/mage/cards/r/RonomSerpent.java index a23d10c917..d3455ebc52 100644 --- a/Mage.Sets/src/mage/cards/r/RonomSerpent.java +++ b/Mage.Sets/src/mage/cards/r/RonomSerpent.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -27,8 +26,8 @@ public final class RonomSerpent extends CardImpl { private static final FilterLandPermanent filter2 = new FilterLandPermanent("no snow lands"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); - filter2.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); + filter2.add(SuperType.SNOW.getPredicate()); } public RonomSerpent(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SeafarersQuay.java b/Mage.Sets/src/mage/cards/s/SeafarersQuay.java index ce62ca0040..cefff3230b 100644 --- a/Mage.Sets/src/mage/cards/s/SeafarersQuay.java +++ b/Mage.Sets/src/mage/cards/s/SeafarersQuay.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class SeafarersQuay extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.BLUE)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public SeafarersQuay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java index 04369090f7..fa5877227e 100644 --- a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java +++ b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -29,7 +28,7 @@ public final class ShefetMonitor extends CardImpl { Predicates.or( Predicates.and( CardType.LAND.getPredicate(), - new SupertypePredicate(SuperType.BASIC)), + SuperType.BASIC.getPredicate()), SubType.DESERT.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java b/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java index 282946d637..e8e3e2670f 100644 --- a/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java +++ b/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class ShinkaTheBloodsoakedKeep extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public ShinkaTheBloodsoakedKeep(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java b/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java index 4aec780ed7..c45c07e9bf 100644 --- a/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java +++ b/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class ShizoDeathsStorehouse extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public ShizoDeathsStorehouse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java b/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java index e34eed618c..08f7634c3a 100644 --- a/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java +++ b/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java @@ -18,7 +18,6 @@ import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCardInLibrary; @@ -120,7 +119,7 @@ class SisayWeatherlightCaptainEffect extends OneShotEffect { } int power = permanent.getPower().getValue(); FilterCard filter = new FilterPermanentCard("legendary permanent card with converted mana cost less than " + power); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, power)); return new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)).apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/s/SithRuins.java b/Mage.Sets/src/mage/cards/s/SithRuins.java index c6ddba0c8a..34719967f4 100644 --- a/Mage.Sets/src/mage/cards/s/SithRuins.java +++ b/Mage.Sets/src/mage/cards/s/SithRuins.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.ArrayList; @@ -63,7 +62,7 @@ public final class SithRuins extends CardImpl { subtypePredicates.add(SubType.MOUNTAIN.getPredicate()); subtypePredicates.add(SubType.ISLAND.getPredicate()); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/s/Skred.java b/Mage.Sets/src/mage/cards/s/Skred.java index 5a8c289a78..fc59969bba 100644 --- a/Mage.Sets/src/mage/cards/s/Skred.java +++ b/Mage.Sets/src/mage/cards/s/Skred.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; @@ -43,7 +42,7 @@ class SkredDamageEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("equal to the number of snow permanents you control."); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public SkredDamageEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java b/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java index 8a8e7165aa..6ecf5643c2 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java +++ b/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -28,7 +27,7 @@ public final class SmolderingMarsh extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public SmolderingMarsh(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SnowDevil.java b/Mage.Sets/src/mage/cards/s/SnowDevil.java index 69ae57ac5b..de915a6c22 100644 --- a/Mage.Sets/src/mage/cards/s/SnowDevil.java +++ b/Mage.Sets/src/mage/cards/s/SnowDevil.java @@ -22,7 +22,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.combat.CombatGroup; import mage.game.permanent.Permanent; @@ -79,7 +78,7 @@ enum SnowDevilCondition implements Condition { @Override public boolean apply(Game game, Ability source) { FilterLandPermanent filter = new FilterLandPermanent(); - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); Permanent enchantment = game.getPermanent(source.getSourceId()); if (enchantment != null) { Player controller = game.getPlayer(enchantment.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/s/Snowblind.java b/Mage.Sets/src/mage/cards/s/Snowblind.java index ee0d055176..265c01eb5d 100644 --- a/Mage.Sets/src/mage/cards/s/Snowblind.java +++ b/Mage.Sets/src/mage/cards/s/Snowblind.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -64,7 +63,7 @@ enum SnowblindValue implements DynamicValue { private static final FilterPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } @Override diff --git a/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java b/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java index c6ece6f912..ebacddb779 100644 --- a/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java +++ b/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java @@ -16,7 +16,6 @@ import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.other.ExpansionSetPredicate; /** @@ -29,7 +28,7 @@ public final class SpatulaOfTheAges extends CardImpl { static { filter.add(Predicates.and( - Predicates.not(new SupertypePredicate(SuperType.BASIC)), // all Un-set basic lands are black bordered cards, and thus illegal choices + Predicates.not(SuperType.BASIC.getPredicate()), // all Un-set basic lands are black bordered cards, and thus illegal choices Predicates.not(new NamePredicate("Steamflogger Boss")), // printed in Unstable with a black border Predicates.or(new ExpansionSetPredicate("UGL"), new ExpansionSetPredicate("UNH"), new ExpansionSetPredicate("UST")) )); diff --git a/Mage.Sets/src/mage/cards/s/StarCompass.java b/Mage.Sets/src/mage/cards/s/StarCompass.java index 6fafe1124b..2cc18be943 100644 --- a/Mage.Sets/src/mage/cards/s/StarCompass.java +++ b/Mage.Sets/src/mage/cards/s/StarCompass.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -56,7 +55,7 @@ class StarCompassManaEffect extends ManaEffect { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public StarCompassManaEffect() { diff --git a/Mage.Sets/src/mage/cards/s/StormElemental.java b/Mage.Sets/src/mage/cards/s/StormElemental.java index 77d417757f..f91d964afe 100644 --- a/Mage.Sets/src/mage/cards/s/StormElemental.java +++ b/Mage.Sets/src/mage/cards/s/StormElemental.java @@ -24,7 +24,6 @@ import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandCard; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCreaturePermanent; @@ -72,7 +71,7 @@ class StormElementalEffect extends OneShotEffect { private static final FilterLandCard filter = new FilterLandCard("snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public StormElementalEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SunkenHollow.java b/Mage.Sets/src/mage/cards/s/SunkenHollow.java index eb05eb6580..37046eb37a 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenHollow.java +++ b/Mage.Sets/src/mage/cards/s/SunkenHollow.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -28,7 +27,7 @@ public final class SunkenHollow extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public SunkenHollow(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunstone.java b/Mage.Sets/src/mage/cards/s/Sunstone.java index c14eef2ea6..badcf63241 100644 --- a/Mage.Sets/src/mage/cards/s/Sunstone.java +++ b/Mage.Sets/src/mage/cards/s/Sunstone.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -27,7 +26,7 @@ public final class Sunstone extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("a snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public Sunstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java index 3a54177b91..6a27dfb941 100644 --- a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java +++ b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInGraveyard; @@ -31,7 +30,7 @@ public final class SurgicalExtraction extends CardImpl { private static final FilterCard filter = new FilterCard("card in a graveyard other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), SuperType.BASIC.getPredicate()))); } public SurgicalExtraction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java b/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java index cf3dd58ecb..361da6c7d4 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -25,7 +24,7 @@ public final class SwordOfTheChosen extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public SwordOfTheChosen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TempestDjinn.java b/Mage.Sets/src/mage/cards/t/TempestDjinn.java index ea310bbde7..2f588af0b6 100644 --- a/Mage.Sets/src/mage/cards/t/TempestDjinn.java +++ b/Mage.Sets/src/mage/cards/t/TempestDjinn.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -27,7 +26,7 @@ public final class TempestDjinn extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("basic Island you control"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(SubType.ISLAND.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java b/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java index f991673bd0..b4103b7435 100644 --- a/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java +++ b/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java @@ -44,7 +44,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -60,7 +59,7 @@ public final class TenzaGodosMaul extends CardImpl { private static final FilterCreaturePermanent redFilter = new FilterCreaturePermanent("red"); static { - legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); + legendaryFilter.add(SuperType.LEGENDARY.getPredicate()); redFilter.add(new ColorPredicate(ObjectColor.RED)); } diff --git a/Mage.Sets/src/mage/cards/t/ThaliasLancers.java b/Mage.Sets/src/mage/cards/t/ThaliasLancers.java index 23d1e80095..4a90ad2cfd 100644 --- a/Mage.Sets/src/mage/cards/t/ThaliasLancers.java +++ b/Mage.Sets/src/mage/cards/t/ThaliasLancers.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -25,7 +24,7 @@ public final class ThaliasLancers extends CardImpl { private static final FilterCard filter = new FilterCard("legendary card"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public ThaliasLancers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java b/Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java index fdf590a3e6..96cd896a4c 100644 --- a/Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java +++ b/Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java @@ -11,7 +11,6 @@ import mage.constants.SagaChapter; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.permanent.token.ArtifactWallToken; import mage.target.common.TargetCardInLibrary; @@ -26,7 +25,7 @@ public final class TheBirthOfMeletis extends CardImpl { static { filter.add(SubType.PLAINS.getPredicate()); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public TheBirthOfMeletis(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java b/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java index 3c07a315f1..ef80797958 100644 --- a/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java +++ b/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java @@ -16,7 +16,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.token.KnightToken; import mage.util.CardUtil; @@ -31,7 +30,7 @@ public final class TheCircleOfLoyalty extends CardImpl { private static final FilterSpell filter = new FilterSpell("a legendary spell"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public TheCircleOfLoyalty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThermalFlux.java b/Mage.Sets/src/mage/cards/t/ThermalFlux.java index f9c1c8e3e5..a6d7be68cb 100644 --- a/Mage.Sets/src/mage/cards/t/ThermalFlux.java +++ b/Mage.Sets/src/mage/cards/t/ThermalFlux.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.SubLayer; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -33,8 +32,8 @@ public final class ThermalFlux extends CardImpl { private static final FilterPermanent filterSnow = new FilterPermanent("snow permanent"); static { - filterNonsnow.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); - filterSnow.add(new SupertypePredicate(SuperType.SNOW)); + filterNonsnow.add(Predicates.not(SuperType.SNOW.getPredicate())); + filterSnow.add(SuperType.SNOW.getPredicate()); } public ThermalFlux(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java b/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java index 7b07d3e74a..b49c986e97 100644 --- a/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java +++ b/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.AttackingPredicate; import mage.game.Game; @@ -33,7 +32,7 @@ public final class TilonallisSkinshifter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); filter.add(AttackingPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java index 398afbb7da..f962a72f67 100644 --- a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java +++ b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -21,7 +20,7 @@ public final class TimeOfNeed extends CardImpl { static { filter.add(CardType.CREATURE.getPredicate()); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public TimeOfNeed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TradeCaravan.java b/Mage.Sets/src/mage/cards/t/TradeCaravan.java index 3924f27280..5ed036d33b 100644 --- a/Mage.Sets/src/mage/cards/t/TradeCaravan.java +++ b/Mage.Sets/src/mage/cards/t/TradeCaravan.java @@ -22,7 +22,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; /** @@ -34,7 +33,7 @@ public final class TradeCaravan extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public TradeCaravan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java index 89fa9ec442..4478f5092f 100644 --- a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java +++ b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -30,8 +29,8 @@ public final class TsaboTavoc extends CardImpl { private static final FilterCreaturePermanent filterDestroy = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); - filterDestroy.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); + filterDestroy.add(SuperType.LEGENDARY.getPredicate()); } public TsaboTavoc(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java index 4ca1e7da20..323396fab1 100644 --- a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java +++ b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.ArrayList; @@ -63,7 +62,7 @@ public final class UnderworldSlums extends CardImpl { subtypePredicates.add(SubType.MOUNTAIN.getPredicate()); subtypePredicates.add(SubType.FOREST.getPredicate()); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/u/UnholyCitadel.java b/Mage.Sets/src/mage/cards/u/UnholyCitadel.java index 7153b14a32..7b645a52a6 100644 --- a/Mage.Sets/src/mage/cards/u/UnholyCitadel.java +++ b/Mage.Sets/src/mage/cards/u/UnholyCitadel.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -26,7 +25,7 @@ public final class UnholyCitadel extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.BLACK)); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public UnholyCitadel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java b/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java index c1a3feb6b7..77fc966375 100644 --- a/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java +++ b/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @author JRHerlehy @@ -22,7 +21,7 @@ public final class UrzasRuinousBlast extends CardImpl { static { filter.add(Predicates.not(CardType.LAND.getPredicate())); - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); } public UrzasRuinousBlast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VassalsDuty.java b/Mage.Sets/src/mage/cards/v/VassalsDuty.java index 38c36688a2..050acdce88 100644 --- a/Mage.Sets/src/mage/cards/v/VassalsDuty.java +++ b/Mage.Sets/src/mage/cards/v/VassalsDuty.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.target.TargetPlayer; @@ -28,7 +27,7 @@ public final class VassalsDuty extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("legendary creature you control"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public VassalsDuty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VeinfireBorderpost.java b/Mage.Sets/src/mage/cards/v/VeinfireBorderpost.java index 0ada1c987c..1500ca5eb2 100644 --- a/Mage.Sets/src/mage/cards/v/VeinfireBorderpost.java +++ b/Mage.Sets/src/mage/cards/v/VeinfireBorderpost.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class VeinfireBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public VeinfireBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VisceridDrone.java b/Mage.Sets/src/mage/cards/v/VisceridDrone.java index 731f5f4d48..1904bcd092 100644 --- a/Mage.Sets/src/mage/cards/v/VisceridDrone.java +++ b/Mage.Sets/src/mage/cards/v/VisceridDrone.java @@ -18,7 +18,6 @@ import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; @@ -37,7 +36,7 @@ public final class VisceridDrone extends CardImpl { filter1.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter2.add(SubType.SWAMP.getPredicate()); filter3.add(SubType.SWAMP.getPredicate()); - filter3.add(new SupertypePredicate(SuperType.SNOW)); + filter3.add(SuperType.SNOW.getPredicate()); } public VisceridDrone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VolcanicOffering.java b/Mage.Sets/src/mage/cards/v/VolcanicOffering.java index cbfaeeaeed..96a171f91d 100644 --- a/Mage.Sets/src/mage/cards/v/VolcanicOffering.java +++ b/Mage.Sets/src/mage/cards/v/VolcanicOffering.java @@ -11,7 +11,6 @@ import mage.constants.TargetController; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -54,7 +53,7 @@ enum VolcanicOfferingAdjuster implements TargetAdjuster { static { filterLand.add(new ControllerPredicate(TargetController.NOT_YOU)); - filterLand.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filterLand.add(Predicates.not(SuperType.BASIC.getPredicate())); filterCreature.add(new ControllerPredicate(TargetController.NOT_YOU)); } @@ -67,7 +66,7 @@ enum VolcanicOfferingAdjuster implements TargetAdjuster { ability.getTargets().clear(); ability.addTarget(new TargetPermanent(filterLand)); FilterLandPermanent filterLandForOpponent = new FilterLandPermanent("nonbasic land not controlled by " + controller.getLogName()); - filterLandForOpponent.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filterLandForOpponent.add(Predicates.not(SuperType.BASIC.getPredicate())); filterLandForOpponent.add(Predicates.not(new ControllerIdPredicate(controller.getId()))); ability.addTarget(new TargetOpponentsChoicePermanent(1, 1, filterLandForOpponent, false)); diff --git a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java index 69a25eae30..77496dc4f9 100644 --- a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java +++ b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -55,7 +54,7 @@ class WaveOfVitriolEffect extends OneShotEffect { CardType.ENCHANTMENT.getPredicate(), Predicates.and( CardType.LAND.getPredicate(), - Predicates.not(new SupertypePredicate(SuperType.BASIC)) + Predicates.not(SuperType.BASIC.getPredicate()) ) )); } diff --git a/Mage.Sets/src/mage/cards/w/Whiteout.java b/Mage.Sets/src/mage/cards/w/Whiteout.java index d58ef498c7..ccfbb387b7 100644 --- a/Mage.Sets/src/mage/cards/w/Whiteout.java +++ b/Mage.Sets/src/mage/cards/w/Whiteout.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class Whiteout extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("a snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public Whiteout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildernessElemental.java b/Mage.Sets/src/mage/cards/w/WildernessElemental.java index 71bf15ff7b..eb335ed3ab 100644 --- a/Mage.Sets/src/mage/cards/w/WildernessElemental.java +++ b/Mage.Sets/src/mage/cards/w/WildernessElemental.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -24,7 +23,7 @@ public final class WildernessElemental extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("nonbasic lands your opponents control"); static { - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java b/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java index 148ba1f510..a23d635079 100644 --- a/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java +++ b/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class WildfieldBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); } public WildfieldBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WillowSatyr.java b/Mage.Sets/src/mage/cards/w/WillowSatyr.java index 0d5f0d0734..55c3eadd1d 100644 --- a/Mage.Sets/src/mage/cards/w/WillowSatyr.java +++ b/Mage.Sets/src/mage/cards/w/WillowSatyr.java @@ -20,7 +20,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -32,7 +31,7 @@ public final class WillowSatyr extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); } public WillowSatyr(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WintersNight.java b/Mage.Sets/src/mage/cards/w/WintersNight.java index e5a1da5b31..632b1b3a6e 100644 --- a/Mage.Sets/src/mage/cards/w/WintersNight.java +++ b/Mage.Sets/src/mage/cards/w/WintersNight.java @@ -14,8 +14,6 @@ import mage.constants.CardType; import mage.constants.SetTargetPointer; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; -import mage.target.targetpointer.FixedTarget; /** * @@ -25,7 +23,7 @@ public final class WintersNight extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("a player taps a snow land"); { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public WintersNight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WintersRest.java b/Mage.Sets/src/mage/cards/w/WintersRest.java index adbe0ee68a..e133795cdf 100644 --- a/Mage.Sets/src/mage/cards/w/WintersRest.java +++ b/Mage.Sets/src/mage/cards/w/WintersRest.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -65,7 +64,7 @@ class WintersRestEffect extends DontUntapInControllersUntapStepEnchantedEffect { static { filter.add(AnotherPredicate.instance); - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } WintersRestEffect() { diff --git a/Mage.Sets/src/mage/cards/w/WitheringWisps.java b/Mage.Sets/src/mage/cards/w/WitheringWisps.java index 6f58d36218..d5577a3c7c 100644 --- a/Mage.Sets/src/mage/cards/w/WitheringWisps.java +++ b/Mage.Sets/src/mage/cards/w/WitheringWisps.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.game.Game; import mage.game.events.GameEvent; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -57,7 +56,7 @@ class WitheringWispsActivatedAbility extends ActivatedAbilityImpl { private static final FilterPermanent filter = new FilterPermanent("snow Swamps you control"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(SubType.SWAMP.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java index 6ef1e88869..3896b6f432 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java @@ -20,7 +20,6 @@ import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -71,7 +70,7 @@ class WoodlandBellowerEffect extends OneShotEffect { FilterCard filter = new FilterCard("nonlegendary green creature card with converted mana cost 3 or less"); filter.add(new ColorPredicate(ObjectColor.GREEN)); filter.add(CardType.CREATURE.getPredicate()); - filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); + filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { diff --git a/Mage.Sets/src/mage/cards/w/WoollyMammoths.java b/Mage.Sets/src/mage/cards/w/WoollyMammoths.java index 800bdd58a6..7669311441 100644 --- a/Mage.Sets/src/mage/cards/w/WoollyMammoths.java +++ b/Mage.Sets/src/mage/cards/w/WoollyMammoths.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -29,7 +28,7 @@ public final class WoollyMammoths extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); filter.add(CardType.LAND.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java b/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java index 11f2b63a4a..5018b29422 100644 --- a/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java +++ b/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -77,7 +76,7 @@ class WorldBottlingKitEffect extends OneShotEffect { if (setChosen != null) { game.informPlayers(controller.getLogName() + " has chosen set " + setChosen); FilterPermanent filter = new FilterPermanent(); - filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), SuperType.BASIC.getPredicate()))); List permanents = game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game); for (Permanent permanent : permanents) { if (permanent.getExpansionSetCode().equals(setChosen)) { diff --git a/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java b/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java index 7834b9820c..a9fc3fc7d8 100644 --- a/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java +++ b/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; /** @@ -32,7 +31,7 @@ public final class YomijiWhoBarsTheWay extends CardImpl { // Whenever a legendary permanent other than Yomiji, Who Bars the Way is put into a graveyard from the battlefield, return that card to its owner's hand. FilterPermanent filter = new FilterPermanent("a legendary permanent other than " + getName()); filter.add(AnotherPredicate.instance); - filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filter.add(SuperType.LEGENDARY.getPredicate()); Effect effect = new ReturnToHandTargetEffect(); effect.setText("return that card to its owner's hand"); this.addAbility(new PutIntoGraveFromBattlefieldAllTriggeredAbility(effect, false, filter, true)); diff --git a/Mage.Sets/src/mage/cards/z/ZombieMusher.java b/Mage.Sets/src/mage/cards/z/ZombieMusher.java index 69054478bf..44310725a4 100644 --- a/Mage.Sets/src/mage/cards/z/ZombieMusher.java +++ b/Mage.Sets/src/mage/cards/z/ZombieMusher.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -25,7 +24,7 @@ public final class ZombieMusher extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow land"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public ZombieMusher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java b/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java index b2538d513b..0cc00740fd 100644 --- a/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java +++ b/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java @@ -9,7 +9,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -40,7 +39,7 @@ class LegendarySpellAbilityCheckEffect extends ContinuousRuleModifyingEffectImpl static { filter.add( Predicates.and( - new SupertypePredicate(SuperType.LEGENDARY), + SuperType.LEGENDARY.getPredicate(), Predicates.or( CardType.CREATURE.getPredicate(), CardType.PLANESWALKER.getPredicate() diff --git a/Mage/src/main/java/mage/abilities/costs/mana/SnowManaCost.java b/Mage/src/main/java/mage/abilities/costs/mana/SnowManaCost.java index c23881f063..3dca3c698a 100644 --- a/Mage/src/main/java/mage/abilities/costs/mana/SnowManaCost.java +++ b/Mage/src/main/java/mage/abilities/costs/mana/SnowManaCost.java @@ -6,7 +6,6 @@ import mage.abilities.costs.Cost; import mage.constants.ColoredManaSymbol; import mage.constants.SuperType; import mage.filter.FilterObject; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.ManaPool; @@ -15,7 +14,7 @@ public class SnowManaCost extends ManaCostImpl { private static final FilterObject filter = new FilterObject("Snow object"); static { - filter.add(new SupertypePredicate(SuperType.SNOW)); + filter.add(SuperType.SNOW.getPredicate()); } public SnowManaCost() { diff --git a/Mage/src/main/java/mage/constants/SuperType.java b/Mage/src/main/java/mage/constants/SuperType.java index f315f8fe22..9bc3debb9d 100644 --- a/Mage/src/main/java/mage/constants/SuperType.java +++ b/Mage/src/main/java/mage/constants/SuperType.java @@ -1,5 +1,9 @@ package mage.constants; +import mage.MageObject; +import mage.filter.predicate.Predicate; +import mage.game.Game; + /** * Created by IGOUDT on 26-3-2017. */ @@ -12,10 +16,31 @@ public enum SuperType { SNOW("Snow"), WORLD("World"); - String text; + public static class SuperTypePredicate implements Predicate { + + private final SuperType supertype; + + private SuperTypePredicate(SuperType supertype) { + this.supertype = supertype; + } + + @Override + public boolean apply(MageObject input, Game game) { + return input.getSuperType().contains(supertype); + } + + @Override + public String toString() { + return "Supertype(" + supertype + ')'; + } + } + + private final String text; + private final SuperTypePredicate predicate; SuperType(String text) { this.text = text; + this.predicate = new SuperTypePredicate(this); } @Override @@ -23,4 +48,7 @@ public enum SuperType { return text; } + public SuperTypePredicate getPredicate() { + return predicate; + } } diff --git a/Mage/src/main/java/mage/filter/StaticFilters.java b/Mage/src/main/java/mage/filter/StaticFilters.java index b1c049cb78..b34a1a9f6c 100644 --- a/Mage/src/main/java/mage/filter/StaticFilters.java +++ b/Mage/src/main/java/mage/filter/StaticFilters.java @@ -12,7 +12,6 @@ import mage.constants.TargetController; import mage.filter.common.*; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.MulticoloredPredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.other.PlayerPredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.AttackingPredicate; @@ -617,7 +616,7 @@ public final class StaticFilters { public static final FilterPermanent FILTER_PERMANENT_LEGENDARY = new FilterPermanent(); static { - FILTER_PERMANENT_LEGENDARY.add(new SupertypePredicate(SuperType.LEGENDARY)); + FILTER_PERMANENT_LEGENDARY.add(SuperType.LEGENDARY.getPredicate()); FILTER_PERMANENT_LEGENDARY.setLockedFilter(true); } diff --git a/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java b/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java index 9ecf609bd4..815419817c 100644 --- a/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -19,7 +18,7 @@ public class FilterBasicLandCard extends FilterCard { public FilterBasicLandCard(String name) { super(name); this.add(CardType.LAND.getPredicate()); - this.add(new SupertypePredicate(SuperType.BASIC)); + this.add(SuperType.BASIC.getPredicate()); } public FilterBasicLandCard(final FilterBasicLandCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterLandCard.java b/Mage/src/main/java/mage/filter/common/FilterLandCard.java index 7d8ccddbd4..07e29bd74e 100644 --- a/Mage/src/main/java/mage/filter/common/FilterLandCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterLandCard.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -24,7 +23,7 @@ public class FilterLandCard extends FilterCard { public static FilterLandCard basicLandCard() { FilterLandCard filter = new FilterLandCard("basic land card"); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); return filter; } diff --git a/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java b/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java index 62bb9ec4e6..e77f4a742a 100644 --- a/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java @@ -7,7 +7,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @author BetaSteward_at_googlemail.com @@ -31,13 +30,13 @@ public class FilterLandPermanent extends FilterPermanent { public static FilterLandPermanent nonbasicLand() { FilterLandPermanent filter = new FilterLandPermanent("nonbasic land"); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); return filter; } public static FilterLandPermanent nonbasicLands() { FilterLandPermanent filter = new FilterLandPermanent("nonbasic lands"); - filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + filter.add(Predicates.not(SuperType.BASIC.getPredicate())); return filter; } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java deleted file mode 100644 index 7e215bde50..0000000000 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java +++ /dev/null @@ -1,30 +0,0 @@ - -package mage.filter.predicate.mageobject; - -import mage.MageObject; -import mage.constants.SuperType; -import mage.filter.predicate.Predicate; -import mage.game.Game; - -/** - * - * @author North - */ -public class SupertypePredicate implements Predicate { - - private final SuperType supertype; - - public SupertypePredicate(SuperType supertype) { - this.supertype = supertype; - } - - @Override - public boolean apply(MageObject input, Game game) { - return input.getSuperType().contains(supertype); - } - - @Override - public String toString() { - return "Supertype(" + supertype + ')'; - } -} diff --git a/Mage/src/main/java/mage/game/GameImpl.java b/Mage/src/main/java/mage/game/GameImpl.java index 23409f4115..3980d56b38 100644 --- a/Mage/src/main/java/mage/game/GameImpl.java +++ b/Mage/src/main/java/mage/game/GameImpl.java @@ -35,7 +35,6 @@ import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.combat.Combat; import mage.game.command.CommandObject; @@ -2133,7 +2132,7 @@ public abstract class GameImpl implements Game, Serializable { if (legendary.size() > 1) { //don't bother checking if less than 2 legends in play for (Permanent legend : legendary) { FilterPermanent filterLegendName = new FilterPermanent(); - filterLegendName.add(new SupertypePredicate(SuperType.LEGENDARY)); + filterLegendName.add(SuperType.LEGENDARY.getPredicate()); filterLegendName.add(new NamePredicate(legend.getName())); filterLegendName.add(new ControllerIdPredicate(legend.getControllerId())); if (getBattlefield().contains(filterLegendName, legend.getControllerId(), this, 2)) { diff --git a/Mage/src/main/java/mage/game/combat/Combat.java b/Mage/src/main/java/mage/game/combat/Combat.java index b136dea269..5037522d6a 100644 --- a/Mage/src/main/java/mage/game/combat/Combat.java +++ b/Mage/src/main/java/mage/game/combat/Combat.java @@ -18,7 +18,6 @@ import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; import mage.filter.predicate.mageobject.NamePredicate; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AttackingSameNotBandedPredicate; import mage.filter.predicate.permanent.PermanentIdPredicate; import mage.game.Game; @@ -297,128 +296,132 @@ public class Combat implements Serializable, Copyable { private void handleBanding(UUID creatureId, Game game) { Player player = game.getPlayer(attackingPlayerId); Permanent attacker = game.getPermanent(creatureId); - if (attacker != null - && player != null) { - CombatGroup combatGroup = findGroup(attacker.getId()); - if (combatGroup != null - && attacker.getBandedCards().isEmpty() - && getAttackers().size() > 1) { - boolean canBand = attacker.getAbilities().containsKey(BandingAbility.getInstance().getId()); - List bandsWithOther = new ArrayList<>(); - for (Ability ability : attacker.getAbilities()) { - if (ability.getClass().equals(BandsWithOtherAbility.class)) { - bandsWithOther.add(ability); - } + if (attacker == null + || player == null) { + return; + } + CombatGroup combatGroup = findGroup(attacker.getId()); + if (combatGroup == null + || !attacker.getBandedCards().isEmpty() + || getAttackers().size() <= 1) { + return; + } + boolean canBand = attacker.getAbilities().containsKey(BandingAbility.getInstance().getId()); + List bandsWithOther = new ArrayList<>(); + for (Ability ability : attacker.getAbilities()) { + if (ability.getClass().equals(BandsWithOtherAbility.class)) { + bandsWithOther.add(ability); + } + } + boolean canBandWithOther = !bandsWithOther.isEmpty(); + if (!canBand && !canBandWithOther) { + return; + } + boolean isBanded = false; + FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking creature to band with " + attacker.getLogName()); + filter.add(Predicates.not(new PermanentIdPredicate(creatureId))); + filter.add(new AttackingSameNotBandedPredicate(combatGroup.getDefenderId())); // creature that isn't already banded, and is attacking the same player or planeswalker + List> predicates = new ArrayList<>(); + if (!canBand + && canBandWithOther) { + for (Ability ab : bandsWithOther) { + BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; + if (ability.getSubtype() != null) { + predicates.add(ability.getSubtype().getPredicate()); } - boolean canBandWithOther = !bandsWithOther.isEmpty(); - if (canBand || canBandWithOther) { - boolean isBanded = false; - FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking creature to band with " + attacker.getLogName()); - filter.add(Predicates.not(new PermanentIdPredicate(creatureId))); - filter.add(new AttackingSameNotBandedPredicate(combatGroup.getDefenderId())); // creature that isn't already banded, and is attacking the same player or planeswalker - List> predicates = new ArrayList<>(); - if (!canBand - && canBandWithOther) { - for (Ability ab : bandsWithOther) { - BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; - if (ability.getSubtype() != null) { - predicates.add(ability.getSubtype().getPredicate()); - } - if (ability.getSupertype() != null) { - predicates.add(new SupertypePredicate(ability.getSupertype())); - } - if (ability.getName() != null) { - predicates.add(new NamePredicate(ability.getName())); - } - } - filter.add(Predicates.or(predicates)); - } - while (player.canRespond()) { - TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); - target.setRequired(false); - canBand &= target.canChoose(attackingPlayerId, game); - canBandWithOther &= target.canChoose(attackingPlayerId, game); - if (game.replaceEvent(GameEvent.getEvent(GameEvent.EventType.DECLARING_ATTACKERS, attackingPlayerId, attackingPlayerId)) - || (!canBand && !canBandWithOther) - || !player.chooseUse(Outcome.Benefit, - "Do you wish to " + (isBanded ? "band " + attacker.getLogName() - + " with another " : "form a band with " + attacker.getLogName() + " and an ") - + "attacking creature?", null, game)) { - break; - } + if (ability.getSupertype() != null) { + predicates.add(ability.getSupertype().getPredicate()); + } + if (ability.getName() != null) { + predicates.add(new NamePredicate(ability.getName())); + } + } + filter.add(Predicates.or(predicates)); + } + while (player.canRespond()) { + TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); + target.setRequired(false); + canBand &= target.canChoose(attackingPlayerId, game); + canBandWithOther &= target.canChoose(attackingPlayerId, game); + if (game.replaceEvent(GameEvent.getEvent(GameEvent.EventType.DECLARING_ATTACKERS, attackingPlayerId, attackingPlayerId)) + || (!canBand && !canBandWithOther) + || !player.chooseUse(Outcome.Benefit, + "Do you wish to " + (isBanded ? "band " + attacker.getLogName() + + " with another " : "form a band with " + attacker.getLogName() + " and an ") + + "attacking creature?", null, game)) { + break; + } - if (canBand && canBandWithOther) { - if (player.chooseUse(Outcome.Detriment, "Choose type of banding ability to apply:", - attacker.getLogName(), "Banding", "Bands with other", null, game)) { + if (canBand && canBandWithOther) { + if (player.chooseUse(Outcome.Detriment, "Choose type of banding ability to apply:", + attacker.getLogName(), "Banding", "Bands with other", null, game)) { + canBandWithOther = false; + } else { + canBand = false; + for (Ability ab : bandsWithOther) { + BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; + if (ability.getSubtype() != null) { + predicates.add(ability.getSubtype().getPredicate()); + } + if (ability.getSupertype() != null) { + predicates.add(ability.getSupertype().getPredicate()); + } + if (ability.getName() != null) { + predicates.add(new NamePredicate(ability.getName())); + } + } + filter.add(Predicates.or(predicates)); + } + } + + if (target.choose(Outcome.Benefit, attackingPlayerId, null, game)) { + isBanded = true; + for (UUID targetId : target.getTargets()) { + Permanent permanent = game.getPermanent(targetId); + if (permanent != null) { + + for (UUID bandedId : attacker.getBandedCards()) { + permanent.addBandedCard(bandedId); + Permanent banded = game.getPermanent(bandedId); + if (banded != null) { + banded.addBandedCard(targetId); + } + } + permanent.addBandedCard(creatureId); + attacker.addBandedCard(targetId); + if (canBand) { + if (!permanent.getAbilities().containsKey(BandingAbility.getInstance().getId())) { + filter.add(new AbilityPredicate(BandingAbility.class)); canBandWithOther = false; - } else { - canBand = false; - for (Ability ab : bandsWithOther) { - BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; - if (ability.getSubtype() != null) { - predicates.add(ability.getSubtype().getPredicate()); - } - if (ability.getSupertype() != null) { - predicates.add(new SupertypePredicate(ability.getSupertype())); - } - if (ability.getName() != null) { - predicates.add(new NamePredicate(ability.getName())); - } - } - filter.add(Predicates.or(predicates)); } - } - - if (target.choose(Outcome.Benefit, attackingPlayerId, null, game)) { - isBanded = true; - for (UUID targetId : target.getTargets()) { - Permanent permanent = game.getPermanent(targetId); - if (permanent != null) { - - for (UUID bandedId : attacker.getBandedCards()) { - permanent.addBandedCard(bandedId); - Permanent banded = game.getPermanent(bandedId); - if (banded != null) { - banded.addBandedCard(targetId); - } - } - permanent.addBandedCard(creatureId); - attacker.addBandedCard(targetId); - if (canBand) { - if (!permanent.getAbilities().containsKey(BandingAbility.getInstance().getId())) { - filter.add(new AbilityPredicate(BandingAbility.class)); - canBandWithOther = false; - } - } else if (canBandWithOther) { - List> newPredicates = new ArrayList<>(); - for (Predicate predicate : predicates) { - if (predicate.apply(permanent, game)) { - newPredicates.add(predicate); - } - } - filter.add(Predicates.or(newPredicates)); - canBand = false; - } + } else if (canBandWithOther) { + List> newPredicates = new ArrayList<>(); + for (Predicate predicate : predicates) { + if (predicate.apply(permanent, game)) { + newPredicates.add(predicate); } - } + filter.add(Predicates.or(newPredicates)); + canBand = false; } } - if (isBanded) { - StringBuilder sb = new StringBuilder(player.getLogName()).append(" formed a band with ").append((attacker.getBandedCards().size() + 1) + " creatures: "); - sb.append(attacker.getLogName()); - for (UUID id : attacker.getBandedCards()) { - sb.append(", "); - Permanent permanent = game.getPermanent(id); - if (permanent != null) { - sb.append(permanent.getLogName()); - } - } - game.informPlayers(sb.toString()); - } + } } } + if (!isBanded) { + return; + } + StringBuilder sb = new StringBuilder(player.getLogName()).append(" formed a band with ").append((attacker.getBandedCards().size() + 1) + " creatures: "); + sb.append(attacker.getLogName()); + for (UUID id : attacker.getBandedCards()) { + sb.append(", "); + Permanent permanent = game.getPermanent(id); + if (permanent != null) { + sb.append(permanent.getLogName()); + } + } + game.informPlayers(sb.toString()); } protected void checkAttackRequirements(Player player, Game game) { diff --git a/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java b/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java index 537feb42e4..8c6ac750b1 100644 --- a/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java +++ b/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java @@ -5,7 +5,6 @@ package mage.target.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetCard; /** @@ -16,7 +15,7 @@ public class TargetBasicLandCard extends TargetCard { public TargetBasicLandCard(Zone zone) { super(zone); - filter.add(new SupertypePredicate(SuperType.BASIC)); + filter.add(SuperType.BASIC.getPredicate()); filter.add(CardType.LAND.getPredicate()); } diff --git a/Mage/src/main/java/mage/target/common/TargetNonBasicLandPermanent.java b/Mage/src/main/java/mage/target/common/TargetNonBasicLandPermanent.java index dd56cd414f..f36949f531 100644 --- a/Mage/src/main/java/mage/target/common/TargetNonBasicLandPermanent.java +++ b/Mage/src/main/java/mage/target/common/TargetNonBasicLandPermanent.java @@ -5,7 +5,6 @@ package mage.target.common; import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.SupertypePredicate; /** * @@ -15,7 +14,7 @@ public class TargetNonBasicLandPermanent extends TargetLandPermanent { public TargetNonBasicLandPermanent() { this.filter = new FilterLandPermanent(); - this.filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); + this.filter.add(Predicates.not(SuperType.BASIC.getPredicate())); this.targetName = "nonbasic land"; }