From 8629977f146f7653b0abff898cb2f46c29afb474 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sat, 12 Jan 2019 16:30:49 -0500 Subject: [PATCH] refactored many other predicates to singleton enums --- Mage.Sets/src/mage/cards/a/AbzanAscendancy.java | 2 +- Mage.Sets/src/mage/cards/a/AkoumFlameseeker.java | 2 +- Mage.Sets/src/mage/cards/a/AkroanHoplite.java | 2 +- Mage.Sets/src/mage/cards/a/Alarum.java | 2 +- Mage.Sets/src/mage/cards/a/AltarGolem.java | 2 +- Mage.Sets/src/mage/cards/a/AlwaysWatching.java | 2 +- Mage.Sets/src/mage/cards/a/AnaBattlemage.java | 2 +- Mage.Sets/src/mage/cards/a/AnafenzaKinTreeSpirit.java | 2 +- Mage.Sets/src/mage/cards/a/AnafenzaTheForemost.java | 2 +- Mage.Sets/src/mage/cards/a/AncestorsProphet.java | 2 +- Mage.Sets/src/mage/cards/a/AncientHellkite.java | 2 +- Mage.Sets/src/mage/cards/a/AncientHolocron.java | 2 +- Mage.Sets/src/mage/cards/a/AncientStoneIdol.java | 2 +- Mage.Sets/src/mage/cards/a/AngelicFavor.java | 2 +- Mage.Sets/src/mage/cards/a/AnointerPriest.java | 2 +- Mage.Sets/src/mage/cards/a/AphettoGrifter.java | 2 +- Mage.Sets/src/mage/cards/a/ApocalypseChime.java | 2 +- Mage.Sets/src/mage/cards/a/ArachnusSpinner.java | 2 +- Mage.Sets/src/mage/cards/a/ArashinWarBeast.java | 2 +- Mage.Sets/src/mage/cards/a/ArcadesSabboth.java | 4 ++-- Mage.Sets/src/mage/cards/a/ArtificersAssistant.java | 2 +- .../src/mage/cards/a/AryelKnightOfWindgrace.java | 2 +- Mage.Sets/src/mage/cards/a/Asphyxiate.java | 2 +- Mage.Sets/src/mage/cards/a/Assassinate.java | 2 +- Mage.Sets/src/mage/cards/a/AssassinsBlade.java | 2 +- Mage.Sets/src/mage/cards/a/AuraOfDominion.java | 2 +- Mage.Sets/src/mage/cards/a/AvenSoulgazer.java | 2 +- Mage.Sets/src/mage/cards/a/AweForTheGuilds.java | 2 +- Mage.Sets/src/mage/cards/a/AzamiLadyOfScrolls.java | 2 +- Mage.Sets/src/mage/cards/b/Backlash.java | 2 +- Mage.Sets/src/mage/cards/b/BalduvianTradingPost.java | 2 +- Mage.Sets/src/mage/cards/b/BantSureblade.java | 2 +- Mage.Sets/src/mage/cards/b/BastionProtector.java | 2 +- Mage.Sets/src/mage/cards/b/BattleScreech.java | 2 +- Mage.Sets/src/mage/cards/b/BazaarOfWonders.java | 2 +- Mage.Sets/src/mage/cards/b/BeastmastersMagemark.java | 2 +- Mage.Sets/src/mage/cards/b/BeastsOfBogardan.java | 2 +- Mage.Sets/src/mage/cards/b/BenBenAkkiHermit.java | 2 +- Mage.Sets/src/mage/cards/b/BenalishMissionary.java | 2 +- Mage.Sets/src/mage/cards/b/Benthicore.java | 2 +- Mage.Sets/src/mage/cards/b/BetrothedOfFire.java | 2 +- Mage.Sets/src/mage/cards/b/Bifurcate.java | 2 +- Mage.Sets/src/mage/cards/b/BirchloreRangers.java | 2 +- Mage.Sets/src/mage/cards/b/BlackOakOfOdunos.java | 2 +- Mage.Sets/src/mage/cards/b/BlaringCaptain.java | 2 +- Mage.Sets/src/mage/cards/b/Blockbuster.java | 2 +- Mage.Sets/src/mage/cards/b/BloodTribute.java | 2 +- Mage.Sets/src/mage/cards/b/BloodswornSteward.java | 2 +- Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java | 2 +- Mage.Sets/src/mage/cards/b/Borrowing100000Arrows.java | 2 +- Mage.Sets/src/mage/cards/b/BraceForImpact.java | 2 +- Mage.Sets/src/mage/cards/b/Brainspoil.java | 2 +- Mage.Sets/src/mage/cards/b/BrambleSovereign.java | 2 +- Mage.Sets/src/mage/cards/b/BrandedBrawlers.java | 2 +- Mage.Sets/src/mage/cards/b/BreakOpen.java | 2 +- Mage.Sets/src/mage/cards/b/BridgeFromBelow.java | 2 +- Mage.Sets/src/mage/cards/b/BrokenVisage.java | 2 +- Mage.Sets/src/mage/cards/b/BroodingSaurian.java | 2 +- .../src/mage/cards/b/BrudicladTelchorEngineer.java | 4 ++-- Mage.Sets/src/mage/cards/b/BrutalSuppression.java | 2 +- Mage.Sets/src/mage/cards/b/BurdenOfGreed.java | 2 +- Mage.Sets/src/mage/cards/b/BurnAtTheStake.java | 2 +- Mage.Sets/src/mage/cards/c/CalmingVerse.java | 2 +- Mage.Sets/src/mage/cards/c/CaptainPhasma.java | 2 +- Mage.Sets/src/mage/cards/c/CaptivatingVampire.java | 2 +- Mage.Sets/src/mage/cards/c/CaribouRange.java | 2 +- Mage.Sets/src/mage/cards/c/CatapultMaster.java | 2 +- Mage.Sets/src/mage/cards/c/CatapultSquad.java | 2 +- Mage.Sets/src/mage/cards/c/CavalryPegasus.java | 2 +- Mage.Sets/src/mage/cards/c/ChewbaccaTheBeast.java | 2 +- Mage.Sets/src/mage/cards/c/ChickenALaKing.java | 2 +- Mage.Sets/src/mage/cards/c/ChiseiHeartOfOceans.java | 2 +- Mage.Sets/src/mage/cards/c/ChosenOfMarkov.java | 2 +- Mage.Sets/src/mage/cards/c/CitadelOfPain.java | 2 +- Mage.Sets/src/mage/cards/c/CityInABottle.java | 4 ++-- Mage.Sets/src/mage/cards/c/ClockOfOmens.java | 2 +- Mage.Sets/src/mage/cards/c/CloudgoatRanger.java | 2 +- Mage.Sets/src/mage/cards/c/ClovenCasting.java | 2 +- Mage.Sets/src/mage/cards/c/CollectiveEffort.java | 2 +- Mage.Sets/src/mage/cards/c/CommanderCody.java | 2 +- Mage.Sets/src/mage/cards/c/CopperhoofVorrac.java | 2 +- Mage.Sets/src/mage/cards/c/CoralAtoll.java | 2 +- Mage.Sets/src/mage/cards/c/CoralReef.java | 2 +- Mage.Sets/src/mage/cards/c/CorrosiveOoze.java | 2 +- Mage.Sets/src/mage/cards/c/CovetedPeacock.java | 2 +- Mage.Sets/src/mage/cards/c/Crackleburr.java | 4 ++-- Mage.Sets/src/mage/cards/c/CracklingPerimeter.java | 2 +- Mage.Sets/src/mage/cards/c/CrashingBoars.java | 2 +- Mage.Sets/src/mage/cards/c/CrimsonHonorGuard.java | 2 +- Mage.Sets/src/mage/cards/c/CrookclawElder.java | 4 ++-- Mage.Sets/src/mage/cards/c/Cryptbreaker.java | 2 +- Mage.Sets/src/mage/cards/c/CrypticGateway.java | 4 ++-- Mage.Sets/src/mage/cards/c/CurtainOfLight.java | 4 ++-- Mage.Sets/src/mage/cards/c/CutTheEarthlyBond.java | 2 +- Mage.Sets/src/mage/cards/d/DAvenantTrapper.java | 2 +- Mage.Sets/src/mage/cards/d/DanceOfMany.java | 2 +- Mage.Sets/src/mage/cards/d/DaringArchaeologist.java | 2 +- Mage.Sets/src/mage/cards/d/DazzlingBeauty.java | 4 ++-- Mage.Sets/src/mage/cards/d/DeadeyeHarpooner.java | 2 +- Mage.Sets/src/mage/cards/d/DeathStroke.java | 2 +- Mage.Sets/src/mage/cards/d/DeathlessAncient.java | 2 +- Mage.Sets/src/mage/cards/d/DecayingSoil.java | 2 +- Mage.Sets/src/mage/cards/d/DecimatorBeetle.java | 2 +- Mage.Sets/src/mage/cards/d/DefilerOfSouls.java | 2 +- Mage.Sets/src/mage/cards/d/Desert.java | 2 +- Mage.Sets/src/mage/cards/d/DevoutChaplain.java | 2 +- Mage.Sets/src/mage/cards/d/DevoutInvocation.java | 2 +- Mage.Sets/src/mage/cards/d/DiamondKaleidoscope.java | 2 +- Mage.Sets/src/mage/cards/d/Dichotomancy.java | 2 +- Mage.Sets/src/mage/cards/d/DiligentExcavator.java | 2 +- Mage.Sets/src/mage/cards/d/DireFleetPoisoner.java | 2 +- Mage.Sets/src/mage/cards/d/DissensionInTheRanks.java | 4 ++-- Mage.Sets/src/mage/cards/d/DiversionaryTactics.java | 2 +- Mage.Sets/src/mage/cards/d/DoggedHunter.java | 2 +- Mage.Sets/src/mage/cards/d/DolmenGate.java | 2 +- Mage.Sets/src/mage/cards/d/DomineeringWill.java | 2 +- Mage.Sets/src/mage/cards/d/DormantVolcano.java | 2 +- Mage.Sets/src/mage/cards/d/DovinsDismissal.java | 2 +- Mage.Sets/src/mage/cards/d/DragonArch.java | 2 +- Mage.Sets/src/mage/cards/d/Dragonrage.java | 2 +- Mage.Sets/src/mage/cards/d/DragonscaleGeneral.java | 2 +- Mage.Sets/src/mage/cards/d/DranasChosen.java | 2 +- Mage.Sets/src/mage/cards/d/DreamChisel.java | 2 +- Mage.Sets/src/mage/cards/d/DreamTides.java | 2 +- Mage.Sets/src/mage/cards/d/DrownerOfSecrets.java | 2 +- Mage.Sets/src/mage/cards/d/DrudgeSpell.java | 2 +- Mage.Sets/src/mage/cards/d/DualNature.java | 4 ++-- Mage.Sets/src/mage/cards/d/DuneDiviner.java | 2 +- Mage.Sets/src/mage/cards/d/Duplicant.java | 2 +- Mage.Sets/src/mage/cards/d/DuskborneSkymarcher.java | 2 +- Mage.Sets/src/mage/cards/d/DwarvenBloodboiler.java | 2 +- Mage.Sets/src/mage/cards/d/DwynenGiltLeafDaen.java | 2 +- Mage.Sets/src/mage/cards/e/EarlOfSquirrel.java | 2 +- Mage.Sets/src/mage/cards/e/Earthcraft.java | 2 +- Mage.Sets/src/mage/cards/e/Earthlore.java | 2 +- Mage.Sets/src/mage/cards/e/EbonyHorse.java | 2 +- Mage.Sets/src/mage/cards/e/EliteScaleguard.java | 2 +- Mage.Sets/src/mage/cards/e/ElvishScout.java | 2 +- Mage.Sets/src/mage/cards/e/EmbalmersTools.java | 2 +- Mage.Sets/src/mage/cards/e/EmmaraTandris.java | 2 +- Mage.Sets/src/mage/cards/e/EnemyOfTheGuildpact.java | 2 +- Mage.Sets/src/mage/cards/e/EnergyTap.java | 2 +- Mage.Sets/src/mage/cards/e/EntanglingVines.java | 2 +- Mage.Sets/src/mage/cards/e/EntrapmentManeuver.java | 2 +- Mage.Sets/src/mage/cards/e/EsperStormblade.java | 2 +- Mage.Sets/src/mage/cards/e/EstridTheMasked.java | 2 +- Mage.Sets/src/mage/cards/e/Everglades.java | 2 +- Mage.Sets/src/mage/cards/e/Excise.java | 2 +- Mage.Sets/src/mage/cards/e/Excoriate.java | 2 +- Mage.Sets/src/mage/cards/e/Exile.java | 2 +- Mage.Sets/src/mage/cards/f/FaerieArtisans.java | 2 +- Mage.Sets/src/mage/cards/f/FathomFleetCaptain.java | 2 +- Mage.Sets/src/mage/cards/f/FeastOfDreams.java | 2 +- Mage.Sets/src/mage/cards/f/FeedThePack.java | 2 +- Mage.Sets/src/mage/cards/f/FenStalker.java | 2 +- Mage.Sets/src/mage/cards/f/FencersMagemark.java | 2 +- Mage.Sets/src/mage/cards/f/FieldOfSouls.java | 2 +- Mage.Sets/src/mage/cards/f/FieldSurgeon.java | 2 +- Mage.Sets/src/mage/cards/f/FiendBinder.java | 2 +- Mage.Sets/src/mage/cards/f/FightToTheDeath.java | 4 ++-- Mage.Sets/src/mage/cards/f/Finn.java | 2 +- Mage.Sets/src/mage/cards/f/FireAtWill.java | 4 ++-- Mage.Sets/src/mage/cards/f/FlamerushRider.java | 2 +- Mage.Sets/src/mage/cards/f/FlameshadowConjuring.java | 2 +- Mage.Sets/src/mage/cards/f/Flicker.java | 2 +- Mage.Sets/src/mage/cards/f/FloralSpuzzem.java | 2 +- Mage.Sets/src/mage/cards/f/Forcefield.java | 2 +- Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java | 2 +- Mage.Sets/src/mage/cards/g/GalecasterColossus.java | 2 +- Mage.Sets/src/mage/cards/g/Galestrike.java | 2 +- Mage.Sets/src/mage/cards/g/GallowsAtWillowHill.java | 2 +- Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java | 2 +- Mage.Sets/src/mage/cards/g/GatewayShade.java | 2 +- Mage.Sets/src/mage/cards/g/GazeOfJustice.java | 2 +- Mage.Sets/src/mage/cards/g/GeneralHux.java | 2 +- Mage.Sets/src/mage/cards/g/GenesisChamber.java | 2 +- Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java | 2 +- Mage.Sets/src/mage/cards/g/GiantOyster.java | 2 +- Mage.Sets/src/mage/cards/g/GideonJura.java | 2 +- Mage.Sets/src/mage/cards/g/GlareOfSubdual.java | 2 +- Mage.Sets/src/mage/cards/g/GlassOfTheGuildpact.java | 2 +- Mage.Sets/src/mage/cards/g/GlimmerdustNap.java | 2 +- Mage.Sets/src/mage/cards/g/GlitteringWish.java | 2 +- Mage.Sets/src/mage/cards/g/GlyphOfDestruction.java | 2 +- Mage.Sets/src/mage/cards/g/GnarlrootTrapper.java | 2 +- Mage.Sets/src/mage/cards/g/GoblinMutant.java | 2 +- Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java | 2 +- Mage.Sets/src/mage/cards/g/GoblinRacketeer.java | 2 +- Mage.Sets/src/mage/cards/g/GodhunterOctopus.java | 2 +- Mage.Sets/src/mage/cards/g/GolgariGermination.java | 2 +- Mage.Sets/src/mage/cards/g/GolgothianSylex.java | 2 +- Mage.Sets/src/mage/cards/g/GossamerChains.java | 2 +- Mage.Sets/src/mage/cards/g/GovernTheGuildless.java | 2 +- Mage.Sets/src/mage/cards/g/GrandArchitect.java | 2 +- Mage.Sets/src/mage/cards/g/GravespawnSovereign.java | 2 +- Mage.Sets/src/mage/cards/g/GreaterAuramancy.java | 2 +- Mage.Sets/src/mage/cards/g/GrimHaruspex.java | 2 +- Mage.Sets/src/mage/cards/g/GrimlockDinobotLeader.java | 2 +- Mage.Sets/src/mage/cards/g/GrixisGrimblade.java | 2 +- Mage.Sets/src/mage/cards/g/GroveOfTheGuardian.java | 2 +- Mage.Sets/src/mage/cards/g/GruulWarChant.java | 2 +- Mage.Sets/src/mage/cards/g/GuanYus1000LiMarch.java | 2 +- .../src/mage/cards/g/GuardianOfTheGuildpact.java | 2 +- Mage.Sets/src/mage/cards/g/GuardianProject.java | 2 +- Mage.Sets/src/mage/cards/g/GuardiansMagemark.java | 2 +- Mage.Sets/src/mage/cards/g/GuardiansOfKoilos.java | 2 +- Mage.Sets/src/mage/cards/g/GuildSummit.java | 2 +- Mage.Sets/src/mage/cards/g/GuildscornWard.java | 2 +- Mage.Sets/src/mage/cards/h/HairStrungKoto.java | 2 +- Mage.Sets/src/mage/cards/h/HammerheadCorvette.java | 2 +- Mage.Sets/src/mage/cards/h/HandOfJustice.java | 2 +- Mage.Sets/src/mage/cards/h/HarbingerOfTheTides.java | 2 +- Mage.Sets/src/mage/cards/h/HarmonyOfNature.java | 2 +- Mage.Sets/src/mage/cards/h/HarshJustice.java | 2 +- Mage.Sets/src/mage/cards/h/HarvestSeason.java | 2 +- Mage.Sets/src/mage/cards/h/HarvesterOfSouls.java | 2 +- Mage.Sets/src/mage/cards/h/HazyHomunculus.java | 2 +- Mage.Sets/src/mage/cards/h/HearthCharm.java | 2 +- Mage.Sets/src/mage/cards/h/Hecatomb.java | 2 +- Mage.Sets/src/mage/cards/h/HellkiteWhelp.java | 2 +- Mage.Sets/src/mage/cards/h/HeritageDruid.java | 2 +- Mage.Sets/src/mage/cards/h/HivisOfTheScale.java | 2 +- Mage.Sets/src/mage/cards/h/HoldoutSettlement.java | 2 +- Mage.Sets/src/mage/cards/h/HollowWarrior.java | 6 +++--- Mage.Sets/src/mage/cards/h/HonorWornShaku.java | 2 +- Mage.Sets/src/mage/cards/h/HourOfReckoning.java | 2 +- Mage.Sets/src/mage/cards/h/HundredTalonStrike.java | 2 +- Mage.Sets/src/mage/cards/h/HunterOfEyeblights.java | 2 +- Mage.Sets/src/mage/cards/i/IdentityThief.java | 2 +- Mage.Sets/src/mage/cards/i/IgnitionTeam.java | 2 +- Mage.Sets/src/mage/cards/i/IllnessInTheRanks.java | 2 +- Mage.Sets/src/mage/cards/i/ImpelledGiant.java | 2 +- Mage.Sets/src/mage/cards/i/ImperialMask.java | 2 +- Mage.Sets/src/mage/cards/i/ImpetuousProtege.java | 2 +- .../src/mage/cards/i/InallaArchmageRitualist.java | 4 ++-- Mage.Sets/src/mage/cards/i/InfernalTribute.java | 2 +- Mage.Sets/src/mage/cards/i/InfiltratorsMagemark.java | 2 +- Mage.Sets/src/mage/cards/i/InkfathomWitch.java | 2 +- Mage.Sets/src/mage/cards/i/IntangibleVirtue.java | 2 +- Mage.Sets/src/mage/cards/i/IroasGodOfVictory.java | 2 +- Mage.Sets/src/mage/cards/i/ItThatBetrays.java | 2 +- Mage.Sets/src/mage/cards/i/IvoryGuardians.java | 2 +- Mage.Sets/src/mage/cards/i/IxidorRealitySculptor.java | 4 ++-- Mage.Sets/src/mage/cards/i/Ixidron.java | 4 ++-- Mage.Sets/src/mage/cards/j/JaddiLifestrider.java | 2 +- Mage.Sets/src/mage/cards/j/Jihad.java | 4 ++-- Mage.Sets/src/mage/cards/j/JinxedRing.java | 2 +- Mage.Sets/src/mage/cards/j/JudithTheScourgeDiva.java | 2 +- Mage.Sets/src/mage/cards/j/JundHackblade.java | 2 +- Mage.Sets/src/mage/cards/j/JungleBasin.java | 2 +- Mage.Sets/src/mage/cards/j/JunglePatrol.java | 2 +- Mage.Sets/src/mage/cards/k/Karoo.java | 2 +- Mage.Sets/src/mage/cards/k/KarplusanGiant.java | 2 +- Mage.Sets/src/mage/cards/k/KeeperOfTheLens.java | 2 +- Mage.Sets/src/mage/cards/k/KeeperOfTheNineGales.java | 2 +- Mage.Sets/src/mage/cards/k/KeldonBattlewagon.java | 2 +- Mage.Sets/src/mage/cards/k/KeldonBerserker.java | 2 +- Mage.Sets/src/mage/cards/k/KestiaTheCultivator.java | 2 +- Mage.Sets/src/mage/cards/k/KingsAssassin.java | 2 +- Mage.Sets/src/mage/cards/k/KjeldoranRoyalGuard.java | 2 +- Mage.Sets/src/mage/cards/k/KnightOfNewAlara.java | 2 +- Mage.Sets/src/mage/cards/k/KnightOfTheLastBreath.java | 2 +- Mage.Sets/src/mage/cards/k/KnotvinePaladin.java | 2 +- Mage.Sets/src/mage/cards/k/KorozdaGuildmage.java | 2 +- Mage.Sets/src/mage/cards/k/KoskunFalls.java | 2 +- Mage.Sets/src/mage/cards/k/KrovikanPlague.java | 2 +- Mage.Sets/src/mage/cards/k/KukemssaPirates.java | 2 +- Mage.Sets/src/mage/cards/k/KulrathKnight.java | 2 +- Mage.Sets/src/mage/cards/k/KumenaTyrantOfOrazca.java | 4 ++-- Mage.Sets/src/mage/cards/k/KyloRen.java | 2 +- Mage.Sets/src/mage/cards/k/KyrenNegotiations.java | 2 +- Mage.Sets/src/mage/cards/l/Lashknife.java | 2 +- Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java | 2 +- Mage.Sets/src/mage/cards/l/LedevChampion.java | 2 +- Mage.Sets/src/mage/cards/l/LenaSelflessChampion.java | 2 +- Mage.Sets/src/mage/cards/l/LensOfClarity.java | 2 +- Mage.Sets/src/mage/cards/l/LeoninBladetrap.java | 2 +- Mage.Sets/src/mage/cards/l/LethargyTrap.java | 2 +- Mage.Sets/src/mage/cards/l/Liability.java | 2 +- Mage.Sets/src/mage/cards/l/Lich.java | 2 +- Mage.Sets/src/mage/cards/l/LightningCoils.java | 2 +- .../src/mage/cards/l/LilianaHereticalHealer.java | 2 +- Mage.Sets/src/mage/cards/l/LingeringPhantom.java | 2 +- Mage.Sets/src/mage/cards/l/LlanowarBehemoth.java | 2 +- Mage.Sets/src/mage/cards/l/LoamDryad.java | 2 +- Mage.Sets/src/mage/cards/l/LodestoneMyr.java | 2 +- Mage.Sets/src/mage/cards/l/LotusVale.java | 2 +- Mage.Sets/src/mage/cards/l/LullmageMentor.java | 2 +- Mage.Sets/src/mage/cards/l/LumberingBattlement.java | 2 +- Mage.Sets/src/mage/cards/m/MagneticMountain.java | 2 +- Mage.Sets/src/mage/cards/m/MalakirSoothsayer.java | 2 +- Mage.Sets/src/mage/cards/m/ManaCache.java | 2 +- Mage.Sets/src/mage/cards/m/ManaGeyser.java | 2 +- Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java | 2 +- Mage.Sets/src/mage/cards/m/MarduAscendancy.java | 2 +- Mage.Sets/src/mage/cards/m/MarshalingTheTroops.java | 2 +- Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java | 2 +- Mage.Sets/src/mage/cards/m/MasterApothecary.java | 2 +- Mage.Sets/src/mage/cards/m/MasterOfDiversion.java | 2 +- Mage.Sets/src/mage/cards/m/MasterOfTheWildHunt.java | 2 +- Mage.Sets/src/mage/cards/m/MavrenFeinDuskApostle.java | 2 +- Mage.Sets/src/mage/cards/m/MazeAbomination.java | 2 +- Mage.Sets/src/mage/cards/m/MazeBehemoth.java | 2 +- Mage.Sets/src/mage/cards/m/MazeGlider.java | 2 +- Mage.Sets/src/mage/cards/m/MazeRusher.java | 2 +- Mage.Sets/src/mage/cards/m/MazeSentinel.java | 2 +- Mage.Sets/src/mage/cards/m/MercenaryInformer.java | 2 +- Mage.Sets/src/mage/cards/m/MerchantsDockhand.java | 2 +- Mage.Sets/src/mage/cards/m/MidnightReaper.java | 2 +- Mage.Sets/src/mage/cards/m/Mightstone.java | 2 +- Mage.Sets/src/mage/cards/m/MilitiasPride.java | 2 +- Mage.Sets/src/mage/cards/m/MinionReflector.java | 2 +- Mage.Sets/src/mage/cards/m/MirrorMarch.java | 2 +- Mage.Sets/src/mage/cards/m/MirrorStrike.java | 2 +- Mage.Sets/src/mage/cards/m/Mirrorworks.java | 2 +- Mage.Sets/src/mage/cards/m/MishrasSelfReplicator.java | 2 +- Mage.Sets/src/mage/cards/m/MoggJailer.java | 2 +- Mage.Sets/src/mage/cards/m/Monsoon.java | 2 +- Mage.Sets/src/mage/cards/m/MossbridgeTroll.java | 4 ++-- Mage.Sets/src/mage/cards/m/MothdustChangeling.java | 2 +- Mage.Sets/src/mage/cards/m/Mudslide.java | 2 +- Mage.Sets/src/mage/cards/m/MundasVanguard.java | 2 +- Mage.Sets/src/mage/cards/m/MurderousCompulsion.java | 2 +- Mage.Sets/src/mage/cards/m/MyrBattlesphere.java | 2 +- Mage.Sets/src/mage/cards/m/MythUnbound.java | 2 +- Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java | 4 ++-- Mage.Sets/src/mage/cards/n/NamelessRace.java | 2 +- Mage.Sets/src/mage/cards/n/NantukoShaman.java | 2 +- Mage.Sets/src/mage/cards/n/NaturesChosen.java | 2 +- Mage.Sets/src/mage/cards/n/NayaHushblade.java | 2 +- .../src/mage/cards/n/NazahnReveredBladesmith.java | 2 +- Mage.Sets/src/mage/cards/n/NecromancersMagemark.java | 2 +- Mage.Sets/src/mage/cards/n/NemesisTrap.java | 2 +- Mage.Sets/src/mage/cards/n/NeutralizingBlast.java | 2 +- Mage.Sets/src/mage/cards/n/NewBlood.java | 2 +- Mage.Sets/src/mage/cards/n/NobleStand.java | 2 +- Mage.Sets/src/mage/cards/n/NosyGoblin.java | 2 +- Mage.Sets/src/mage/cards/n/NullmageShepherd.java | 2 +- Mage.Sets/src/mage/cards/n/NuteGunray.java | 2 +- Mage.Sets/src/mage/cards/o/OakStreetInnkeeper.java | 2 +- Mage.Sets/src/mage/cards/o/OblivionSower.java | 2 +- Mage.Sets/src/mage/cards/o/ObscuringAether.java | 2 +- Mage.Sets/src/mage/cards/o/OgreSlumlord.java | 2 +- Mage.Sets/src/mage/cards/o/OnduWarCleric.java | 2 +- Mage.Sets/src/mage/cards/o/OpenTheGraves.java | 2 +- Mage.Sets/src/mage/cards/o/Opposition.java | 2 +- Mage.Sets/src/mage/cards/o/OrcishSquatters.java | 2 +- Mage.Sets/src/mage/cards/o/Orgg.java | 2 +- Mage.Sets/src/mage/cards/o/OrimsCure.java | 2 +- Mage.Sets/src/mage/cards/o/Outmaneuver.java | 2 +- Mage.Sets/src/mage/cards/o/Overburden.java | 2 +- Mage.Sets/src/mage/cards/o/OverseerOfTheDamned.java | 2 +- Mage.Sets/src/mage/cards/p/Pallimud.java | 2 +- Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java | 2 +- Mage.Sets/src/mage/cards/p/ParallelEvolution.java | 2 +- Mage.Sets/src/mage/cards/p/PatronWizard.java | 2 +- Mage.Sets/src/mage/cards/p/PersistentPetitioners.java | 2 +- Mage.Sets/src/mage/cards/p/PhantomGeneral.java | 2 +- Mage.Sets/src/mage/cards/p/PhyrexianIngester.java | 2 +- Mage.Sets/src/mage/cards/p/PiannaNomadCaptain.java | 2 +- Mage.Sets/src/mage/cards/p/PiasRevolution.java | 2 +- Mage.Sets/src/mage/cards/p/PoeDameron.java | 2 +- Mage.Sets/src/mage/cards/p/PowerSurge.java | 2 +- Mage.Sets/src/mage/cards/p/PrimalWhisperer.java | 2 +- Mage.Sets/src/mage/cards/p/PrimordialMist.java | 2 +- Mage.Sets/src/mage/cards/p/PrismaticStrands.java | 2 +- Mage.Sets/src/mage/cards/p/ProgenitorMimic.java | 2 +- Mage.Sets/src/mage/cards/p/ProwessOfTheFair.java | 2 +- Mage.Sets/src/mage/cards/p/PsychicAllergy.java | 2 +- Mage.Sets/src/mage/cards/p/PsychoticFury.java | 2 +- Mage.Sets/src/mage/cards/p/PullFromEternity.java | 2 +- Mage.Sets/src/mage/cards/p/PureSimple.java | 2 +- Mage.Sets/src/mage/cards/r/RadiantPurge.java | 4 ++-- Mage.Sets/src/mage/cards/r/RaffCapashenShipsMage.java | 2 +- Mage.Sets/src/mage/cards/r/RaidingParty.java | 2 +- Mage.Sets/src/mage/cards/r/RamosianRally.java | 2 +- Mage.Sets/src/mage/cards/r/RamsesOverdark.java | 2 +- Mage.Sets/src/mage/cards/r/RashidaScalebane.java | 2 +- Mage.Sets/src/mage/cards/r/RasputinDreamweaver.java | 2 +- Mage.Sets/src/mage/cards/r/RathiAssassin.java | 2 +- Mage.Sets/src/mage/cards/r/RazorfinAbolisher.java | 2 +- Mage.Sets/src/mage/cards/r/RebelInformer.java | 2 +- Mage.Sets/src/mage/cards/r/RebornHope.java | 2 +- Mage.Sets/src/mage/cards/r/Reconnaissance.java | 2 +- Mage.Sets/src/mage/cards/r/RegnasSanction.java | 2 +- Mage.Sets/src/mage/cards/r/Remembrance.java | 2 +- Mage.Sets/src/mage/cards/r/RenderSilent.java | 2 +- Mage.Sets/src/mage/cards/r/RenounceTheGuilds.java | 2 +- Mage.Sets/src/mage/cards/r/RevealingWind.java | 2 +- Mage.Sets/src/mage/cards/r/RewardsOfDiversity.java | 2 +- Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java | 2 +- Mage.Sets/src/mage/cards/r/RhythmOfTheWild.java | 2 +- Mage.Sets/src/mage/cards/r/RideDown.java | 2 +- Mage.Sets/src/mage/cards/r/Riftsweeper.java | 2 +- Mage.Sets/src/mage/cards/r/RighteousFury.java | 2 +- Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java | 2 +- Mage.Sets/src/mage/cards/r/RimehornAurochs.java | 2 +- Mage.Sets/src/mage/cards/r/RishadanPawnshop.java | 2 +- Mage.Sets/src/mage/cards/r/RishkarPeemaRenegade.java | 2 +- Mage.Sets/src/mage/cards/r/RoarOfJukai.java | 2 +- Mage.Sets/src/mage/cards/r/RockSlide.java | 4 ++-- Mage.Sets/src/mage/cards/r/RootKinAlly.java | 2 +- Mage.Sets/src/mage/cards/r/RowanKenrith.java | 2 +- Mage.Sets/src/mage/cards/r/RoyalAssassin.java | 2 +- Mage.Sets/src/mage/cards/r/RubblebeltRunner.java | 2 +- Mage.Sets/src/mage/cards/r/RuthlessInstincts.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sandsower.java | 2 +- Mage.Sets/src/mage/cards/s/SaruliCaretaker.java | 2 +- Mage.Sets/src/mage/cards/s/ScaldingSalamander.java | 2 +- Mage.Sets/src/mage/cards/s/ScorchedRuins.java | 2 +- Mage.Sets/src/mage/cards/s/ScoriaCat.java | 2 +- Mage.Sets/src/mage/cards/s/SealAway.java | 2 +- Mage.Sets/src/mage/cards/s/SecondHarvest.java | 2 +- Mage.Sets/src/mage/cards/s/SecretPlans.java | 2 +- Mage.Sets/src/mage/cards/s/SekKuarDeathkeeper.java | 2 +- Mage.Sets/src/mage/cards/s/SelectForInspection.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaEvangel.java | 2 +- Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java | 2 +- Mage.Sets/src/mage/cards/s/SengirAutocrat.java | 2 +- .../src/mage/cards/s/SentinelOfThePearlTrident.java | 2 +- Mage.Sets/src/mage/cards/s/SetonKrosanProtector.java | 2 +- Mage.Sets/src/mage/cards/s/SharedAnimosity.java | 2 +- Mage.Sets/src/mage/cards/s/SharedDiscovery.java | 2 +- Mage.Sets/src/mage/cards/s/SheerDrop.java | 2 +- Mage.Sets/src/mage/cards/s/ShieldmageElder.java | 4 ++-- Mage.Sets/src/mage/cards/s/ShimianNightStalker.java | 2 +- Mage.Sets/src/mage/cards/s/ShipwreckSinger.java | 2 +- Mage.Sets/src/mage/cards/s/SidarJabari.java | 2 +- Mage.Sets/src/mage/cards/s/SifterOfSkulls.java | 2 +- Mage.Sets/src/mage/cards/s/SigilTracer.java | 2 +- Mage.Sets/src/mage/cards/s/SivvisValor.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkAlarmist.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkFireMarshal.java | 2 +- Mage.Sets/src/mage/cards/s/SkirsdagHighPriest.java | 2 +- Mage.Sets/src/mage/cards/s/Skullsnatcher.java | 2 +- Mage.Sets/src/mage/cards/s/SkyHussar.java | 2 +- Mage.Sets/src/mage/cards/s/SlyRequisitioner.java | 2 +- Mage.Sets/src/mage/cards/s/Smite.java | 2 +- Mage.Sets/src/mage/cards/s/SmokeTeller.java | 2 +- Mage.Sets/src/mage/cards/s/Snag.java | 2 +- Mage.Sets/src/mage/cards/s/SoldeviExcavations.java | 2 +- Mage.Sets/src/mage/cards/s/SoldeviGolem.java | 2 +- Mage.Sets/src/mage/cards/s/SoldierOfThePantheon.java | 2 +- Mage.Sets/src/mage/cards/s/SongOfSerenity.java | 2 +- Mage.Sets/src/mage/cards/s/SorrowsPath.java | 2 +- Mage.Sets/src/mage/cards/s/SosukesSummons.java | 2 +- Mage.Sets/src/mage/cards/s/SoulOfTheHarvest.java | 2 +- Mage.Sets/src/mage/cards/s/SpawnbinderMage.java | 2 +- Mage.Sets/src/mage/cards/s/SpectralBears.java | 2 +- Mage.Sets/src/mage/cards/s/SpellweaverDuo.java | 2 +- Mage.Sets/src/mage/cards/s/SpiresOfOrazca.java | 2 +- Mage.Sets/src/mage/cards/s/SpiritBonds.java | 2 +- Mage.Sets/src/mage/cards/s/SpiritMirror.java | 2 +- Mage.Sets/src/mage/cards/s/SporeCloud.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sporogenesis.java | 2 +- Mage.Sets/src/mage/cards/s/SpringleafDrum.java | 2 +- Mage.Sets/src/mage/cards/s/SpurGrappler.java | 2 +- Mage.Sets/src/mage/cards/s/SpurredWolverine.java | 2 +- Mage.Sets/src/mage/cards/s/SpyNetwork.java | 2 +- Mage.Sets/src/mage/cards/s/StalkingAssassin.java | 2 +- Mage.Sets/src/mage/cards/s/StarCrownedStag.java | 2 +- Mage.Sets/src/mage/cards/s/SteamCatapult.java | 2 +- Mage.Sets/src/mage/cards/s/StensiaMasquerade.java | 2 +- Mage.Sets/src/mage/cards/s/StoneCatapult.java | 2 +- Mage.Sets/src/mage/cards/s/StoneHavenOutfitter.java | 2 +- Mage.Sets/src/mage/cards/s/StoneIdolTrap.java | 2 +- Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java | 2 +- Mage.Sets/src/mage/cards/s/StoneshakerShaman.java | 2 +- Mage.Sets/src/mage/cards/s/SultaiCharm.java | 2 +- Mage.Sets/src/mage/cards/s/SummaryJudgment.java | 2 +- Mage.Sets/src/mage/cards/s/SummonTheSchool.java | 2 +- Mage.Sets/src/mage/cards/s/SunblastAngel.java | 2 +- Mage.Sets/src/mage/cards/s/SupplyCaravan.java | 2 +- Mage.Sets/src/mage/cards/s/SupplyDemand.java | 2 +- Mage.Sets/src/mage/cards/s/SupremeInquisitor.java | 2 +- Mage.Sets/src/mage/cards/s/SurrakarBanisher.java | 2 +- Mage.Sets/src/mage/cards/s/SurvivorsEncampment.java | 2 +- Mage.Sets/src/mage/cards/s/SwiftReckoning.java | 2 +- Mage.Sets/src/mage/cards/s/SwordOfTheParuns.java | 4 ++-- Mage.Sets/src/mage/cards/s/SymbioticDeployment.java | 2 +- Mage.Sets/src/mage/cards/t/TacticalAdvantage.java | 4 ++-- Mage.Sets/src/mage/cards/t/TakeHeart.java | 2 +- Mage.Sets/src/mage/cards/t/TakeVengeance.java | 2 +- Mage.Sets/src/mage/cards/t/TamiyoTheMoonSage.java | 2 +- Mage.Sets/src/mage/cards/t/Tangle.java | 2 +- Mage.Sets/src/mage/cards/t/TangleWire.java | 2 +- Mage.Sets/src/mage/cards/t/TattermungeWitch.java | 2 +- Mage.Sets/src/mage/cards/t/TeferisRealm.java | 2 +- Mage.Sets/src/mage/cards/t/Telethopter.java | 2 +- Mage.Sets/src/mage/cards/t/TelimTor.java | 2 +- .../src/mage/cards/t/TemmetVizierOfNaktamun.java | 2 +- Mage.Sets/src/mage/cards/t/Tetravus.java | 2 +- Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java | 4 ++-- Mage.Sets/src/mage/cards/t/TheBigIdea.java | 2 +- Mage.Sets/src/mage/cards/t/TheftOfDreams.java | 2 +- Mage.Sets/src/mage/cards/t/ThelonsCurse.java | 2 +- Mage.Sets/src/mage/cards/t/ThievesAuction.java | 2 +- Mage.Sets/src/mage/cards/t/ThopterFoundry.java | 2 +- Mage.Sets/src/mage/cards/t/ThousandWinds.java | 2 +- Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java | 2 +- Mage.Sets/src/mage/cards/t/ThroneOfTheGodPharaoh.java | 2 +- Mage.Sets/src/mage/cards/t/Thunderstaff.java | 2 +- Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java | 2 +- Mage.Sets/src/mage/cards/t/TimeElemental.java | 2 +- Mage.Sets/src/mage/cards/t/TimeOfIce.java | 2 +- Mage.Sets/src/mage/cards/t/ToilToRenown.java | 2 +- Mage.Sets/src/mage/cards/t/TopanAscetic.java | 2 +- Mage.Sets/src/mage/cards/t/TourachsGate.java | 4 ++-- Mage.Sets/src/mage/cards/t/TownGossipmonger.java | 2 +- Mage.Sets/src/mage/cards/t/TradewindRider.java | 2 +- Mage.Sets/src/mage/cards/t/TrailOfMystery.java | 2 +- Mage.Sets/src/mage/cards/t/TraitorsRoar.java | 2 +- Mage.Sets/src/mage/cards/t/TrapRunner.java | 4 ++-- Mage.Sets/src/mage/cards/t/TrialError.java | 2 +- Mage.Sets/src/mage/cards/t/Turnabout.java | 4 ++-- Mage.Sets/src/mage/cards/t/TwilightDrover.java | 2 +- Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java | 2 +- Mage.Sets/src/mage/cards/u/UktabiKong.java | 2 +- Mage.Sets/src/mage/cards/u/UlrichsKindred.java | 2 +- Mage.Sets/src/mage/cards/u/UltimatePrice.java | 2 +- Mage.Sets/src/mage/cards/u/UlvenwaldMysteries.java | 2 +- Mage.Sets/src/mage/cards/u/UnlikelyAlliance.java | 4 ++-- Mage.Sets/src/mage/cards/u/UnravelingMummy.java | 2 +- Mage.Sets/src/mage/cards/u/UrgeToFeed.java | 2 +- Mage.Sets/src/mage/cards/u/UrzasFilter.java | 2 +- Mage.Sets/src/mage/cards/v/Vengeance.java | 2 +- Mage.Sets/src/mage/cards/v/VenomousVines.java | 2 +- Mage.Sets/src/mage/cards/v/VerdantSuccession.java | 2 +- Mage.Sets/src/mage/cards/v/VeryCrypticCommandD.java | 2 +- Mage.Sets/src/mage/cards/v/VeteranBodyguard.java | 2 +- Mage.Sets/src/mage/cards/v/VeteranBrawlers.java | 2 +- Mage.Sets/src/mage/cards/v/VeteranWarleader.java | 2 +- Mage.Sets/src/mage/cards/v/VeteransVoice.java | 2 +- Mage.Sets/src/mage/cards/v/VintaraSnapper.java | 2 +- Mage.Sets/src/mage/cards/v/VirulentPlague.java | 2 +- Mage.Sets/src/mage/cards/v/VividRevival.java | 2 +- Mage.Sets/src/mage/cards/v/VodalianWarMachine.java | 2 +- Mage.Sets/src/mage/cards/v/VoiceOfTheWoods.java | 2 +- Mage.Sets/src/mage/cards/v/VolrathsGardens.java | 2 +- Mage.Sets/src/mage/cards/w/WaitingInTheWeeds.java | 2 +- Mage.Sets/src/mage/cards/w/WarkiteMarauder.java | 2 +- Mage.Sets/src/mage/cards/w/Warpath.java | 4 ++-- Mage.Sets/src/mage/cards/w/WaterspoutDjinn.java | 2 +- Mage.Sets/src/mage/cards/w/Weakstone.java | 2 +- Mage.Sets/src/mage/cards/w/Weatherlight.java | 2 +- Mage.Sets/src/mage/cards/w/WeightOfConscience.java | 2 +- Mage.Sets/src/mage/cards/w/WellOfDiscovery.java | 2 +- Mage.Sets/src/mage/cards/w/WellOfLife.java | 2 +- Mage.Sets/src/mage/cards/w/WellgabberApothecary.java | 2 +- Mage.Sets/src/mage/cards/w/WhisperwoodElemental.java | 4 ++-- Mage.Sets/src/mage/cards/w/WindbriskRaptor.java | 2 +- Mage.Sets/src/mage/cards/w/WindsOfRath.java | 2 +- Mage.Sets/src/mage/cards/w/WirewoodHivemaster.java | 2 +- Mage.Sets/src/mage/cards/w/WoodElemental.java | 2 +- Mage.Sets/src/mage/cards/z/ZadasCommando.java | 2 +- Mage.Sets/src/mage/cards/z/ZahidDjinnOfTheLamp.java | 2 +- Mage.Sets/src/mage/cards/z/ZombieTrailblazer.java | 2 +- Mage.Sets/src/mage/cards/z/ZulaportChainmage.java | 2 +- .../test/java/org/mage/test/player/TestPlayer.java | 2 +- .../mage/abilities/effects/common/PopulateEffect.java | 2 +- .../abilities/effects/common/UntapLandsEffect.java | 2 +- .../java/mage/abilities/keyword/ConspireAbility.java | 2 +- .../java/mage/abilities/keyword/ConvokeAbility.java | 4 ++-- .../main/java/mage/abilities/keyword/CrewAbility.java | 2 +- .../java/mage/abilities/keyword/ImproviseAbility.java | 4 ++-- .../java/mage/abilities/keyword/MentorAbility.java | 2 +- .../java/mage/abilities/keyword/NinjutsuAbility.java | 2 +- Mage/src/main/java/mage/filter/StaticFilters.java | 6 +++--- .../mage/filter/common/FilterAttackingCreature.java | 2 +- .../common/FilterAttackingOrBlockingCreature.java | 4 ++-- .../mage/filter/common/FilterBlockingCreature.java | 2 +- .../mage/filter/common/FilterCreatureForAttack.java | 6 +++--- .../mage/filter/common/FilterCreatureForCombat.java | 2 +- .../filter/common/FilterCreatureForCombatBase.java | 2 +- .../java/mage/filter/common/FilterHistoricCard.java | 2 +- .../java/mage/filter/common/FilterHistoricSpell.java | 2 +- .../mage/filter/common/FilterUntappedCreature.java | 2 +- .../predicate/mageobject/HistoricPredicate.java | 4 ++-- .../predicate/mageobject/MonocoloredPredicate.java | 4 ++-- .../predicate/mageobject/MulticoloredPredicate.java | 4 ++-- .../filter/predicate/other/FaceDownPredicate.java | 4 ++-- .../predicate/permanent/AttackingPredicate.java | 4 ++-- .../filter/predicate/permanent/BlockedPredicate.java | 4 ++-- .../filter/predicate/permanent/BlockingPredicate.java | 4 ++-- .../predicate/permanent/CommanderPredicate.java | 4 ++-- .../predicate/permanent/CounterAnyPredicate.java | 8 ++------ .../permanent/DefendingPlayerControlsPredicate.java | 4 ++-- .../predicate/permanent/EnchantedPredicate.java | 11 +++++------ .../filter/predicate/permanent/EquippedPredicate.java | 3 ++- .../filter/predicate/permanent/TappedPredicate.java | 4 ++-- .../filter/predicate/permanent/TokenPredicate.java | 4 ++-- .../predicate/permanent/TransformedPredicate.java | 6 +++--- .../predicate/permanent/UnblockedPredicate.java | 3 ++- .../command/emblems/AurraSingBaneOfJediEmblem.java | 2 +- .../java/mage/game/command/planes/AkoumPlane.java | 2 +- 595 files changed, 657 insertions(+), 660 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AbzanAscendancy.java b/Mage.Sets/src/mage/cards/a/AbzanAscendancy.java index c64aeee0fb..0d84ef3c1e 100644 --- a/Mage.Sets/src/mage/cards/a/AbzanAscendancy.java +++ b/Mage.Sets/src/mage/cards/a/AbzanAscendancy.java @@ -28,7 +28,7 @@ public final class AbzanAscendancy extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public AbzanAscendancy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AkoumFlameseeker.java b/Mage.Sets/src/mage/cards/a/AkoumFlameseeker.java index d076743f8c..5c1c67eea2 100644 --- a/Mage.Sets/src/mage/cards/a/AkoumFlameseeker.java +++ b/Mage.Sets/src/mage/cards/a/AkoumFlameseeker.java @@ -30,7 +30,7 @@ public final class AkoumFlameseeker extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public AkoumFlameseeker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AkroanHoplite.java b/Mage.Sets/src/mage/cards/a/AkroanHoplite.java index 599a0dfa13..d19cdaf3b6 100644 --- a/Mage.Sets/src/mage/cards/a/AkroanHoplite.java +++ b/Mage.Sets/src/mage/cards/a/AkroanHoplite.java @@ -27,7 +27,7 @@ public final class AkroanHoplite extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public AkroanHoplite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Alarum.java b/Mage.Sets/src/mage/cards/a/Alarum.java index 553c075fa3..ac526c698f 100644 --- a/Mage.Sets/src/mage/cards/a/Alarum.java +++ b/Mage.Sets/src/mage/cards/a/Alarum.java @@ -23,7 +23,7 @@ public final class Alarum extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonattacking creature"); static { - filter.add(Predicates.not(new AttackingPredicate())); + filter.add(Predicates.not(AttackingPredicate.instance)); } public Alarum(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AltarGolem.java b/Mage.Sets/src/mage/cards/a/AltarGolem.java index 52501d4637..5b0dc5a367 100644 --- a/Mage.Sets/src/mage/cards/a/AltarGolem.java +++ b/Mage.Sets/src/mage/cards/a/AltarGolem.java @@ -34,7 +34,7 @@ public final class AltarGolem extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public AltarGolem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlwaysWatching.java b/Mage.Sets/src/mage/cards/a/AlwaysWatching.java index ecb7a7d350..a844009f12 100644 --- a/Mage.Sets/src/mage/cards/a/AlwaysWatching.java +++ b/Mage.Sets/src/mage/cards/a/AlwaysWatching.java @@ -26,7 +26,7 @@ public final class AlwaysWatching extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creatures"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public AlwaysWatching(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AnaBattlemage.java b/Mage.Sets/src/mage/cards/a/AnaBattlemage.java index f77efb80a8..dbf3e6a841 100644 --- a/Mage.Sets/src/mage/cards/a/AnaBattlemage.java +++ b/Mage.Sets/src/mage/cards/a/AnaBattlemage.java @@ -34,7 +34,7 @@ public final class AnaBattlemage extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("untapped creature"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public AnaBattlemage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AnafenzaKinTreeSpirit.java b/Mage.Sets/src/mage/cards/a/AnafenzaKinTreeSpirit.java index 5760f40ede..3c8407616c 100644 --- a/Mage.Sets/src/mage/cards/a/AnafenzaKinTreeSpirit.java +++ b/Mage.Sets/src/mage/cards/a/AnafenzaKinTreeSpirit.java @@ -25,7 +25,7 @@ public final class AnafenzaKinTreeSpirit extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("another nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/a/AnafenzaTheForemost.java b/Mage.Sets/src/mage/cards/a/AnafenzaTheForemost.java index aa00ce83a0..96e8487a47 100644 --- a/Mage.Sets/src/mage/cards/a/AnafenzaTheForemost.java +++ b/Mage.Sets/src/mage/cards/a/AnafenzaTheForemost.java @@ -33,7 +33,7 @@ public final class AnafenzaTheForemost extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public AnafenzaTheForemost(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AncestorsProphet.java b/Mage.Sets/src/mage/cards/a/AncestorsProphet.java index 356f2cf096..a83a788e70 100644 --- a/Mage.Sets/src/mage/cards/a/AncestorsProphet.java +++ b/Mage.Sets/src/mage/cards/a/AncestorsProphet.java @@ -27,7 +27,7 @@ public final class AncestorsProphet extends CardImpl { static { filter.add(new SubtypePredicate(SubType.CLERIC)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public AncestorsProphet(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AncientHellkite.java b/Mage.Sets/src/mage/cards/a/AncientHellkite.java index a07bb7320e..527f9bec33 100644 --- a/Mage.Sets/src/mage/cards/a/AncientHellkite.java +++ b/Mage.Sets/src/mage/cards/a/AncientHellkite.java @@ -29,7 +29,7 @@ public final class AncientHellkite extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public AncientHellkite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AncientHolocron.java b/Mage.Sets/src/mage/cards/a/AncientHolocron.java index 565a7f334b..37c27e4836 100644 --- a/Mage.Sets/src/mage/cards/a/AncientHolocron.java +++ b/Mage.Sets/src/mage/cards/a/AncientHolocron.java @@ -23,7 +23,7 @@ public final class AncientHolocron extends CardImpl { private static final FilterSpell filter = new FilterSpell("multicolored spells"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public AncientHolocron(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AncientStoneIdol.java b/Mage.Sets/src/mage/cards/a/AncientStoneIdol.java index c9935eb2c3..bc7ddf8dac 100644 --- a/Mage.Sets/src/mage/cards/a/AncientStoneIdol.java +++ b/Mage.Sets/src/mage/cards/a/AncientStoneIdol.java @@ -65,7 +65,7 @@ class AncientStoneIdolCostReductionEffect extends CostModificationEffectImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public AncientStoneIdolCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/a/AngelicFavor.java b/Mage.Sets/src/mage/cards/a/AngelicFavor.java index 9ab91cae5d..0fb54f8153 100644 --- a/Mage.Sets/src/mage/cards/a/AngelicFavor.java +++ b/Mage.Sets/src/mage/cards/a/AngelicFavor.java @@ -38,7 +38,7 @@ public final class AngelicFavor extends CardImpl { private static final FilterControlledCreaturePermanent untappedCreatureYouControl = new FilterControlledCreaturePermanent("untapped creature you control"); static { - untappedCreatureYouControl.add(Predicates.not(new TappedPredicate())); + untappedCreatureYouControl.add(Predicates.not(TappedPredicate.instance)); } public AngelicFavor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AnointerPriest.java b/Mage.Sets/src/mage/cards/a/AnointerPriest.java index 31784994a2..bc4f0e4e88 100644 --- a/Mage.Sets/src/mage/cards/a/AnointerPriest.java +++ b/Mage.Sets/src/mage/cards/a/AnointerPriest.java @@ -24,7 +24,7 @@ public final class AnointerPriest extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("a creature token"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public AnointerPriest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AphettoGrifter.java b/Mage.Sets/src/mage/cards/a/AphettoGrifter.java index a00ec7bb62..c1e7324741 100644 --- a/Mage.Sets/src/mage/cards/a/AphettoGrifter.java +++ b/Mage.Sets/src/mage/cards/a/AphettoGrifter.java @@ -28,7 +28,7 @@ public final class AphettoGrifter extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Wizards you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.WIZARD)); } diff --git a/Mage.Sets/src/mage/cards/a/ApocalypseChime.java b/Mage.Sets/src/mage/cards/a/ApocalypseChime.java index 18f862f153..178b6930de 100644 --- a/Mage.Sets/src/mage/cards/a/ApocalypseChime.java +++ b/Mage.Sets/src/mage/cards/a/ApocalypseChime.java @@ -27,7 +27,7 @@ public final class ApocalypseChime extends CardImpl { static { filter.add(Predicates.and( - Predicates.not(new TokenPredicate()), + Predicates.not(TokenPredicate.instance), new ExpansionSetPredicate("HML") )); } diff --git a/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java b/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java index 3d5fca4ea8..7a1ef89b36 100644 --- a/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java +++ b/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java @@ -39,7 +39,7 @@ public final class ArachnusSpinner extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SPIDER)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ArachnusSpinner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArashinWarBeast.java b/Mage.Sets/src/mage/cards/a/ArashinWarBeast.java index a59ec01c4d..d6f18e479c 100644 --- a/Mage.Sets/src/mage/cards/a/ArashinWarBeast.java +++ b/Mage.Sets/src/mage/cards/a/ArashinWarBeast.java @@ -51,7 +51,7 @@ class ArashinWarBeastTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("one or more blockers"); static { - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } boolean usedForCombatDamageStep; diff --git a/Mage.Sets/src/mage/cards/a/ArcadesSabboth.java b/Mage.Sets/src/mage/cards/a/ArcadesSabboth.java index 2cc2901e87..2737870cee 100644 --- a/Mage.Sets/src/mage/cards/a/ArcadesSabboth.java +++ b/Mage.Sets/src/mage/cards/a/ArcadesSabboth.java @@ -29,8 +29,8 @@ public final class ArcadesSabboth extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); - filter.add(Predicates.not(new AttackingPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); + filter.add(Predicates.not(AttackingPredicate.instance)); } public ArcadesSabboth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArtificersAssistant.java b/Mage.Sets/src/mage/cards/a/ArtificersAssistant.java index d8c5d76f4f..2a610e18b0 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersAssistant.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersAssistant.java @@ -22,7 +22,7 @@ public final class ArtificersAssistant extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public ArtificersAssistant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AryelKnightOfWindgrace.java b/Mage.Sets/src/mage/cards/a/AryelKnightOfWindgrace.java index 86ad83f7f4..b260e58011 100644 --- a/Mage.Sets/src/mage/cards/a/AryelKnightOfWindgrace.java +++ b/Mage.Sets/src/mage/cards/a/AryelKnightOfWindgrace.java @@ -80,7 +80,7 @@ class AryelTapXTargetCost extends VariableCostImpl { static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Knights you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.KNIGHT)); } diff --git a/Mage.Sets/src/mage/cards/a/Asphyxiate.java b/Mage.Sets/src/mage/cards/a/Asphyxiate.java index 030206e579..d5275dc296 100644 --- a/Mage.Sets/src/mage/cards/a/Asphyxiate.java +++ b/Mage.Sets/src/mage/cards/a/Asphyxiate.java @@ -20,7 +20,7 @@ public final class Asphyxiate extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("untapped creature"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Asphyxiate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Assassinate.java b/Mage.Sets/src/mage/cards/a/Assassinate.java index 891a186397..47355573df 100644 --- a/Mage.Sets/src/mage/cards/a/Assassinate.java +++ b/Mage.Sets/src/mage/cards/a/Assassinate.java @@ -20,7 +20,7 @@ public final class Assassinate extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public Assassinate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AssassinsBlade.java b/Mage.Sets/src/mage/cards/a/AssassinsBlade.java index fe2b98e641..6f530833e2 100644 --- a/Mage.Sets/src/mage/cards/a/AssassinsBlade.java +++ b/Mage.Sets/src/mage/cards/a/AssassinsBlade.java @@ -29,7 +29,7 @@ public final class AssassinsBlade extends CardImpl { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public AssassinsBlade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AuraOfDominion.java b/Mage.Sets/src/mage/cards/a/AuraOfDominion.java index e0956632a6..2f7be843a0 100644 --- a/Mage.Sets/src/mage/cards/a/AuraOfDominion.java +++ b/Mage.Sets/src/mage/cards/a/AuraOfDominion.java @@ -31,7 +31,7 @@ public final class AuraOfDominion extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/a/AvenSoulgazer.java b/Mage.Sets/src/mage/cards/a/AvenSoulgazer.java index 52e9da2dc8..551df4191a 100644 --- a/Mage.Sets/src/mage/cards/a/AvenSoulgazer.java +++ b/Mage.Sets/src/mage/cards/a/AvenSoulgazer.java @@ -33,7 +33,7 @@ public final class AvenSoulgazer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public AvenSoulgazer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AweForTheGuilds.java b/Mage.Sets/src/mage/cards/a/AweForTheGuilds.java index f1569e4915..4a0ee0ad5f 100644 --- a/Mage.Sets/src/mage/cards/a/AweForTheGuilds.java +++ b/Mage.Sets/src/mage/cards/a/AweForTheGuilds.java @@ -22,7 +22,7 @@ public final class AweForTheGuilds extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Monocolored creatures"); static { - filter.add(Predicates.not(new MulticoloredPredicate())); + filter.add(Predicates.not(MulticoloredPredicate.instance)); } public AweForTheGuilds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AzamiLadyOfScrolls.java b/Mage.Sets/src/mage/cards/a/AzamiLadyOfScrolls.java index 456b3bd39b..0c3d861582 100644 --- a/Mage.Sets/src/mage/cards/a/AzamiLadyOfScrolls.java +++ b/Mage.Sets/src/mage/cards/a/AzamiLadyOfScrolls.java @@ -27,7 +27,7 @@ public final class AzamiLadyOfScrolls extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Wizard you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.WIZARD)); } diff --git a/Mage.Sets/src/mage/cards/b/Backlash.java b/Mage.Sets/src/mage/cards/b/Backlash.java index 274ab60416..b054f340c3 100644 --- a/Mage.Sets/src/mage/cards/b/Backlash.java +++ b/Mage.Sets/src/mage/cards/b/Backlash.java @@ -24,7 +24,7 @@ public final class Backlash extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("untapped creature"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Backlash(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BalduvianTradingPost.java b/Mage.Sets/src/mage/cards/b/BalduvianTradingPost.java index 9c4c948a5a..d133e2483a 100644 --- a/Mage.Sets/src/mage/cards/b/BalduvianTradingPost.java +++ b/Mage.Sets/src/mage/cards/b/BalduvianTradingPost.java @@ -34,7 +34,7 @@ public final class BalduvianTradingPost extends CardImpl { static { filter.add(new SubtypePredicate(SubType.MOUNTAIN)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public BalduvianTradingPost(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BantSureblade.java b/Mage.Sets/src/mage/cards/b/BantSureblade.java index 908a9e84b8..e39241c04e 100644 --- a/Mage.Sets/src/mage/cards/b/BantSureblade.java +++ b/Mage.Sets/src/mage/cards/b/BantSureblade.java @@ -29,7 +29,7 @@ public final class BantSureblade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another multicolor permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/b/BastionProtector.java b/Mage.Sets/src/mage/cards/b/BastionProtector.java index 14844a9c4d..ba1fdaac30 100644 --- a/Mage.Sets/src/mage/cards/b/BastionProtector.java +++ b/Mage.Sets/src/mage/cards/b/BastionProtector.java @@ -27,7 +27,7 @@ public final class BastionProtector extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("Commander creatures"); static { - filter.add(new CommanderPredicate()); + filter.add(CommanderPredicate.instance); } public BastionProtector(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BattleScreech.java b/Mage.Sets/src/mage/cards/b/BattleScreech.java index 2fc92e6c6b..2a9f3d72cd 100644 --- a/Mage.Sets/src/mage/cards/b/BattleScreech.java +++ b/Mage.Sets/src/mage/cards/b/BattleScreech.java @@ -27,7 +27,7 @@ public final class BattleScreech extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public BattleScreech(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BazaarOfWonders.java b/Mage.Sets/src/mage/cards/b/BazaarOfWonders.java index f63d0ebc8a..542403fb70 100644 --- a/Mage.Sets/src/mage/cards/b/BazaarOfWonders.java +++ b/Mage.Sets/src/mage/cards/b/BazaarOfWonders.java @@ -76,7 +76,7 @@ class BazaarOfWondersEffect extends OneShotEffect { String spellName = spell.getName(); FilterPermanent filter1 = new FilterPermanent(); filter1.add(new NamePredicate(spellName)); - filter1.add(Predicates.not(new TokenPredicate())); + filter1.add(Predicates.not(TokenPredicate.instance)); if (!game.getBattlefield().getActivePermanents(filter1, source.getControllerId(), game).isEmpty()) { spell.counter(source.getControllerId(), game); return true; diff --git a/Mage.Sets/src/mage/cards/b/BeastmastersMagemark.java b/Mage.Sets/src/mage/cards/b/BeastmastersMagemark.java index 98fd1d3bef..418c6e671a 100644 --- a/Mage.Sets/src/mage/cards/b/BeastmastersMagemark.java +++ b/Mage.Sets/src/mage/cards/b/BeastmastersMagemark.java @@ -29,7 +29,7 @@ public final class BeastmastersMagemark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures you control that are enchanted"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/b/BeastsOfBogardan.java b/Mage.Sets/src/mage/cards/b/BeastsOfBogardan.java index b9035891f6..0564015c88 100644 --- a/Mage.Sets/src/mage/cards/b/BeastsOfBogardan.java +++ b/Mage.Sets/src/mage/cards/b/BeastsOfBogardan.java @@ -30,7 +30,7 @@ public final class BeastsOfBogardan extends CardImpl { static { controlFilter.add(new ColorPredicate(ObjectColor.WHITE)); - controlFilter.add(Predicates.not(new TokenPredicate())); + controlFilter.add(Predicates.not(TokenPredicate.instance)); } public BeastsOfBogardan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BenBenAkkiHermit.java b/Mage.Sets/src/mage/cards/b/BenBenAkkiHermit.java index c8b93e3272..a32d8b03f0 100644 --- a/Mage.Sets/src/mage/cards/b/BenBenAkkiHermit.java +++ b/Mage.Sets/src/mage/cards/b/BenBenAkkiHermit.java @@ -30,7 +30,7 @@ public final class BenBenAkkiHermit extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("untapped Mountain you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.MOUNTAIN)); } diff --git a/Mage.Sets/src/mage/cards/b/BenalishMissionary.java b/Mage.Sets/src/mage/cards/b/BenalishMissionary.java index d0d4b011fe..952a930598 100644 --- a/Mage.Sets/src/mage/cards/b/BenalishMissionary.java +++ b/Mage.Sets/src/mage/cards/b/BenalishMissionary.java @@ -27,7 +27,7 @@ public final class BenalishMissionary extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blocked creature"); static { - filter.add(new BlockedPredicate()); + filter.add(BlockedPredicate.instance); } public BenalishMissionary(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Benthicore.java b/Mage.Sets/src/mage/cards/b/Benthicore.java index 9ca093b861..48424e9d86 100644 --- a/Mage.Sets/src/mage/cards/b/Benthicore.java +++ b/Mage.Sets/src/mage/cards/b/Benthicore.java @@ -33,7 +33,7 @@ public final class Benthicore extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Merfolk you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.MERFOLK)); } diff --git a/Mage.Sets/src/mage/cards/b/BetrothedOfFire.java b/Mage.Sets/src/mage/cards/b/BetrothedOfFire.java index 95fbfb8440..bb4ac7ecfb 100644 --- a/Mage.Sets/src/mage/cards/b/BetrothedOfFire.java +++ b/Mage.Sets/src/mage/cards/b/BetrothedOfFire.java @@ -32,7 +32,7 @@ public final class BetrothedOfFire extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledCreaturePermanent("an untapped creature"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public BetrothedOfFire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Bifurcate.java b/Mage.Sets/src/mage/cards/b/Bifurcate.java index 4faba2a260..397ab59792 100644 --- a/Mage.Sets/src/mage/cards/b/Bifurcate.java +++ b/Mage.Sets/src/mage/cards/b/Bifurcate.java @@ -29,7 +29,7 @@ public final class Bifurcate extends CardImpl { private static FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creatures"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Bifurcate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BirchloreRangers.java b/Mage.Sets/src/mage/cards/b/BirchloreRangers.java index c6ff1dbc10..749f216e29 100644 --- a/Mage.Sets/src/mage/cards/b/BirchloreRangers.java +++ b/Mage.Sets/src/mage/cards/b/BirchloreRangers.java @@ -26,7 +26,7 @@ public final class BirchloreRangers extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Elves you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ELF)); } diff --git a/Mage.Sets/src/mage/cards/b/BlackOakOfOdunos.java b/Mage.Sets/src/mage/cards/b/BlackOakOfOdunos.java index c9f5464393..22ef04c463 100644 --- a/Mage.Sets/src/mage/cards/b/BlackOakOfOdunos.java +++ b/Mage.Sets/src/mage/cards/b/BlackOakOfOdunos.java @@ -31,7 +31,7 @@ public final class BlackOakOfOdunos extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public BlackOakOfOdunos(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BlaringCaptain.java b/Mage.Sets/src/mage/cards/b/BlaringCaptain.java index ab76349078..3a4c55c65c 100644 --- a/Mage.Sets/src/mage/cards/b/BlaringCaptain.java +++ b/Mage.Sets/src/mage/cards/b/BlaringCaptain.java @@ -23,7 +23,7 @@ public final class BlaringCaptain extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(SubType.WARRIOR, "attacking Warriors"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public BlaringCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Blockbuster.java b/Mage.Sets/src/mage/cards/b/Blockbuster.java index 3dbb960768..174ebca05f 100644 --- a/Mage.Sets/src/mage/cards/b/Blockbuster.java +++ b/Mage.Sets/src/mage/cards/b/Blockbuster.java @@ -23,7 +23,7 @@ public final class Blockbuster extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public Blockbuster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodTribute.java b/Mage.Sets/src/mage/cards/b/BloodTribute.java index cd9587f409..694c16ac06 100644 --- a/Mage.Sets/src/mage/cards/b/BloodTribute.java +++ b/Mage.Sets/src/mage/cards/b/BloodTribute.java @@ -37,7 +37,7 @@ public final class BloodTribute extends CardImpl { TextPartSubType textPartVampire = (TextPartSubType) addTextPart(new TextPartSubType(SubType.VAMPIRE)); FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped Vampire you control"); filter.add(new TextPartSubtypePredicate(textPartVampire)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); this.addAbility(new KickerAbility(new TapTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, true)))); // Target opponent loses half their life, rounded up. diff --git a/Mage.Sets/src/mage/cards/b/BloodswornSteward.java b/Mage.Sets/src/mage/cards/b/BloodswornSteward.java index e9070d6d06..21ed7ccdc9 100644 --- a/Mage.Sets/src/mage/cards/b/BloodswornSteward.java +++ b/Mage.Sets/src/mage/cards/b/BloodswornSteward.java @@ -27,7 +27,7 @@ public final class BloodswornSteward extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("Commander creatures"); static { - filter.add(new CommanderPredicate()); + filter.add(CommanderPredicate.instance); } public BloodswornSteward(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java index 7b23221999..cebfdf8ec6 100644 --- a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java +++ b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java @@ -19,7 +19,7 @@ public final class BoardTheWeatherlight extends CardImpl { private static final FilterCard filter = new FilterCard("a historic card"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public BoardTheWeatherlight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Borrowing100000Arrows.java b/Mage.Sets/src/mage/cards/b/Borrowing100000Arrows.java index 2d6bd827ee..47ba5f1cd4 100644 --- a/Mage.Sets/src/mage/cards/b/Borrowing100000Arrows.java +++ b/Mage.Sets/src/mage/cards/b/Borrowing100000Arrows.java @@ -62,7 +62,7 @@ class Borrowing100000ArrowsEffect extends OneShotEffect { Player opponent = game.getPlayer(this.getTargetPointer().getFirst(game, source)); if (opponent != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerIdPredicate(opponent.getId())); return new DrawCardSourceControllerEffect(game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game)).apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/b/BraceForImpact.java b/Mage.Sets/src/mage/cards/b/BraceForImpact.java index 28f17918e2..6b5a458592 100644 --- a/Mage.Sets/src/mage/cards/b/BraceForImpact.java +++ b/Mage.Sets/src/mage/cards/b/BraceForImpact.java @@ -25,7 +25,7 @@ public final class BraceForImpact extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("multicolored creature"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public BraceForImpact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Brainspoil.java b/Mage.Sets/src/mage/cards/b/Brainspoil.java index d7422bbba5..f49bcc4a40 100644 --- a/Mage.Sets/src/mage/cards/b/Brainspoil.java +++ b/Mage.Sets/src/mage/cards/b/Brainspoil.java @@ -21,7 +21,7 @@ public final class Brainspoil extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature that isn't enchanted"); static { - filter.add(Predicates.not(new EnchantedPredicate())); + filter.add(Predicates.not(EnchantedPredicate.instance)); } public Brainspoil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BrambleSovereign.java b/Mage.Sets/src/mage/cards/b/BrambleSovereign.java index 579be5ac6e..caa98f8bf6 100644 --- a/Mage.Sets/src/mage/cards/b/BrambleSovereign.java +++ b/Mage.Sets/src/mage/cards/b/BrambleSovereign.java @@ -32,7 +32,7 @@ public final class BrambleSovereign extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/b/BrandedBrawlers.java b/Mage.Sets/src/mage/cards/b/BrandedBrawlers.java index b7bff9ce2e..469bfcc885 100644 --- a/Mage.Sets/src/mage/cards/b/BrandedBrawlers.java +++ b/Mage.Sets/src/mage/cards/b/BrandedBrawlers.java @@ -28,7 +28,7 @@ public final class BrandedBrawlers extends CardImpl { static final private FilterLandPermanent filter = new FilterLandPermanent("an untapped land"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } final static private String rule = "{this} can't block if you control an untapped land"; diff --git a/Mage.Sets/src/mage/cards/b/BreakOpen.java b/Mage.Sets/src/mage/cards/b/BreakOpen.java index fcfc4f81e1..275c9fc7fb 100644 --- a/Mage.Sets/src/mage/cards/b/BreakOpen.java +++ b/Mage.Sets/src/mage/cards/b/BreakOpen.java @@ -21,7 +21,7 @@ public final class BreakOpen extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Face-down creature an opponent controls"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/b/BridgeFromBelow.java b/Mage.Sets/src/mage/cards/b/BridgeFromBelow.java index fb1f645ac0..41df9ae8fa 100644 --- a/Mage.Sets/src/mage/cards/b/BridgeFromBelow.java +++ b/Mage.Sets/src/mage/cards/b/BridgeFromBelow.java @@ -34,7 +34,7 @@ public final class BridgeFromBelow extends CardImpl { static{ filter1.add(new ControllerPredicate(TargetController.YOU)); - filter1.add(Predicates.not(new TokenPredicate())); + filter1.add(Predicates.not(TokenPredicate.instance)); filter2.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/b/BrokenVisage.java b/Mage.Sets/src/mage/cards/b/BrokenVisage.java index e250769885..495b05ec36 100644 --- a/Mage.Sets/src/mage/cards/b/BrokenVisage.java +++ b/Mage.Sets/src/mage/cards/b/BrokenVisage.java @@ -31,7 +31,7 @@ public final class BrokenVisage extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact attacking creature"); static { filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public BrokenVisage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BroodingSaurian.java b/Mage.Sets/src/mage/cards/b/BroodingSaurian.java index 9b71bf2e91..221feab710 100644 --- a/Mage.Sets/src/mage/cards/b/BroodingSaurian.java +++ b/Mage.Sets/src/mage/cards/b/BroodingSaurian.java @@ -50,7 +50,7 @@ class BroodingSaurianControlEffect extends ContinuousEffectImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public BroodingSaurianControlEffect() { diff --git a/Mage.Sets/src/mage/cards/b/BrudicladTelchorEngineer.java b/Mage.Sets/src/mage/cards/b/BrudicladTelchorEngineer.java index 3ed5ff115e..ef8d9f5b94 100644 --- a/Mage.Sets/src/mage/cards/b/BrudicladTelchorEngineer.java +++ b/Mage.Sets/src/mage/cards/b/BrudicladTelchorEngineer.java @@ -31,7 +31,7 @@ public final class BrudicladTelchorEngineer extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature tokens you control"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public BrudicladTelchorEngineer(UUID ownerId, CardSetInfo setInfo) { @@ -64,7 +64,7 @@ class BrudicladTelchorEngineerEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("token you control"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public BrudicladTelchorEngineerEffect() { diff --git a/Mage.Sets/src/mage/cards/b/BrutalSuppression.java b/Mage.Sets/src/mage/cards/b/BrutalSuppression.java index e45580406e..0d33236877 100644 --- a/Mage.Sets/src/mage/cards/b/BrutalSuppression.java +++ b/Mage.Sets/src/mage/cards/b/BrutalSuppression.java @@ -58,7 +58,7 @@ class BrutalSuppressionAdditionalCostEffect extends CostModificationEffectImpl { private static final FilterPermanent filter2 = new FilterPermanent("nontoken Rebels"); static{ filter2.add(new SubtypePredicate(SubType.REBEL)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } BrutalSuppressionAdditionalCostEffect() { diff --git a/Mage.Sets/src/mage/cards/b/BurdenOfGreed.java b/Mage.Sets/src/mage/cards/b/BurdenOfGreed.java index 124aac6ceb..2f8ad795d0 100644 --- a/Mage.Sets/src/mage/cards/b/BurdenOfGreed.java +++ b/Mage.Sets/src/mage/cards/b/BurdenOfGreed.java @@ -48,7 +48,7 @@ class BurdenOfGreedCount implements DynamicValue { return 0; } FilterArtifactPermanent filter = new FilterArtifactPermanent(); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerIdPredicate(sourceAbility.getFirstTarget())); return game.getBattlefield().count(filter, sourceAbility.getSourceId(), sourceAbility.getControllerId(), game); } diff --git a/Mage.Sets/src/mage/cards/b/BurnAtTheStake.java b/Mage.Sets/src/mage/cards/b/BurnAtTheStake.java index b804747d35..7931708785 100644 --- a/Mage.Sets/src/mage/cards/b/BurnAtTheStake.java +++ b/Mage.Sets/src/mage/cards/b/BurnAtTheStake.java @@ -27,7 +27,7 @@ public final class BurnAtTheStake extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public BurnAtTheStake(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CalmingVerse.java b/Mage.Sets/src/mage/cards/c/CalmingVerse.java index 8d94a2f0d8..08a66a28ef 100644 --- a/Mage.Sets/src/mage/cards/c/CalmingVerse.java +++ b/Mage.Sets/src/mage/cards/c/CalmingVerse.java @@ -50,7 +50,7 @@ class CalmingVerseEffect extends OneShotEffect { static { untappedLandFilter.add(new CardTypePredicate(CardType.LAND)); - untappedLandFilter.add(Predicates.not(new TappedPredicate())); + untappedLandFilter.add(Predicates.not(TappedPredicate.instance)); } private static final FilterEnchantmentPermanent opponentEnchantmentsFilter = new FilterEnchantmentPermanent("enchantments you don't control"); diff --git a/Mage.Sets/src/mage/cards/c/CaptainPhasma.java b/Mage.Sets/src/mage/cards/c/CaptainPhasma.java index 829342d2b6..d37a042cd1 100644 --- a/Mage.Sets/src/mage/cards/c/CaptainPhasma.java +++ b/Mage.Sets/src/mage/cards/c/CaptainPhasma.java @@ -32,7 +32,7 @@ public final class CaptainPhasma extends CardImpl { static { filter.add(new SubtypePredicate(SubType.TROOPER)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filterCard.add(new SubtypePredicate(SubType.TROOPER)); } diff --git a/Mage.Sets/src/mage/cards/c/CaptivatingVampire.java b/Mage.Sets/src/mage/cards/c/CaptivatingVampire.java index 7262d6bc79..7ae2146618 100644 --- a/Mage.Sets/src/mage/cards/c/CaptivatingVampire.java +++ b/Mage.Sets/src/mage/cards/c/CaptivatingVampire.java @@ -34,7 +34,7 @@ public final class CaptivatingVampire extends CardImpl { static { filter1.add(new SubtypePredicate(SubType.VAMPIRE)); filter2.add(new SubtypePredicate(SubType.VAMPIRE)); - filter2.add(Predicates.not(new TappedPredicate())); + filter2.add(Predicates.not(TappedPredicate.instance)); } public CaptivatingVampire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CaribouRange.java b/Mage.Sets/src/mage/cards/c/CaribouRange.java index f2ae348ca7..4599b610ce 100644 --- a/Mage.Sets/src/mage/cards/c/CaribouRange.java +++ b/Mage.Sets/src/mage/cards/c/CaribouRange.java @@ -34,7 +34,7 @@ public final class CaribouRange extends CardImpl { static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a Caribou token"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new SubtypePredicate(SubType.CARIBOU)); } diff --git a/Mage.Sets/src/mage/cards/c/CatapultMaster.java b/Mage.Sets/src/mage/cards/c/CatapultMaster.java index 0664a36eb6..ea9a17d070 100644 --- a/Mage.Sets/src/mage/cards/c/CatapultMaster.java +++ b/Mage.Sets/src/mage/cards/c/CatapultMaster.java @@ -28,7 +28,7 @@ public final class CatapultMaster extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Soldiers you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.SOLDIER)); } public CatapultMaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CatapultSquad.java b/Mage.Sets/src/mage/cards/c/CatapultSquad.java index db703b595e..b8b9bd3af7 100644 --- a/Mage.Sets/src/mage/cards/c/CatapultSquad.java +++ b/Mage.Sets/src/mage/cards/c/CatapultSquad.java @@ -29,7 +29,7 @@ public final class CatapultSquad extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Soldiers you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.SOLDIER)); } diff --git a/Mage.Sets/src/mage/cards/c/CavalryPegasus.java b/Mage.Sets/src/mage/cards/c/CavalryPegasus.java index 023e566e08..6d46fa8c7c 100644 --- a/Mage.Sets/src/mage/cards/c/CavalryPegasus.java +++ b/Mage.Sets/src/mage/cards/c/CavalryPegasus.java @@ -25,7 +25,7 @@ public final class CavalryPegasus extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("each attacking Human"); static { filter.add(new SubtypePredicate(SubType.HUMAN)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public CavalryPegasus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChewbaccaTheBeast.java b/Mage.Sets/src/mage/cards/c/ChewbaccaTheBeast.java index 19eb184004..f7ffe1d408 100644 --- a/Mage.Sets/src/mage/cards/c/ChewbaccaTheBeast.java +++ b/Mage.Sets/src/mage/cards/c/ChewbaccaTheBeast.java @@ -28,7 +28,7 @@ public final class ChewbaccaTheBeast extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(AnotherPredicate.instance); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public ChewbaccaTheBeast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChickenALaKing.java b/Mage.Sets/src/mage/cards/c/ChickenALaKing.java index 54fc631a3b..db786af300 100644 --- a/Mage.Sets/src/mage/cards/c/ChickenALaKing.java +++ b/Mage.Sets/src/mage/cards/c/ChickenALaKing.java @@ -33,7 +33,7 @@ public final class ChickenALaKing extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Chicken you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.CHICKEN)); } diff --git a/Mage.Sets/src/mage/cards/c/ChiseiHeartOfOceans.java b/Mage.Sets/src/mage/cards/c/ChiseiHeartOfOceans.java index 207982df3b..916b686a1c 100644 --- a/Mage.Sets/src/mage/cards/c/ChiseiHeartOfOceans.java +++ b/Mage.Sets/src/mage/cards/c/ChiseiHeartOfOceans.java @@ -29,7 +29,7 @@ public final class ChiseiHeartOfOceans extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CounterAnyPredicate()); + filter.add(CounterAnyPredicate.instance); } public ChiseiHeartOfOceans(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChosenOfMarkov.java b/Mage.Sets/src/mage/cards/c/ChosenOfMarkov.java index 5a31f0d5b8..e4771fc0e7 100644 --- a/Mage.Sets/src/mage/cards/c/ChosenOfMarkov.java +++ b/Mage.Sets/src/mage/cards/c/ChosenOfMarkov.java @@ -28,7 +28,7 @@ public final class ChosenOfMarkov extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Vampire you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.VAMPIRE)); } diff --git a/Mage.Sets/src/mage/cards/c/CitadelOfPain.java b/Mage.Sets/src/mage/cards/c/CitadelOfPain.java index 40973164a4..1cf2bbde90 100644 --- a/Mage.Sets/src/mage/cards/c/CitadelOfPain.java +++ b/Mage.Sets/src/mage/cards/c/CitadelOfPain.java @@ -56,7 +56,7 @@ class CitadelOfPainEffect extends OneShotEffect { } static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public CitadelOfPainEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CityInABottle.java b/Mage.Sets/src/mage/cards/c/CityInABottle.java index 00a469b756..547ba0933e 100644 --- a/Mage.Sets/src/mage/cards/c/CityInABottle.java +++ b/Mage.Sets/src/mage/cards/c/CityInABottle.java @@ -139,7 +139,7 @@ class CityInABottleStateTriggeredAbility extends StateTriggeredAbility { private static final FilterPermanent filter = new FilterPermanent("a nontoken permanent originally printed in the Arabian Nights expansion other than City in a Bottle"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(Predicates.or(getArabianNightsNamePredicates())); } @@ -173,7 +173,7 @@ class CityInABottleSacrificeEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("a nontoken permanent originally printed in the Arabian Nights expansion other than City in a Bottle"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(Predicates.or(getArabianNightsNamePredicates())); } diff --git a/Mage.Sets/src/mage/cards/c/ClockOfOmens.java b/Mage.Sets/src/mage/cards/c/ClockOfOmens.java index 3708f17477..9b85270125 100644 --- a/Mage.Sets/src/mage/cards/c/ClockOfOmens.java +++ b/Mage.Sets/src/mage/cards/c/ClockOfOmens.java @@ -26,7 +26,7 @@ public final class ClockOfOmens extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ClockOfOmens(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CloudgoatRanger.java b/Mage.Sets/src/mage/cards/c/CloudgoatRanger.java index 368b1c1914..1172299866 100644 --- a/Mage.Sets/src/mage/cards/c/CloudgoatRanger.java +++ b/Mage.Sets/src/mage/cards/c/CloudgoatRanger.java @@ -34,7 +34,7 @@ public final class CloudgoatRanger extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Kithkin you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.KITHKIN)); } diff --git a/Mage.Sets/src/mage/cards/c/ClovenCasting.java b/Mage.Sets/src/mage/cards/c/ClovenCasting.java index 91c8961b96..389fc161c1 100644 --- a/Mage.Sets/src/mage/cards/c/ClovenCasting.java +++ b/Mage.Sets/src/mage/cards/c/ClovenCasting.java @@ -27,7 +27,7 @@ public final class ClovenCasting extends CardImpl { filter.add(Predicates.or( new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public ClovenCasting(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java index bdf26e0adb..534bec0969 100644 --- a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java +++ b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java @@ -44,7 +44,7 @@ public final class CollectiveEffort extends CardImpl { private static final FilterPlayer filterPlayer = new FilterPlayer("player whose creatures get +1/+1 counters"); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); filterDestroyCreature.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } diff --git a/Mage.Sets/src/mage/cards/c/CommanderCody.java b/Mage.Sets/src/mage/cards/c/CommanderCody.java index 94867b369d..2b20b390fa 100644 --- a/Mage.Sets/src/mage/cards/c/CommanderCody.java +++ b/Mage.Sets/src/mage/cards/c/CommanderCody.java @@ -25,7 +25,7 @@ public final class CommanderCody extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-token Trooper creatures"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(new SubtypePredicate(SubType.TROOPER)); } diff --git a/Mage.Sets/src/mage/cards/c/CopperhoofVorrac.java b/Mage.Sets/src/mage/cards/c/CopperhoofVorrac.java index ea42ffd4a0..0a48307d1f 100644 --- a/Mage.Sets/src/mage/cards/c/CopperhoofVorrac.java +++ b/Mage.Sets/src/mage/cards/c/CopperhoofVorrac.java @@ -28,7 +28,7 @@ public final class CopperhoofVorrac extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("untapped permanent your opponents control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/c/CoralAtoll.java b/Mage.Sets/src/mage/cards/c/CoralAtoll.java index 0fc9f41693..92a7ab94cf 100644 --- a/Mage.Sets/src/mage/cards/c/CoralAtoll.java +++ b/Mage.Sets/src/mage/cards/c/CoralAtoll.java @@ -30,7 +30,7 @@ public final class CoralAtoll extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public CoralAtoll(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CoralReef.java b/Mage.Sets/src/mage/cards/c/CoralReef.java index a15a7c6afc..24093ec4c5 100644 --- a/Mage.Sets/src/mage/cards/c/CoralReef.java +++ b/Mage.Sets/src/mage/cards/c/CoralReef.java @@ -40,7 +40,7 @@ public final class CoralReef extends CardImpl { static { islandFilter.add(new SubtypePredicate(SubType.ISLAND)); - untappedBlueCreatureFilter.add(Predicates.not(new TappedPredicate())); + untappedBlueCreatureFilter.add(Predicates.not(TappedPredicate.instance)); untappedBlueCreatureFilter.add(new ColorPredicate(ObjectColor.BLUE)); } diff --git a/Mage.Sets/src/mage/cards/c/CorrosiveOoze.java b/Mage.Sets/src/mage/cards/c/CorrosiveOoze.java index fe7dbf077b..d33404a545 100644 --- a/Mage.Sets/src/mage/cards/c/CorrosiveOoze.java +++ b/Mage.Sets/src/mage/cards/c/CorrosiveOoze.java @@ -31,7 +31,7 @@ public final class CorrosiveOoze extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("equipped creature"); static { - filter.add(new EquippedPredicate()); + filter.add(EquippedPredicate.instance); } public CorrosiveOoze(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CovetedPeacock.java b/Mage.Sets/src/mage/cards/c/CovetedPeacock.java index 97502d3bee..dbe7642a59 100644 --- a/Mage.Sets/src/mage/cards/c/CovetedPeacock.java +++ b/Mage.Sets/src/mage/cards/c/CovetedPeacock.java @@ -25,7 +25,7 @@ public final class CovetedPeacock extends CardImpl { public static final FilterPermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public CovetedPeacock(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Crackleburr.java b/Mage.Sets/src/mage/cards/c/Crackleburr.java index b958d20061..d970807b97 100644 --- a/Mage.Sets/src/mage/cards/c/Crackleburr.java +++ b/Mage.Sets/src/mage/cards/c/Crackleburr.java @@ -38,10 +38,10 @@ public final class Crackleburr extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.RED)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter2.add(new ColorPredicate(ObjectColor.BLUE)); - filter2.add(new TappedPredicate()); + filter2.add(TappedPredicate.instance); } public Crackleburr(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CracklingPerimeter.java b/Mage.Sets/src/mage/cards/c/CracklingPerimeter.java index b2a49d8229..0c1e9fc08f 100644 --- a/Mage.Sets/src/mage/cards/c/CracklingPerimeter.java +++ b/Mage.Sets/src/mage/cards/c/CracklingPerimeter.java @@ -27,7 +27,7 @@ public final class CracklingPerimeter extends CardImpl { static { filter.add(new SubtypePredicate(SubType.GATE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public CracklingPerimeter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CrashingBoars.java b/Mage.Sets/src/mage/cards/c/CrashingBoars.java index 9e47943bd4..26678b713c 100644 --- a/Mage.Sets/src/mage/cards/c/CrashingBoars.java +++ b/Mage.Sets/src/mage/cards/c/CrashingBoars.java @@ -53,7 +53,7 @@ class CrashingBoarsEffect extends OneShotEffect { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } CrashingBoarsEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CrimsonHonorGuard.java b/Mage.Sets/src/mage/cards/c/CrimsonHonorGuard.java index 341e4494f5..147aeb97ba 100644 --- a/Mage.Sets/src/mage/cards/c/CrimsonHonorGuard.java +++ b/Mage.Sets/src/mage/cards/c/CrimsonHonorGuard.java @@ -56,7 +56,7 @@ class CrimsonHonorGuardEffect extends OneShotEffect { private final static FilterPermanent filter = new FilterPermanent("Commander"); static { - filter.add(new CommanderPredicate()); + filter.add(CommanderPredicate.instance); } public CrimsonHonorGuardEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CrookclawElder.java b/Mage.Sets/src/mage/cards/c/CrookclawElder.java index a570f6c7f9..54f59b87c5 100644 --- a/Mage.Sets/src/mage/cards/c/CrookclawElder.java +++ b/Mage.Sets/src/mage/cards/c/CrookclawElder.java @@ -33,9 +33,9 @@ public final class CrookclawElder extends CardImpl { static { filter.add(new SubtypePredicate(SubType.BIRD)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter2.add(new SubtypePredicate(SubType.WIZARD)); - filter2.add(Predicates.not(new TappedPredicate())); + filter2.add(Predicates.not(TappedPredicate.instance)); } public CrookclawElder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Cryptbreaker.java b/Mage.Sets/src/mage/cards/c/Cryptbreaker.java index 788303c91b..71255d8709 100644 --- a/Mage.Sets/src/mage/cards/c/Cryptbreaker.java +++ b/Mage.Sets/src/mage/cards/c/Cryptbreaker.java @@ -33,7 +33,7 @@ public final class Cryptbreaker extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Zombies you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ZOMBIE)); } diff --git a/Mage.Sets/src/mage/cards/c/CrypticGateway.java b/Mage.Sets/src/mage/cards/c/CrypticGateway.java index 5fee54dd1a..ea840305cf 100644 --- a/Mage.Sets/src/mage/cards/c/CrypticGateway.java +++ b/Mage.Sets/src/mage/cards/c/CrypticGateway.java @@ -39,7 +39,7 @@ public final class CrypticGateway extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } TargetControlledPermanent target; @@ -70,7 +70,7 @@ class CrypticGatewayCost extends CostImpl { TargetControlledPermanent target; static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public CrypticGatewayCost(TargetControlledPermanent target) { diff --git a/Mage.Sets/src/mage/cards/c/CurtainOfLight.java b/Mage.Sets/src/mage/cards/c/CurtainOfLight.java index c96889ff7a..5f1e7056ef 100644 --- a/Mage.Sets/src/mage/cards/c/CurtainOfLight.java +++ b/Mage.Sets/src/mage/cards/c/CurtainOfLight.java @@ -31,8 +31,8 @@ public final class CurtainOfLight extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked attacking creature"); static { - filter.add(new AttackingPredicate()); - filter.add(Predicates.not(new BlockedPredicate())); + filter.add(AttackingPredicate.instance); + filter.add(Predicates.not(BlockedPredicate.instance)); } public CurtainOfLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CutTheEarthlyBond.java b/Mage.Sets/src/mage/cards/c/CutTheEarthlyBond.java index 2eb73ac3d3..a3f122cd61 100644 --- a/Mage.Sets/src/mage/cards/c/CutTheEarthlyBond.java +++ b/Mage.Sets/src/mage/cards/c/CutTheEarthlyBond.java @@ -21,7 +21,7 @@ public final class CutTheEarthlyBond extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchanted permanent"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); } public CutTheEarthlyBond(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DAvenantTrapper.java b/Mage.Sets/src/mage/cards/d/DAvenantTrapper.java index d763b44edb..313cb11594 100644 --- a/Mage.Sets/src/mage/cards/d/DAvenantTrapper.java +++ b/Mage.Sets/src/mage/cards/d/DAvenantTrapper.java @@ -23,7 +23,7 @@ public final class DAvenantTrapper extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public DAvenantTrapper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DanceOfMany.java b/Mage.Sets/src/mage/cards/d/DanceOfMany.java index e99a8ca72e..6b58f60fe4 100644 --- a/Mage.Sets/src/mage/cards/d/DanceOfMany.java +++ b/Mage.Sets/src/mage/cards/d/DanceOfMany.java @@ -39,7 +39,7 @@ public final class DanceOfMany extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public DanceOfMany(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DaringArchaeologist.java b/Mage.Sets/src/mage/cards/d/DaringArchaeologist.java index 9ee2191281..133b878468 100644 --- a/Mage.Sets/src/mage/cards/d/DaringArchaeologist.java +++ b/Mage.Sets/src/mage/cards/d/DaringArchaeologist.java @@ -27,7 +27,7 @@ public final class DaringArchaeologist extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public DaringArchaeologist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DazzlingBeauty.java b/Mage.Sets/src/mage/cards/d/DazzlingBeauty.java index 4e6416c9e5..88bb01666e 100644 --- a/Mage.Sets/src/mage/cards/d/DazzlingBeauty.java +++ b/Mage.Sets/src/mage/cards/d/DazzlingBeauty.java @@ -32,8 +32,8 @@ public final class DazzlingBeauty extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked attacking creature"); static { - filter.add(new AttackingPredicate()); - filter.add(Predicates.not(new BlockedPredicate())); + filter.add(AttackingPredicate.instance); + filter.add(Predicates.not(BlockedPredicate.instance)); } public DazzlingBeauty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeadeyeHarpooner.java b/Mage.Sets/src/mage/cards/d/DeadeyeHarpooner.java index eeb855dd35..a8c31839c7 100644 --- a/Mage.Sets/src/mage/cards/d/DeadeyeHarpooner.java +++ b/Mage.Sets/src/mage/cards/d/DeadeyeHarpooner.java @@ -27,7 +27,7 @@ public final class DeadeyeHarpooner extends CardImpl { private final static FilterOpponentsCreaturePermanent filter = new FilterOpponentsCreaturePermanent("tapped creature an opponent controls"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public DeadeyeHarpooner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeathStroke.java b/Mage.Sets/src/mage/cards/d/DeathStroke.java index c47e389c79..db727116c4 100644 --- a/Mage.Sets/src/mage/cards/d/DeathStroke.java +++ b/Mage.Sets/src/mage/cards/d/DeathStroke.java @@ -19,7 +19,7 @@ public final class DeathStroke extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public DeathStroke(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeathlessAncient.java b/Mage.Sets/src/mage/cards/d/DeathlessAncient.java index 5d7e604682..6719a9fafa 100644 --- a/Mage.Sets/src/mage/cards/d/DeathlessAncient.java +++ b/Mage.Sets/src/mage/cards/d/DeathlessAncient.java @@ -27,7 +27,7 @@ public final class DeathlessAncient extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Vampires you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.VAMPIRE)); } diff --git a/Mage.Sets/src/mage/cards/d/DecayingSoil.java b/Mage.Sets/src/mage/cards/d/DecayingSoil.java index dec74944c5..8c709b42aa 100644 --- a/Mage.Sets/src/mage/cards/d/DecayingSoil.java +++ b/Mage.Sets/src/mage/cards/d/DecayingSoil.java @@ -40,7 +40,7 @@ public final class DecayingSoil extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static{ filter.add(new OwnerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public DecayingSoil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DecimatorBeetle.java b/Mage.Sets/src/mage/cards/d/DecimatorBeetle.java index 83060b5472..75e0cc4bb4 100644 --- a/Mage.Sets/src/mage/cards/d/DecimatorBeetle.java +++ b/Mage.Sets/src/mage/cards/d/DecimatorBeetle.java @@ -33,7 +33,7 @@ public final class DecimatorBeetle extends CardImpl { public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public DecimatorBeetle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DefilerOfSouls.java b/Mage.Sets/src/mage/cards/d/DefilerOfSouls.java index 006e7f1116..2e1f05f99d 100644 --- a/Mage.Sets/src/mage/cards/d/DefilerOfSouls.java +++ b/Mage.Sets/src/mage/cards/d/DefilerOfSouls.java @@ -72,7 +72,7 @@ class DefilerOfSoulsEffect extends OneShotEffect { if (player == null) { return false; } - filter.add(new MonocoloredPredicate()); + filter.add(MonocoloredPredicate.instance); int amount; int realCount = game.getBattlefield().countAll(filter, player.getId(), game); diff --git a/Mage.Sets/src/mage/cards/d/Desert.java b/Mage.Sets/src/mage/cards/d/Desert.java index e901bdf3d1..06a6c85466 100644 --- a/Mage.Sets/src/mage/cards/d/Desert.java +++ b/Mage.Sets/src/mage/cards/d/Desert.java @@ -27,7 +27,7 @@ public final class Desert extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Desert(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DevoutChaplain.java b/Mage.Sets/src/mage/cards/d/DevoutChaplain.java index 2f601ef344..02b3d391f4 100644 --- a/Mage.Sets/src/mage/cards/d/DevoutChaplain.java +++ b/Mage.Sets/src/mage/cards/d/DevoutChaplain.java @@ -30,7 +30,7 @@ public final class DevoutChaplain extends CardImpl { private static final FilterControlledPermanent humanFilter = new FilterControlledPermanent("untapped Human you control"); static { - humanFilter.add(Predicates.not(new TappedPredicate())); + humanFilter.add(Predicates.not(TappedPredicate.instance)); humanFilter.add(new SubtypePredicate(SubType.HUMAN)); } diff --git a/Mage.Sets/src/mage/cards/d/DevoutInvocation.java b/Mage.Sets/src/mage/cards/d/DevoutInvocation.java index b9a459fb35..ea6d47b2c7 100644 --- a/Mage.Sets/src/mage/cards/d/DevoutInvocation.java +++ b/Mage.Sets/src/mage/cards/d/DevoutInvocation.java @@ -48,7 +48,7 @@ class DevoutInvocationEffect extends OneShotEffect { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DevoutInvocationEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DiamondKaleidoscope.java b/Mage.Sets/src/mage/cards/d/DiamondKaleidoscope.java index c586f768b7..b34727c950 100644 --- a/Mage.Sets/src/mage/cards/d/DiamondKaleidoscope.java +++ b/Mage.Sets/src/mage/cards/d/DiamondKaleidoscope.java @@ -29,7 +29,7 @@ public final class DiamondKaleidoscope extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a Prism token"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new SubtypePredicate(SubType.PRISM)); } diff --git a/Mage.Sets/src/mage/cards/d/Dichotomancy.java b/Mage.Sets/src/mage/cards/d/Dichotomancy.java index c788c4dc8f..a2bcbcadb8 100644 --- a/Mage.Sets/src/mage/cards/d/Dichotomancy.java +++ b/Mage.Sets/src/mage/cards/d/Dichotomancy.java @@ -59,7 +59,7 @@ class DichotomancyEffect extends OneShotEffect { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent(); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public DichotomancyEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DiligentExcavator.java b/Mage.Sets/src/mage/cards/d/DiligentExcavator.java index 005b0a09be..5723ceb284 100644 --- a/Mage.Sets/src/mage/cards/d/DiligentExcavator.java +++ b/Mage.Sets/src/mage/cards/d/DiligentExcavator.java @@ -23,7 +23,7 @@ public final class DiligentExcavator extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public DiligentExcavator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DireFleetPoisoner.java b/Mage.Sets/src/mage/cards/d/DireFleetPoisoner.java index 3e97583f2d..f9199a211b 100644 --- a/Mage.Sets/src/mage/cards/d/DireFleetPoisoner.java +++ b/Mage.Sets/src/mage/cards/d/DireFleetPoisoner.java @@ -30,7 +30,7 @@ public final class DireFleetPoisoner extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public DireFleetPoisoner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DissensionInTheRanks.java b/Mage.Sets/src/mage/cards/d/DissensionInTheRanks.java index ef89d09984..13d14c9460 100644 --- a/Mage.Sets/src/mage/cards/d/DissensionInTheRanks.java +++ b/Mage.Sets/src/mage/cards/d/DissensionInTheRanks.java @@ -20,7 +20,7 @@ public final class DissensionInTheRanks extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("blocking creature"); static { - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } public DissensionInTheRanks(UUID ownerId, CardSetInfo setInfo) { @@ -34,7 +34,7 @@ public final class DissensionInTheRanks extends CardImpl { FilterCreaturePermanent filter2 = new FilterCreaturePermanent("another target blocking creature"); filter2.add(new AnotherTargetPredicate(2)); - filter2.add(new BlockingPredicate()); + filter2.add(BlockingPredicate.instance); TargetCreaturePermanent target2 = new TargetCreaturePermanent(filter2); target2.setTargetTag(2); this.getSpellAbility().addTarget(target2); diff --git a/Mage.Sets/src/mage/cards/d/DiversionaryTactics.java b/Mage.Sets/src/mage/cards/d/DiversionaryTactics.java index 2e9c582c22..79ff36ae6b 100644 --- a/Mage.Sets/src/mage/cards/d/DiversionaryTactics.java +++ b/Mage.Sets/src/mage/cards/d/DiversionaryTactics.java @@ -24,7 +24,7 @@ public final class DiversionaryTactics extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DiversionaryTactics(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DoggedHunter.java b/Mage.Sets/src/mage/cards/d/DoggedHunter.java index 2f5c060036..b5e8dd7b43 100644 --- a/Mage.Sets/src/mage/cards/d/DoggedHunter.java +++ b/Mage.Sets/src/mage/cards/d/DoggedHunter.java @@ -24,7 +24,7 @@ public final class DoggedHunter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature token"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public DoggedHunter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DolmenGate.java b/Mage.Sets/src/mage/cards/d/DolmenGate.java index b5172e1bae..24cad2f4d3 100644 --- a/Mage.Sets/src/mage/cards/d/DolmenGate.java +++ b/Mage.Sets/src/mage/cards/d/DolmenGate.java @@ -21,7 +21,7 @@ public final class DolmenGate extends CardImpl { private static final FilterControlledCreatureInPlay filter = new FilterControlledCreatureInPlay("attacking creatures you control"); static { - filter.getCreatureFilter().add(new AttackingPredicate()); + filter.getCreatureFilter().add(AttackingPredicate.instance); } public DolmenGate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DomineeringWill.java b/Mage.Sets/src/mage/cards/d/DomineeringWill.java index 808966caef..384ad50460 100644 --- a/Mage.Sets/src/mage/cards/d/DomineeringWill.java +++ b/Mage.Sets/src/mage/cards/d/DomineeringWill.java @@ -33,7 +33,7 @@ public final class DomineeringWill extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonattacking creatures"); static { - filter.add(Predicates.not(new AttackingPredicate())); + filter.add(Predicates.not(AttackingPredicate.instance)); } public DomineeringWill(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DormantVolcano.java b/Mage.Sets/src/mage/cards/d/DormantVolcano.java index d43f82f617..8ee5e9f5bb 100644 --- a/Mage.Sets/src/mage/cards/d/DormantVolcano.java +++ b/Mage.Sets/src/mage/cards/d/DormantVolcano.java @@ -30,7 +30,7 @@ public final class DormantVolcano extends CardImpl { static { filter.add(new SubtypePredicate(SubType.MOUNTAIN)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DormantVolcano(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DovinsDismissal.java b/Mage.Sets/src/mage/cards/d/DovinsDismissal.java index bc1087390b..598029d98b 100644 --- a/Mage.Sets/src/mage/cards/d/DovinsDismissal.java +++ b/Mage.Sets/src/mage/cards/d/DovinsDismissal.java @@ -24,7 +24,7 @@ public final class DovinsDismissal extends CardImpl { static { filter.add(new NamePredicate("Dovin, Architect of Law")); - filter2.add(new TappedPredicate()); + filter2.add(TappedPredicate.instance); } public DovinsDismissal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DragonArch.java b/Mage.Sets/src/mage/cards/d/DragonArch.java index 6b9c444fee..5a152ea013 100644 --- a/Mage.Sets/src/mage/cards/d/DragonArch.java +++ b/Mage.Sets/src/mage/cards/d/DragonArch.java @@ -24,7 +24,7 @@ public final class DragonArch extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a multicolored creature card"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public DragonArch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Dragonrage.java b/Mage.Sets/src/mage/cards/d/Dragonrage.java index 410fe9bdc5..d378be9433 100644 --- a/Mage.Sets/src/mage/cards/d/Dragonrage.java +++ b/Mage.Sets/src/mage/cards/d/Dragonrage.java @@ -28,7 +28,7 @@ public final class Dragonrage extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking creature you control"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/d/DragonscaleGeneral.java b/Mage.Sets/src/mage/cards/d/DragonscaleGeneral.java index e9ba1f5213..ed08960942 100644 --- a/Mage.Sets/src/mage/cards/d/DragonscaleGeneral.java +++ b/Mage.Sets/src/mage/cards/d/DragonscaleGeneral.java @@ -24,7 +24,7 @@ public final class DragonscaleGeneral extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creatures you control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/d/DranasChosen.java b/Mage.Sets/src/mage/cards/d/DranasChosen.java index 3afa5ccd68..d0dd78f548 100644 --- a/Mage.Sets/src/mage/cards/d/DranasChosen.java +++ b/Mage.Sets/src/mage/cards/d/DranasChosen.java @@ -31,7 +31,7 @@ public final class DranasChosen extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DranasChosen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DreamChisel.java b/Mage.Sets/src/mage/cards/d/DreamChisel.java index 705fe64cc2..8508e9b24b 100644 --- a/Mage.Sets/src/mage/cards/d/DreamChisel.java +++ b/Mage.Sets/src/mage/cards/d/DreamChisel.java @@ -20,7 +20,7 @@ public final class DreamChisel extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("Face-down creature spells"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public DreamChisel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DreamTides.java b/Mage.Sets/src/mage/cards/d/DreamTides.java index 965adba380..6f15d52bf1 100644 --- a/Mage.Sets/src/mage/cards/d/DreamTides.java +++ b/Mage.Sets/src/mage/cards/d/DreamTides.java @@ -59,7 +59,7 @@ class DreamTidesEffect extends OneShotEffect { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.GREEN))); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } DreamTidesEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DrownerOfSecrets.java b/Mage.Sets/src/mage/cards/d/DrownerOfSecrets.java index 149ce963f0..65596971ff 100644 --- a/Mage.Sets/src/mage/cards/d/DrownerOfSecrets.java +++ b/Mage.Sets/src/mage/cards/d/DrownerOfSecrets.java @@ -29,7 +29,7 @@ public final class DrownerOfSecrets extends CardImpl { static { filter.add(new SubtypePredicate(SubType.MERFOLK)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DrownerOfSecrets(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DrudgeSpell.java b/Mage.Sets/src/mage/cards/d/DrudgeSpell.java index 91a2755db4..efd94be990 100644 --- a/Mage.Sets/src/mage/cards/d/DrudgeSpell.java +++ b/Mage.Sets/src/mage/cards/d/DrudgeSpell.java @@ -32,7 +32,7 @@ public final class DrudgeSpell extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SKELETON)); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public DrudgeSpell(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DualNature.java b/Mage.Sets/src/mage/cards/d/DualNature.java index fa4e332271..2105105790 100644 --- a/Mage.Sets/src/mage/cards/d/DualNature.java +++ b/Mage.Sets/src/mage/cards/d/DualNature.java @@ -37,7 +37,7 @@ public final class DualNature extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public DualNature(UUID ownerId, CardSetInfo setInfo) { @@ -130,7 +130,7 @@ class DualNatureCreatureLeavesEffect extends OneShotEffect { Permanent creature = game.getPermanentOrLKIBattlefield(this.getTargetPointer().getFirst(game, source)); if (creature != null) { FilterPermanent filter = new FilterPermanent(); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new NamePredicate(creature.getName())); new ExileAllEffect(filter).apply(game, source); return true; diff --git a/Mage.Sets/src/mage/cards/d/DuneDiviner.java b/Mage.Sets/src/mage/cards/d/DuneDiviner.java index 72e74cd8e1..55a9939923 100644 --- a/Mage.Sets/src/mage/cards/d/DuneDiviner.java +++ b/Mage.Sets/src/mage/cards/d/DuneDiviner.java @@ -29,7 +29,7 @@ public final class DuneDiviner extends CardImpl { static { filter.add(new SubtypePredicate(SubType.DESERT)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public DuneDiviner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Duplicant.java b/Mage.Sets/src/mage/cards/d/Duplicant.java index 6cbb058cdf..0915c8c8da 100644 --- a/Mage.Sets/src/mage/cards/d/Duplicant.java +++ b/Mage.Sets/src/mage/cards/d/Duplicant.java @@ -30,7 +30,7 @@ public final class Duplicant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Duplicant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DuskborneSkymarcher.java b/Mage.Sets/src/mage/cards/d/DuskborneSkymarcher.java index 17462b8f9d..77a3726456 100644 --- a/Mage.Sets/src/mage/cards/d/DuskborneSkymarcher.java +++ b/Mage.Sets/src/mage/cards/d/DuskborneSkymarcher.java @@ -28,7 +28,7 @@ public final class DuskborneSkymarcher extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(SubType.VAMPIRE, "attacking Vampire"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public DuskborneSkymarcher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DwarvenBloodboiler.java b/Mage.Sets/src/mage/cards/d/DwarvenBloodboiler.java index 8d143825c2..1638cf682b 100644 --- a/Mage.Sets/src/mage/cards/d/DwarvenBloodboiler.java +++ b/Mage.Sets/src/mage/cards/d/DwarvenBloodboiler.java @@ -29,7 +29,7 @@ public final class DwarvenBloodboiler extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an untapped Dwarf you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.DWARF)); } diff --git a/Mage.Sets/src/mage/cards/d/DwynenGiltLeafDaen.java b/Mage.Sets/src/mage/cards/d/DwynenGiltLeafDaen.java index 73a10a2f16..fb4ee16fc5 100644 --- a/Mage.Sets/src/mage/cards/d/DwynenGiltLeafDaen.java +++ b/Mage.Sets/src/mage/cards/d/DwynenGiltLeafDaen.java @@ -24,7 +24,7 @@ public final class DwynenGiltLeafDaen extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(SubType.ELF, "attacking Elf you control"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public DwynenGiltLeafDaen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EarlOfSquirrel.java b/Mage.Sets/src/mage/cards/e/EarlOfSquirrel.java index 20259b9d8b..37c2081f54 100644 --- a/Mage.Sets/src/mage/cards/e/EarlOfSquirrel.java +++ b/Mage.Sets/src/mage/cards/e/EarlOfSquirrel.java @@ -33,7 +33,7 @@ public final class EarlOfSquirrel extends CardImpl { static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); filter2.add(new SubtypePredicate(SubType.SQUIRREL)); } diff --git a/Mage.Sets/src/mage/cards/e/Earthcraft.java b/Mage.Sets/src/mage/cards/e/Earthcraft.java index c89ff398bc..9db0d2926b 100644 --- a/Mage.Sets/src/mage/cards/e/Earthcraft.java +++ b/Mage.Sets/src/mage/cards/e/Earthcraft.java @@ -29,7 +29,7 @@ public final class Earthcraft extends CardImpl { private static final FilterControlledPermanent filterLand = new FilterControlledPermanent("basic land"); static { - filterCreature.add(Predicates.not(new TappedPredicate())); + filterCreature.add(Predicates.not(TappedPredicate.instance)); filterLand.add(new CardTypePredicate(CardType.LAND)); filterLand.add(new SupertypePredicate(SuperType.BASIC)); } diff --git a/Mage.Sets/src/mage/cards/e/Earthlore.java b/Mage.Sets/src/mage/cards/e/Earthlore.java index 78808360e1..2a511fba60 100644 --- a/Mage.Sets/src/mage/cards/e/Earthlore.java +++ b/Mage.Sets/src/mage/cards/e/Earthlore.java @@ -43,7 +43,7 @@ public final class Earthlore extends CardImpl { private static final FilterPermanent filterUntapped = new FilterPermanent("enchanted land is untapped"); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } public Earthlore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EbonyHorse.java b/Mage.Sets/src/mage/cards/e/EbonyHorse.java index f5bcac6c36..610dd3291c 100644 --- a/Mage.Sets/src/mage/cards/e/EbonyHorse.java +++ b/Mage.Sets/src/mage/cards/e/EbonyHorse.java @@ -30,7 +30,7 @@ public final class EbonyHorse extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature you control"); static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public EbonyHorse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EliteScaleguard.java b/Mage.Sets/src/mage/cards/e/EliteScaleguard.java index 1e52cb5160..b2c5911d85 100644 --- a/Mage.Sets/src/mage/cards/e/EliteScaleguard.java +++ b/Mage.Sets/src/mage/cards/e/EliteScaleguard.java @@ -32,7 +32,7 @@ public final class EliteScaleguard extends CardImpl { static { filter.add(new CounterPredicate(CounterType.P1P1)); - filter2.add(new DefendingPlayerControlsPredicate()); + filter2.add(DefendingPlayerControlsPredicate.instance); } public EliteScaleguard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ElvishScout.java b/Mage.Sets/src/mage/cards/e/ElvishScout.java index fb03e93495..01a924b85e 100644 --- a/Mage.Sets/src/mage/cards/e/ElvishScout.java +++ b/Mage.Sets/src/mage/cards/e/ElvishScout.java @@ -30,7 +30,7 @@ public final class ElvishScout extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking creature you control"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public ElvishScout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmbalmersTools.java b/Mage.Sets/src/mage/cards/e/EmbalmersTools.java index c81514acd8..4ca900ff9f 100644 --- a/Mage.Sets/src/mage/cards/e/EmbalmersTools.java +++ b/Mage.Sets/src/mage/cards/e/EmbalmersTools.java @@ -35,7 +35,7 @@ public final class EmbalmersTools extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Zombie you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ZOMBIE)); } diff --git a/Mage.Sets/src/mage/cards/e/EmmaraTandris.java b/Mage.Sets/src/mage/cards/e/EmmaraTandris.java index e51f33d712..11d0794557 100644 --- a/Mage.Sets/src/mage/cards/e/EmmaraTandris.java +++ b/Mage.Sets/src/mage/cards/e/EmmaraTandris.java @@ -21,7 +21,7 @@ public final class EmmaraTandris extends CardImpl { private static final FilterCreatureOrPlayer filter = new FilterCreatureOrPlayer("creature tokens you control"); static { - filter.getCreatureFilter().add(new TokenPredicate()); + filter.getCreatureFilter().add(TokenPredicate.instance); filter.getCreatureFilter().add(new ControllerPredicate(TargetController.YOU)); filter.getPlayerFilter().add(new PlayerIdPredicate(UUID.randomUUID())); } diff --git a/Mage.Sets/src/mage/cards/e/EnemyOfTheGuildpact.java b/Mage.Sets/src/mage/cards/e/EnemyOfTheGuildpact.java index eb2fc372c1..ee59ff16cb 100644 --- a/Mage.Sets/src/mage/cards/e/EnemyOfTheGuildpact.java +++ b/Mage.Sets/src/mage/cards/e/EnemyOfTheGuildpact.java @@ -20,7 +20,7 @@ public final class EnemyOfTheGuildpact extends CardImpl { private static final FilterObject filter = new FilterObject("multicolored"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public EnemyOfTheGuildpact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EnergyTap.java b/Mage.Sets/src/mage/cards/e/EnergyTap.java index ef1aaadbf8..0b8e57fcd8 100644 --- a/Mage.Sets/src/mage/cards/e/EnergyTap.java +++ b/Mage.Sets/src/mage/cards/e/EnergyTap.java @@ -25,7 +25,7 @@ public final class EnergyTap extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public EnergyTap(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EntanglingVines.java b/Mage.Sets/src/mage/cards/e/EntanglingVines.java index 808eb3b560..49bd76d564 100644 --- a/Mage.Sets/src/mage/cards/e/EntanglingVines.java +++ b/Mage.Sets/src/mage/cards/e/EntanglingVines.java @@ -26,7 +26,7 @@ public final class EntanglingVines extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public EntanglingVines(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EntrapmentManeuver.java b/Mage.Sets/src/mage/cards/e/EntrapmentManeuver.java index 2853d798b7..846af092c6 100644 --- a/Mage.Sets/src/mage/cards/e/EntrapmentManeuver.java +++ b/Mage.Sets/src/mage/cards/e/EntrapmentManeuver.java @@ -66,7 +66,7 @@ class EntrapmentManeuverSacrificeEffect extends OneShotEffect { return false; } FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); int realCount = game.getBattlefield().countAll(filter, player.getId(), game); if (realCount > 0) { Target target = new TargetControlledPermanent(1, 1, filter, true); diff --git a/Mage.Sets/src/mage/cards/e/EsperStormblade.java b/Mage.Sets/src/mage/cards/e/EsperStormblade.java index 3803a6edcc..04f376a441 100644 --- a/Mage.Sets/src/mage/cards/e/EsperStormblade.java +++ b/Mage.Sets/src/mage/cards/e/EsperStormblade.java @@ -29,7 +29,7 @@ public final class EsperStormblade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another multicolor permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/e/EstridTheMasked.java b/Mage.Sets/src/mage/cards/e/EstridTheMasked.java index f40fcbd162..25f0afb81c 100644 --- a/Mage.Sets/src/mage/cards/e/EstridTheMasked.java +++ b/Mage.Sets/src/mage/cards/e/EstridTheMasked.java @@ -38,7 +38,7 @@ public final class EstridTheMasked extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent("another permanent"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter2.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/e/Everglades.java b/Mage.Sets/src/mage/cards/e/Everglades.java index 13c7fb1c36..8e2b3ceae0 100644 --- a/Mage.Sets/src/mage/cards/e/Everglades.java +++ b/Mage.Sets/src/mage/cards/e/Everglades.java @@ -30,7 +30,7 @@ public final class Everglades extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SWAMP)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Everglades(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Excise.java b/Mage.Sets/src/mage/cards/e/Excise.java index 119914cc3b..a390e62e30 100644 --- a/Mage.Sets/src/mage/cards/e/Excise.java +++ b/Mage.Sets/src/mage/cards/e/Excise.java @@ -20,7 +20,7 @@ public final class Excise extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Excise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Excoriate.java b/Mage.Sets/src/mage/cards/e/Excoriate.java index a015078ba5..fc376d02c1 100644 --- a/Mage.Sets/src/mage/cards/e/Excoriate.java +++ b/Mage.Sets/src/mage/cards/e/Excoriate.java @@ -19,7 +19,7 @@ public final class Excoriate extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public Excoriate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Exile.java b/Mage.Sets/src/mage/cards/e/Exile.java index 13067c9439..a8d2819198 100644 --- a/Mage.Sets/src/mage/cards/e/Exile.java +++ b/Mage.Sets/src/mage/cards/e/Exile.java @@ -29,7 +29,7 @@ public final class Exile extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonwhite attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(Predicates.not(new ColorPredicate(ObjectColor.WHITE))); } diff --git a/Mage.Sets/src/mage/cards/f/FaerieArtisans.java b/Mage.Sets/src/mage/cards/f/FaerieArtisans.java index db39e5549a..f02fa39ba4 100644 --- a/Mage.Sets/src/mage/cards/f/FaerieArtisans.java +++ b/Mage.Sets/src/mage/cards/f/FaerieArtisans.java @@ -32,7 +32,7 @@ public final class FaerieArtisans extends CardImpl { private static final FilterCreaturePermanent filterNontoken = new FilterCreaturePermanent("nontoken creature"); static { - filterNontoken.add(Predicates.not(new TokenPredicate())); + filterNontoken.add(Predicates.not(TokenPredicate.instance)); filterNontoken.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/f/FathomFleetCaptain.java b/Mage.Sets/src/mage/cards/f/FathomFleetCaptain.java index b97b96f86c..ba624da793 100644 --- a/Mage.Sets/src/mage/cards/f/FathomFleetCaptain.java +++ b/Mage.Sets/src/mage/cards/f/FathomFleetCaptain.java @@ -32,7 +32,7 @@ public final class FathomFleetCaptain extends CardImpl { static { filter.add(new SubtypePredicate(SubType.PIRATE)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public FathomFleetCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FeastOfDreams.java b/Mage.Sets/src/mage/cards/f/FeastOfDreams.java index 96f547e448..b42e154268 100644 --- a/Mage.Sets/src/mage/cards/f/FeastOfDreams.java +++ b/Mage.Sets/src/mage/cards/f/FeastOfDreams.java @@ -22,7 +22,7 @@ public final class FeastOfDreams extends CardImpl { static { filter.add(Predicates.or( - new EnchantedPredicate(), + EnchantedPredicate.instance, new CardTypePredicate(CardType.ENCHANTMENT) )); } diff --git a/Mage.Sets/src/mage/cards/f/FeedThePack.java b/Mage.Sets/src/mage/cards/f/FeedThePack.java index 24957df34a..181022e5ef 100644 --- a/Mage.Sets/src/mage/cards/f/FeedThePack.java +++ b/Mage.Sets/src/mage/cards/f/FeedThePack.java @@ -48,7 +48,7 @@ class FeedThePackEffect extends OneShotEffect { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public FeedThePackEffect() { diff --git a/Mage.Sets/src/mage/cards/f/FenStalker.java b/Mage.Sets/src/mage/cards/f/FenStalker.java index d0e606cb07..e1821d199b 100644 --- a/Mage.Sets/src/mage/cards/f/FenStalker.java +++ b/Mage.Sets/src/mage/cards/f/FenStalker.java @@ -28,7 +28,7 @@ public final class FenStalker extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public FenStalker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FencersMagemark.java b/Mage.Sets/src/mage/cards/f/FencersMagemark.java index 593ad6407c..60aad9afb0 100644 --- a/Mage.Sets/src/mage/cards/f/FencersMagemark.java +++ b/Mage.Sets/src/mage/cards/f/FencersMagemark.java @@ -27,7 +27,7 @@ public final class FencersMagemark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures you control that are enchanted"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/f/FieldOfSouls.java b/Mage.Sets/src/mage/cards/f/FieldOfSouls.java index 3389be54d9..16dd2e04da 100644 --- a/Mage.Sets/src/mage/cards/f/FieldOfSouls.java +++ b/Mage.Sets/src/mage/cards/f/FieldOfSouls.java @@ -23,7 +23,7 @@ public final class FieldOfSouls extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static{ filter.add(new OwnerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public FieldOfSouls(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FieldSurgeon.java b/Mage.Sets/src/mage/cards/f/FieldSurgeon.java index 7931385c8e..93b62fb1f8 100644 --- a/Mage.Sets/src/mage/cards/f/FieldSurgeon.java +++ b/Mage.Sets/src/mage/cards/f/FieldSurgeon.java @@ -28,7 +28,7 @@ public final class FieldSurgeon extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public FieldSurgeon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FiendBinder.java b/Mage.Sets/src/mage/cards/f/FiendBinder.java index 64a65b7506..1cbc7e0cc7 100644 --- a/Mage.Sets/src/mage/cards/f/FiendBinder.java +++ b/Mage.Sets/src/mage/cards/f/FiendBinder.java @@ -22,7 +22,7 @@ public final class FiendBinder extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public FiendBinder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FightToTheDeath.java b/Mage.Sets/src/mage/cards/f/FightToTheDeath.java index 7f95878400..b0b1ec365d 100644 --- a/Mage.Sets/src/mage/cards/f/FightToTheDeath.java +++ b/Mage.Sets/src/mage/cards/f/FightToTheDeath.java @@ -21,8 +21,8 @@ public final class FightToTheDeath extends CardImpl { static { filter.add(Predicates.or( - new BlockingPredicate(), - new BlockedPredicate())); + BlockingPredicate.instance, + BlockedPredicate.instance)); } public FightToTheDeath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Finn.java b/Mage.Sets/src/mage/cards/f/Finn.java index b4429e90ae..6408b55ac2 100644 --- a/Mage.Sets/src/mage/cards/f/Finn.java +++ b/Mage.Sets/src/mage/cards/f/Finn.java @@ -28,7 +28,7 @@ public final class Finn extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Finn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FireAtWill.java b/Mage.Sets/src/mage/cards/f/FireAtWill.java index 706a5cee46..efe7a67bce 100644 --- a/Mage.Sets/src/mage/cards/f/FireAtWill.java +++ b/Mage.Sets/src/mage/cards/f/FireAtWill.java @@ -23,8 +23,8 @@ public final class FireAtWill extends CardImpl { static { filter.add(Predicates.or( - new AttackingPredicate(), - new BlockingPredicate())); + AttackingPredicate.instance, + BlockingPredicate.instance)); } public FireAtWill(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FlamerushRider.java b/Mage.Sets/src/mage/cards/f/FlamerushRider.java index 57a223dafb..be2c67e9fd 100644 --- a/Mage.Sets/src/mage/cards/f/FlamerushRider.java +++ b/Mage.Sets/src/mage/cards/f/FlamerushRider.java @@ -36,7 +36,7 @@ public final class FlamerushRider extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public FlamerushRider(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FlameshadowConjuring.java b/Mage.Sets/src/mage/cards/f/FlameshadowConjuring.java index c490eb8191..9db0cd3935 100644 --- a/Mage.Sets/src/mage/cards/f/FlameshadowConjuring.java +++ b/Mage.Sets/src/mage/cards/f/FlameshadowConjuring.java @@ -33,7 +33,7 @@ public final class FlameshadowConjuring extends CardImpl { private static final FilterControlledCreaturePermanent filterNontoken = new FilterControlledCreaturePermanent("nontoken creature"); static { - filterNontoken.add(Predicates.not(new TokenPredicate())); + filterNontoken.add(Predicates.not(TokenPredicate.instance)); } public FlameshadowConjuring(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Flicker.java b/Mage.Sets/src/mage/cards/f/Flicker.java index b463128152..dd16b1d1cb 100644 --- a/Mage.Sets/src/mage/cards/f/Flicker.java +++ b/Mage.Sets/src/mage/cards/f/Flicker.java @@ -21,7 +21,7 @@ public final class Flicker extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nontoken permanent"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Flicker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java b/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java index c418a87926..8fde7de47c 100644 --- a/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java +++ b/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java @@ -27,7 +27,7 @@ public final class FloralSpuzzem extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public FloralSpuzzem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Forcefield.java b/Mage.Sets/src/mage/cards/f/Forcefield.java index e225e7c328..9534b45eb5 100644 --- a/Mage.Sets/src/mage/cards/f/Forcefield.java +++ b/Mage.Sets/src/mage/cards/f/Forcefield.java @@ -53,7 +53,7 @@ class ForcefieldEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("an unblocked creature"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } ForcefieldEffect() { diff --git a/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java b/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java index e3e24edaa2..b745f92800 100644 --- a/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java +++ b/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java @@ -29,7 +29,7 @@ public final class ForgeOfHeroes extends CardImpl { = new FilterPermanent("commander that entered the battlefield this turn"); static { - filter.add(new CommanderPredicate()); + filter.add(CommanderPredicate.instance); filter.add(new EnteredThisTurnPredicate()); } diff --git a/Mage.Sets/src/mage/cards/g/GalecasterColossus.java b/Mage.Sets/src/mage/cards/g/GalecasterColossus.java index 93ed2f360e..9c00fb80e7 100644 --- a/Mage.Sets/src/mage/cards/g/GalecasterColossus.java +++ b/Mage.Sets/src/mage/cards/g/GalecasterColossus.java @@ -34,7 +34,7 @@ public final class GalecasterColossus extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.NOT_YOU)); filter2.add(new SubtypePredicate(SubType.WIZARD)); - filter2.add(Predicates.not(new TappedPredicate())); + filter2.add(Predicates.not(TappedPredicate.instance)); } public GalecasterColossus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Galestrike.java b/Mage.Sets/src/mage/cards/g/Galestrike.java index 372e5bcb88..01a3fd7702 100644 --- a/Mage.Sets/src/mage/cards/g/Galestrike.java +++ b/Mage.Sets/src/mage/cards/g/Galestrike.java @@ -20,7 +20,7 @@ public final class Galestrike extends CardImpl { private static FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public Galestrike(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GallowsAtWillowHill.java b/Mage.Sets/src/mage/cards/g/GallowsAtWillowHill.java index c8ca0944f9..c7ce35b44f 100644 --- a/Mage.Sets/src/mage/cards/g/GallowsAtWillowHill.java +++ b/Mage.Sets/src/mage/cards/g/GallowsAtWillowHill.java @@ -35,7 +35,7 @@ public final class GallowsAtWillowHill extends CardImpl { private static final FilterControlledPermanent humanFilter = new FilterControlledPermanent("untapped Human you control"); static { - humanFilter.add(Predicates.not(new TappedPredicate())); + humanFilter.add(Predicates.not(TappedPredicate.instance)); humanFilter.add(new SubtypePredicate(SubType.HUMAN)); } diff --git a/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java b/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java index 8bc4dba224..5ffff38827 100644 --- a/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java +++ b/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java @@ -42,7 +42,7 @@ public final class GateToTheAfterlife extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public GateToTheAfterlife(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GatewayShade.java b/Mage.Sets/src/mage/cards/g/GatewayShade.java index 684d873a8e..cb36365322 100644 --- a/Mage.Sets/src/mage/cards/g/GatewayShade.java +++ b/Mage.Sets/src/mage/cards/g/GatewayShade.java @@ -28,7 +28,7 @@ public final class GatewayShade extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("untapped Gate you control"); static { filter.add(new SubtypePredicate(SubType.GATE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public GatewayShade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GazeOfJustice.java b/Mage.Sets/src/mage/cards/g/GazeOfJustice.java index 4735ad605b..10b93cd0ba 100644 --- a/Mage.Sets/src/mage/cards/g/GazeOfJustice.java +++ b/Mage.Sets/src/mage/cards/g/GazeOfJustice.java @@ -28,7 +28,7 @@ public final class GazeOfJustice extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public GazeOfJustice(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GeneralHux.java b/Mage.Sets/src/mage/cards/g/GeneralHux.java index 653a5381f2..42bfd880d2 100644 --- a/Mage.Sets/src/mage/cards/g/GeneralHux.java +++ b/Mage.Sets/src/mage/cards/g/GeneralHux.java @@ -29,7 +29,7 @@ public final class GeneralHux extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public GeneralHux(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GenesisChamber.java b/Mage.Sets/src/mage/cards/g/GenesisChamber.java index 709aa2b523..a739a91f3c 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisChamber.java +++ b/Mage.Sets/src/mage/cards/g/GenesisChamber.java @@ -30,7 +30,7 @@ public final class GenesisChamber extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public GenesisChamber(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java b/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java index da3c5fdb83..68ee5462a0 100644 --- a/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java +++ b/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java @@ -26,7 +26,7 @@ public final class GhirapurAetherGrid extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public GhirapurAetherGrid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GiantOyster.java b/Mage.Sets/src/mage/cards/g/GiantOyster.java index 53e103906b..6b4dacd028 100644 --- a/Mage.Sets/src/mage/cards/g/GiantOyster.java +++ b/Mage.Sets/src/mage/cards/g/GiantOyster.java @@ -37,7 +37,7 @@ public final class GiantOyster extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public GiantOyster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GideonJura.java b/Mage.Sets/src/mage/cards/g/GideonJura.java index d18f502891..12c783c9ed 100644 --- a/Mage.Sets/src/mage/cards/g/GideonJura.java +++ b/Mage.Sets/src/mage/cards/g/GideonJura.java @@ -35,7 +35,7 @@ public final class GideonJura extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public GideonJura(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java b/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java index 372a87e19d..8683602db5 100644 --- a/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java +++ b/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java @@ -28,7 +28,7 @@ public final class GlareOfSubdual extends CardImpl { private static final FilterPermanent filterTarget = new FilterPermanent("artifact or creature"); static { - filterCost.add(Predicates.not(new TappedPredicate())); + filterCost.add(Predicates.not(TappedPredicate.instance)); filterTarget.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); diff --git a/Mage.Sets/src/mage/cards/g/GlassOfTheGuildpact.java b/Mage.Sets/src/mage/cards/g/GlassOfTheGuildpact.java index 1f84a76044..a5e095017f 100644 --- a/Mage.Sets/src/mage/cards/g/GlassOfTheGuildpact.java +++ b/Mage.Sets/src/mage/cards/g/GlassOfTheGuildpact.java @@ -20,7 +20,7 @@ public final class GlassOfTheGuildpact extends CardImpl { = new FilterCreaturePermanent("multicolored creatures"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public GlassOfTheGuildpact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlimmerdustNap.java b/Mage.Sets/src/mage/cards/g/GlimmerdustNap.java index 55bfd2f749..ced28deab9 100644 --- a/Mage.Sets/src/mage/cards/g/GlimmerdustNap.java +++ b/Mage.Sets/src/mage/cards/g/GlimmerdustNap.java @@ -26,7 +26,7 @@ public final class GlimmerdustNap extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public GlimmerdustNap(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlitteringWish.java b/Mage.Sets/src/mage/cards/g/GlitteringWish.java index 9b063c47ff..355eb718f9 100644 --- a/Mage.Sets/src/mage/cards/g/GlitteringWish.java +++ b/Mage.Sets/src/mage/cards/g/GlitteringWish.java @@ -19,7 +19,7 @@ public final class GlitteringWish extends CardImpl { private static final FilterCard filter = new FilterCard("a multicolored card"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public GlitteringWish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlyphOfDestruction.java b/Mage.Sets/src/mage/cards/g/GlyphOfDestruction.java index 29a587f8cd..016c25f35a 100644 --- a/Mage.Sets/src/mage/cards/g/GlyphOfDestruction.java +++ b/Mage.Sets/src/mage/cards/g/GlyphOfDestruction.java @@ -25,7 +25,7 @@ public final class GlyphOfDestruction extends CardImpl { static { filter.add(new SubtypePredicate(SubType.WALL)); - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } public GlyphOfDestruction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GnarlrootTrapper.java b/Mage.Sets/src/mage/cards/g/GnarlrootTrapper.java index 69e6f81b23..a58d85839d 100644 --- a/Mage.Sets/src/mage/cards/g/GnarlrootTrapper.java +++ b/Mage.Sets/src/mage/cards/g/GnarlrootTrapper.java @@ -38,7 +38,7 @@ public final class GnarlrootTrapper extends CardImpl { private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking ELf you control"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(new SubtypePredicate(SubType.ELF)); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinMutant.java b/Mage.Sets/src/mage/cards/g/GoblinMutant.java index 9bc7a1e266..aaa3865547 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinMutant.java +++ b/Mage.Sets/src/mage/cards/g/GoblinMutant.java @@ -30,7 +30,7 @@ public final class GoblinMutant extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(TappedPredicate.instance))); filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java b/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java index 5b19724813..813b051f72 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java +++ b/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java @@ -35,7 +35,7 @@ public final class GoblinRabblemaster extends CardImpl { otherGoblinFilter.add(AnotherPredicate.instance); otherGoblinFilter.add(new ControllerPredicate(TargetController.YOU)); - attackingFilter.add(new AttackingPredicate()); + attackingFilter.add(AttackingPredicate.instance); attackingFilter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinRacketeer.java b/Mage.Sets/src/mage/cards/g/GoblinRacketeer.java index 80e0d2b5b3..c70dbf9aac 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinRacketeer.java +++ b/Mage.Sets/src/mage/cards/g/GoblinRacketeer.java @@ -23,7 +23,7 @@ public final class GoblinRacketeer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public GoblinRacketeer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java b/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java index 1817d45021..b3b5bd14ec 100644 --- a/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java +++ b/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java @@ -26,7 +26,7 @@ public final class GodhunterOctopus extends CardImpl { static { filter.add(Predicates.or( new CardTypePredicate(CardType.ENCHANTMENT), - new EnchantedPredicate())); + EnchantedPredicate.instance)); } public GodhunterOctopus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GolgariGermination.java b/Mage.Sets/src/mage/cards/g/GolgariGermination.java index bbcfdc53ee..f6890106e6 100644 --- a/Mage.Sets/src/mage/cards/g/GolgariGermination.java +++ b/Mage.Sets/src/mage/cards/g/GolgariGermination.java @@ -24,7 +24,7 @@ public final class GolgariGermination extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public GolgariGermination(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GolgothianSylex.java b/Mage.Sets/src/mage/cards/g/GolgothianSylex.java index c2b9261d12..1bf1c09124 100644 --- a/Mage.Sets/src/mage/cards/g/GolgothianSylex.java +++ b/Mage.Sets/src/mage/cards/g/GolgothianSylex.java @@ -51,7 +51,7 @@ class GolgothianSylexEffect extends OneShotEffect { static { filter.add(Predicates.and( new ExpansionSetPredicate("ATQ"), - Predicates.not(new TokenPredicate()) + Predicates.not(TokenPredicate.instance) )); } diff --git a/Mage.Sets/src/mage/cards/g/GossamerChains.java b/Mage.Sets/src/mage/cards/g/GossamerChains.java index de7c0d7e2c..0d253b122b 100644 --- a/Mage.Sets/src/mage/cards/g/GossamerChains.java +++ b/Mage.Sets/src/mage/cards/g/GossamerChains.java @@ -24,7 +24,7 @@ public final class GossamerChains extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked creature"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } public GossamerChains(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GovernTheGuildless.java b/Mage.Sets/src/mage/cards/g/GovernTheGuildless.java index e49428ecb0..edf5a2ab8d 100644 --- a/Mage.Sets/src/mage/cards/g/GovernTheGuildless.java +++ b/Mage.Sets/src/mage/cards/g/GovernTheGuildless.java @@ -23,7 +23,7 @@ public final class GovernTheGuildless extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("monocolored creature"); static { - filter.add(new MonocoloredPredicate()); + filter.add(MonocoloredPredicate.instance); } public GovernTheGuildless(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrandArchitect.java b/Mage.Sets/src/mage/cards/g/GrandArchitect.java index e599814dfc..3060d39137 100644 --- a/Mage.Sets/src/mage/cards/g/GrandArchitect.java +++ b/Mage.Sets/src/mage/cards/g/GrandArchitect.java @@ -105,7 +105,7 @@ class GrandArchitectManaAbility extends ActivatedManaAbilityImpl { static { filter.add(new ColorPredicate(ObjectColor.BLUE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } GrandArchitectManaAbility() { diff --git a/Mage.Sets/src/mage/cards/g/GravespawnSovereign.java b/Mage.Sets/src/mage/cards/g/GravespawnSovereign.java index 4a8f32c2c8..dad0cec4b6 100644 --- a/Mage.Sets/src/mage/cards/g/GravespawnSovereign.java +++ b/Mage.Sets/src/mage/cards/g/GravespawnSovereign.java @@ -30,7 +30,7 @@ public final class GravespawnSovereign extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ZOMBIE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public GravespawnSovereign(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java b/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java index befbb73a1b..76c8afdeb8 100644 --- a/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java +++ b/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java @@ -31,7 +31,7 @@ public final class GreaterAuramancy extends CardImpl { filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); filter2.add(new ControllerPredicate(TargetController.YOU)); filter2.add(new CardTypePredicate(CardType.CREATURE)); - filter2.add(new EnchantedPredicate()); + filter2.add(EnchantedPredicate.instance); } public GreaterAuramancy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrimHaruspex.java b/Mage.Sets/src/mage/cards/g/GrimHaruspex.java index a84eff2d81..bf0c9d478b 100644 --- a/Mage.Sets/src/mage/cards/g/GrimHaruspex.java +++ b/Mage.Sets/src/mage/cards/g/GrimHaruspex.java @@ -29,7 +29,7 @@ public final class GrimHaruspex extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public GrimHaruspex(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrimlockDinobotLeader.java b/Mage.Sets/src/mage/cards/g/GrimlockDinobotLeader.java index 26548048da..3fd572c471 100644 --- a/Mage.Sets/src/mage/cards/g/GrimlockDinobotLeader.java +++ b/Mage.Sets/src/mage/cards/g/GrimlockDinobotLeader.java @@ -38,7 +38,7 @@ public final class GrimlockDinobotLeader extends CardImpl{ static { filter2.add(Predicates.not(new SubtypePredicate(SubType.DINOSAUR))); filter2.add(Predicates.not(new SubtypePredicate(SubType.VEHICLE))); - filter2.add(Predicates.or(new AbilityPredicate(TransformAbility.class), new TransformedPredicate())); + filter2.add(Predicates.or(new AbilityPredicate(TransformAbility.class), TransformedPredicate.instance)); } public GrimlockDinobotLeader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrixisGrimblade.java b/Mage.Sets/src/mage/cards/g/GrixisGrimblade.java index 6d292691d5..9f47971b9b 100644 --- a/Mage.Sets/src/mage/cards/g/GrixisGrimblade.java +++ b/Mage.Sets/src/mage/cards/g/GrixisGrimblade.java @@ -29,7 +29,7 @@ public final class GrixisGrimblade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another multicolor permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GroveOfTheGuardian.java b/Mage.Sets/src/mage/cards/g/GroveOfTheGuardian.java index f5ae5cbfd9..d7c445de70 100644 --- a/Mage.Sets/src/mage/cards/g/GroveOfTheGuardian.java +++ b/Mage.Sets/src/mage/cards/g/GroveOfTheGuardian.java @@ -33,7 +33,7 @@ public final class GroveOfTheGuardian extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public GroveOfTheGuardian(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GruulWarChant.java b/Mage.Sets/src/mage/cards/g/GruulWarChant.java index ca508dd10c..d403a4a367 100644 --- a/Mage.Sets/src/mage/cards/g/GruulWarChant.java +++ b/Mage.Sets/src/mage/cards/g/GruulWarChant.java @@ -26,7 +26,7 @@ public final class GruulWarChant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creatures you control"); static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public GruulWarChant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuanYus1000LiMarch.java b/Mage.Sets/src/mage/cards/g/GuanYus1000LiMarch.java index 6a5e9d1f59..5d4d4adb66 100644 --- a/Mage.Sets/src/mage/cards/g/GuanYus1000LiMarch.java +++ b/Mage.Sets/src/mage/cards/g/GuanYus1000LiMarch.java @@ -18,7 +18,7 @@ public final class GuanYus1000LiMarch extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creatures"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public GuanYus1000LiMarch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuardianOfTheGuildpact.java b/Mage.Sets/src/mage/cards/g/GuardianOfTheGuildpact.java index e70bbd7cd5..d912fe3518 100644 --- a/Mage.Sets/src/mage/cards/g/GuardianOfTheGuildpact.java +++ b/Mage.Sets/src/mage/cards/g/GuardianOfTheGuildpact.java @@ -20,7 +20,7 @@ public final class GuardianOfTheGuildpact extends CardImpl { private static final FilterCard filter = new FilterCard("monocolored"); static { - filter.add(new MonocoloredPredicate()); + filter.add(MonocoloredPredicate.instance); } public GuardianOfTheGuildpact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuardianProject.java b/Mage.Sets/src/mage/cards/g/GuardianProject.java index 6deeddafcb..e58e833913 100644 --- a/Mage.Sets/src/mage/cards/g/GuardianProject.java +++ b/Mage.Sets/src/mage/cards/g/GuardianProject.java @@ -53,7 +53,7 @@ class GuardianProjectTriggeredAbility extends EntersBattlefieldAllTriggeredAbili public static final FilterPermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } GuardianProjectTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/g/GuardiansMagemark.java b/Mage.Sets/src/mage/cards/g/GuardiansMagemark.java index e3f44eb59d..b16ee18b66 100644 --- a/Mage.Sets/src/mage/cards/g/GuardiansMagemark.java +++ b/Mage.Sets/src/mage/cards/g/GuardiansMagemark.java @@ -25,7 +25,7 @@ public final class GuardiansMagemark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures you control that are enchanted"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/g/GuardiansOfKoilos.java b/Mage.Sets/src/mage/cards/g/GuardiansOfKoilos.java index 4d5d4e6d90..01d08304a5 100644 --- a/Mage.Sets/src/mage/cards/g/GuardiansOfKoilos.java +++ b/Mage.Sets/src/mage/cards/g/GuardiansOfKoilos.java @@ -27,7 +27,7 @@ public final class GuardiansOfKoilos extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public GuardiansOfKoilos(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuildSummit.java b/Mage.Sets/src/mage/cards/g/GuildSummit.java index a6d18e5a06..5f66810b15 100644 --- a/Mage.Sets/src/mage/cards/g/GuildSummit.java +++ b/Mage.Sets/src/mage/cards/g/GuildSummit.java @@ -64,7 +64,7 @@ class GuildSummitEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.GATE)); } diff --git a/Mage.Sets/src/mage/cards/g/GuildscornWard.java b/Mage.Sets/src/mage/cards/g/GuildscornWard.java index d5b36ac2c5..926493ff83 100644 --- a/Mage.Sets/src/mage/cards/g/GuildscornWard.java +++ b/Mage.Sets/src/mage/cards/g/GuildscornWard.java @@ -24,7 +24,7 @@ public final class GuildscornWard extends CardImpl { private static final FilterObject filter = new FilterObject("multicolored"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public GuildscornWard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HairStrungKoto.java b/Mage.Sets/src/mage/cards/h/HairStrungKoto.java index 9851b3a7a6..461113571c 100644 --- a/Mage.Sets/src/mage/cards/h/HairStrungKoto.java +++ b/Mage.Sets/src/mage/cards/h/HairStrungKoto.java @@ -52,7 +52,7 @@ public final class HairStrungKoto extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public HairStrungKoto (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HammerheadCorvette.java b/Mage.Sets/src/mage/cards/h/HammerheadCorvette.java index 4fcedfed34..c24bc7ef69 100644 --- a/Mage.Sets/src/mage/cards/h/HammerheadCorvette.java +++ b/Mage.Sets/src/mage/cards/h/HammerheadCorvette.java @@ -28,7 +28,7 @@ public final class HammerheadCorvette extends CardImpl { static { filter.add(new SubtypePredicate(SubType.STARSHIP)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public HammerheadCorvette(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HandOfJustice.java b/Mage.Sets/src/mage/cards/h/HandOfJustice.java index 31dceaa783..cb8f234b8a 100644 --- a/Mage.Sets/src/mage/cards/h/HandOfJustice.java +++ b/Mage.Sets/src/mage/cards/h/HandOfJustice.java @@ -31,7 +31,7 @@ public final class HandOfJustice extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public HandOfJustice(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HarbingerOfTheTides.java b/Mage.Sets/src/mage/cards/h/HarbingerOfTheTides.java index c2f3051f35..407f1fe645 100644 --- a/Mage.Sets/src/mage/cards/h/HarbingerOfTheTides.java +++ b/Mage.Sets/src/mage/cards/h/HarbingerOfTheTides.java @@ -27,7 +27,7 @@ public final class HarbingerOfTheTides extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature an opponent controls"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/h/HarmonyOfNature.java b/Mage.Sets/src/mage/cards/h/HarmonyOfNature.java index 6a7f17e1d4..33bcb4b7a7 100644 --- a/Mage.Sets/src/mage/cards/h/HarmonyOfNature.java +++ b/Mage.Sets/src/mage/cards/h/HarmonyOfNature.java @@ -49,7 +49,7 @@ class HarmonyOfNatureEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public HarmonyOfNatureEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HarshJustice.java b/Mage.Sets/src/mage/cards/h/HarshJustice.java index 6f763f7f43..b65e020c9b 100644 --- a/Mage.Sets/src/mage/cards/h/HarshJustice.java +++ b/Mage.Sets/src/mage/cards/h/HarshJustice.java @@ -63,7 +63,7 @@ class HarshJusticeTriggeredAbility extends DelayedTriggeredAbility { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public HarshJusticeTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/h/HarvestSeason.java b/Mage.Sets/src/mage/cards/h/HarvestSeason.java index f0652a5db1..02bbfdf85a 100644 --- a/Mage.Sets/src/mage/cards/h/HarvestSeason.java +++ b/Mage.Sets/src/mage/cards/h/HarvestSeason.java @@ -50,7 +50,7 @@ class HarvestSeasonEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("tapped creature you control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } HarvestSeasonEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HarvesterOfSouls.java b/Mage.Sets/src/mage/cards/h/HarvesterOfSouls.java index f184e8d3b7..487f203ec7 100644 --- a/Mage.Sets/src/mage/cards/h/HarvesterOfSouls.java +++ b/Mage.Sets/src/mage/cards/h/HarvesterOfSouls.java @@ -23,7 +23,7 @@ public final class HarvesterOfSouls extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/h/HazyHomunculus.java b/Mage.Sets/src/mage/cards/h/HazyHomunculus.java index 6a7ad243d6..67e4877ae4 100644 --- a/Mage.Sets/src/mage/cards/h/HazyHomunculus.java +++ b/Mage.Sets/src/mage/cards/h/HazyHomunculus.java @@ -27,7 +27,7 @@ public final class HazyHomunculus extends CardImpl { private static final FilterPermanent filter = new FilterLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public HazyHomunculus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HearthCharm.java b/Mage.Sets/src/mage/cards/h/HearthCharm.java index 5b6e3d7aec..af7d92eea0 100644 --- a/Mage.Sets/src/mage/cards/h/HearthCharm.java +++ b/Mage.Sets/src/mage/cards/h/HearthCharm.java @@ -28,7 +28,7 @@ public final class HearthCharm extends CardImpl { private static final FilterCreaturePermanent filter3 = new FilterCreaturePermanent("creature with power 2 or less"); static { filter1.add(new CardTypePredicate(CardType.ARTIFACT)); - filter2.add(new AttackingPredicate()); + filter2.add(AttackingPredicate.instance); filter3.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } diff --git a/Mage.Sets/src/mage/cards/h/Hecatomb.java b/Mage.Sets/src/mage/cards/h/Hecatomb.java index 30efd3863b..ed9b77932c 100644 --- a/Mage.Sets/src/mage/cards/h/Hecatomb.java +++ b/Mage.Sets/src/mage/cards/h/Hecatomb.java @@ -32,7 +32,7 @@ public final class Hecatomb extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SWAMP)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Hecatomb(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java b/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java index 3baa8970d3..902555e718 100644 --- a/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java +++ b/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java @@ -25,7 +25,7 @@ public final class HellkiteWhelp extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public HellkiteWhelp(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeritageDruid.java b/Mage.Sets/src/mage/cards/h/HeritageDruid.java index 546f91ed03..01419463c6 100644 --- a/Mage.Sets/src/mage/cards/h/HeritageDruid.java +++ b/Mage.Sets/src/mage/cards/h/HeritageDruid.java @@ -25,7 +25,7 @@ public final class HeritageDruid extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Elves you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ELF)); } diff --git a/Mage.Sets/src/mage/cards/h/HivisOfTheScale.java b/Mage.Sets/src/mage/cards/h/HivisOfTheScale.java index 6e4b9110a0..70b093b32b 100644 --- a/Mage.Sets/src/mage/cards/h/HivisOfTheScale.java +++ b/Mage.Sets/src/mage/cards/h/HivisOfTheScale.java @@ -37,7 +37,7 @@ public final class HivisOfTheScale extends CardImpl { private static final String rule = "Gain control of target Dragon for as long as you control Hivis and Hivis remains tapped."; static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); filterDragon.add(new SubtypePredicate(SubType.DRAGON)); } diff --git a/Mage.Sets/src/mage/cards/h/HoldoutSettlement.java b/Mage.Sets/src/mage/cards/h/HoldoutSettlement.java index 89f2c60b91..cbf0f1ea91 100644 --- a/Mage.Sets/src/mage/cards/h/HoldoutSettlement.java +++ b/Mage.Sets/src/mage/cards/h/HoldoutSettlement.java @@ -23,7 +23,7 @@ public final class HoldoutSettlement extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public HoldoutSettlement(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HollowWarrior.java b/Mage.Sets/src/mage/cards/h/HollowWarrior.java index d6a60e3112..66164064af 100644 --- a/Mage.Sets/src/mage/cards/h/HollowWarrior.java +++ b/Mage.Sets/src/mage/cards/h/HollowWarrior.java @@ -55,9 +55,9 @@ class HollowWarriorCostToAttackBlockEffect extends PayCostToAttackBlockEffectImp private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped creature you control not declared as an attacking or blocking creature"); static { - filter.add(Predicates.not(new AttackingPredicate())); - filter.add(Predicates.not(new BlockingPredicate())); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(AttackingPredicate.instance)); + filter.add(Predicates.not(BlockingPredicate.instance)); + filter.add(Predicates.not(TappedPredicate.instance)); } HollowWarriorCostToAttackBlockEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java index bcd3f9aca5..b47eb2533a 100644 --- a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java +++ b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java @@ -27,7 +27,7 @@ public final class HonorWornShaku extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped legendary permanent"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } diff --git a/Mage.Sets/src/mage/cards/h/HourOfReckoning.java b/Mage.Sets/src/mage/cards/h/HourOfReckoning.java index 9287b5b8fc..aca3d75b13 100644 --- a/Mage.Sets/src/mage/cards/h/HourOfReckoning.java +++ b/Mage.Sets/src/mage/cards/h/HourOfReckoning.java @@ -20,7 +20,7 @@ public final class HourOfReckoning extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creatures"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public HourOfReckoning(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HundredTalonStrike.java b/Mage.Sets/src/mage/cards/h/HundredTalonStrike.java index 9b0d2ccff8..f208a57298 100644 --- a/Mage.Sets/src/mage/cards/h/HundredTalonStrike.java +++ b/Mage.Sets/src/mage/cards/h/HundredTalonStrike.java @@ -30,7 +30,7 @@ public final class HundredTalonStrike extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped white creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ColorPredicate(ObjectColor.WHITE)); } diff --git a/Mage.Sets/src/mage/cards/h/HunterOfEyeblights.java b/Mage.Sets/src/mage/cards/h/HunterOfEyeblights.java index 48a36abe11..4b1b6ccae2 100644 --- a/Mage.Sets/src/mage/cards/h/HunterOfEyeblights.java +++ b/Mage.Sets/src/mage/cards/h/HunterOfEyeblights.java @@ -33,7 +33,7 @@ public final class HunterOfEyeblights extends CardImpl { static { filter1.add(new ControllerPredicate(TargetController.NOT_YOU)); - filter2.add(new CounterAnyPredicate()); + filter2.add(CounterAnyPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/i/IdentityThief.java b/Mage.Sets/src/mage/cards/i/IdentityThief.java index 9047dc0955..cfa04ef2f5 100644 --- a/Mage.Sets/src/mage/cards/i/IdentityThief.java +++ b/Mage.Sets/src/mage/cards/i/IdentityThief.java @@ -37,7 +37,7 @@ public final class IdentityThief extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("target nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public IdentityThief(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IgnitionTeam.java b/Mage.Sets/src/mage/cards/i/IgnitionTeam.java index bc10230d9d..2272e352a4 100644 --- a/Mage.Sets/src/mage/cards/i/IgnitionTeam.java +++ b/Mage.Sets/src/mage/cards/i/IgnitionTeam.java @@ -73,7 +73,7 @@ class TappedLandsCount implements DynamicValue { public int calculate(Game game, Ability sourceAbility, Effect effect) { if (sourceAbility != null) { FilterLandPermanent filter = new FilterLandPermanent("tapped lands on the battlefield"); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); return game.getBattlefield().count(filter, sourceAbility.getSourceId(), sourceAbility.getControllerId(), game); } return 0; diff --git a/Mage.Sets/src/mage/cards/i/IllnessInTheRanks.java b/Mage.Sets/src/mage/cards/i/IllnessInTheRanks.java index b33417778b..9ac0a172bd 100644 --- a/Mage.Sets/src/mage/cards/i/IllnessInTheRanks.java +++ b/Mage.Sets/src/mage/cards/i/IllnessInTheRanks.java @@ -20,7 +20,7 @@ public final class IllnessInTheRanks extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creature tokens"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public IllnessInTheRanks(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImpelledGiant.java b/Mage.Sets/src/mage/cards/i/ImpelledGiant.java index 15ab6c0d3f..0baf4fff2c 100644 --- a/Mage.Sets/src/mage/cards/i/ImpelledGiant.java +++ b/Mage.Sets/src/mage/cards/i/ImpelledGiant.java @@ -39,7 +39,7 @@ public final class ImpelledGiant extends CardImpl { static final private FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped red creature you control other than Impelled Giant"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ColorPredicate(ObjectColor.RED)); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/i/ImperialMask.java b/Mage.Sets/src/mage/cards/i/ImperialMask.java index 11b2f5b0a1..0052e61402 100644 --- a/Mage.Sets/src/mage/cards/i/ImperialMask.java +++ b/Mage.Sets/src/mage/cards/i/ImperialMask.java @@ -26,7 +26,7 @@ public final class ImperialMask extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public ImperialMask(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImpetuousProtege.java b/Mage.Sets/src/mage/cards/i/ImpetuousProtege.java index a87a5545b9..eb774710b5 100644 --- a/Mage.Sets/src/mage/cards/i/ImpetuousProtege.java +++ b/Mage.Sets/src/mage/cards/i/ImpetuousProtege.java @@ -57,7 +57,7 @@ class ImpetuousProtegeEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/i/InallaArchmageRitualist.java b/Mage.Sets/src/mage/cards/i/InallaArchmageRitualist.java index 49e8926b2a..be50ef6f7a 100644 --- a/Mage.Sets/src/mage/cards/i/InallaArchmageRitualist.java +++ b/Mage.Sets/src/mage/cards/i/InallaArchmageRitualist.java @@ -49,10 +49,10 @@ public final class InallaArchmageRitualist extends CardImpl { static { filter.add(new SubtypePredicate(SubType.WIZARD)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); filter2.add(new SubtypePredicate(SubType.WIZARD)); - filter2.add(Predicates.not(new TappedPredicate())); + filter2.add(Predicates.not(TappedPredicate.instance)); } public InallaArchmageRitualist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InfernalTribute.java b/Mage.Sets/src/mage/cards/i/InfernalTribute.java index 028994e191..51a53d5c83 100644 --- a/Mage.Sets/src/mage/cards/i/InfernalTribute.java +++ b/Mage.Sets/src/mage/cards/i/InfernalTribute.java @@ -25,7 +25,7 @@ public final class InfernalTribute extends CardImpl { private final static FilterControlledPermanent filter = new FilterControlledPermanent("a nontoken permanent"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public InfernalTribute(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InfiltratorsMagemark.java b/Mage.Sets/src/mage/cards/i/InfiltratorsMagemark.java index 66291875c5..319a3cf242 100644 --- a/Mage.Sets/src/mage/cards/i/InfiltratorsMagemark.java +++ b/Mage.Sets/src/mage/cards/i/InfiltratorsMagemark.java @@ -35,7 +35,7 @@ public final class InfiltratorsMagemark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures you control that are enchanted"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/i/InkfathomWitch.java b/Mage.Sets/src/mage/cards/i/InkfathomWitch.java index 384933ba5b..aaeb94fa17 100644 --- a/Mage.Sets/src/mage/cards/i/InkfathomWitch.java +++ b/Mage.Sets/src/mage/cards/i/InkfathomWitch.java @@ -24,7 +24,7 @@ public final class InkfathomWitch extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Each unblocked creature"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } public InkfathomWitch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IntangibleVirtue.java b/Mage.Sets/src/mage/cards/i/IntangibleVirtue.java index 7ac02d6658..8bc764d587 100644 --- a/Mage.Sets/src/mage/cards/i/IntangibleVirtue.java +++ b/Mage.Sets/src/mage/cards/i/IntangibleVirtue.java @@ -23,7 +23,7 @@ public final class IntangibleVirtue extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creature tokens"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public IntangibleVirtue(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IroasGodOfVictory.java b/Mage.Sets/src/mage/cards/i/IroasGodOfVictory.java index d152a61be4..b964156ea1 100644 --- a/Mage.Sets/src/mage/cards/i/IroasGodOfVictory.java +++ b/Mage.Sets/src/mage/cards/i/IroasGodOfVictory.java @@ -29,7 +29,7 @@ public final class IroasGodOfVictory extends CardImpl { private static final FilterControlledCreatureInPlay filterAttacking = new FilterControlledCreatureInPlay("attacking creatures you control"); static { filter.add(new ControllerPredicate(TargetController.YOU)); - filterAttacking.getCreatureFilter().add(new AttackingPredicate()); + filterAttacking.getCreatureFilter().add(AttackingPredicate.instance); } public IroasGodOfVictory(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ItThatBetrays.java b/Mage.Sets/src/mage/cards/i/ItThatBetrays.java index fda419264f..e559bed72e 100644 --- a/Mage.Sets/src/mage/cards/i/ItThatBetrays.java +++ b/Mage.Sets/src/mage/cards/i/ItThatBetrays.java @@ -23,7 +23,7 @@ public final class ItThatBetrays extends CardImpl { private static final FilterPermanent FILTER = new FilterPermanent("nontoken permanent"); static { - FILTER.add(Predicates.not(new TokenPredicate())); + FILTER.add(Predicates.not(TokenPredicate.instance)); } public ItThatBetrays(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IvoryGuardians.java b/Mage.Sets/src/mage/cards/i/IvoryGuardians.java index 8bbb182421..5298e44ca4 100644 --- a/Mage.Sets/src/mage/cards/i/IvoryGuardians.java +++ b/Mage.Sets/src/mage/cards/i/IvoryGuardians.java @@ -33,7 +33,7 @@ public final class IvoryGuardians extends CardImpl { static { controlFilter.add(new ColorPredicate(ObjectColor.RED)); - controlFilter.add(Predicates.not(new TokenPredicate())); + controlFilter.add(Predicates.not(TokenPredicate.instance)); boostFilter.add(new NamePredicate("Ivory Guardians")); } diff --git a/Mage.Sets/src/mage/cards/i/IxidorRealitySculptor.java b/Mage.Sets/src/mage/cards/i/IxidorRealitySculptor.java index 8871c562f0..615e564691 100644 --- a/Mage.Sets/src/mage/cards/i/IxidorRealitySculptor.java +++ b/Mage.Sets/src/mage/cards/i/IxidorRealitySculptor.java @@ -26,8 +26,8 @@ public final class IxidorRealitySculptor extends CardImpl { private static final FilterCreaturePermanent filterTarget = new FilterCreaturePermanent("face-down creature"); static { - filter.add(new FaceDownPredicate()); - filterTarget.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); + filterTarget.add(FaceDownPredicate.instance); } public IxidorRealitySculptor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/Ixidron.java b/Mage.Sets/src/mage/cards/i/Ixidron.java index 4d070230bf..a84f448357 100644 --- a/Mage.Sets/src/mage/cards/i/Ixidron.java +++ b/Mage.Sets/src/mage/cards/i/Ixidron.java @@ -31,9 +31,9 @@ public final class Ixidron extends CardImpl { private static final FilterCreaturePermanent filterTurnFaceDown = new FilterCreaturePermanent("other nontoken creatures"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filterTurnFaceDown.add(AnotherPredicate.instance); - filterTurnFaceDown.add(Predicates.not(new TokenPredicate())); + filterTurnFaceDown.add(Predicates.not(TokenPredicate.instance)); } public Ixidron(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JaddiLifestrider.java b/Mage.Sets/src/mage/cards/j/JaddiLifestrider.java index 74b680ba40..ea713bf87d 100644 --- a/Mage.Sets/src/mage/cards/j/JaddiLifestrider.java +++ b/Mage.Sets/src/mage/cards/j/JaddiLifestrider.java @@ -53,7 +53,7 @@ class JaddiLifestriderEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public JaddiLifestriderEffect() { diff --git a/Mage.Sets/src/mage/cards/j/Jihad.java b/Mage.Sets/src/mage/cards/j/Jihad.java index 68035106ca..12ac240734 100644 --- a/Mage.Sets/src/mage/cards/j/Jihad.java +++ b/Mage.Sets/src/mage/cards/j/Jihad.java @@ -84,7 +84,7 @@ class JihadTriggeredAbility extends StateTriggeredAbility { UUID chosenOpponent = (UUID) game.getState().getValue(getSourceId().toString() + ChooseOpponentEffect.VALUE_KEY); FilterPermanent filter = new FilterPermanent(); filter.add(new ColorPredicate((ObjectColor) game.getState().getValue(getSourceId() + "_color"))); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); return game.getBattlefield().countAll(filter, chosenOpponent, game) == 0; } @@ -101,7 +101,7 @@ class JihadOpponentCondition implements Condition { UUID chosenOpponent = (UUID) game.getState().getValue(source.getSourceId().toString() + ChooseOpponentEffect.VALUE_KEY); FilterPermanent filter = new FilterPermanent(); filter.add(new ColorPredicate((ObjectColor) game.getState().getValue(source.getSourceId() + "_color"))); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); return game.getBattlefield().countAll(filter, chosenOpponent, game) > 0; } } \ No newline at end of file diff --git a/Mage.Sets/src/mage/cards/j/JinxedRing.java b/Mage.Sets/src/mage/cards/j/JinxedRing.java index c2f58dd8e8..ead7bf52e4 100644 --- a/Mage.Sets/src/mage/cards/j/JinxedRing.java +++ b/Mage.Sets/src/mage/cards/j/JinxedRing.java @@ -34,7 +34,7 @@ public final class JinxedRing extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("a nontoken permanent"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public JinxedRing(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JudithTheScourgeDiva.java b/Mage.Sets/src/mage/cards/j/JudithTheScourgeDiva.java index aca5d37484..8495a10b95 100644 --- a/Mage.Sets/src/mage/cards/j/JudithTheScourgeDiva.java +++ b/Mage.Sets/src/mage/cards/j/JudithTheScourgeDiva.java @@ -27,7 +27,7 @@ public final class JudithTheScourgeDiva extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public JudithTheScourgeDiva(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JundHackblade.java b/Mage.Sets/src/mage/cards/j/JundHackblade.java index da37e5ab12..c8c3620989 100644 --- a/Mage.Sets/src/mage/cards/j/JundHackblade.java +++ b/Mage.Sets/src/mage/cards/j/JundHackblade.java @@ -29,7 +29,7 @@ public final class JundHackblade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another multicolor permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/j/JungleBasin.java b/Mage.Sets/src/mage/cards/j/JungleBasin.java index c486b5dce3..e2ceca75b6 100644 --- a/Mage.Sets/src/mage/cards/j/JungleBasin.java +++ b/Mage.Sets/src/mage/cards/j/JungleBasin.java @@ -30,7 +30,7 @@ public final class JungleBasin extends CardImpl { static { filter.add(new SubtypePredicate(SubType.FOREST)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public JungleBasin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JunglePatrol.java b/Mage.Sets/src/mage/cards/j/JunglePatrol.java index db42b08508..31e9ecade3 100644 --- a/Mage.Sets/src/mage/cards/j/JunglePatrol.java +++ b/Mage.Sets/src/mage/cards/j/JunglePatrol.java @@ -32,7 +32,7 @@ public final class JunglePatrol extends CardImpl { static { filter.add(new NamePredicate("Wood")); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public JunglePatrol(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/Karoo.java b/Mage.Sets/src/mage/cards/k/Karoo.java index f9b95d496d..61cb7560d3 100644 --- a/Mage.Sets/src/mage/cards/k/Karoo.java +++ b/Mage.Sets/src/mage/cards/k/Karoo.java @@ -30,7 +30,7 @@ public final class Karoo extends CardImpl { static { filter.add(new SubtypePredicate(SubType.PLAINS)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Karoo(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 8d2b1424c3..9c1caee816 100644 --- a/Mage.Sets/src/mage/cards/k/KarplusanGiant.java +++ b/Mage.Sets/src/mage/cards/k/KarplusanGiant.java @@ -27,7 +27,7 @@ public final class KarplusanGiant extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("untapped snow land you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SupertypePredicate(SuperType.SNOW)); } diff --git a/Mage.Sets/src/mage/cards/k/KeeperOfTheLens.java b/Mage.Sets/src/mage/cards/k/KeeperOfTheLens.java index bffa37ce84..87ec804db3 100644 --- a/Mage.Sets/src/mage/cards/k/KeeperOfTheLens.java +++ b/Mage.Sets/src/mage/cards/k/KeeperOfTheLens.java @@ -53,7 +53,7 @@ class KeeperOfTheLensLookFaceDownAbility extends ActivatedAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature you don't control"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filter.add(new ControllerPredicate(TargetController.NOT_YOU)); } diff --git a/Mage.Sets/src/mage/cards/k/KeeperOfTheNineGales.java b/Mage.Sets/src/mage/cards/k/KeeperOfTheNineGales.java index 6fd6128be8..9ced360768 100644 --- a/Mage.Sets/src/mage/cards/k/KeeperOfTheNineGales.java +++ b/Mage.Sets/src/mage/cards/k/KeeperOfTheNineGales.java @@ -30,7 +30,7 @@ public final class KeeperOfTheNineGales extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Birds you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.BIRD)); } diff --git a/Mage.Sets/src/mage/cards/k/KeldonBattlewagon.java b/Mage.Sets/src/mage/cards/k/KeldonBattlewagon.java index f6bc0f6475..091a1b3292 100644 --- a/Mage.Sets/src/mage/cards/k/KeldonBattlewagon.java +++ b/Mage.Sets/src/mage/cards/k/KeldonBattlewagon.java @@ -40,7 +40,7 @@ public final class KeldonBattlewagon extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public KeldonBattlewagon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KeldonBerserker.java b/Mage.Sets/src/mage/cards/k/KeldonBerserker.java index f2cf9c195c..62b80407f0 100644 --- a/Mage.Sets/src/mage/cards/k/KeldonBerserker.java +++ b/Mage.Sets/src/mage/cards/k/KeldonBerserker.java @@ -26,7 +26,7 @@ public final class KeldonBerserker extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("untapped lands"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public KeldonBerserker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KestiaTheCultivator.java b/Mage.Sets/src/mage/cards/k/KestiaTheCultivator.java index 18f4dfcdc3..ab0b2b932a 100644 --- a/Mage.Sets/src/mage/cards/k/KestiaTheCultivator.java +++ b/Mage.Sets/src/mage/cards/k/KestiaTheCultivator.java @@ -33,7 +33,7 @@ public final class KestiaTheCultivator extends CardImpl { static { filter.add(Predicates.or( - new EnchantedPredicate(), + EnchantedPredicate.instance, new CardTypePredicate(CardType.ENCHANTMENT) )); filter.add(new ControllerPredicate(TargetController.YOU)); diff --git a/Mage.Sets/src/mage/cards/k/KingsAssassin.java b/Mage.Sets/src/mage/cards/k/KingsAssassin.java index 7651353f16..52dff0cd15 100644 --- a/Mage.Sets/src/mage/cards/k/KingsAssassin.java +++ b/Mage.Sets/src/mage/cards/k/KingsAssassin.java @@ -26,7 +26,7 @@ public final class KingsAssassin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public KingsAssassin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KjeldoranRoyalGuard.java b/Mage.Sets/src/mage/cards/k/KjeldoranRoyalGuard.java index fc7d7bbaa5..36c340c81c 100644 --- a/Mage.Sets/src/mage/cards/k/KjeldoranRoyalGuard.java +++ b/Mage.Sets/src/mage/cards/k/KjeldoranRoyalGuard.java @@ -55,7 +55,7 @@ class KjeldoranRoyalGuardEffect extends ReplacementEffectImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked creatures"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } KjeldoranRoyalGuardEffect() { diff --git a/Mage.Sets/src/mage/cards/k/KnightOfNewAlara.java b/Mage.Sets/src/mage/cards/k/KnightOfNewAlara.java index 85348bfd94..09567e7620 100644 --- a/Mage.Sets/src/mage/cards/k/KnightOfNewAlara.java +++ b/Mage.Sets/src/mage/cards/k/KnightOfNewAlara.java @@ -55,7 +55,7 @@ class KnightOfNewAlaraEffect extends ContinuousEffectImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public KnightOfNewAlaraEffect() { diff --git a/Mage.Sets/src/mage/cards/k/KnightOfTheLastBreath.java b/Mage.Sets/src/mage/cards/k/KnightOfTheLastBreath.java index e0999f0923..5ac5c3ea80 100644 --- a/Mage.Sets/src/mage/cards/k/KnightOfTheLastBreath.java +++ b/Mage.Sets/src/mage/cards/k/KnightOfTheLastBreath.java @@ -31,7 +31,7 @@ public final class KnightOfTheLastBreath extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public KnightOfTheLastBreath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KnotvinePaladin.java b/Mage.Sets/src/mage/cards/k/KnotvinePaladin.java index 7ec1c739e3..2973651050 100644 --- a/Mage.Sets/src/mage/cards/k/KnotvinePaladin.java +++ b/Mage.Sets/src/mage/cards/k/KnotvinePaladin.java @@ -23,7 +23,7 @@ public final class KnotvinePaladin extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/k/KorozdaGuildmage.java b/Mage.Sets/src/mage/cards/k/KorozdaGuildmage.java index 4959961c93..726ead90ab 100644 --- a/Mage.Sets/src/mage/cards/k/KorozdaGuildmage.java +++ b/Mage.Sets/src/mage/cards/k/KorozdaGuildmage.java @@ -34,7 +34,7 @@ public final class KorozdaGuildmage extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public KorozdaGuildmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KoskunFalls.java b/Mage.Sets/src/mage/cards/k/KoskunFalls.java index 70d378577a..d285532a0f 100644 --- a/Mage.Sets/src/mage/cards/k/KoskunFalls.java +++ b/Mage.Sets/src/mage/cards/k/KoskunFalls.java @@ -29,7 +29,7 @@ public final class KoskunFalls extends CardImpl { private static final FilterControlledCreaturePermanent filterCreature = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filterCreature.add(Predicates.not(new TappedPredicate())); + filterCreature.add(Predicates.not(TappedPredicate.instance)); } public KoskunFalls(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrovikanPlague.java b/Mage.Sets/src/mage/cards/k/KrovikanPlague.java index 8bc9f49f3d..835ac9ee08 100644 --- a/Mage.Sets/src/mage/cards/k/KrovikanPlague.java +++ b/Mage.Sets/src/mage/cards/k/KrovikanPlague.java @@ -46,7 +46,7 @@ public final class KrovikanPlague extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("enchanted creature is untapped"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public KrovikanPlague(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KukemssaPirates.java b/Mage.Sets/src/mage/cards/k/KukemssaPirates.java index 16cb3c70a9..3371ea8a14 100644 --- a/Mage.Sets/src/mage/cards/k/KukemssaPirates.java +++ b/Mage.Sets/src/mage/cards/k/KukemssaPirates.java @@ -25,7 +25,7 @@ public final class KukemssaPirates extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("artifact defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public KukemssaPirates(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KulrathKnight.java b/Mage.Sets/src/mage/cards/k/KulrathKnight.java index a4ad1cc07c..16687c520c 100644 --- a/Mage.Sets/src/mage/cards/k/KulrathKnight.java +++ b/Mage.Sets/src/mage/cards/k/KulrathKnight.java @@ -61,7 +61,7 @@ class KulrathKnightRestrictionEffect extends RestrictionEffect { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new CounterAnyPredicate()); + filter.add(CounterAnyPredicate.instance); } public KulrathKnightRestrictionEffect() { diff --git a/Mage.Sets/src/mage/cards/k/KumenaTyrantOfOrazca.java b/Mage.Sets/src/mage/cards/k/KumenaTyrantOfOrazca.java index 1542fc7bef..620c839d28 100644 --- a/Mage.Sets/src/mage/cards/k/KumenaTyrantOfOrazca.java +++ b/Mage.Sets/src/mage/cards/k/KumenaTyrantOfOrazca.java @@ -36,10 +36,10 @@ public final class KumenaTyrantOfOrazca extends CardImpl { static { filterAnotherNotTapped.add(AnotherPredicate.instance); filterAnotherNotTapped.add(new SubtypePredicate(SubType.MERFOLK)); - filterAnotherNotTapped.add(Predicates.not(new TappedPredicate())); + filterAnotherNotTapped.add(Predicates.not(TappedPredicate.instance)); filterNotTapped.add(new SubtypePredicate(SubType.MERFOLK)); - filterNotTapped.add(Predicates.not(new TappedPredicate())); + filterNotTapped.add(Predicates.not(TappedPredicate.instance)); filterAll.add(new SubtypePredicate(SubType.MERFOLK)); } diff --git a/Mage.Sets/src/mage/cards/k/KyloRen.java b/Mage.Sets/src/mage/cards/k/KyloRen.java index 19326d1925..eab9b02ff1 100644 --- a/Mage.Sets/src/mage/cards/k/KyloRen.java +++ b/Mage.Sets/src/mage/cards/k/KyloRen.java @@ -39,7 +39,7 @@ public final class KyloRen extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public KyloRen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KyrenNegotiations.java b/Mage.Sets/src/mage/cards/k/KyrenNegotiations.java index f21e9a828e..e9af826e1a 100644 --- a/Mage.Sets/src/mage/cards/k/KyrenNegotiations.java +++ b/Mage.Sets/src/mage/cards/k/KyrenNegotiations.java @@ -24,7 +24,7 @@ public final class KyrenNegotiations extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public KyrenNegotiations(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/Lashknife.java b/Mage.Sets/src/mage/cards/l/Lashknife.java index c0f5db91da..a99bf8d117 100644 --- a/Mage.Sets/src/mage/cards/l/Lashknife.java +++ b/Mage.Sets/src/mage/cards/l/Lashknife.java @@ -38,7 +38,7 @@ public final class Lashknife extends CardImpl { static { plainsFilter.add(new SubtypePredicate(SubType.PLAINS)); - creatureFilter.add(Predicates.not(new TappedPredicate())); + creatureFilter.add(Predicates.not(TappedPredicate.instance)); } public Lashknife(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java b/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java index fa3f097a74..e93fb4b01d 100644 --- a/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java +++ b/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java @@ -34,7 +34,7 @@ public final class LathlissDragonQueen extends CardImpl { static { filter.add(new SubtypePredicate(SubType.DRAGON)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); filter2.add(new SubtypePredicate(SubType.DRAGON)); } diff --git a/Mage.Sets/src/mage/cards/l/LedevChampion.java b/Mage.Sets/src/mage/cards/l/LedevChampion.java index 8c5d59ecae..babd14a4eb 100644 --- a/Mage.Sets/src/mage/cards/l/LedevChampion.java +++ b/Mage.Sets/src/mage/cards/l/LedevChampion.java @@ -68,7 +68,7 @@ class LedevChampionEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LedevChampionEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LenaSelflessChampion.java b/Mage.Sets/src/mage/cards/l/LenaSelflessChampion.java index e86a571963..b3fbdbf3ec 100644 --- a/Mage.Sets/src/mage/cards/l/LenaSelflessChampion.java +++ b/Mage.Sets/src/mage/cards/l/LenaSelflessChampion.java @@ -38,7 +38,7 @@ public final class LenaSelflessChampion extends CardImpl { = new FilterControlledCreaturePermanent("nontoken creature you control"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public LenaSelflessChampion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LensOfClarity.java b/Mage.Sets/src/mage/cards/l/LensOfClarity.java index c958c1d375..cbf6afb818 100644 --- a/Mage.Sets/src/mage/cards/l/LensOfClarity.java +++ b/Mage.Sets/src/mage/cards/l/LensOfClarity.java @@ -110,7 +110,7 @@ class LensOfClarityLookFaceDownAbility extends ActivatedAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature you don't control"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filter.add(new ControllerPredicate(TargetController.NOT_YOU)); } diff --git a/Mage.Sets/src/mage/cards/l/LeoninBladetrap.java b/Mage.Sets/src/mage/cards/l/LeoninBladetrap.java index 007da60f6a..0bc2e9ff71 100644 --- a/Mage.Sets/src/mage/cards/l/LeoninBladetrap.java +++ b/Mage.Sets/src/mage/cards/l/LeoninBladetrap.java @@ -26,7 +26,7 @@ public final class LeoninBladetrap extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature without flying"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/l/LethargyTrap.java b/Mage.Sets/src/mage/cards/l/LethargyTrap.java index d06efc253c..ecad496447 100644 --- a/Mage.Sets/src/mage/cards/l/LethargyTrap.java +++ b/Mage.Sets/src/mage/cards/l/LethargyTrap.java @@ -26,7 +26,7 @@ public final class LethargyTrap extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creatures"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public LethargyTrap(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/Liability.java b/Mage.Sets/src/mage/cards/l/Liability.java index 985cf2fc57..0c1930b7ed 100644 --- a/Mage.Sets/src/mage/cards/l/Liability.java +++ b/Mage.Sets/src/mage/cards/l/Liability.java @@ -25,7 +25,7 @@ public final class Liability extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("a nontoken permanent"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Liability(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/Lich.java b/Mage.Sets/src/mage/cards/l/Lich.java index 523d67acc0..a04b2c81a1 100644 --- a/Mage.Sets/src/mage/cards/l/Lich.java +++ b/Mage.Sets/src/mage/cards/l/Lich.java @@ -145,7 +145,7 @@ class LichDamageEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("nontoken permanent"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } private int amount = 0; diff --git a/Mage.Sets/src/mage/cards/l/LightningCoils.java b/Mage.Sets/src/mage/cards/l/LightningCoils.java index 22885e7b29..9b290065a0 100644 --- a/Mage.Sets/src/mage/cards/l/LightningCoils.java +++ b/Mage.Sets/src/mage/cards/l/LightningCoils.java @@ -32,7 +32,7 @@ public final class LightningCoils extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a nontoken creature you control"); static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public LightningCoils(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LilianaHereticalHealer.java b/Mage.Sets/src/mage/cards/l/LilianaHereticalHealer.java index 6989de1df3..990e7a7b2e 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaHereticalHealer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaHereticalHealer.java @@ -33,7 +33,7 @@ public final class LilianaHereticalHealer extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public LilianaHereticalHealer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LingeringPhantom.java b/Mage.Sets/src/mage/cards/l/LingeringPhantom.java index 380cfca809..1a16edbbbd 100644 --- a/Mage.Sets/src/mage/cards/l/LingeringPhantom.java +++ b/Mage.Sets/src/mage/cards/l/LingeringPhantom.java @@ -24,7 +24,7 @@ public final class LingeringPhantom extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public LingeringPhantom(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LlanowarBehemoth.java b/Mage.Sets/src/mage/cards/l/LlanowarBehemoth.java index f0a0228414..2757f292e6 100644 --- a/Mage.Sets/src/mage/cards/l/LlanowarBehemoth.java +++ b/Mage.Sets/src/mage/cards/l/LlanowarBehemoth.java @@ -25,7 +25,7 @@ public final class LlanowarBehemoth extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LlanowarBehemoth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LoamDryad.java b/Mage.Sets/src/mage/cards/l/LoamDryad.java index d4e1f9d8eb..b2940609ab 100644 --- a/Mage.Sets/src/mage/cards/l/LoamDryad.java +++ b/Mage.Sets/src/mage/cards/l/LoamDryad.java @@ -24,7 +24,7 @@ public final class LoamDryad extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LoamDryad(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LodestoneMyr.java b/Mage.Sets/src/mage/cards/l/LodestoneMyr.java index 274faad42e..fcbd7bf7e8 100644 --- a/Mage.Sets/src/mage/cards/l/LodestoneMyr.java +++ b/Mage.Sets/src/mage/cards/l/LodestoneMyr.java @@ -26,7 +26,7 @@ public final class LodestoneMyr extends CardImpl { private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("untapped artifact you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LodestoneMyr(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LotusVale.java b/Mage.Sets/src/mage/cards/l/LotusVale.java index 1d13d07a89..052c1c11eb 100644 --- a/Mage.Sets/src/mage/cards/l/LotusVale.java +++ b/Mage.Sets/src/mage/cards/l/LotusVale.java @@ -26,7 +26,7 @@ public final class LotusVale extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("two untapped lands"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LotusVale(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LullmageMentor.java b/Mage.Sets/src/mage/cards/l/LullmageMentor.java index eebcda5ac9..7262f0752c 100644 --- a/Mage.Sets/src/mage/cards/l/LullmageMentor.java +++ b/Mage.Sets/src/mage/cards/l/LullmageMentor.java @@ -32,7 +32,7 @@ public final class LullmageMentor extends CardImpl { static { filter.add(new SubtypePredicate(SubType.MERFOLK)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public LullmageMentor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LumberingBattlement.java b/Mage.Sets/src/mage/cards/l/LumberingBattlement.java index 9ef6fbadfd..4b08d51a6d 100644 --- a/Mage.Sets/src/mage/cards/l/LumberingBattlement.java +++ b/Mage.Sets/src/mage/cards/l/LumberingBattlement.java @@ -75,7 +75,7 @@ class LumberingBattlementEffect extends OneShotEffect { = new FilterControlledCreaturePermanent("nontoken creatures"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } LumberingBattlementEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MagneticMountain.java b/Mage.Sets/src/mage/cards/m/MagneticMountain.java index 5cb79401b8..92f9b30194 100644 --- a/Mage.Sets/src/mage/cards/m/MagneticMountain.java +++ b/Mage.Sets/src/mage/cards/m/MagneticMountain.java @@ -65,7 +65,7 @@ class MagneticMountainEffect extends OneShotEffect { static { filter2.add(new ColorPredicate(ObjectColor.BLUE)); - filter2.add(new TappedPredicate()); + filter2.add(TappedPredicate.instance); } MagneticMountainEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MalakirSoothsayer.java b/Mage.Sets/src/mage/cards/m/MalakirSoothsayer.java index a53374fa6e..e55d840ec1 100644 --- a/Mage.Sets/src/mage/cards/m/MalakirSoothsayer.java +++ b/Mage.Sets/src/mage/cards/m/MalakirSoothsayer.java @@ -31,7 +31,7 @@ public final class MalakirSoothsayer extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MalakirSoothsayer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/ManaCache.java b/Mage.Sets/src/mage/cards/m/ManaCache.java index 75437573ac..54cb19a0ba 100644 --- a/Mage.Sets/src/mage/cards/m/ManaCache.java +++ b/Mage.Sets/src/mage/cards/m/ManaCache.java @@ -59,7 +59,7 @@ class ManaCacheEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ManaCacheEffect() { diff --git a/Mage.Sets/src/mage/cards/m/ManaGeyser.java b/Mage.Sets/src/mage/cards/m/ManaGeyser.java index 7e752d2ee9..1069b45520 100644 --- a/Mage.Sets/src/mage/cards/m/ManaGeyser.java +++ b/Mage.Sets/src/mage/cards/m/ManaGeyser.java @@ -21,7 +21,7 @@ public final class ManaGeyser extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("tapped land your opponents control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } public ManaGeyser(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java b/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java index 3619d29b3f..9d560a6bb0 100644 --- a/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java +++ b/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java @@ -27,7 +27,7 @@ public final class MaraxusOfKeld extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped artifacts, creatures, and lands you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), diff --git a/Mage.Sets/src/mage/cards/m/MarduAscendancy.java b/Mage.Sets/src/mage/cards/m/MarduAscendancy.java index f7e370116c..d821628d15 100644 --- a/Mage.Sets/src/mage/cards/m/MarduAscendancy.java +++ b/Mage.Sets/src/mage/cards/m/MarduAscendancy.java @@ -30,7 +30,7 @@ public final class MarduAscendancy extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures you control"); static { - attackFilter.add(Predicates.not(new TokenPredicate())); + attackFilter.add(Predicates.not(TokenPredicate.instance)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/m/MarshalingTheTroops.java b/Mage.Sets/src/mage/cards/m/MarshalingTheTroops.java index 5f4a56391f..ac37de8471 100644 --- a/Mage.Sets/src/mage/cards/m/MarshalingTheTroops.java +++ b/Mage.Sets/src/mage/cards/m/MarshalingTheTroops.java @@ -49,7 +49,7 @@ class MarshalingTheTroopsEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MarshalingTheTroopsEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java b/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java index f13d5931d5..776aa88b33 100644 --- a/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java +++ b/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java @@ -31,7 +31,7 @@ public final class MaskOfTheMimic extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public MaskOfTheMimic(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MasterApothecary.java b/Mage.Sets/src/mage/cards/m/MasterApothecary.java index c7e02a7431..bb44e92b0d 100644 --- a/Mage.Sets/src/mage/cards/m/MasterApothecary.java +++ b/Mage.Sets/src/mage/cards/m/MasterApothecary.java @@ -30,7 +30,7 @@ public final class MasterApothecary extends CardImpl { static { filter.add(new SubtypePredicate(SubType.CLERIC)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MasterApothecary(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MasterOfDiversion.java b/Mage.Sets/src/mage/cards/m/MasterOfDiversion.java index 00e6affcea..f54b0f4c50 100644 --- a/Mage.Sets/src/mage/cards/m/MasterOfDiversion.java +++ b/Mage.Sets/src/mage/cards/m/MasterOfDiversion.java @@ -22,7 +22,7 @@ public final class MasterOfDiversion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public MasterOfDiversion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MasterOfTheWildHunt.java b/Mage.Sets/src/mage/cards/m/MasterOfTheWildHunt.java index a4bb0aa626..ec5f5d5fc5 100644 --- a/Mage.Sets/src/mage/cards/m/MasterOfTheWildHunt.java +++ b/Mage.Sets/src/mage/cards/m/MasterOfTheWildHunt.java @@ -69,7 +69,7 @@ class MasterOfTheWildHuntEffect extends OneShotEffect { static { filter.add(new SubtypePredicate(SubType.WOLF)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MasterOfTheWildHuntEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MavrenFeinDuskApostle.java b/Mage.Sets/src/mage/cards/m/MavrenFeinDuskApostle.java index a0b101ebcb..98fe12b17d 100644 --- a/Mage.Sets/src/mage/cards/m/MavrenFeinDuskApostle.java +++ b/Mage.Sets/src/mage/cards/m/MavrenFeinDuskApostle.java @@ -57,7 +57,7 @@ class MavrenFeinDuskApostleTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(new SubtypePredicate(SubType.VAMPIRE)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/m/MazeAbomination.java b/Mage.Sets/src/mage/cards/m/MazeAbomination.java index 7168099bec..751d9ee3fa 100644 --- a/Mage.Sets/src/mage/cards/m/MazeAbomination.java +++ b/Mage.Sets/src/mage/cards/m/MazeAbomination.java @@ -26,7 +26,7 @@ public final class MazeAbomination extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Multicolored creatures you control"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public MazeAbomination (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MazeBehemoth.java b/Mage.Sets/src/mage/cards/m/MazeBehemoth.java index ddeb6ec6f2..a9b69d81d1 100644 --- a/Mage.Sets/src/mage/cards/m/MazeBehemoth.java +++ b/Mage.Sets/src/mage/cards/m/MazeBehemoth.java @@ -26,7 +26,7 @@ public final class MazeBehemoth extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Multicolored creatures you control"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public MazeBehemoth (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MazeGlider.java b/Mage.Sets/src/mage/cards/m/MazeGlider.java index 1e58b2d741..b39b8301ba 100644 --- a/Mage.Sets/src/mage/cards/m/MazeGlider.java +++ b/Mage.Sets/src/mage/cards/m/MazeGlider.java @@ -26,7 +26,7 @@ public final class MazeGlider extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Multicolored creatures you control"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public MazeGlider (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MazeRusher.java b/Mage.Sets/src/mage/cards/m/MazeRusher.java index 995e865c6e..aed3e120bb 100644 --- a/Mage.Sets/src/mage/cards/m/MazeRusher.java +++ b/Mage.Sets/src/mage/cards/m/MazeRusher.java @@ -26,7 +26,7 @@ public final class MazeRusher extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Multicolored creatures you control"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public MazeRusher (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MazeSentinel.java b/Mage.Sets/src/mage/cards/m/MazeSentinel.java index 11218b098a..357af8a398 100644 --- a/Mage.Sets/src/mage/cards/m/MazeSentinel.java +++ b/Mage.Sets/src/mage/cards/m/MazeSentinel.java @@ -26,7 +26,7 @@ public final class MazeSentinel extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Multicolored creatures you control"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public MazeSentinel (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MercenaryInformer.java b/Mage.Sets/src/mage/cards/m/MercenaryInformer.java index 44cb9245b4..e50658d5fa 100644 --- a/Mage.Sets/src/mage/cards/m/MercenaryInformer.java +++ b/Mage.Sets/src/mage/cards/m/MercenaryInformer.java @@ -36,7 +36,7 @@ public final class MercenaryInformer extends CardImpl { static { filterBlack.add(new ColorPredicate(ObjectColor.BLACK)); - filterMercenary.add(Predicates.not(new TokenPredicate())); + filterMercenary.add(Predicates.not(TokenPredicate.instance)); filterMercenary.add(new SubtypePredicate(SubType.MERCENARY)); } diff --git a/Mage.Sets/src/mage/cards/m/MerchantsDockhand.java b/Mage.Sets/src/mage/cards/m/MerchantsDockhand.java index 2c59d904fc..d63af5b129 100644 --- a/Mage.Sets/src/mage/cards/m/MerchantsDockhand.java +++ b/Mage.Sets/src/mage/cards/m/MerchantsDockhand.java @@ -116,7 +116,7 @@ class TapXTargetCost extends VariableCostImpl { final static FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("untapped artifacts you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public TapXTargetCost() { diff --git a/Mage.Sets/src/mage/cards/m/MidnightReaper.java b/Mage.Sets/src/mage/cards/m/MidnightReaper.java index 5af4535203..cfe9c74eb9 100644 --- a/Mage.Sets/src/mage/cards/m/MidnightReaper.java +++ b/Mage.Sets/src/mage/cards/m/MidnightReaper.java @@ -27,7 +27,7 @@ public final class MidnightReaper extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public MidnightReaper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Mightstone.java b/Mage.Sets/src/mage/cards/m/Mightstone.java index f7922170fd..bb36bf9e8d 100644 --- a/Mage.Sets/src/mage/cards/m/Mightstone.java +++ b/Mage.Sets/src/mage/cards/m/Mightstone.java @@ -21,7 +21,7 @@ public final class Mightstone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creatures"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Mightstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MilitiasPride.java b/Mage.Sets/src/mage/cards/m/MilitiasPride.java index 17c500ee0b..5d413d911c 100644 --- a/Mage.Sets/src/mage/cards/m/MilitiasPride.java +++ b/Mage.Sets/src/mage/cards/m/MilitiasPride.java @@ -63,7 +63,7 @@ class MilitiasPrideTriggerAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); Permanent permanent = game.getPermanent(event.getSourceId()); return permanent != null && filter.match(permanent, sourceId, controllerId, game); } diff --git a/Mage.Sets/src/mage/cards/m/MinionReflector.java b/Mage.Sets/src/mage/cards/m/MinionReflector.java index a422664308..31da2e2881 100644 --- a/Mage.Sets/src/mage/cards/m/MinionReflector.java +++ b/Mage.Sets/src/mage/cards/m/MinionReflector.java @@ -35,7 +35,7 @@ public final class MinionReflector extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public MinionReflector(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MirrorMarch.java b/Mage.Sets/src/mage/cards/m/MirrorMarch.java index 5878db12ef..9d242c439d 100644 --- a/Mage.Sets/src/mage/cards/m/MirrorMarch.java +++ b/Mage.Sets/src/mage/cards/m/MirrorMarch.java @@ -25,7 +25,7 @@ public final class MirrorMarch extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public MirrorMarch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MirrorStrike.java b/Mage.Sets/src/mage/cards/m/MirrorStrike.java index b76e9ff569..f6f38df431 100644 --- a/Mage.Sets/src/mage/cards/m/MirrorStrike.java +++ b/Mage.Sets/src/mage/cards/m/MirrorStrike.java @@ -29,7 +29,7 @@ public final class MirrorStrike extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked creature"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } public MirrorStrike(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Mirrorworks.java b/Mage.Sets/src/mage/cards/m/Mirrorworks.java index 6adbdd1d58..c96992b9a4 100644 --- a/Mage.Sets/src/mage/cards/m/Mirrorworks.java +++ b/Mage.Sets/src/mage/cards/m/Mirrorworks.java @@ -27,7 +27,7 @@ public final class Mirrorworks extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Mirrorworks(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MishrasSelfReplicator.java b/Mage.Sets/src/mage/cards/m/MishrasSelfReplicator.java index 59aff775c6..709731b01e 100644 --- a/Mage.Sets/src/mage/cards/m/MishrasSelfReplicator.java +++ b/Mage.Sets/src/mage/cards/m/MishrasSelfReplicator.java @@ -23,7 +23,7 @@ public final class MishrasSelfReplicator extends CardImpl { private static final FilterSpell filter = new FilterSpell("a historic spell"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public MishrasSelfReplicator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoggJailer.java b/Mage.Sets/src/mage/cards/m/MoggJailer.java index bce46bb14a..8b8eb90e0a 100644 --- a/Mage.Sets/src/mage/cards/m/MoggJailer.java +++ b/Mage.Sets/src/mage/cards/m/MoggJailer.java @@ -25,7 +25,7 @@ public final class MoggJailer extends CardImpl { static final private FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature with power 2 or less"); static { - filter.add(Predicates.and(new PowerPredicate(ComparisonType.FEWER_THAN, 2), Predicates.not(new TappedPredicate()))); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.FEWER_THAN, 2), Predicates.not(TappedPredicate.instance))); } public MoggJailer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Monsoon.java b/Mage.Sets/src/mage/cards/m/Monsoon.java index 4b91ad79f8..24c52740c5 100644 --- a/Mage.Sets/src/mage/cards/m/Monsoon.java +++ b/Mage.Sets/src/mage/cards/m/Monsoon.java @@ -50,7 +50,7 @@ class MonsoonEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MonsoonEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MossbridgeTroll.java b/Mage.Sets/src/mage/cards/m/MossbridgeTroll.java index 817bccc111..2218db67e6 100644 --- a/Mage.Sets/src/mage/cards/m/MossbridgeTroll.java +++ b/Mage.Sets/src/mage/cards/m/MossbridgeTroll.java @@ -36,7 +36,7 @@ public final class MossbridgeTroll extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MossbridgeTroll(UUID ownerId, CardSetInfo setInfo) { @@ -110,7 +110,7 @@ class MossbridgeTrollCost extends CostImpl { static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MossbridgeTrollCost() { diff --git a/Mage.Sets/src/mage/cards/m/MothdustChangeling.java b/Mage.Sets/src/mage/cards/m/MothdustChangeling.java index 9f645fe8eb..6f276339b1 100644 --- a/Mage.Sets/src/mage/cards/m/MothdustChangeling.java +++ b/Mage.Sets/src/mage/cards/m/MothdustChangeling.java @@ -27,7 +27,7 @@ public final class MothdustChangeling extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MothdustChangeling(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Mudslide.java b/Mage.Sets/src/mage/cards/m/Mudslide.java index c63e74715d..84d3855ead 100644 --- a/Mage.Sets/src/mage/cards/m/Mudslide.java +++ b/Mage.Sets/src/mage/cards/m/Mudslide.java @@ -65,7 +65,7 @@ class MudslideEffect extends OneShotEffect { static { filter.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } MudslideEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MundasVanguard.java b/Mage.Sets/src/mage/cards/m/MundasVanguard.java index b2c05c34b7..52708a4928 100644 --- a/Mage.Sets/src/mage/cards/m/MundasVanguard.java +++ b/Mage.Sets/src/mage/cards/m/MundasVanguard.java @@ -32,7 +32,7 @@ public final class MundasVanguard extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public MundasVanguard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MurderousCompulsion.java b/Mage.Sets/src/mage/cards/m/MurderousCompulsion.java index 169a2b55ee..5056353cdc 100644 --- a/Mage.Sets/src/mage/cards/m/MurderousCompulsion.java +++ b/Mage.Sets/src/mage/cards/m/MurderousCompulsion.java @@ -21,7 +21,7 @@ public final class MurderousCompulsion extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public MurderousCompulsion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MyrBattlesphere.java b/Mage.Sets/src/mage/cards/m/MyrBattlesphere.java index 0302a4c60a..b43eed17cc 100644 --- a/Mage.Sets/src/mage/cards/m/MyrBattlesphere.java +++ b/Mage.Sets/src/mage/cards/m/MyrBattlesphere.java @@ -105,7 +105,7 @@ class MyrBattlesphereEffect extends OneShotEffect { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Myr you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.MYR)); } diff --git a/Mage.Sets/src/mage/cards/m/MythUnbound.java b/Mage.Sets/src/mage/cards/m/MythUnbound.java index 421ff850c8..86e13abb32 100644 --- a/Mage.Sets/src/mage/cards/m/MythUnbound.java +++ b/Mage.Sets/src/mage/cards/m/MythUnbound.java @@ -32,7 +32,7 @@ public final class MythUnbound extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CommanderPredicate()); + filter.add(CommanderPredicate.instance); filter.add(new OwnerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java b/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java index c0dd70f67e..1ba32622d6 100644 --- a/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java +++ b/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java @@ -49,9 +49,9 @@ public final class NahiriTheHarbinger extends CardImpl { static { filter.add(Predicates.or(new CardTypePredicate(CardType.ENCHANTMENT), (Predicates.and(new CardTypePredicate(CardType.ARTIFACT), - new TappedPredicate())), + TappedPredicate.instance)), (Predicates.and(new CardTypePredicate(CardType.CREATURE), - new TappedPredicate())))); + TappedPredicate.instance)))); } public NahiriTheHarbinger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NamelessRace.java b/Mage.Sets/src/mage/cards/n/NamelessRace.java index cebf34c2e3..73afab8657 100644 --- a/Mage.Sets/src/mage/cards/n/NamelessRace.java +++ b/Mage.Sets/src/mage/cards/n/NamelessRace.java @@ -64,7 +64,7 @@ class NamelessRaceEffect extends OneShotEffect { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); filter2.add(new ColorPredicate(ObjectColor.WHITE)); filter2.add(new OwnerPredicate(TargetController.OPPONENT)); diff --git a/Mage.Sets/src/mage/cards/n/NantukoShaman.java b/Mage.Sets/src/mage/cards/n/NantukoShaman.java index b17eaccb4b..ad62796b09 100644 --- a/Mage.Sets/src/mage/cards/n/NantukoShaman.java +++ b/Mage.Sets/src/mage/cards/n/NantukoShaman.java @@ -26,7 +26,7 @@ public final class NantukoShaman extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public NantukoShaman(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NaturesChosen.java b/Mage.Sets/src/mage/cards/n/NaturesChosen.java index 9cb96ea8a3..6fb1055bef 100644 --- a/Mage.Sets/src/mage/cards/n/NaturesChosen.java +++ b/Mage.Sets/src/mage/cards/n/NaturesChosen.java @@ -49,7 +49,7 @@ public final class NaturesChosen extends CardImpl { static { filterWhiteUntappedCreature.add(new ColorPredicate(ObjectColor.WHITE)); - filterWhiteUntappedCreature.add(Predicates.not(new TappedPredicate())); + filterWhiteUntappedCreature.add(Predicates.not(TappedPredicate.instance)); } public NaturesChosen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NayaHushblade.java b/Mage.Sets/src/mage/cards/n/NayaHushblade.java index 0c9cee189b..343d71f445 100644 --- a/Mage.Sets/src/mage/cards/n/NayaHushblade.java +++ b/Mage.Sets/src/mage/cards/n/NayaHushblade.java @@ -29,7 +29,7 @@ public final class NayaHushblade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another multicolor permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java b/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java index e90ec46868..bd4511146b 100644 --- a/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java +++ b/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java @@ -38,7 +38,7 @@ public final class NazahnReveredBladesmith extends CardImpl { private static final FilterControlledCreaturePermanent equippedFilter = new FilterControlledCreaturePermanent("equipped creature you control"); static { - equippedFilter.add(new EquippedPredicate()); + equippedFilter.add(EquippedPredicate.instance); equippedFilter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NecromancersMagemark.java b/Mage.Sets/src/mage/cards/n/NecromancersMagemark.java index 168c633cb7..c80c8ff70a 100644 --- a/Mage.Sets/src/mage/cards/n/NecromancersMagemark.java +++ b/Mage.Sets/src/mage/cards/n/NecromancersMagemark.java @@ -36,7 +36,7 @@ public final class NecromancersMagemark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures you control that are enchanted"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NemesisTrap.java b/Mage.Sets/src/mage/cards/n/NemesisTrap.java index 003fa1cb47..3951249678 100644 --- a/Mage.Sets/src/mage/cards/n/NemesisTrap.java +++ b/Mage.Sets/src/mage/cards/n/NemesisTrap.java @@ -36,7 +36,7 @@ public final class NemesisTrap extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public NemesisTrap(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NeutralizingBlast.java b/Mage.Sets/src/mage/cards/n/NeutralizingBlast.java index 39a9864fc7..f4eeb34985 100644 --- a/Mage.Sets/src/mage/cards/n/NeutralizingBlast.java +++ b/Mage.Sets/src/mage/cards/n/NeutralizingBlast.java @@ -18,7 +18,7 @@ public final class NeutralizingBlast extends CardImpl { private static final FilterSpell filter = new FilterSpell("multicolored spell"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public NeutralizingBlast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NewBlood.java b/Mage.Sets/src/mage/cards/n/NewBlood.java index b4b1ee8437..4361a19ef0 100644 --- a/Mage.Sets/src/mage/cards/n/NewBlood.java +++ b/Mage.Sets/src/mage/cards/n/NewBlood.java @@ -39,7 +39,7 @@ public final class NewBlood extends CardImpl { TextPartSubType textPartVampire = (TextPartSubType) addTextPart(new TextPartSubType(SubType.VAMPIRE)); FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped Vampire you control"); filter.add(new TextPartSubtypePredicate(textPartVampire)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); // As an additional cost to cast New Blood, tap an untapped Vampire you control. this.getSpellAbility().addCost(new TapTargetCost( new TargetControlledCreaturePermanent(1, 1, filter, true))); diff --git a/Mage.Sets/src/mage/cards/n/NobleStand.java b/Mage.Sets/src/mage/cards/n/NobleStand.java index c03e4d4c55..5d490b1457 100644 --- a/Mage.Sets/src/mage/cards/n/NobleStand.java +++ b/Mage.Sets/src/mage/cards/n/NobleStand.java @@ -56,7 +56,7 @@ class NobleStandAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); Permanent permanent = game.getPermanent(event.getSourceId()); return permanent != null && filter.match(permanent, sourceId, controllerId, game); } diff --git a/Mage.Sets/src/mage/cards/n/NosyGoblin.java b/Mage.Sets/src/mage/cards/n/NosyGoblin.java index d0bf2f67eb..369af08b43 100644 --- a/Mage.Sets/src/mage/cards/n/NosyGoblin.java +++ b/Mage.Sets/src/mage/cards/n/NosyGoblin.java @@ -26,7 +26,7 @@ public final class NosyGoblin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public NosyGoblin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NullmageShepherd.java b/Mage.Sets/src/mage/cards/n/NullmageShepherd.java index 0373a0c16e..38ed9f9b56 100644 --- a/Mage.Sets/src/mage/cards/n/NullmageShepherd.java +++ b/Mage.Sets/src/mage/cards/n/NullmageShepherd.java @@ -28,7 +28,7 @@ public final class NullmageShepherd extends CardImpl { private static final FilterControlledCreaturePermanent filterCost = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filterCost.add(Predicates.not(new TappedPredicate())); + filterCost.add(Predicates.not(TappedPredicate.instance)); } public NullmageShepherd(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NuteGunray.java b/Mage.Sets/src/mage/cards/n/NuteGunray.java index aad1a83e17..bffe968bd2 100644 --- a/Mage.Sets/src/mage/cards/n/NuteGunray.java +++ b/Mage.Sets/src/mage/cards/n/NuteGunray.java @@ -34,7 +34,7 @@ public final class NuteGunray extends CardImpl { private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("non-token artifact"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public NuteGunray(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OakStreetInnkeeper.java b/Mage.Sets/src/mage/cards/o/OakStreetInnkeeper.java index bd5dbb0a8b..a25c0b1616 100644 --- a/Mage.Sets/src/mage/cards/o/OakStreetInnkeeper.java +++ b/Mage.Sets/src/mage/cards/o/OakStreetInnkeeper.java @@ -26,7 +26,7 @@ public final class OakStreetInnkeeper extends CardImpl { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("tapped creatures you control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public OakStreetInnkeeper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OblivionSower.java b/Mage.Sets/src/mage/cards/o/OblivionSower.java index 8742de4f54..f3c8a5272d 100644 --- a/Mage.Sets/src/mage/cards/o/OblivionSower.java +++ b/Mage.Sets/src/mage/cards/o/OblivionSower.java @@ -81,7 +81,7 @@ class OblivionSowerEffect extends OneShotEffect { if (controller != null && targetPlayer != null) { FilterLandCard filter = new FilterLandCard(); filter.add(new OwnerIdPredicate(targetPlayer.getId())); - filter.add(Predicates.not(new FaceDownPredicate())); + filter.add(Predicates.not(FaceDownPredicate.instance)); Cards exiledCards = new CardsImpl(); exiledCards.addAll(game.getExile().getAllCards(game)); Cards exiledLands = new CardsImpl(); diff --git a/Mage.Sets/src/mage/cards/o/ObscuringAether.java b/Mage.Sets/src/mage/cards/o/ObscuringAether.java index 0f4aa3723c..1b4e559253 100644 --- a/Mage.Sets/src/mage/cards/o/ObscuringAether.java +++ b/Mage.Sets/src/mage/cards/o/ObscuringAether.java @@ -25,7 +25,7 @@ public final class ObscuringAether extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("Face-down creature spells"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public ObscuringAether(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OgreSlumlord.java b/Mage.Sets/src/mage/cards/o/OgreSlumlord.java index 15bc745365..9c63fbc483 100644 --- a/Mage.Sets/src/mage/cards/o/OgreSlumlord.java +++ b/Mage.Sets/src/mage/cards/o/OgreSlumlord.java @@ -31,7 +31,7 @@ public final class OgreSlumlord extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another nontoken creature"); private static final FilterControlledPermanent filter2 = new FilterControlledPermanent("Rats you control"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(AnotherPredicate.instance); filter2.add(new SubtypePredicate(SubType.RAT)); } diff --git a/Mage.Sets/src/mage/cards/o/OnduWarCleric.java b/Mage.Sets/src/mage/cards/o/OnduWarCleric.java index 4a70adcb89..8ca40e0e6c 100644 --- a/Mage.Sets/src/mage/cards/o/OnduWarCleric.java +++ b/Mage.Sets/src/mage/cards/o/OnduWarCleric.java @@ -30,7 +30,7 @@ public final class OnduWarCleric extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public OnduWarCleric(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OpenTheGraves.java b/Mage.Sets/src/mage/cards/o/OpenTheGraves.java index b76f2b1047..aeb45f4a0e 100644 --- a/Mage.Sets/src/mage/cards/o/OpenTheGraves.java +++ b/Mage.Sets/src/mage/cards/o/OpenTheGraves.java @@ -23,7 +23,7 @@ public final class OpenTheGraves extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public OpenTheGraves(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Opposition.java b/Mage.Sets/src/mage/cards/o/Opposition.java index 9f140a7c0c..30112bc8ee 100644 --- a/Mage.Sets/src/mage/cards/o/Opposition.java +++ b/Mage.Sets/src/mage/cards/o/Opposition.java @@ -36,7 +36,7 @@ public final class Opposition extends CardImpl { private static final FilterControlledCreaturePermanent untappedcreatureyoucontrol = new FilterControlledCreaturePermanent("untapped creature you control"); static { - untappedcreatureyoucontrol.add(Predicates.not(new TappedPredicate())); + untappedcreatureyoucontrol.add(Predicates.not(TappedPredicate.instance)); } public Opposition(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OrcishSquatters.java b/Mage.Sets/src/mage/cards/o/OrcishSquatters.java index 33489a79f7..fd20a8044b 100644 --- a/Mage.Sets/src/mage/cards/o/OrcishSquatters.java +++ b/Mage.Sets/src/mage/cards/o/OrcishSquatters.java @@ -27,7 +27,7 @@ public final class OrcishSquatters extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("land defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public OrcishSquatters(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Orgg.java b/Mage.Sets/src/mage/cards/o/Orgg.java index 60d0bc29d0..2112818ed0 100644 --- a/Mage.Sets/src/mage/cards/o/Orgg.java +++ b/Mage.Sets/src/mage/cards/o/Orgg.java @@ -29,7 +29,7 @@ public final class Orgg extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(TappedPredicate.instance))); filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public Orgg(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OrimsCure.java b/Mage.Sets/src/mage/cards/o/OrimsCure.java index d80a0cbe50..d7b5614896 100644 --- a/Mage.Sets/src/mage/cards/o/OrimsCure.java +++ b/Mage.Sets/src/mage/cards/o/OrimsCure.java @@ -31,7 +31,7 @@ public final class OrimsCure extends CardImpl { static { filter.add(new SubtypePredicate(SubType.PLAINS)); - filterCreature.add(Predicates.not(new TappedPredicate())); + filterCreature.add(Predicates.not(TappedPredicate.instance)); } public OrimsCure(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Outmaneuver.java b/Mage.Sets/src/mage/cards/o/Outmaneuver.java index 3a604f9778..7e005e5bb7 100644 --- a/Mage.Sets/src/mage/cards/o/Outmaneuver.java +++ b/Mage.Sets/src/mage/cards/o/Outmaneuver.java @@ -26,7 +26,7 @@ public final class Outmaneuver extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new BlockedPredicate()); + filter.add(BlockedPredicate.instance); } public Outmaneuver(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Overburden.java b/Mage.Sets/src/mage/cards/o/Overburden.java index c41fad613f..fb145c2331 100644 --- a/Mage.Sets/src/mage/cards/o/Overburden.java +++ b/Mage.Sets/src/mage/cards/o/Overburden.java @@ -25,7 +25,7 @@ public final class Overburden extends CardImpl { private static final FilterControlledLandPermanent RETURN_FILTER = new FilterControlledLandPermanent("a land"); static { - ENTERS_BATTLEFIELD_FILTER.add(Predicates.not(new TokenPredicate())); + ENTERS_BATTLEFIELD_FILTER.add(Predicates.not(TokenPredicate.instance)); } public Overburden(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OverseerOfTheDamned.java b/Mage.Sets/src/mage/cards/o/OverseerOfTheDamned.java index 9877dac2df..a828ea6ca8 100644 --- a/Mage.Sets/src/mage/cards/o/OverseerOfTheDamned.java +++ b/Mage.Sets/src/mage/cards/o/OverseerOfTheDamned.java @@ -33,7 +33,7 @@ public final class OverseerOfTheDamned extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public OverseerOfTheDamned(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Pallimud.java b/Mage.Sets/src/mage/cards/p/Pallimud.java index 780b62129b..92603a715f 100644 --- a/Mage.Sets/src/mage/cards/p/Pallimud.java +++ b/Mage.Sets/src/mage/cards/p/Pallimud.java @@ -61,7 +61,7 @@ class AnathemancerCount implements DynamicValue { Player chosenPlayer = game.getPlayer(playerId); if (chosenPlayer != null) { FilterLandPermanent filter = new FilterLandPermanent("tapped lands the chosen player controls"); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerIdPredicate(playerId)); return game.getBattlefield().count(filter, sourceAbility.getSourceId(), sourceAbility.getControllerId(), game); } diff --git a/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java b/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java index daa98056f0..5580ac75a1 100644 --- a/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java +++ b/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java @@ -34,7 +34,7 @@ public final class ParadoxicalOutcome extends CardImpl { static { filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public ParadoxicalOutcome(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ParallelEvolution.java b/Mage.Sets/src/mage/cards/p/ParallelEvolution.java index 9fbccfd975..84af3037c4 100644 --- a/Mage.Sets/src/mage/cards/p/ParallelEvolution.java +++ b/Mage.Sets/src/mage/cards/p/ParallelEvolution.java @@ -51,7 +51,7 @@ class ParallelEvolutionEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public ParallelEvolutionEffect() { diff --git a/Mage.Sets/src/mage/cards/p/PatronWizard.java b/Mage.Sets/src/mage/cards/p/PatronWizard.java index 04b436b596..2e447eb094 100644 --- a/Mage.Sets/src/mage/cards/p/PatronWizard.java +++ b/Mage.Sets/src/mage/cards/p/PatronWizard.java @@ -30,7 +30,7 @@ public final class PatronWizard extends CardImpl { static { filter.add(new SubtypePredicate(SubType.WIZARD)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public PatronWizard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PersistentPetitioners.java b/Mage.Sets/src/mage/cards/p/PersistentPetitioners.java index 311acf0f7f..d3548d6bee 100644 --- a/Mage.Sets/src/mage/cards/p/PersistentPetitioners.java +++ b/Mage.Sets/src/mage/cards/p/PersistentPetitioners.java @@ -30,7 +30,7 @@ public final class PersistentPetitioners extends CardImpl { = new FilterControlledPermanent("untapped Advisors you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ADVISOR)); } diff --git a/Mage.Sets/src/mage/cards/p/PhantomGeneral.java b/Mage.Sets/src/mage/cards/p/PhantomGeneral.java index a5e802e5d4..4f2ac31139 100644 --- a/Mage.Sets/src/mage/cards/p/PhantomGeneral.java +++ b/Mage.Sets/src/mage/cards/p/PhantomGeneral.java @@ -24,7 +24,7 @@ public final class PhantomGeneral extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creature tokens you control"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianIngester.java b/Mage.Sets/src/mage/cards/p/PhyrexianIngester.java index 0904b81ba8..0b035db1bd 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianIngester.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianIngester.java @@ -36,7 +36,7 @@ public final class PhyrexianIngester extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public PhyrexianIngester(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PiannaNomadCaptain.java b/Mage.Sets/src/mage/cards/p/PiannaNomadCaptain.java index 15e7870f00..72a9ca81f1 100644 --- a/Mage.Sets/src/mage/cards/p/PiannaNomadCaptain.java +++ b/Mage.Sets/src/mage/cards/p/PiannaNomadCaptain.java @@ -23,7 +23,7 @@ public final class PiannaNomadCaptain extends CardImpl { static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creatures"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public PiannaNomadCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PiasRevolution.java b/Mage.Sets/src/mage/cards/p/PiasRevolution.java index bba23c5fc6..edaea70c98 100644 --- a/Mage.Sets/src/mage/cards/p/PiasRevolution.java +++ b/Mage.Sets/src/mage/cards/p/PiasRevolution.java @@ -93,7 +93,7 @@ class PiasRevolutionTriggeredAbility extends TriggeredAbilityImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(new OwnerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/p/PoeDameron.java b/Mage.Sets/src/mage/cards/p/PoeDameron.java index f0e7d9c6a8..a85a74dd10 100644 --- a/Mage.Sets/src/mage/cards/p/PoeDameron.java +++ b/Mage.Sets/src/mage/cards/p/PoeDameron.java @@ -25,7 +25,7 @@ public final class PoeDameron extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filterStarship.add(new ControllerPredicate(TargetController.YOU)); filterStarship.add(new SubtypePredicate(SubType.STARSHIP)); } diff --git a/Mage.Sets/src/mage/cards/p/PowerSurge.java b/Mage.Sets/src/mage/cards/p/PowerSurge.java index 1038fe4aa5..7b788da9ef 100644 --- a/Mage.Sets/src/mage/cards/p/PowerSurge.java +++ b/Mage.Sets/src/mage/cards/p/PowerSurge.java @@ -85,7 +85,7 @@ class PowerSurgeWatcher extends Watcher { private static final FilterPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } private int untappedLandCount; diff --git a/Mage.Sets/src/mage/cards/p/PrimalWhisperer.java b/Mage.Sets/src/mage/cards/p/PrimalWhisperer.java index 3ea6fbad59..61901b4b91 100644 --- a/Mage.Sets/src/mage/cards/p/PrimalWhisperer.java +++ b/Mage.Sets/src/mage/cards/p/PrimalWhisperer.java @@ -26,7 +26,7 @@ public final class PrimalWhisperer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face-down creature"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public PrimalWhisperer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PrimordialMist.java b/Mage.Sets/src/mage/cards/p/PrimordialMist.java index 364db608db..891466a29b 100644 --- a/Mage.Sets/src/mage/cards/p/PrimordialMist.java +++ b/Mage.Sets/src/mage/cards/p/PrimordialMist.java @@ -35,7 +35,7 @@ public final class PrimordialMist extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("face down permanent"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public PrimordialMist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PrismaticStrands.java b/Mage.Sets/src/mage/cards/p/PrismaticStrands.java index e5fb668061..06a50fb4d2 100644 --- a/Mage.Sets/src/mage/cards/p/PrismaticStrands.java +++ b/Mage.Sets/src/mage/cards/p/PrismaticStrands.java @@ -34,7 +34,7 @@ public final class PrismaticStrands extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped white creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ColorPredicate(ObjectColor.WHITE)); } diff --git a/Mage.Sets/src/mage/cards/p/ProgenitorMimic.java b/Mage.Sets/src/mage/cards/p/ProgenitorMimic.java index 156ae583dc..2de51e27b9 100644 --- a/Mage.Sets/src/mage/cards/p/ProgenitorMimic.java +++ b/Mage.Sets/src/mage/cards/p/ProgenitorMimic.java @@ -29,7 +29,7 @@ public final class ProgenitorMimic extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("no Token"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public ProgenitorMimic(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProwessOfTheFair.java b/Mage.Sets/src/mage/cards/p/ProwessOfTheFair.java index 9e4c6e287e..990e3e7b7e 100644 --- a/Mage.Sets/src/mage/cards/p/ProwessOfTheFair.java +++ b/Mage.Sets/src/mage/cards/p/ProwessOfTheFair.java @@ -26,7 +26,7 @@ public final class ProwessOfTheFair extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ELF)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public ProwessOfTheFair(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PsychicAllergy.java b/Mage.Sets/src/mage/cards/p/PsychicAllergy.java index c7c5c4cfeb..17af2bbb36 100644 --- a/Mage.Sets/src/mage/cards/p/PsychicAllergy.java +++ b/Mage.Sets/src/mage/cards/p/PsychicAllergy.java @@ -84,7 +84,7 @@ class PsychicAllergyEffect extends OneShotEffect { if (player != null) { FilterPermanent filter = new FilterPermanent(); filter.add(new ColorPredicate((ObjectColor) game.getState().getValue(source.getSourceId() + "_color"))); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); int damage = game.getBattlefield().countAll(filter, player.getId(), game); player.damage(damage, source.getSourceId(), game, false, true); return true; diff --git a/Mage.Sets/src/mage/cards/p/PsychoticFury.java b/Mage.Sets/src/mage/cards/p/PsychoticFury.java index 89a2e8bb19..c8ebd40196 100644 --- a/Mage.Sets/src/mage/cards/p/PsychoticFury.java +++ b/Mage.Sets/src/mage/cards/p/PsychoticFury.java @@ -22,7 +22,7 @@ public final class PsychoticFury extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("multicolored creature"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public PsychoticFury(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PullFromEternity.java b/Mage.Sets/src/mage/cards/p/PullFromEternity.java index 46fe77e642..5a7aecf42d 100644 --- a/Mage.Sets/src/mage/cards/p/PullFromEternity.java +++ b/Mage.Sets/src/mage/cards/p/PullFromEternity.java @@ -26,7 +26,7 @@ public final class PullFromEternity extends CardImpl { private static final FilterCard filter = new FilterCard("face-up exiled card"); static { - filter.add(Predicates.not(new FaceDownPredicate())); + filter.add(Predicates.not(FaceDownPredicate.instance)); } public PullFromEternity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PureSimple.java b/Mage.Sets/src/mage/cards/p/PureSimple.java index b73bf79b0c..e14378e1c5 100644 --- a/Mage.Sets/src/mage/cards/p/PureSimple.java +++ b/Mage.Sets/src/mage/cards/p/PureSimple.java @@ -27,7 +27,7 @@ public final class PureSimple extends SplitCard { static { filterDestroy.add(Predicates.or(new SubtypePredicate(SubType.AURA), new SubtypePredicate(SubType.EQUIPMENT))); - filterMulticolor.add(new MulticoloredPredicate()); + filterMulticolor.add(MulticoloredPredicate.instance); } public PureSimple(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RadiantPurge.java b/Mage.Sets/src/mage/cards/r/RadiantPurge.java index 538c50c9ec..f4a393fd22 100644 --- a/Mage.Sets/src/mage/cards/r/RadiantPurge.java +++ b/Mage.Sets/src/mage/cards/r/RadiantPurge.java @@ -21,8 +21,8 @@ public final class RadiantPurge extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("multicolored creature or multicolored enchantment"); static { filter.add(Predicates.or( - Predicates.and(new CardTypePredicate(CardType.CREATURE), new MulticoloredPredicate()), - Predicates.and(new CardTypePredicate(CardType.ENCHANTMENT), new MulticoloredPredicate()))); + Predicates.and(new CardTypePredicate(CardType.CREATURE), MulticoloredPredicate.instance), + Predicates.and(new CardTypePredicate(CardType.ENCHANTMENT), MulticoloredPredicate.instance))); } public RadiantPurge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RaffCapashenShipsMage.java b/Mage.Sets/src/mage/cards/r/RaffCapashenShipsMage.java index 599a30b642..1a399e4d41 100644 --- a/Mage.Sets/src/mage/cards/r/RaffCapashenShipsMage.java +++ b/Mage.Sets/src/mage/cards/r/RaffCapashenShipsMage.java @@ -26,7 +26,7 @@ public final class RaffCapashenShipsMage extends CardImpl { private static final FilterCard filter = new FilterCard("historic spells"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public RaffCapashenShipsMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RaidingParty.java b/Mage.Sets/src/mage/cards/r/RaidingParty.java index 4ea934955a..9449c53670 100644 --- a/Mage.Sets/src/mage/cards/r/RaidingParty.java +++ b/Mage.Sets/src/mage/cards/r/RaidingParty.java @@ -73,7 +73,7 @@ class RaidingPartyEffect extends OneShotEffect { private static final FilterPermanent filter2 = new FilterPermanent("Plains"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ColorPredicate(ObjectColor.WHITE)); filter2.add(new SubtypePredicate(SubType.PLAINS)); } diff --git a/Mage.Sets/src/mage/cards/r/RamosianRally.java b/Mage.Sets/src/mage/cards/r/RamosianRally.java index ccd2a9213d..6f9b2d78da 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianRally.java +++ b/Mage.Sets/src/mage/cards/r/RamosianRally.java @@ -29,7 +29,7 @@ public final class RamosianRally extends CardImpl { static { plainsFilter.add(new SubtypePredicate(SubType.PLAINS)); - creatureFilter.add(Predicates.not(new TappedPredicate())); + creatureFilter.add(Predicates.not(TappedPredicate.instance)); } public RamosianRally(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamsesOverdark.java b/Mage.Sets/src/mage/cards/r/RamsesOverdark.java index 2ed9c824f4..43475b29cb 100644 --- a/Mage.Sets/src/mage/cards/r/RamsesOverdark.java +++ b/Mage.Sets/src/mage/cards/r/RamsesOverdark.java @@ -26,7 +26,7 @@ public final class RamsesOverdark extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("enchanted creature"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); } public RamsesOverdark(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RashidaScalebane.java b/Mage.Sets/src/mage/cards/r/RashidaScalebane.java index 8e2de6b48a..2e69046533 100644 --- a/Mage.Sets/src/mage/cards/r/RashidaScalebane.java +++ b/Mage.Sets/src/mage/cards/r/RashidaScalebane.java @@ -32,7 +32,7 @@ public final class RashidaScalebane extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking or blocking Dragon"); static { - filter.add(Predicates.or(new AttackingPredicate(), new BlockingPredicate())); + filter.add(Predicates.or(AttackingPredicate.instance, BlockingPredicate.instance)); filter.add(new SubtypePredicate(SubType.DRAGON)); } diff --git a/Mage.Sets/src/mage/cards/r/RasputinDreamweaver.java b/Mage.Sets/src/mage/cards/r/RasputinDreamweaver.java index dd0c63cbc7..bfc57f62a7 100644 --- a/Mage.Sets/src/mage/cards/r/RasputinDreamweaver.java +++ b/Mage.Sets/src/mage/cards/r/RasputinDreamweaver.java @@ -98,7 +98,7 @@ class RasputinDreamweaverStartedUntappedWatcher extends Watcher { private static final FilterPermanent filter = new FilterPermanent("Untapped permanents"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } private final Set startedUntapped = new HashSet<>(0); diff --git a/Mage.Sets/src/mage/cards/r/RathiAssassin.java b/Mage.Sets/src/mage/cards/r/RathiAssassin.java index cb3f077059..07655c7778 100644 --- a/Mage.Sets/src/mage/cards/r/RathiAssassin.java +++ b/Mage.Sets/src/mage/cards/r/RathiAssassin.java @@ -39,7 +39,7 @@ public final class RathiAssassin extends CardImpl { static { filter.add(new SubtypePredicate(SubType.MERCENARY)); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); - destroyFilter.add(new TappedPredicate()); + destroyFilter.add(TappedPredicate.instance); destroyFilter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/r/RazorfinAbolisher.java b/Mage.Sets/src/mage/cards/r/RazorfinAbolisher.java index d4384fe277..e1bc066563 100644 --- a/Mage.Sets/src/mage/cards/r/RazorfinAbolisher.java +++ b/Mage.Sets/src/mage/cards/r/RazorfinAbolisher.java @@ -27,7 +27,7 @@ public final class RazorfinAbolisher extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with a counter on it"); static { - filter.add(new CounterAnyPredicate()); + filter.add(CounterAnyPredicate.instance); } public RazorfinAbolisher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RebelInformer.java b/Mage.Sets/src/mage/cards/r/RebelInformer.java index d5328fc4a3..1bfcbcae63 100644 --- a/Mage.Sets/src/mage/cards/r/RebelInformer.java +++ b/Mage.Sets/src/mage/cards/r/RebelInformer.java @@ -36,7 +36,7 @@ public final class RebelInformer extends CardImpl { static { filterWhite.add(new ColorPredicate(ObjectColor.WHITE)); - filterRebel.add(Predicates.not(new TokenPredicate())); + filterRebel.add(Predicates.not(TokenPredicate.instance)); filterRebel.add(new SubtypePredicate(SubType.REBEL)); } diff --git a/Mage.Sets/src/mage/cards/r/RebornHope.java b/Mage.Sets/src/mage/cards/r/RebornHope.java index 0006834a88..47f878e885 100644 --- a/Mage.Sets/src/mage/cards/r/RebornHope.java +++ b/Mage.Sets/src/mage/cards/r/RebornHope.java @@ -19,7 +19,7 @@ public final class RebornHope extends CardImpl { private static final FilterCard filter = new FilterCard("multicolored card from your graveyard"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public RebornHope(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reconnaissance.java b/Mage.Sets/src/mage/cards/r/Reconnaissance.java index fbd93e6ceb..84fe89dcc4 100644 --- a/Mage.Sets/src/mage/cards/r/Reconnaissance.java +++ b/Mage.Sets/src/mage/cards/r/Reconnaissance.java @@ -27,7 +27,7 @@ public final class Reconnaissance extends CardImpl { private static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("attacking creature controlled by you"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Reconnaissance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RegnasSanction.java b/Mage.Sets/src/mage/cards/r/RegnasSanction.java index 3ea9507512..776fdaa6c8 100644 --- a/Mage.Sets/src/mage/cards/r/RegnasSanction.java +++ b/Mage.Sets/src/mage/cards/r/RegnasSanction.java @@ -70,7 +70,7 @@ class RegnasSanctionEffect extends OneShotEffect { FilterCreaturePermanent filterToTap = new FilterCreaturePermanent(); for (Player player : choice.getFoes()) { FilterCreaturePermanent filter = new FilterCreaturePermanent("untapped creature you control"); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new ControllerIdPredicate(player.getId())); TargetPermanent target = new TargetPermanent(1, 1, filter, true); if (player.choose(Outcome.Benefit, target, source.getSourceId(), game)) { diff --git a/Mage.Sets/src/mage/cards/r/Remembrance.java b/Mage.Sets/src/mage/cards/r/Remembrance.java index 135d49484c..3ab60a2647 100644 --- a/Mage.Sets/src/mage/cards/r/Remembrance.java +++ b/Mage.Sets/src/mage/cards/r/Remembrance.java @@ -55,7 +55,7 @@ class RemembranceTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public RemembranceTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/r/RenderSilent.java b/Mage.Sets/src/mage/cards/r/RenderSilent.java index b7cdf3c89d..41c441d74b 100644 --- a/Mage.Sets/src/mage/cards/r/RenderSilent.java +++ b/Mage.Sets/src/mage/cards/r/RenderSilent.java @@ -30,7 +30,7 @@ public final class RenderSilent extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("multicolored permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public RenderSilent(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RenounceTheGuilds.java b/Mage.Sets/src/mage/cards/r/RenounceTheGuilds.java index e19fdae0ad..3bd1e884dc 100644 --- a/Mage.Sets/src/mage/cards/r/RenounceTheGuilds.java +++ b/Mage.Sets/src/mage/cards/r/RenounceTheGuilds.java @@ -20,7 +20,7 @@ public final class RenounceTheGuilds extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("multicolored permanent"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public RenounceTheGuilds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RevealingWind.java b/Mage.Sets/src/mage/cards/r/RevealingWind.java index a097878a84..053ddac0b1 100644 --- a/Mage.Sets/src/mage/cards/r/RevealingWind.java +++ b/Mage.Sets/src/mage/cards/r/RevealingWind.java @@ -51,7 +51,7 @@ class RevealingWindEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterAttackingOrBlockingCreature("face-down creature that's attacking or blocking"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public RevealingWindEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RewardsOfDiversity.java b/Mage.Sets/src/mage/cards/r/RewardsOfDiversity.java index 76fe7e8c9d..dd1270a20c 100644 --- a/Mage.Sets/src/mage/cards/r/RewardsOfDiversity.java +++ b/Mage.Sets/src/mage/cards/r/RewardsOfDiversity.java @@ -22,7 +22,7 @@ public final class RewardsOfDiversity extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public RewardsOfDiversity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java b/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java index 1a46092cb3..800680e4ef 100644 --- a/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java +++ b/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java @@ -69,7 +69,7 @@ class RhysTheRedeemedEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public RhysTheRedeemedEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RhythmOfTheWild.java b/Mage.Sets/src/mage/cards/r/RhythmOfTheWild.java index 33e59fb241..be889e972f 100644 --- a/Mage.Sets/src/mage/cards/r/RhythmOfTheWild.java +++ b/Mage.Sets/src/mage/cards/r/RhythmOfTheWild.java @@ -32,7 +32,7 @@ public final class RhythmOfTheWild extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter2.add(Predicates.not(new TokenPredicate())); + filter2.add(Predicates.not(TokenPredicate.instance)); } public RhythmOfTheWild(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RideDown.java b/Mage.Sets/src/mage/cards/r/RideDown.java index ad68abe732..65e87b36d8 100644 --- a/Mage.Sets/src/mage/cards/r/RideDown.java +++ b/Mage.Sets/src/mage/cards/r/RideDown.java @@ -30,7 +30,7 @@ public final class RideDown extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blocking creature"); static { - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } public RideDown(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Riftsweeper.java b/Mage.Sets/src/mage/cards/r/Riftsweeper.java index 050ee18104..8fc19bea15 100644 --- a/Mage.Sets/src/mage/cards/r/Riftsweeper.java +++ b/Mage.Sets/src/mage/cards/r/Riftsweeper.java @@ -27,7 +27,7 @@ public final class Riftsweeper extends CardImpl { private static final FilterCard filter = new FilterCard("face-up exiled card"); static { - filter.add(Predicates.not(new FaceDownPredicate())); + filter.add(Predicates.not(FaceDownPredicate.instance)); } public Riftsweeper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RighteousFury.java b/Mage.Sets/src/mage/cards/r/RighteousFury.java index c7cc019ffc..6aa334fe0e 100644 --- a/Mage.Sets/src/mage/cards/r/RighteousFury.java +++ b/Mage.Sets/src/mage/cards/r/RighteousFury.java @@ -60,7 +60,7 @@ class RighteousFuryEffect extends OneShotEffect { if (controller != null) { int destroyedCreature = 0; FilterCreaturePermanent filter = new FilterCreaturePermanent("all tapped creatures"); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); for(Permanent creature: game.getState().getBattlefield().getActivePermanents(filter, controller.getId(), game)) { if (creature.destroy(source.getSourceId(), game, false)) { destroyedCreature++; diff --git a/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java b/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java index 9f00625efd..255c570ecf 100644 --- a/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java +++ b/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java @@ -32,7 +32,7 @@ public final class RikuOfTwoReflections extends CardImpl { filter.add(Predicates.or( new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); - filterPermanent.add(Predicates.not(new TokenPredicate())); + filterPermanent.add(Predicates.not(TokenPredicate.instance)); filterPermanent.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/RimehornAurochs.java b/Mage.Sets/src/mage/cards/r/RimehornAurochs.java index 2bd9a9401d..b1488d7428 100644 --- a/Mage.Sets/src/mage/cards/r/RimehornAurochs.java +++ b/Mage.Sets/src/mage/cards/r/RimehornAurochs.java @@ -32,7 +32,7 @@ public final class RimehornAurochs extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(SubType.AUROCHS, "other attacking Aurochs"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/RishadanPawnshop.java b/Mage.Sets/src/mage/cards/r/RishadanPawnshop.java index af39234664..a51c3ece19 100644 --- a/Mage.Sets/src/mage/cards/r/RishadanPawnshop.java +++ b/Mage.Sets/src/mage/cards/r/RishadanPawnshop.java @@ -32,7 +32,7 @@ public final class RishadanPawnshop extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nontoken permanent you control"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/r/RishkarPeemaRenegade.java b/Mage.Sets/src/mage/cards/r/RishkarPeemaRenegade.java index 5b34fdd0d1..591437ed8f 100644 --- a/Mage.Sets/src/mage/cards/r/RishkarPeemaRenegade.java +++ b/Mage.Sets/src/mage/cards/r/RishkarPeemaRenegade.java @@ -31,7 +31,7 @@ public final class RishkarPeemaRenegade extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Each creature you control with a counter on it"); static { - filter.add(new CounterAnyPredicate()); + filter.add(CounterAnyPredicate.instance); } public RishkarPeemaRenegade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RoarOfJukai.java b/Mage.Sets/src/mage/cards/r/RoarOfJukai.java index 153308f339..0945b7fbdf 100644 --- a/Mage.Sets/src/mage/cards/r/RoarOfJukai.java +++ b/Mage.Sets/src/mage/cards/r/RoarOfJukai.java @@ -59,7 +59,7 @@ class RoarOfJukaiEffect extends OneShotEffect { static { filter.add(new SubtypePredicate(SubType.FOREST)); - filterBlocked.add(new BlockedPredicate()); + filterBlocked.add(BlockedPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/RockSlide.java b/Mage.Sets/src/mage/cards/r/RockSlide.java index e1bb04fa43..c0ab560071 100644 --- a/Mage.Sets/src/mage/cards/r/RockSlide.java +++ b/Mage.Sets/src/mage/cards/r/RockSlide.java @@ -26,8 +26,8 @@ public final class RockSlide extends CardImpl { static { filter.add(Predicates.or( - new AttackingPredicate(), - new BlockingPredicate() + AttackingPredicate.instance, + BlockingPredicate.instance )); filter.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/r/RootKinAlly.java b/Mage.Sets/src/mage/cards/r/RootKinAlly.java index 75a457b9e7..8c148e5d98 100644 --- a/Mage.Sets/src/mage/cards/r/RootKinAlly.java +++ b/Mage.Sets/src/mage/cards/r/RootKinAlly.java @@ -26,7 +26,7 @@ public final class RootKinAlly extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public RootKinAlly(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RowanKenrith.java b/Mage.Sets/src/mage/cards/r/RowanKenrith.java index 665f4066c2..02e5889861 100644 --- a/Mage.Sets/src/mage/cards/r/RowanKenrith.java +++ b/Mage.Sets/src/mage/cards/r/RowanKenrith.java @@ -138,7 +138,7 @@ class RowanKenrithDamageEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerIdPredicate(source.getFirstTarget())); return new DamageAllEffect(3, filter).apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/r/RoyalAssassin.java b/Mage.Sets/src/mage/cards/r/RoyalAssassin.java index 402c7d8ad5..a73c8b82cd 100644 --- a/Mage.Sets/src/mage/cards/r/RoyalAssassin.java +++ b/Mage.Sets/src/mage/cards/r/RoyalAssassin.java @@ -26,7 +26,7 @@ public final class RoyalAssassin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public RoyalAssassin(UUID ownerId, CardSetInfo setInfo){ diff --git a/Mage.Sets/src/mage/cards/r/RubblebeltRunner.java b/Mage.Sets/src/mage/cards/r/RubblebeltRunner.java index 6335982d86..dacc541e57 100644 --- a/Mage.Sets/src/mage/cards/r/RubblebeltRunner.java +++ b/Mage.Sets/src/mage/cards/r/RubblebeltRunner.java @@ -22,7 +22,7 @@ public final class RubblebeltRunner extends CardImpl { = new FilterCreaturePermanent("creature tokens"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public RubblebeltRunner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RuthlessInstincts.java b/Mage.Sets/src/mage/cards/r/RuthlessInstincts.java index 6d186763b3..0a3524d179 100644 --- a/Mage.Sets/src/mage/cards/r/RuthlessInstincts.java +++ b/Mage.Sets/src/mage/cards/r/RuthlessInstincts.java @@ -30,8 +30,8 @@ public final class RuthlessInstincts extends CardImpl { private static final FilterCreaturePermanent filterAttacking = new FilterCreaturePermanent("attacking creature"); static { - filter.add(Predicates.not(new AttackingPredicate())); - filterAttacking.add(new AttackingPredicate()); + filter.add(Predicates.not(AttackingPredicate.instance)); + filterAttacking.add(AttackingPredicate.instance); } public RuthlessInstincts(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sandsower.java b/Mage.Sets/src/mage/cards/s/Sandsower.java index d53256882e..0e295fac41 100644 --- a/Mage.Sets/src/mage/cards/s/Sandsower.java +++ b/Mage.Sets/src/mage/cards/s/Sandsower.java @@ -27,7 +27,7 @@ public final class Sandsower extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Sandsower(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SaruliCaretaker.java b/Mage.Sets/src/mage/cards/s/SaruliCaretaker.java index a621ca6ae7..41e1e31fdf 100644 --- a/Mage.Sets/src/mage/cards/s/SaruliCaretaker.java +++ b/Mage.Sets/src/mage/cards/s/SaruliCaretaker.java @@ -25,7 +25,7 @@ public final class SaruliCaretaker extends CardImpl { = new FilterControlledCreaturePermanent("an untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SaruliCaretaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java b/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java index c7b0d4f9e3..efb5f5926d 100644 --- a/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java +++ b/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java @@ -26,7 +26,7 @@ public final class ScaldingSalamander extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); filter.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/s/ScorchedRuins.java b/Mage.Sets/src/mage/cards/s/ScorchedRuins.java index f211684d46..7aad42b439 100644 --- a/Mage.Sets/src/mage/cards/s/ScorchedRuins.java +++ b/Mage.Sets/src/mage/cards/s/ScorchedRuins.java @@ -29,7 +29,7 @@ public final class ScorchedRuins extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("two untapped lands"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ScorchedRuins(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ScoriaCat.java b/Mage.Sets/src/mage/cards/s/ScoriaCat.java index 26dc4a4b40..718623d998 100644 --- a/Mage.Sets/src/mage/cards/s/ScoriaCat.java +++ b/Mage.Sets/src/mage/cards/s/ScoriaCat.java @@ -27,7 +27,7 @@ public final class ScoriaCat extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ScoriaCat(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SealAway.java b/Mage.Sets/src/mage/cards/s/SealAway.java index ebf5fdcdb8..4550db5319 100644 --- a/Mage.Sets/src/mage/cards/s/SealAway.java +++ b/Mage.Sets/src/mage/cards/s/SealAway.java @@ -28,7 +28,7 @@ public final class SealAway extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SealAway(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SecondHarvest.java b/Mage.Sets/src/mage/cards/s/SecondHarvest.java index 747a0073d4..841cb58737 100644 --- a/Mage.Sets/src/mage/cards/s/SecondHarvest.java +++ b/Mage.Sets/src/mage/cards/s/SecondHarvest.java @@ -60,7 +60,7 @@ class SecondHarvestEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterControlledPermanent filter = new FilterControlledPermanent("each token you control"); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); for (Permanent permanent : game.getBattlefield().getAllActivePermanents(filter, controller.getId(), game)) { if (permanent != null) { CreateTokenCopyTargetEffect effect = new CreateTokenCopyTargetEffect(); diff --git a/Mage.Sets/src/mage/cards/s/SecretPlans.java b/Mage.Sets/src/mage/cards/s/SecretPlans.java index 9809873940..b8ec3a1539 100644 --- a/Mage.Sets/src/mage/cards/s/SecretPlans.java +++ b/Mage.Sets/src/mage/cards/s/SecretPlans.java @@ -24,7 +24,7 @@ public final class SecretPlans extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Face-down creatures"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public SecretPlans(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SekKuarDeathkeeper.java b/Mage.Sets/src/mage/cards/s/SekKuarDeathkeeper.java index c0edd5cad9..202bb00e80 100644 --- a/Mage.Sets/src/mage/cards/s/SekKuarDeathkeeper.java +++ b/Mage.Sets/src/mage/cards/s/SekKuarDeathkeeper.java @@ -29,7 +29,7 @@ public final class SekKuarDeathkeeper extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SekKuarDeathkeeper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SelectForInspection.java b/Mage.Sets/src/mage/cards/s/SelectForInspection.java index b6dd0d2991..ebb2a82019 100644 --- a/Mage.Sets/src/mage/cards/s/SelectForInspection.java +++ b/Mage.Sets/src/mage/cards/s/SelectForInspection.java @@ -20,7 +20,7 @@ public final class SelectForInspection extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SelectForInspection(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaEvangel.java b/Mage.Sets/src/mage/cards/s/SelesnyaEvangel.java index a2a95ba492..9b5a523281 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaEvangel.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaEvangel.java @@ -29,7 +29,7 @@ public final class SelesnyaEvangel extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SelesnyaEvangel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java b/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java index 5cec078a86..bc52232f2c 100644 --- a/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java +++ b/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java @@ -32,7 +32,7 @@ public final class SelkieHedgeMage extends CardImpl { static { filter.add(new SubtypePredicate(SubType.FOREST)); filter2.add(new SubtypePredicate(SubType.ISLAND)); - filter3.add(new TappedPredicate()); + filter3.add(TappedPredicate.instance); } private static final String rule1 = "When {this} enters the battlefield, if you control two or more Forests, you may gain 3 life."; diff --git a/Mage.Sets/src/mage/cards/s/SengirAutocrat.java b/Mage.Sets/src/mage/cards/s/SengirAutocrat.java index ccfa468fd3..4355da9a6e 100644 --- a/Mage.Sets/src/mage/cards/s/SengirAutocrat.java +++ b/Mage.Sets/src/mage/cards/s/SengirAutocrat.java @@ -27,7 +27,7 @@ public final class SengirAutocrat extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SERF)); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public SengirAutocrat(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SentinelOfThePearlTrident.java b/Mage.Sets/src/mage/cards/s/SentinelOfThePearlTrident.java index 8d433e8853..93db168b20 100644 --- a/Mage.Sets/src/mage/cards/s/SentinelOfThePearlTrident.java +++ b/Mage.Sets/src/mage/cards/s/SentinelOfThePearlTrident.java @@ -33,7 +33,7 @@ public final class SentinelOfThePearlTrident extends CardImpl { private final static FilterControlledPermanent filter = new FilterControlledPermanent("historic permanent you control"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public SentinelOfThePearlTrident(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SetonKrosanProtector.java b/Mage.Sets/src/mage/cards/s/SetonKrosanProtector.java index 560c551805..8c4af9f18d 100644 --- a/Mage.Sets/src/mage/cards/s/SetonKrosanProtector.java +++ b/Mage.Sets/src/mage/cards/s/SetonKrosanProtector.java @@ -27,7 +27,7 @@ public final class SetonKrosanProtector extends CardImpl { private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Druid you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.DRUID)); } diff --git a/Mage.Sets/src/mage/cards/s/SharedAnimosity.java b/Mage.Sets/src/mage/cards/s/SharedAnimosity.java index 02b4c2cc0e..5cc7288616 100644 --- a/Mage.Sets/src/mage/cards/s/SharedAnimosity.java +++ b/Mage.Sets/src/mage/cards/s/SharedAnimosity.java @@ -73,7 +73,7 @@ class SharedAnimosityEffect extends ContinuousEffectImpl { FilterCreaturePermanent filter = new FilterCreaturePermanent(); filter.add(Predicates.not(new PermanentIdPredicate(this.targetPointer.getFirst(game, source)))); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); boolean allCreatureTypes = false; if (permanent.isAllCreatureTypes()) { allCreatureTypes = true; diff --git a/Mage.Sets/src/mage/cards/s/SharedDiscovery.java b/Mage.Sets/src/mage/cards/s/SharedDiscovery.java index ec2df78cad..5f79ba960e 100644 --- a/Mage.Sets/src/mage/cards/s/SharedDiscovery.java +++ b/Mage.Sets/src/mage/cards/s/SharedDiscovery.java @@ -21,7 +21,7 @@ public final class SharedDiscovery extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SharedDiscovery(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SheerDrop.java b/Mage.Sets/src/mage/cards/s/SheerDrop.java index b0b89c1a29..de325c267f 100644 --- a/Mage.Sets/src/mage/cards/s/SheerDrop.java +++ b/Mage.Sets/src/mage/cards/s/SheerDrop.java @@ -20,7 +20,7 @@ public final class SheerDrop extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SheerDrop(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShieldmageElder.java b/Mage.Sets/src/mage/cards/s/ShieldmageElder.java index f31d93ea59..b79d1d0544 100644 --- a/Mage.Sets/src/mage/cards/s/ShieldmageElder.java +++ b/Mage.Sets/src/mage/cards/s/ShieldmageElder.java @@ -30,13 +30,13 @@ public final class ShieldmageElder extends CardImpl { private static final FilterControlledPermanent filter1 = new FilterControlledPermanent("untapped Clerics you control"); static { - filter1.add(Predicates.not(new TappedPredicate())); + filter1.add(Predicates.not(TappedPredicate.instance)); filter1.add(new SubtypePredicate(SubType.CLERIC)); } private static final FilterControlledPermanent filter2 = new FilterControlledPermanent("untapped Wizards you control"); static { - filter2.add(Predicates.not(new TappedPredicate())); + filter2.add(Predicates.not(TappedPredicate.instance)); filter2.add(new SubtypePredicate(SubType.WIZARD)); } diff --git a/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java b/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java index 34d307add1..5729db0fec 100644 --- a/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java +++ b/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java @@ -31,7 +31,7 @@ public final class ShimianNightStalker extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public ShimianNightStalker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java b/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java index a207a9a8b5..de016872ae 100644 --- a/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java +++ b/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java @@ -33,7 +33,7 @@ public final class ShipwreckSinger extends CardImpl { private static final FilterCreaturePermanent filterAttacking = new FilterCreaturePermanent("Attacking creatures"); static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filterAttacking.add(new AttackingPredicate()); + filterAttacking.add(AttackingPredicate.instance); } public ShipwreckSinger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SidarJabari.java b/Mage.Sets/src/mage/cards/s/SidarJabari.java index 75cd2d644d..73f1b6593e 100644 --- a/Mage.Sets/src/mage/cards/s/SidarJabari.java +++ b/Mage.Sets/src/mage/cards/s/SidarJabari.java @@ -24,7 +24,7 @@ public final class SidarJabari extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public SidarJabari(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SifterOfSkulls.java b/Mage.Sets/src/mage/cards/s/SifterOfSkulls.java index e9aef0e453..cf4e004867 100644 --- a/Mage.Sets/src/mage/cards/s/SifterOfSkulls.java +++ b/Mage.Sets/src/mage/cards/s/SifterOfSkulls.java @@ -29,7 +29,7 @@ public final class SifterOfSkulls extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SifterOfSkulls(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SigilTracer.java b/Mage.Sets/src/mage/cards/s/SigilTracer.java index bcce031f3b..d8658b60d9 100644 --- a/Mage.Sets/src/mage/cards/s/SigilTracer.java +++ b/Mage.Sets/src/mage/cards/s/SigilTracer.java @@ -29,7 +29,7 @@ public final class SigilTracer extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Wizards you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.WIZARD)); } diff --git a/Mage.Sets/src/mage/cards/s/SivvisValor.java b/Mage.Sets/src/mage/cards/s/SivvisValor.java index 631c739f70..307d3a3f45 100644 --- a/Mage.Sets/src/mage/cards/s/SivvisValor.java +++ b/Mage.Sets/src/mage/cards/s/SivvisValor.java @@ -38,7 +38,7 @@ public final class SivvisValor extends CardImpl { static { filter.add(new SubtypePredicate(SubType.PLAINS)); - filterCreature.add(Predicates.not(new TappedPredicate())); + filterCreature.add(Predicates.not(TappedPredicate.instance)); } public SivvisValor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SkirkAlarmist.java b/Mage.Sets/src/mage/cards/s/SkirkAlarmist.java index f7f8cb1518..72d6ed3a65 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkAlarmist.java +++ b/Mage.Sets/src/mage/cards/s/SkirkAlarmist.java @@ -35,7 +35,7 @@ public final class SkirkAlarmist extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face-down creature you control"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SkirkFireMarshal.java b/Mage.Sets/src/mage/cards/s/SkirkFireMarshal.java index 0ad0bc887d..fe57a459ed 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkFireMarshal.java +++ b/Mage.Sets/src/mage/cards/s/SkirkFireMarshal.java @@ -29,7 +29,7 @@ public final class SkirkFireMarshal extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Goblins you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.GOBLIN)); } diff --git a/Mage.Sets/src/mage/cards/s/SkirsdagHighPriest.java b/Mage.Sets/src/mage/cards/s/SkirsdagHighPriest.java index 15b2be1caf..736b0a2bde 100644 --- a/Mage.Sets/src/mage/cards/s/SkirsdagHighPriest.java +++ b/Mage.Sets/src/mage/cards/s/SkirsdagHighPriest.java @@ -30,7 +30,7 @@ public final class SkirsdagHighPriest extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SkirsdagHighPriest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Skullsnatcher.java b/Mage.Sets/src/mage/cards/s/Skullsnatcher.java index 4ff8480c45..484a2c9b31 100644 --- a/Mage.Sets/src/mage/cards/s/Skullsnatcher.java +++ b/Mage.Sets/src/mage/cards/s/Skullsnatcher.java @@ -32,7 +32,7 @@ public final class Skullsnatcher extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("unblocked attacker you control"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } public Skullsnatcher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SkyHussar.java b/Mage.Sets/src/mage/cards/s/SkyHussar.java index 074294d305..eb73ff2f48 100644 --- a/Mage.Sets/src/mage/cards/s/SkyHussar.java +++ b/Mage.Sets/src/mage/cards/s/SkyHussar.java @@ -29,7 +29,7 @@ public final class SkyHussar extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped white and/or blue creatures you control"); static { filter.add(Predicates.or(new ColorPredicate(ObjectColor.WHITE), new ColorPredicate(ObjectColor.BLUE))); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SkyHussar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SlyRequisitioner.java b/Mage.Sets/src/mage/cards/s/SlyRequisitioner.java index 08ca61777e..5b04d9e138 100644 --- a/Mage.Sets/src/mage/cards/s/SlyRequisitioner.java +++ b/Mage.Sets/src/mage/cards/s/SlyRequisitioner.java @@ -24,7 +24,7 @@ public final class SlyRequisitioner extends CardImpl { private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("a nontoken artifact you control"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SlyRequisitioner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Smite.java b/Mage.Sets/src/mage/cards/s/Smite.java index 67050e3b54..f6f46285dc 100644 --- a/Mage.Sets/src/mage/cards/s/Smite.java +++ b/Mage.Sets/src/mage/cards/s/Smite.java @@ -19,7 +19,7 @@ public final class Smite extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blocked creature"); static { - filter.add(new BlockedPredicate()); + filter.add(BlockedPredicate.instance); } public Smite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SmokeTeller.java b/Mage.Sets/src/mage/cards/s/SmokeTeller.java index 3254a12f88..5994a8d247 100644 --- a/Mage.Sets/src/mage/cards/s/SmokeTeller.java +++ b/Mage.Sets/src/mage/cards/s/SmokeTeller.java @@ -32,7 +32,7 @@ public final class SmokeTeller extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public SmokeTeller(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Snag.java b/Mage.Sets/src/mage/cards/s/Snag.java index 877484cf1f..4c016086e6 100644 --- a/Mage.Sets/src/mage/cards/s/Snag.java +++ b/Mage.Sets/src/mage/cards/s/Snag.java @@ -29,7 +29,7 @@ public final class Snag extends CardImpl { static { filter.add(new SubtypePredicate(SubType.FOREST)); - filter2.add(Predicates.not(new BlockedPredicate())); + filter2.add(Predicates.not(BlockedPredicate.instance)); } public Snag(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoldeviExcavations.java b/Mage.Sets/src/mage/cards/s/SoldeviExcavations.java index 6ab8ca5938..21cb230813 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviExcavations.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviExcavations.java @@ -33,7 +33,7 @@ public final class SoldeviExcavations extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SoldeviExcavations(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoldeviGolem.java b/Mage.Sets/src/mage/cards/s/SoldeviGolem.java index b4192c145a..b2c0364d08 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviGolem.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviGolem.java @@ -30,7 +30,7 @@ public final class SoldeviGolem extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SoldeviGolem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoldierOfThePantheon.java b/Mage.Sets/src/mage/cards/s/SoldierOfThePantheon.java index 90b2c056dc..be3cbe3147 100644 --- a/Mage.Sets/src/mage/cards/s/SoldierOfThePantheon.java +++ b/Mage.Sets/src/mage/cards/s/SoldierOfThePantheon.java @@ -24,7 +24,7 @@ public final class SoldierOfThePantheon extends CardImpl { private static final FilterObject filter = new FilterObject("multicolored"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public SoldierOfThePantheon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SongOfSerenity.java b/Mage.Sets/src/mage/cards/s/SongOfSerenity.java index 2d58303653..1e62cc3cb3 100644 --- a/Mage.Sets/src/mage/cards/s/SongOfSerenity.java +++ b/Mage.Sets/src/mage/cards/s/SongOfSerenity.java @@ -44,7 +44,7 @@ class SongOfSerenityRestrictionEffect extends RestrictionEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); } public SongOfSerenityRestrictionEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SorrowsPath.java b/Mage.Sets/src/mage/cards/s/SorrowsPath.java index dc056479a8..ee972bc336 100644 --- a/Mage.Sets/src/mage/cards/s/SorrowsPath.java +++ b/Mage.Sets/src/mage/cards/s/SorrowsPath.java @@ -36,7 +36,7 @@ public final class SorrowsPath extends CardImpl { private static final FilterOpponentsCreaturePermanent filter = new FilterOpponentsCreaturePermanent("blocking creatures an opponent controls"); static { - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } public SorrowsPath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SosukesSummons.java b/Mage.Sets/src/mage/cards/s/SosukesSummons.java index b3afeaf79f..8e8de87915 100644 --- a/Mage.Sets/src/mage/cards/s/SosukesSummons.java +++ b/Mage.Sets/src/mage/cards/s/SosukesSummons.java @@ -26,7 +26,7 @@ public final class SosukesSummons extends CardImpl { static { filter.add(new SubtypePredicate(SubType.SNAKE)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SosukesSummons(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoulOfTheHarvest.java b/Mage.Sets/src/mage/cards/s/SoulOfTheHarvest.java index bdcd6c6ff5..da6115bfce 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfTheHarvest.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfTheHarvest.java @@ -26,7 +26,7 @@ public final class SoulOfTheHarvest extends CardImpl { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("another nontoken creature"); static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SoulOfTheHarvest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpawnbinderMage.java b/Mage.Sets/src/mage/cards/s/SpawnbinderMage.java index a14197c7d7..1a163c26c7 100644 --- a/Mage.Sets/src/mage/cards/s/SpawnbinderMage.java +++ b/Mage.Sets/src/mage/cards/s/SpawnbinderMage.java @@ -31,7 +31,7 @@ public final class SpawnbinderMage extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SpawnbinderMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpectralBears.java b/Mage.Sets/src/mage/cards/s/SpectralBears.java index e4440f2419..20790a16bc 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralBears.java +++ b/Mage.Sets/src/mage/cards/s/SpectralBears.java @@ -52,7 +52,7 @@ class SpectralBearsTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(new ColorPredicate(ObjectColor.BLACK)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public SpectralBearsTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/s/SpellweaverDuo.java b/Mage.Sets/src/mage/cards/s/SpellweaverDuo.java index af15968334..3114e8cf72 100644 --- a/Mage.Sets/src/mage/cards/s/SpellweaverDuo.java +++ b/Mage.Sets/src/mage/cards/s/SpellweaverDuo.java @@ -24,7 +24,7 @@ public final class SpellweaverDuo extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SpellweaverDuo(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpiresOfOrazca.java b/Mage.Sets/src/mage/cards/s/SpiresOfOrazca.java index 2508964cb9..c6651fc0fe 100644 --- a/Mage.Sets/src/mage/cards/s/SpiresOfOrazca.java +++ b/Mage.Sets/src/mage/cards/s/SpiresOfOrazca.java @@ -28,7 +28,7 @@ public final class SpiresOfOrazca extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature an opponent controls"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SpiritBonds.java b/Mage.Sets/src/mage/cards/s/SpiritBonds.java index 58d4d81762..6af79400d5 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritBonds.java +++ b/Mage.Sets/src/mage/cards/s/SpiritBonds.java @@ -39,7 +39,7 @@ public final class SpiritBonds extends CardImpl { static { filter.add(Predicates.not(new SubtypePredicate(SubType.SPIRIT))); filterSpirit.add(new SubtypePredicate(SubType.SPIRIT)); - filterNontoken.add(Predicates.not(new TokenPredicate())); + filterNontoken.add(Predicates.not(TokenPredicate.instance)); } public SpiritBonds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpiritMirror.java b/Mage.Sets/src/mage/cards/s/SpiritMirror.java index 136789f012..de02cbfc46 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritMirror.java +++ b/Mage.Sets/src/mage/cards/s/SpiritMirror.java @@ -29,7 +29,7 @@ public final class SpiritMirror extends CardImpl { static { filterToken.add(new SubtypePredicate(SubType.REFLECTION)); - filterToken.add(new TokenPredicate()); + filterToken.add(TokenPredicate.instance); filter.add(new SubtypePredicate(SubType.REFLECTION)); } diff --git a/Mage.Sets/src/mage/cards/s/SporeCloud.java b/Mage.Sets/src/mage/cards/s/SporeCloud.java index 02109f1035..c7c9d494a0 100644 --- a/Mage.Sets/src/mage/cards/s/SporeCloud.java +++ b/Mage.Sets/src/mage/cards/s/SporeCloud.java @@ -32,7 +32,7 @@ public final class SporeCloud extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blocking creatures"); static { - filter.add(new BlockingPredicate()); + filter.add(BlockingPredicate.instance); } public SporeCloud(UUID ownerId, CardSetInfo setInfo) { @@ -60,7 +60,7 @@ class SporeCloudEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Each attacking creature and each blocking creature"); static { - filter.add(Predicates.or(new AttackingPredicate(), new BlockingPredicate())); + filter.add(Predicates.or(AttackingPredicate.instance, BlockingPredicate.instance)); } public SporeCloudEffect() { diff --git a/Mage.Sets/src/mage/cards/s/Sporogenesis.java b/Mage.Sets/src/mage/cards/s/Sporogenesis.java index 99f5cee4dc..3512d42361 100644 --- a/Mage.Sets/src/mage/cards/s/Sporogenesis.java +++ b/Mage.Sets/src/mage/cards/s/Sporogenesis.java @@ -39,7 +39,7 @@ public final class Sporogenesis extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public Sporogenesis(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpringleafDrum.java b/Mage.Sets/src/mage/cards/s/SpringleafDrum.java index 7bf0a7908f..b5c988ccb5 100644 --- a/Mage.Sets/src/mage/cards/s/SpringleafDrum.java +++ b/Mage.Sets/src/mage/cards/s/SpringleafDrum.java @@ -21,7 +21,7 @@ public final class SpringleafDrum extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SpringleafDrum(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpurGrappler.java b/Mage.Sets/src/mage/cards/s/SpurGrappler.java index c0f048f886..fc6865d049 100644 --- a/Mage.Sets/src/mage/cards/s/SpurGrappler.java +++ b/Mage.Sets/src/mage/cards/s/SpurGrappler.java @@ -27,7 +27,7 @@ public final class SpurGrappler extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SpurGrappler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpurredWolverine.java b/Mage.Sets/src/mage/cards/s/SpurredWolverine.java index b21ef4ee91..016d81b072 100644 --- a/Mage.Sets/src/mage/cards/s/SpurredWolverine.java +++ b/Mage.Sets/src/mage/cards/s/SpurredWolverine.java @@ -30,7 +30,7 @@ public final class SpurredWolverine extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Beasts you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.BEAST)); } diff --git a/Mage.Sets/src/mage/cards/s/SpyNetwork.java b/Mage.Sets/src/mage/cards/s/SpyNetwork.java index daf78dbba8..4daf571ac0 100644 --- a/Mage.Sets/src/mage/cards/s/SpyNetwork.java +++ b/Mage.Sets/src/mage/cards/s/SpyNetwork.java @@ -103,7 +103,7 @@ class SpyNetworkFaceDownEffect extends OneShotEffect { MageObject mageObject = game.getObject(source.getSourceId()); if (controller != null && player != null && mageObject != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent("face down creature controlled by " + player.getLogName()); - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); filter.add(new ControllerIdPredicate(player.getId())); TargetCreaturePermanent target = new TargetCreaturePermanent(1, 1, filter, true); if (target.canChoose(source.getSourceId(), controller.getId(), game)) { diff --git a/Mage.Sets/src/mage/cards/s/StalkingAssassin.java b/Mage.Sets/src/mage/cards/s/StalkingAssassin.java index ef7528461a..78a1c8bad5 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingAssassin.java +++ b/Mage.Sets/src/mage/cards/s/StalkingAssassin.java @@ -28,7 +28,7 @@ public final class StalkingAssassin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public StalkingAssassin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StarCrownedStag.java b/Mage.Sets/src/mage/cards/s/StarCrownedStag.java index e05d794229..6dc595c5d3 100644 --- a/Mage.Sets/src/mage/cards/s/StarCrownedStag.java +++ b/Mage.Sets/src/mage/cards/s/StarCrownedStag.java @@ -22,7 +22,7 @@ public final class StarCrownedStag extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public StarCrownedStag(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SteamCatapult.java b/Mage.Sets/src/mage/cards/s/SteamCatapult.java index 16402a4abd..8262509c4d 100644 --- a/Mage.Sets/src/mage/cards/s/SteamCatapult.java +++ b/Mage.Sets/src/mage/cards/s/SteamCatapult.java @@ -26,7 +26,7 @@ public final class SteamCatapult extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SteamCatapult(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java b/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java index 61f2a5dc8a..ee86d460f3 100644 --- a/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java +++ b/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java @@ -35,7 +35,7 @@ public final class StensiaMasquerade extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public StensiaMasquerade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StoneCatapult.java b/Mage.Sets/src/mage/cards/s/StoneCatapult.java index 594edb549f..9a2db55b70 100644 --- a/Mage.Sets/src/mage/cards/s/StoneCatapult.java +++ b/Mage.Sets/src/mage/cards/s/StoneCatapult.java @@ -29,7 +29,7 @@ public final class StoneCatapult extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped nonblack creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/s/StoneHavenOutfitter.java b/Mage.Sets/src/mage/cards/s/StoneHavenOutfitter.java index da5f4c1571..99f376716e 100644 --- a/Mage.Sets/src/mage/cards/s/StoneHavenOutfitter.java +++ b/Mage.Sets/src/mage/cards/s/StoneHavenOutfitter.java @@ -27,7 +27,7 @@ public final class StoneHavenOutfitter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("equipped creatures you control"); static { - filter.add(new EquippedPredicate()); + filter.add(EquippedPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/StoneIdolTrap.java b/Mage.Sets/src/mage/cards/s/StoneIdolTrap.java index ec70487013..3209b413c1 100644 --- a/Mage.Sets/src/mage/cards/s/StoneIdolTrap.java +++ b/Mage.Sets/src/mage/cards/s/StoneIdolTrap.java @@ -51,7 +51,7 @@ class StoneIdolTrapCostReductionEffect extends CostModificationEffectImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public StoneIdolTrapCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java b/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java index 617c31166f..d4e82d39c8 100644 --- a/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java +++ b/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java @@ -33,7 +33,7 @@ public final class StoneforgeAcolyte extends CardImpl { static { filterAlly.add(new SubtypePredicate(SubType.ALLY)); - filterAlly.add(Predicates.not(new TappedPredicate())); + filterAlly.add(Predicates.not(TappedPredicate.instance)); filterEquipment.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/s/StoneshakerShaman.java b/Mage.Sets/src/mage/cards/s/StoneshakerShaman.java index 75802aa16d..3454de1198 100644 --- a/Mage.Sets/src/mage/cards/s/StoneshakerShaman.java +++ b/Mage.Sets/src/mage/cards/s/StoneshakerShaman.java @@ -23,7 +23,7 @@ public final class StoneshakerShaman extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("untapped land"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public StoneshakerShaman(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SultaiCharm.java b/Mage.Sets/src/mage/cards/s/SultaiCharm.java index 2594e59fc1..f0e4f8f083 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiCharm.java +++ b/Mage.Sets/src/mage/cards/s/SultaiCharm.java @@ -25,7 +25,7 @@ public final class SultaiCharm extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("monocolored creature"); static { - filter.add(new MonocoloredPredicate()); + filter.add(MonocoloredPredicate.instance); } public SultaiCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SummaryJudgment.java b/Mage.Sets/src/mage/cards/s/SummaryJudgment.java index cd95d17ea2..87c6989019 100644 --- a/Mage.Sets/src/mage/cards/s/SummaryJudgment.java +++ b/Mage.Sets/src/mage/cards/s/SummaryJudgment.java @@ -24,7 +24,7 @@ public final class SummaryJudgment extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SummaryJudgment(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SummonTheSchool.java b/Mage.Sets/src/mage/cards/s/SummonTheSchool.java index 8c7f797016..eaccfa4c28 100644 --- a/Mage.Sets/src/mage/cards/s/SummonTheSchool.java +++ b/Mage.Sets/src/mage/cards/s/SummonTheSchool.java @@ -27,7 +27,7 @@ public final class SummonTheSchool extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Merfolk you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.MERFOLK)); } diff --git a/Mage.Sets/src/mage/cards/s/SunblastAngel.java b/Mage.Sets/src/mage/cards/s/SunblastAngel.java index 16d1491dcd..a089f3485d 100644 --- a/Mage.Sets/src/mage/cards/s/SunblastAngel.java +++ b/Mage.Sets/src/mage/cards/s/SunblastAngel.java @@ -24,7 +24,7 @@ public final class SunblastAngel extends CardImpl { private static final FilterPermanent tappedFilter = new FilterCreaturePermanent("tapped creatures"); static { - tappedFilter.add(new TappedPredicate()); + tappedFilter.add(TappedPredicate.instance); } public SunblastAngel (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SupplyCaravan.java b/Mage.Sets/src/mage/cards/s/SupplyCaravan.java index cb76066914..763394039d 100644 --- a/Mage.Sets/src/mage/cards/s/SupplyCaravan.java +++ b/Mage.Sets/src/mage/cards/s/SupplyCaravan.java @@ -25,7 +25,7 @@ public final class SupplyCaravan extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SupplyCaravan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SupplyDemand.java b/Mage.Sets/src/mage/cards/s/SupplyDemand.java index deec3a02d5..8085fd8f4e 100644 --- a/Mage.Sets/src/mage/cards/s/SupplyDemand.java +++ b/Mage.Sets/src/mage/cards/s/SupplyDemand.java @@ -23,7 +23,7 @@ public final class SupplyDemand extends SplitCard { private static final FilterCard filter = new FilterCard("multicolored card"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public SupplyDemand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SupremeInquisitor.java b/Mage.Sets/src/mage/cards/s/SupremeInquisitor.java index aef0f732e9..17fb5d6f11 100644 --- a/Mage.Sets/src/mage/cards/s/SupremeInquisitor.java +++ b/Mage.Sets/src/mage/cards/s/SupremeInquisitor.java @@ -36,7 +36,7 @@ public final class SupremeInquisitor extends CardImpl { static { filter.add(new SubtypePredicate(SubType.WIZARD)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SupremeInquisitor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurrakarBanisher.java b/Mage.Sets/src/mage/cards/s/SurrakarBanisher.java index a52604f754..94db2f7664 100644 --- a/Mage.Sets/src/mage/cards/s/SurrakarBanisher.java +++ b/Mage.Sets/src/mage/cards/s/SurrakarBanisher.java @@ -23,7 +23,7 @@ public final class SurrakarBanisher extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SurrakarBanisher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurvivorsEncampment.java b/Mage.Sets/src/mage/cards/s/SurvivorsEncampment.java index b50fa4d148..aae6ff535e 100644 --- a/Mage.Sets/src/mage/cards/s/SurvivorsEncampment.java +++ b/Mage.Sets/src/mage/cards/s/SurvivorsEncampment.java @@ -24,7 +24,7 @@ public final class SurvivorsEncampment extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SurvivorsEncampment(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwiftReckoning.java b/Mage.Sets/src/mage/cards/s/SwiftReckoning.java index b2034ce917..3d252b1d33 100644 --- a/Mage.Sets/src/mage/cards/s/SwiftReckoning.java +++ b/Mage.Sets/src/mage/cards/s/SwiftReckoning.java @@ -26,7 +26,7 @@ public final class SwiftReckoning extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public SwiftReckoning(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTheParuns.java b/Mage.Sets/src/mage/cards/s/SwordOfTheParuns.java index a8581ef580..5c610773a7 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTheParuns.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTheParuns.java @@ -37,8 +37,8 @@ public final class SwordOfTheParuns extends CardImpl { private static final FilterCreaturePermanent filterTapped = new FilterCreaturePermanent(); private static final FilterCreaturePermanent filterUntapped = new FilterCreaturePermanent(); static { - filterTapped.add(new TappedPredicate()); - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterTapped.add(TappedPredicate.instance); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } public SwordOfTheParuns(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java b/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java index 55000ba822..3cb81da2ec 100644 --- a/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java +++ b/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java @@ -27,7 +27,7 @@ public final class SymbioticDeployment extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public SymbioticDeployment(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TacticalAdvantage.java b/Mage.Sets/src/mage/cards/t/TacticalAdvantage.java index 52774236e1..c9605157db 100644 --- a/Mage.Sets/src/mage/cards/t/TacticalAdvantage.java +++ b/Mage.Sets/src/mage/cards/t/TacticalAdvantage.java @@ -25,8 +25,8 @@ public final class TacticalAdvantage extends CardImpl { static { filter.add( Predicates.or( - new BlockingPredicate(), - new BlockedPredicate() + BlockingPredicate.instance, + BlockedPredicate.instance )); filter.add(new ControllerPredicate(TargetController.YOU)); diff --git a/Mage.Sets/src/mage/cards/t/TakeHeart.java b/Mage.Sets/src/mage/cards/t/TakeHeart.java index b57596a363..cdf08b872c 100644 --- a/Mage.Sets/src/mage/cards/t/TakeHeart.java +++ b/Mage.Sets/src/mage/cards/t/TakeHeart.java @@ -23,7 +23,7 @@ public final class TakeHeart extends CardImpl { = new FilterControlledCreaturePermanent(); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public TakeHeart(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TakeVengeance.java b/Mage.Sets/src/mage/cards/t/TakeVengeance.java index 5a229b0ba1..e58e3d3f1b 100644 --- a/Mage.Sets/src/mage/cards/t/TakeVengeance.java +++ b/Mage.Sets/src/mage/cards/t/TakeVengeance.java @@ -18,7 +18,7 @@ public final class TakeVengeance extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public TakeVengeance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TamiyoTheMoonSage.java b/Mage.Sets/src/mage/cards/t/TamiyoTheMoonSage.java index 6239f76dff..06ef55dadf 100644 --- a/Mage.Sets/src/mage/cards/t/TamiyoTheMoonSage.java +++ b/Mage.Sets/src/mage/cards/t/TamiyoTheMoonSage.java @@ -68,7 +68,7 @@ class TappedCreaturesControlledByTargetCount implements DynamicValue { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } @Override diff --git a/Mage.Sets/src/mage/cards/t/Tangle.java b/Mage.Sets/src/mage/cards/t/Tangle.java index 17631aca5e..5efd00ec70 100644 --- a/Mage.Sets/src/mage/cards/t/Tangle.java +++ b/Mage.Sets/src/mage/cards/t/Tangle.java @@ -52,7 +52,7 @@ class TangleEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public TangleEffect() { diff --git a/Mage.Sets/src/mage/cards/t/TangleWire.java b/Mage.Sets/src/mage/cards/t/TangleWire.java index 54128b1f59..befb444899 100644 --- a/Mage.Sets/src/mage/cards/t/TangleWire.java +++ b/Mage.Sets/src/mage/cards/t/TangleWire.java @@ -51,7 +51,7 @@ class TangleWireEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped artifact, creature, or land he or she controls"); static{ - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), diff --git a/Mage.Sets/src/mage/cards/t/TattermungeWitch.java b/Mage.Sets/src/mage/cards/t/TattermungeWitch.java index 123bf0fab7..58fb990feb 100644 --- a/Mage.Sets/src/mage/cards/t/TattermungeWitch.java +++ b/Mage.Sets/src/mage/cards/t/TattermungeWitch.java @@ -27,7 +27,7 @@ public final class TattermungeWitch extends CardImpl { static final private FilterCreaturePermanent filter = new FilterCreaturePermanent("Each blocked creature"); static { - filter.add(new BlockedPredicate()); + filter.add(BlockedPredicate.instance); } public TattermungeWitch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TeferisRealm.java b/Mage.Sets/src/mage/cards/t/TeferisRealm.java index 90c2734207..121ade4895 100644 --- a/Mage.Sets/src/mage/cards/t/TeferisRealm.java +++ b/Mage.Sets/src/mage/cards/t/TeferisRealm.java @@ -90,7 +90,7 @@ class TeferisRealmEffect extends OneShotEffect { } String choosenType = choiceImpl.getChoice(); FilterPermanent filter = new FilterPermanent(); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); switch (choosenType) { case ARTIFACT: filter.add(new CardTypePredicate(CardType.ARTIFACT)); diff --git a/Mage.Sets/src/mage/cards/t/Telethopter.java b/Mage.Sets/src/mage/cards/t/Telethopter.java index 4ad2e92d22..06b7bdc3bb 100644 --- a/Mage.Sets/src/mage/cards/t/Telethopter.java +++ b/Mage.Sets/src/mage/cards/t/Telethopter.java @@ -26,7 +26,7 @@ public final class Telethopter extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public Telethopter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TelimTor.java b/Mage.Sets/src/mage/cards/t/TelimTor.java index de9ec08ea0..de1e858850 100644 --- a/Mage.Sets/src/mage/cards/t/TelimTor.java +++ b/Mage.Sets/src/mage/cards/t/TelimTor.java @@ -25,7 +25,7 @@ public final class TelimTor extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("all attacking creatures with flanking"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(new AbilityPredicate(FlankingAbility.class)); } diff --git a/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java b/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java index 3b1325b477..41c7f0d70c 100644 --- a/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java +++ b/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java @@ -30,7 +30,7 @@ public final class TemmetVizierOfNaktamun extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature token you control"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public TemmetVizierOfNaktamun(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Tetravus.java b/Mage.Sets/src/mage/cards/t/Tetravus.java index ace6165e8e..c0f8b59d44 100644 --- a/Mage.Sets/src/mage/cards/t/Tetravus.java +++ b/Mage.Sets/src/mage/cards/t/Tetravus.java @@ -155,7 +155,7 @@ class TetravusAddCountersEffect extends OneShotEffect { } FilterControlledPermanent filter = new FilterControlledPermanent("tokens created with " + permanent.getName()); filter.add(new TetravusPredicate(new MageObjectReference(permanent, game))); - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); ExileTargetCost cost = new ExileTargetCost(new TargetControlledPermanent(0, Integer.MAX_VALUE, filter, true)); if (cost.pay(source, game, source.getSourceId(), player.getId(), true)) { return new AddCountersSourceEffect(CounterType.P1P1.createInstance(cost.getPermanents().size())).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java b/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java index ae0d4677a0..70827ef6f7 100644 --- a/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java +++ b/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java @@ -34,8 +34,8 @@ public final class TetsuoUmezawa extends CardImpl { static { creatureFilter.add(Predicates.or( - new TappedPredicate(), - new BlockingPredicate())); + TappedPredicate.instance, + BlockingPredicate.instance)); } public TetsuoUmezawa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TheBigIdea.java b/Mage.Sets/src/mage/cards/t/TheBigIdea.java index 6bb1285d16..2ab0e150ab 100644 --- a/Mage.Sets/src/mage/cards/t/TheBigIdea.java +++ b/Mage.Sets/src/mage/cards/t/TheBigIdea.java @@ -38,7 +38,7 @@ public final class TheBigIdea extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(SubType.BRAINIAC, "Brainiac creatures"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public TheBigIdea(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TheftOfDreams.java b/Mage.Sets/src/mage/cards/t/TheftOfDreams.java index 3b7cf159f2..e226a53c67 100644 --- a/Mage.Sets/src/mage/cards/t/TheftOfDreams.java +++ b/Mage.Sets/src/mage/cards/t/TheftOfDreams.java @@ -61,7 +61,7 @@ class TheftOfDreamsEffect extends OneShotEffect { Player opponent = game.getPlayer(this.getTargetPointer().getFirst(game, source)); if (opponent != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ControllerIdPredicate(opponent.getId())); return new DrawCardSourceControllerEffect(game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game)).apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/t/ThelonsCurse.java b/Mage.Sets/src/mage/cards/t/ThelonsCurse.java index 9aeaf81971..07ebd1cf24 100644 --- a/Mage.Sets/src/mage/cards/t/ThelonsCurse.java +++ b/Mage.Sets/src/mage/cards/t/ThelonsCurse.java @@ -64,7 +64,7 @@ class ThelonsCurseEffect extends OneShotEffect { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("tapped blue creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(new ColorPredicate(ObjectColor.BLUE)); } diff --git a/Mage.Sets/src/mage/cards/t/ThievesAuction.java b/Mage.Sets/src/mage/cards/t/ThievesAuction.java index e95351a1a0..b9b27cf743 100644 --- a/Mage.Sets/src/mage/cards/t/ThievesAuction.java +++ b/Mage.Sets/src/mage/cards/t/ThievesAuction.java @@ -52,7 +52,7 @@ class ThievesAuctionEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("nontoken permanents"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } ThievesAuctionEffect() { diff --git a/Mage.Sets/src/mage/cards/t/ThopterFoundry.java b/Mage.Sets/src/mage/cards/t/ThopterFoundry.java index 77043b03a1..2c5a4c93c5 100644 --- a/Mage.Sets/src/mage/cards/t/ThopterFoundry.java +++ b/Mage.Sets/src/mage/cards/t/ThopterFoundry.java @@ -29,7 +29,7 @@ public final class ThopterFoundry extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public ThopterFoundry(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThousandWinds.java b/Mage.Sets/src/mage/cards/t/ThousandWinds.java index 5d1d868f0c..c9b591a169 100644 --- a/Mage.Sets/src/mage/cards/t/ThousandWinds.java +++ b/Mage.Sets/src/mage/cards/t/ThousandWinds.java @@ -26,7 +26,7 @@ public final class ThousandWinds extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public ThousandWinds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java b/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java index cc8b7e96ad..a8bf44ce26 100644 --- a/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java +++ b/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java @@ -23,7 +23,7 @@ public final class ThranTemporalGateway extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("a historic permanent card"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public ThranTemporalGateway(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThroneOfTheGodPharaoh.java b/Mage.Sets/src/mage/cards/t/ThroneOfTheGodPharaoh.java index 747ddcd3f4..4c485da646 100644 --- a/Mage.Sets/src/mage/cards/t/ThroneOfTheGodPharaoh.java +++ b/Mage.Sets/src/mage/cards/t/ThroneOfTheGodPharaoh.java @@ -23,7 +23,7 @@ public final class ThroneOfTheGodPharaoh extends CardImpl { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("tapped creature you control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public ThroneOfTheGodPharaoh(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Thunderstaff.java b/Mage.Sets/src/mage/cards/t/Thunderstaff.java index 7e6da62765..0436b5a396 100644 --- a/Mage.Sets/src/mage/cards/t/Thunderstaff.java +++ b/Mage.Sets/src/mage/cards/t/Thunderstaff.java @@ -28,7 +28,7 @@ public final class Thunderstaff extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Attacking creatures"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Thunderstaff(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 744235947a..7b07d3e74a 100644 --- a/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java +++ b/Mage.Sets/src/mage/cards/t/TilonallisSkinshifter.java @@ -34,7 +34,7 @@ public final class TilonallisSkinshifter extends CardImpl { static { filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/t/TimeElemental.java b/Mage.Sets/src/mage/cards/t/TimeElemental.java index 30f7e61094..da36a63b46 100644 --- a/Mage.Sets/src/mage/cards/t/TimeElemental.java +++ b/Mage.Sets/src/mage/cards/t/TimeElemental.java @@ -34,7 +34,7 @@ public final class TimeElemental extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("permanent that isn't enchanted"); static { - filter.add(Predicates.not(new EnchantedPredicate())); + filter.add(Predicates.not(EnchantedPredicate.instance)); } public TimeElemental(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TimeOfIce.java b/Mage.Sets/src/mage/cards/t/TimeOfIce.java index 10780d7b64..01f9bc08d3 100644 --- a/Mage.Sets/src/mage/cards/t/TimeOfIce.java +++ b/Mage.Sets/src/mage/cards/t/TimeOfIce.java @@ -37,7 +37,7 @@ public final class TimeOfIce extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creatures"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public TimeOfIce(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ToilToRenown.java b/Mage.Sets/src/mage/cards/t/ToilToRenown.java index 3ea6fd3ba5..41b1971317 100644 --- a/Mage.Sets/src/mage/cards/t/ToilToRenown.java +++ b/Mage.Sets/src/mage/cards/t/ToilToRenown.java @@ -23,7 +23,7 @@ public final class ToilToRenown extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("tapped artifact, creature, and land you control"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), diff --git a/Mage.Sets/src/mage/cards/t/TopanAscetic.java b/Mage.Sets/src/mage/cards/t/TopanAscetic.java index f4d1de3e1e..402ed8687f 100644 --- a/Mage.Sets/src/mage/cards/t/TopanAscetic.java +++ b/Mage.Sets/src/mage/cards/t/TopanAscetic.java @@ -25,7 +25,7 @@ public final class TopanAscetic extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static{ - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/t/TourachsGate.java b/Mage.Sets/src/mage/cards/t/TourachsGate.java index ac99921086..72912a4b95 100644 --- a/Mage.Sets/src/mage/cards/t/TourachsGate.java +++ b/Mage.Sets/src/mage/cards/t/TourachsGate.java @@ -53,12 +53,12 @@ public final class TourachsGate extends CardImpl { private static final FilterPermanent filterUntapped = new FilterPermanent("enchanted land is untapped"); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } private static final FilterCreaturePermanent filterAttackingCreatures = new FilterCreaturePermanent("attacking creatures you control"); static { - filterAttackingCreatures.add(new AttackingPredicate()); + filterAttackingCreatures.add(AttackingPredicate.instance); filterAttackingCreatures.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/t/TownGossipmonger.java b/Mage.Sets/src/mage/cards/t/TownGossipmonger.java index 8d53546072..b0b6c94785 100644 --- a/Mage.Sets/src/mage/cards/t/TownGossipmonger.java +++ b/Mage.Sets/src/mage/cards/t/TownGossipmonger.java @@ -28,7 +28,7 @@ public final class TownGossipmonger extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public TownGossipmonger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TradewindRider.java b/Mage.Sets/src/mage/cards/t/TradewindRider.java index d2e39d8ab5..794922dfec 100644 --- a/Mage.Sets/src/mage/cards/t/TradewindRider.java +++ b/Mage.Sets/src/mage/cards/t/TradewindRider.java @@ -28,7 +28,7 @@ public final class TradewindRider extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public TradewindRider(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrailOfMystery.java b/Mage.Sets/src/mage/cards/t/TrailOfMystery.java index 767196131c..544fb5147a 100644 --- a/Mage.Sets/src/mage/cards/t/TrailOfMystery.java +++ b/Mage.Sets/src/mage/cards/t/TrailOfMystery.java @@ -27,7 +27,7 @@ public final class TrailOfMystery extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a face-down creature"); static { - filter.add(new FaceDownPredicate()); + filter.add(FaceDownPredicate.instance); } public TrailOfMystery(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TraitorsRoar.java b/Mage.Sets/src/mage/cards/t/TraitorsRoar.java index 460722bc43..2201993bec 100644 --- a/Mage.Sets/src/mage/cards/t/TraitorsRoar.java +++ b/Mage.Sets/src/mage/cards/t/TraitorsRoar.java @@ -26,7 +26,7 @@ public final class TraitorsRoar extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("untapped creature"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public TraitorsRoar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrapRunner.java b/Mage.Sets/src/mage/cards/t/TrapRunner.java index 54f0da4cd4..6d4b06b2f5 100644 --- a/Mage.Sets/src/mage/cards/t/TrapRunner.java +++ b/Mage.Sets/src/mage/cards/t/TrapRunner.java @@ -36,8 +36,8 @@ public final class TrapRunner extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked attacking creature"); static { - filter.add(new AttackingPredicate()); - filter.add(Predicates.not(new BlockedPredicate())); + filter.add(AttackingPredicate.instance); + filter.add(Predicates.not(BlockedPredicate.instance)); } public TrapRunner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrialError.java b/Mage.Sets/src/mage/cards/t/TrialError.java index a27bd50f60..490b6b3f2e 100644 --- a/Mage.Sets/src/mage/cards/t/TrialError.java +++ b/Mage.Sets/src/mage/cards/t/TrialError.java @@ -32,7 +32,7 @@ public final class TrialError extends SplitCard { private static final FilterSpell filter = new FilterSpell("multicolored spell"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public TrialError(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Turnabout.java b/Mage.Sets/src/mage/cards/t/Turnabout.java index 47e2ae27a8..968a0cd1bb 100644 --- a/Mage.Sets/src/mage/cards/t/Turnabout.java +++ b/Mage.Sets/src/mage/cards/t/Turnabout.java @@ -110,14 +110,14 @@ class TurnaboutEffect extends OneShotEffect { filter.add(new CardTypePredicate(type)); if (choiceImpl.getChoice().equals("Untap")) { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { if (permanent.isControlledBy(target)) { permanent.untap(game); } } } else { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { if (permanent.isControlledBy(target)) { permanent.tap(game); diff --git a/Mage.Sets/src/mage/cards/t/TwilightDrover.java b/Mage.Sets/src/mage/cards/t/TwilightDrover.java index 95a2edf861..9b230eea48 100644 --- a/Mage.Sets/src/mage/cards/t/TwilightDrover.java +++ b/Mage.Sets/src/mage/cards/t/TwilightDrover.java @@ -29,7 +29,7 @@ public final class TwilightDrover extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature token"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public TwilightDrover(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java b/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java index d52c153360..a0cd5f7018 100644 --- a/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java +++ b/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java @@ -30,7 +30,7 @@ public final class TyrantsFamiliar extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public TyrantsFamiliar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UktabiKong.java b/Mage.Sets/src/mage/cards/u/UktabiKong.java index d3e92b6b97..1d2f31e7eb 100644 --- a/Mage.Sets/src/mage/cards/u/UktabiKong.java +++ b/Mage.Sets/src/mage/cards/u/UktabiKong.java @@ -31,7 +31,7 @@ public final class UktabiKong extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Apes you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.APE)); } diff --git a/Mage.Sets/src/mage/cards/u/UlrichsKindred.java b/Mage.Sets/src/mage/cards/u/UlrichsKindred.java index dc00e936dc..898256c9e7 100644 --- a/Mage.Sets/src/mage/cards/u/UlrichsKindred.java +++ b/Mage.Sets/src/mage/cards/u/UlrichsKindred.java @@ -30,7 +30,7 @@ public final class UlrichsKindred extends CardImpl { static { filter.add(Predicates.or(new SubtypePredicate(SubType.WOLF), new SubtypePredicate(SubType.WEREWOLF))); - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public UlrichsKindred(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UltimatePrice.java b/Mage.Sets/src/mage/cards/u/UltimatePrice.java index 7eee79cde8..5b37471c23 100644 --- a/Mage.Sets/src/mage/cards/u/UltimatePrice.java +++ b/Mage.Sets/src/mage/cards/u/UltimatePrice.java @@ -19,7 +19,7 @@ public final class UltimatePrice extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("monocolored creature"); static { - filter.add(new MonocoloredPredicate()); + filter.add(MonocoloredPredicate.instance); } public UltimatePrice(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UlvenwaldMysteries.java b/Mage.Sets/src/mage/cards/u/UlvenwaldMysteries.java index d130f99fd0..36d32c3d71 100644 --- a/Mage.Sets/src/mage/cards/u/UlvenwaldMysteries.java +++ b/Mage.Sets/src/mage/cards/u/UlvenwaldMysteries.java @@ -34,7 +34,7 @@ public final class UlvenwaldMysteries extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); filterClue.add(new SubtypePredicate(SubType.CLUE)); } diff --git a/Mage.Sets/src/mage/cards/u/UnlikelyAlliance.java b/Mage.Sets/src/mage/cards/u/UnlikelyAlliance.java index 169e39d2d9..7e36f41f16 100644 --- a/Mage.Sets/src/mage/cards/u/UnlikelyAlliance.java +++ b/Mage.Sets/src/mage/cards/u/UnlikelyAlliance.java @@ -26,8 +26,8 @@ public final class UnlikelyAlliance extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonattacking, nonblocking creature"); static { - filter.add(Predicates.not(new AttackingPredicate())); - filter.add(Predicates.not(new BlockingPredicate())); + filter.add(Predicates.not(AttackingPredicate.instance)); + filter.add(Predicates.not(BlockingPredicate.instance)); } public UnlikelyAlliance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UnravelingMummy.java b/Mage.Sets/src/mage/cards/u/UnravelingMummy.java index 4320bfa1e4..ff8bf52ac8 100644 --- a/Mage.Sets/src/mage/cards/u/UnravelingMummy.java +++ b/Mage.Sets/src/mage/cards/u/UnravelingMummy.java @@ -30,7 +30,7 @@ public final class UnravelingMummy extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking Zombie"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(new SubtypePredicate(SubType.ZOMBIE)); } diff --git a/Mage.Sets/src/mage/cards/u/UrgeToFeed.java b/Mage.Sets/src/mage/cards/u/UrgeToFeed.java index ca6852a51c..e5fbd52a95 100644 --- a/Mage.Sets/src/mage/cards/u/UrgeToFeed.java +++ b/Mage.Sets/src/mage/cards/u/UrgeToFeed.java @@ -50,7 +50,7 @@ class UrgeToFeedEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.VAMPIRE)); } diff --git a/Mage.Sets/src/mage/cards/u/UrzasFilter.java b/Mage.Sets/src/mage/cards/u/UrzasFilter.java index b9fd9d10cf..fb3d990ecd 100644 --- a/Mage.Sets/src/mage/cards/u/UrzasFilter.java +++ b/Mage.Sets/src/mage/cards/u/UrzasFilter.java @@ -20,7 +20,7 @@ public final class UrzasFilter extends CardImpl { private static final FilterCard filter = new FilterCard("multicolored spells"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public UrzasFilter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/Vengeance.java b/Mage.Sets/src/mage/cards/v/Vengeance.java index 10a628cdff..297badfe89 100644 --- a/Mage.Sets/src/mage/cards/v/Vengeance.java +++ b/Mage.Sets/src/mage/cards/v/Vengeance.java @@ -18,7 +18,7 @@ public final class Vengeance extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } public Vengeance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VenomousVines.java b/Mage.Sets/src/mage/cards/v/VenomousVines.java index 1b12f3b785..9016551b5e 100644 --- a/Mage.Sets/src/mage/cards/v/VenomousVines.java +++ b/Mage.Sets/src/mage/cards/v/VenomousVines.java @@ -19,7 +19,7 @@ public final class VenomousVines extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchanted permanent"); static { - filter.add(new EnchantedPredicate()); + filter.add(EnchantedPredicate.instance); } public VenomousVines(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VerdantSuccession.java b/Mage.Sets/src/mage/cards/v/VerdantSuccession.java index d46a2412fc..9e0f3ee887 100644 --- a/Mage.Sets/src/mage/cards/v/VerdantSuccession.java +++ b/Mage.Sets/src/mage/cards/v/VerdantSuccession.java @@ -56,7 +56,7 @@ class VerdantSuccessionTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public VerdantSuccessionTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/v/VeryCrypticCommandD.java b/Mage.Sets/src/mage/cards/v/VeryCrypticCommandD.java index 08f15a6ac9..412e468a95 100644 --- a/Mage.Sets/src/mage/cards/v/VeryCrypticCommandD.java +++ b/Mage.Sets/src/mage/cards/v/VeryCrypticCommandD.java @@ -40,7 +40,7 @@ public final class VeryCrypticCommandD extends CardImpl { static { filter.add(new NumberOfTargetsPredicate(1)); - filter2.add(Predicates.not(new TokenPredicate())); + filter2.add(Predicates.not(TokenPredicate.instance)); } public VeryCrypticCommandD(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VeteranBodyguard.java b/Mage.Sets/src/mage/cards/v/VeteranBodyguard.java index 7f90224c3f..d1442674c9 100644 --- a/Mage.Sets/src/mage/cards/v/VeteranBodyguard.java +++ b/Mage.Sets/src/mage/cards/v/VeteranBodyguard.java @@ -56,7 +56,7 @@ class VeteranBodyguardEffect extends ReplacementEffectImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("unblocked creatures"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } VeteranBodyguardEffect() { diff --git a/Mage.Sets/src/mage/cards/v/VeteranBrawlers.java b/Mage.Sets/src/mage/cards/v/VeteranBrawlers.java index 0eb7d3d8d6..bbc3d1eb1f 100644 --- a/Mage.Sets/src/mage/cards/v/VeteranBrawlers.java +++ b/Mage.Sets/src/mage/cards/v/VeteranBrawlers.java @@ -28,7 +28,7 @@ public final class VeteranBrawlers extends CardImpl { static final private FilterLandPermanent filter = new FilterLandPermanent("an untapped land"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } final static private String rule = "{this} can't block if you control an untapped land"; diff --git a/Mage.Sets/src/mage/cards/v/VeteranWarleader.java b/Mage.Sets/src/mage/cards/v/VeteranWarleader.java index fa02fdbda5..829f2ff652 100644 --- a/Mage.Sets/src/mage/cards/v/VeteranWarleader.java +++ b/Mage.Sets/src/mage/cards/v/VeteranWarleader.java @@ -44,7 +44,7 @@ public final class VeteranWarleader extends CardImpl { static { filter.add(AnotherPredicate.instance); filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public VeteranWarleader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VeteransVoice.java b/Mage.Sets/src/mage/cards/v/VeteransVoice.java index d49a943f00..ef9a5d895b 100644 --- a/Mage.Sets/src/mage/cards/v/VeteransVoice.java +++ b/Mage.Sets/src/mage/cards/v/VeteransVoice.java @@ -35,7 +35,7 @@ public final class VeteransVoice extends CardImpl { private static final FilterCreaturePermanent filterUntapped = new FilterCreaturePermanent("enchanted creature is untapped"); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } public VeteransVoice(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VintaraSnapper.java b/Mage.Sets/src/mage/cards/v/VintaraSnapper.java index b4b16b30f3..68f6d77c7b 100644 --- a/Mage.Sets/src/mage/cards/v/VintaraSnapper.java +++ b/Mage.Sets/src/mage/cards/v/VintaraSnapper.java @@ -28,7 +28,7 @@ public final class VintaraSnapper extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public VintaraSnapper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VirulentPlague.java b/Mage.Sets/src/mage/cards/v/VirulentPlague.java index 7dc9190f92..450da3f816 100644 --- a/Mage.Sets/src/mage/cards/v/VirulentPlague.java +++ b/Mage.Sets/src/mage/cards/v/VirulentPlague.java @@ -20,7 +20,7 @@ public final class VirulentPlague extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creature tokens"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); } public VirulentPlague(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VividRevival.java b/Mage.Sets/src/mage/cards/v/VividRevival.java index 267bf076bb..98cea2f988 100644 --- a/Mage.Sets/src/mage/cards/v/VividRevival.java +++ b/Mage.Sets/src/mage/cards/v/VividRevival.java @@ -19,7 +19,7 @@ public final class VividRevival extends CardImpl { private static final FilterCard filter = new FilterCard("multicolored cards from your graveyard"); static { - filter.add(new MulticoloredPredicate()); + filter.add(MulticoloredPredicate.instance); } public VividRevival(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VodalianWarMachine.java b/Mage.Sets/src/mage/cards/v/VodalianWarMachine.java index db4c321468..1b7d8dde0f 100644 --- a/Mage.Sets/src/mage/cards/v/VodalianWarMachine.java +++ b/Mage.Sets/src/mage/cards/v/VodalianWarMachine.java @@ -48,7 +48,7 @@ public final class VodalianWarMachine extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Merfolk you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.MERFOLK)); } diff --git a/Mage.Sets/src/mage/cards/v/VoiceOfTheWoods.java b/Mage.Sets/src/mage/cards/v/VoiceOfTheWoods.java index 1539f1eef8..5094e7e299 100644 --- a/Mage.Sets/src/mage/cards/v/VoiceOfTheWoods.java +++ b/Mage.Sets/src/mage/cards/v/VoiceOfTheWoods.java @@ -28,7 +28,7 @@ public final class VoiceOfTheWoods extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Elves you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.ELF)); } diff --git a/Mage.Sets/src/mage/cards/v/VolrathsGardens.java b/Mage.Sets/src/mage/cards/v/VolrathsGardens.java index e7a9f62da5..b6378c084f 100644 --- a/Mage.Sets/src/mage/cards/v/VolrathsGardens.java +++ b/Mage.Sets/src/mage/cards/v/VolrathsGardens.java @@ -25,7 +25,7 @@ public final class VolrathsGardens extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public VolrathsGardens(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WaitingInTheWeeds.java b/Mage.Sets/src/mage/cards/w/WaitingInTheWeeds.java index 727d9642ef..fe4bc24294 100644 --- a/Mage.Sets/src/mage/cards/w/WaitingInTheWeeds.java +++ b/Mage.Sets/src/mage/cards/w/WaitingInTheWeeds.java @@ -48,7 +48,7 @@ class WaitingInTheWeedsEffect extends OneShotEffect { static { filter.add(new SubtypePredicate(SubType.FOREST)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public WaitingInTheWeedsEffect() { diff --git a/Mage.Sets/src/mage/cards/w/WarkiteMarauder.java b/Mage.Sets/src/mage/cards/w/WarkiteMarauder.java index 69721f930a..be42a91567 100644 --- a/Mage.Sets/src/mage/cards/w/WarkiteMarauder.java +++ b/Mage.Sets/src/mage/cards/w/WarkiteMarauder.java @@ -26,7 +26,7 @@ public final class WarkiteMarauder extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls"); static { - filter.add(new DefendingPlayerControlsPredicate()); + filter.add(DefendingPlayerControlsPredicate.instance); } public WarkiteMarauder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/Warpath.java b/Mage.Sets/src/mage/cards/w/Warpath.java index d7a20a8b16..6839eb4045 100644 --- a/Mage.Sets/src/mage/cards/w/Warpath.java +++ b/Mage.Sets/src/mage/cards/w/Warpath.java @@ -21,8 +21,8 @@ public final class Warpath extends CardImpl { static { filter.add(Predicates.or( - new BlockingPredicate(), - new BlockedPredicate())); + BlockingPredicate.instance, + BlockedPredicate.instance)); } public Warpath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WaterspoutDjinn.java b/Mage.Sets/src/mage/cards/w/WaterspoutDjinn.java index b657f59730..2ccd435cb4 100644 --- a/Mage.Sets/src/mage/cards/w/WaterspoutDjinn.java +++ b/Mage.Sets/src/mage/cards/w/WaterspoutDjinn.java @@ -28,7 +28,7 @@ public final class WaterspoutDjinn extends CardImpl { static{ filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public WaterspoutDjinn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/Weakstone.java b/Mage.Sets/src/mage/cards/w/Weakstone.java index 7bb3a10a78..e1a1b16be7 100644 --- a/Mage.Sets/src/mage/cards/w/Weakstone.java +++ b/Mage.Sets/src/mage/cards/w/Weakstone.java @@ -21,7 +21,7 @@ public final class Weakstone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creatures"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public Weakstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/Weatherlight.java b/Mage.Sets/src/mage/cards/w/Weatherlight.java index 3c55c668ae..8caf7d30bc 100644 --- a/Mage.Sets/src/mage/cards/w/Weatherlight.java +++ b/Mage.Sets/src/mage/cards/w/Weatherlight.java @@ -26,7 +26,7 @@ public final class Weatherlight extends CardImpl { private static final FilterCard filter = new FilterCard("a historic card"); static { - filter.add(new HistoricPredicate()); + filter.add(HistoricPredicate.instance); } public Weatherlight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WeightOfConscience.java b/Mage.Sets/src/mage/cards/w/WeightOfConscience.java index 43706f2580..815d0bee3d 100644 --- a/Mage.Sets/src/mage/cards/w/WeightOfConscience.java +++ b/Mage.Sets/src/mage/cards/w/WeightOfConscience.java @@ -94,7 +94,7 @@ class WeightOfConscienceTarget extends TargetControlledCreaturePermanent { private static final FilterControlledCreaturePermanent filterUntapped = new FilterControlledCreaturePermanent("untapped creatures you control that share a creature type"); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } WeightOfConscienceTarget() { diff --git a/Mage.Sets/src/mage/cards/w/WellOfDiscovery.java b/Mage.Sets/src/mage/cards/w/WellOfDiscovery.java index ee3002f48b..e80ae567a6 100644 --- a/Mage.Sets/src/mage/cards/w/WellOfDiscovery.java +++ b/Mage.Sets/src/mage/cards/w/WellOfDiscovery.java @@ -24,7 +24,7 @@ public final class WellOfDiscovery extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public WellOfDiscovery(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WellOfLife.java b/Mage.Sets/src/mage/cards/w/WellOfLife.java index 775e1a02fd..c1e0f48441 100644 --- a/Mage.Sets/src/mage/cards/w/WellOfLife.java +++ b/Mage.Sets/src/mage/cards/w/WellOfLife.java @@ -24,7 +24,7 @@ public final class WellOfLife extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public WellOfLife(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WellgabberApothecary.java b/Mage.Sets/src/mage/cards/w/WellgabberApothecary.java index edd0537a12..26800c0af0 100644 --- a/Mage.Sets/src/mage/cards/w/WellgabberApothecary.java +++ b/Mage.Sets/src/mage/cards/w/WellgabberApothecary.java @@ -27,7 +27,7 @@ public final class WellgabberApothecary extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("target tapped Merfolk or Kithkin creature this turn"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); filter.add(Predicates.or(new SubtypePredicate(SubType.MERFOLK), new SubtypePredicate(SubType.KITHKIN))); } diff --git a/Mage.Sets/src/mage/cards/w/WhisperwoodElemental.java b/Mage.Sets/src/mage/cards/w/WhisperwoodElemental.java index ca07645b87..52b1ca830c 100644 --- a/Mage.Sets/src/mage/cards/w/WhisperwoodElemental.java +++ b/Mage.Sets/src/mage/cards/w/WhisperwoodElemental.java @@ -32,8 +32,8 @@ public final class WhisperwoodElemental extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("face-up, nontoken creatures you control"); static { - filter.add(Predicates.not(new FaceDownPredicate())); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(FaceDownPredicate.instance)); + filter.add(Predicates.not(TokenPredicate.instance)); } public WhisperwoodElemental(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WindbriskRaptor.java b/Mage.Sets/src/mage/cards/w/WindbriskRaptor.java index 1971335179..07be1f1d17 100644 --- a/Mage.Sets/src/mage/cards/w/WindbriskRaptor.java +++ b/Mage.Sets/src/mage/cards/w/WindbriskRaptor.java @@ -27,7 +27,7 @@ public final class WindbriskRaptor extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); } public WindbriskRaptor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WindsOfRath.java b/Mage.Sets/src/mage/cards/w/WindsOfRath.java index 559a4c83d9..84f591bef3 100644 --- a/Mage.Sets/src/mage/cards/w/WindsOfRath.java +++ b/Mage.Sets/src/mage/cards/w/WindsOfRath.java @@ -18,7 +18,7 @@ public final class WindsOfRath extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures that aren't enchanted"); static { - filter.add(Predicates.not(new EnchantedPredicate())); + filter.add(Predicates.not(EnchantedPredicate.instance)); } public WindsOfRath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WirewoodHivemaster.java b/Mage.Sets/src/mage/cards/w/WirewoodHivemaster.java index c584d2d403..87d646142a 100644 --- a/Mage.Sets/src/mage/cards/w/WirewoodHivemaster.java +++ b/Mage.Sets/src/mage/cards/w/WirewoodHivemaster.java @@ -27,7 +27,7 @@ public final class WirewoodHivemaster extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ELF)); filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } public WirewoodHivemaster(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); diff --git a/Mage.Sets/src/mage/cards/w/WoodElemental.java b/Mage.Sets/src/mage/cards/w/WoodElemental.java index 5657c3a83a..39c7218a3e 100644 --- a/Mage.Sets/src/mage/cards/w/WoodElemental.java +++ b/Mage.Sets/src/mage/cards/w/WoodElemental.java @@ -62,7 +62,7 @@ class WoodElementalEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Forests you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SubtypePredicate(SubType.FOREST)); } diff --git a/Mage.Sets/src/mage/cards/z/ZadasCommando.java b/Mage.Sets/src/mage/cards/z/ZadasCommando.java index 123eff9f26..ee55962b5f 100644 --- a/Mage.Sets/src/mage/cards/z/ZadasCommando.java +++ b/Mage.Sets/src/mage/cards/z/ZadasCommando.java @@ -32,7 +32,7 @@ public final class ZadasCommando extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ZadasCommando(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZahidDjinnOfTheLamp.java b/Mage.Sets/src/mage/cards/z/ZahidDjinnOfTheLamp.java index d621d2d23c..47144a1ce1 100644 --- a/Mage.Sets/src/mage/cards/z/ZahidDjinnOfTheLamp.java +++ b/Mage.Sets/src/mage/cards/z/ZahidDjinnOfTheLamp.java @@ -35,7 +35,7 @@ public final class ZahidDjinnOfTheLamp extends CardImpl { AlternativeCostSourceAbility alternativeCostSourceAbility = new AlternativeCostSourceAbility(new ManaCostsImpl("{3}{U}"), null, "You may pay {3}{U} and tap an untapped artifact you control rather than pay this spell's mana cost."); FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("untapped artifact you control"); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); alternativeCostSourceAbility.addCost(new TapTargetCost(new TargetControlledPermanent(filter))); this.addAbility(alternativeCostSourceAbility); diff --git a/Mage.Sets/src/mage/cards/z/ZombieTrailblazer.java b/Mage.Sets/src/mage/cards/z/ZombieTrailblazer.java index ea75ba5c22..6e8358a724 100644 --- a/Mage.Sets/src/mage/cards/z/ZombieTrailblazer.java +++ b/Mage.Sets/src/mage/cards/z/ZombieTrailblazer.java @@ -34,7 +34,7 @@ public final class ZombieTrailblazer extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ZOMBIE)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ZombieTrailblazer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZulaportChainmage.java b/Mage.Sets/src/mage/cards/z/ZulaportChainmage.java index d18e9b05d0..0ad6f5d0ab 100644 --- a/Mage.Sets/src/mage/cards/z/ZulaportChainmage.java +++ b/Mage.Sets/src/mage/cards/z/ZulaportChainmage.java @@ -30,7 +30,7 @@ public final class ZulaportChainmage extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } public ZulaportChainmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java index b87b7c0a9d..bf78aae676 100644 --- a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java +++ b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java @@ -1159,7 +1159,7 @@ public class TestPlayer implements Player { findPermanent(firstFilter, groups[0], computerPlayer.getId(), game); // Second check to filter creature for combat - less strict to workaround issue in #3038 FilterCreatureForCombat secondFilter = new FilterCreatureForCombat(); - // secondFilter.add(Predicates.not(new AttackingPredicate())); + // secondFilter.add(Predicates.not(AttackingPredicate.instance)); secondFilter.add(Predicates.not(new SummoningSicknessPredicate())); // TODO: Cannot enforce legal attackers multiple times per combat. See issue #3038 Permanent attacker = findPermanent(secondFilter, groups[0], computerPlayer.getId(), game, false); diff --git a/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java index a74f8d7962..59b4cbdf40 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java @@ -34,7 +34,7 @@ public class PopulateEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("token for populate"); static { - filter.add(new TokenPredicate()); + filter.add(TokenPredicate.instance); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/UntapLandsEffect.java b/Mage/src/main/java/mage/abilities/effects/common/UntapLandsEffect.java index ccc695b67b..05540aeb2c 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/UntapLandsEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/UntapLandsEffect.java @@ -20,7 +20,7 @@ public class UntapLandsEffect extends OneShotEffect { private static final FilterLandPermanent filter = new FilterLandPermanent("untapped lands"); static { - filter.add(new TappedPredicate()); + filter.add(TappedPredicate.instance); } private final int amount; private final boolean upTo; diff --git a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java index 30778d34e2..9854465661 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java @@ -55,7 +55,7 @@ public class ConspireAbility extends StaticAbility implements OptionalAdditional protected static final String CONSPIRE_ACTIVATION_KEY = "ConspireActivation"; static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SharesColorWithSourcePredicate()); filter.add(new CardTypePredicate(CardType.CREATURE)); } diff --git a/Mage/src/main/java/mage/abilities/keyword/ConvokeAbility.java b/Mage/src/main/java/mage/abilities/keyword/ConvokeAbility.java index afba2dcd99..19a50c3e32 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ConvokeAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ConvokeAbility.java @@ -69,7 +69,7 @@ public class ConvokeAbility extends SimpleStaticAbility implements AlternateMana private static final FilterCreaturePermanent filterUntapped = new FilterCreaturePermanent(); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } public ConvokeAbility() { @@ -96,7 +96,7 @@ public class ConvokeAbility extends SimpleStaticAbility implements AlternateMana specialAction.setSourceId(source.getSourceId()); // create filter for possible creatures to tap FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); if (unpaid.getMana().getGeneric() == 0) { List colorPredicates = new ArrayList<>(); if (unpaid.getMana().getBlack() > 0) { diff --git a/Mage/src/main/java/mage/abilities/keyword/CrewAbility.java b/Mage/src/main/java/mage/abilities/keyword/CrewAbility.java index c4d9502957..f5a3c314dc 100644 --- a/Mage/src/main/java/mage/abilities/keyword/CrewAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/CrewAbility.java @@ -54,7 +54,7 @@ class CrewCost extends CostImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control"); static { - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); } private final int value; diff --git a/Mage/src/main/java/mage/abilities/keyword/ImproviseAbility.java b/Mage/src/main/java/mage/abilities/keyword/ImproviseAbility.java index f3a9f36d65..7418145817 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ImproviseAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ImproviseAbility.java @@ -37,7 +37,7 @@ public class ImproviseAbility extends SimpleStaticAbility implements AlternateMa private static final FilterArtifactPermanent filterUntapped = new FilterArtifactPermanent(); static { - filterUntapped.add(Predicates.not(new TappedPredicate())); + filterUntapped.add(Predicates.not(TappedPredicate.instance)); } public ImproviseAbility() { @@ -64,7 +64,7 @@ public class ImproviseAbility extends SimpleStaticAbility implements AlternateMa specialAction.setSourceId(source.getSourceId()); // create filter for possible artifacts to tap FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent(); - filter.add(Predicates.not(new TappedPredicate())); + filter.add(Predicates.not(TappedPredicate.instance)); Target target = new TargetControlledPermanent(1, unpaid.getMana().getGeneric(), filter, true); target.setTargetName("artifact to Improvise"); specialAction.addTarget(target); diff --git a/Mage/src/main/java/mage/abilities/keyword/MentorAbility.java b/Mage/src/main/java/mage/abilities/keyword/MentorAbility.java index 85f700357f..e7fbee0fb7 100644 --- a/Mage/src/main/java/mage/abilities/keyword/MentorAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/MentorAbility.java @@ -20,7 +20,7 @@ public class MentorAbility extends AttacksTriggeredAbility { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("attacking creature with lesser power"); static { - filter.add(new AttackingPredicate()); + filter.add(AttackingPredicate.instance); filter.add(MentorAbilityPredicate.instance); } diff --git a/Mage/src/main/java/mage/abilities/keyword/NinjutsuAbility.java b/Mage/src/main/java/mage/abilities/keyword/NinjutsuAbility.java index ce728b1f75..e63ae4d5a2 100644 --- a/Mage/src/main/java/mage/abilities/keyword/NinjutsuAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/NinjutsuAbility.java @@ -47,7 +47,7 @@ public class NinjutsuAbility extends ActivatedAbilityImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("unblocked attacker you control"); static { - filter.add(new UnblockedPredicate()); + filter.add(UnblockedPredicate.instance); } /** diff --git a/Mage/src/main/java/mage/filter/StaticFilters.java b/Mage/src/main/java/mage/filter/StaticFilters.java index bb5a1a2154..a21da63a26 100644 --- a/Mage/src/main/java/mage/filter/StaticFilters.java +++ b/Mage/src/main/java/mage/filter/StaticFilters.java @@ -463,7 +463,7 @@ public final class StaticFilters { public static final FilterSpell FILTER_SPELL_A_MULTICOLORED = new FilterSpell("a multicolored spell"); static { - FILTER_SPELL_A_MULTICOLORED.add(new MulticoloredPredicate()); + FILTER_SPELL_A_MULTICOLORED.add(MulticoloredPredicate.instance); FILTER_SPELL_A_MULTICOLORED.setLockedFilter(true); } @@ -500,14 +500,14 @@ public final class StaticFilters { public static final FilterCreaturePermanent FILTER_CREATURE_TOKENS = new FilterCreaturePermanent("creature tokens"); static { - FILTER_CREATURE_TOKENS.add(new TokenPredicate()); + FILTER_CREATURE_TOKENS.add(TokenPredicate.instance); FILTER_CREATURE_TOKENS.setLockedFilter(true); } public static final FilterCreaturePermanent FILTER_ATTACKING_CREATURES = new FilterCreaturePermanent("attacking creatures"); static { - FILTER_ATTACKING_CREATURES.add(new AttackingPredicate()); + FILTER_ATTACKING_CREATURES.add(AttackingPredicate.instance); FILTER_ATTACKING_CREATURES.setLockedFilter(true); } diff --git a/Mage/src/main/java/mage/filter/common/FilterAttackingCreature.java b/Mage/src/main/java/mage/filter/common/FilterAttackingCreature.java index 90d1271aec..ac3564f19f 100644 --- a/Mage/src/main/java/mage/filter/common/FilterAttackingCreature.java +++ b/Mage/src/main/java/mage/filter/common/FilterAttackingCreature.java @@ -16,7 +16,7 @@ public class FilterAttackingCreature extends FilterCreaturePermanent { public FilterAttackingCreature(String name) { super(name); - this.add(new AttackingPredicate()); + this.add(AttackingPredicate.instance); } public FilterAttackingCreature(final FilterAttackingCreature filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterAttackingOrBlockingCreature.java b/Mage/src/main/java/mage/filter/common/FilterAttackingOrBlockingCreature.java index aaaa446e1c..2cb8bbfe23 100644 --- a/Mage/src/main/java/mage/filter/common/FilterAttackingOrBlockingCreature.java +++ b/Mage/src/main/java/mage/filter/common/FilterAttackingOrBlockingCreature.java @@ -19,8 +19,8 @@ public class FilterAttackingOrBlockingCreature extends FilterCreaturePermanent { public FilterAttackingOrBlockingCreature(String name) { super(name); this.add(Predicates.or( - new AttackingPredicate(), - new BlockingPredicate())); + AttackingPredicate.instance, + BlockingPredicate.instance)); } public FilterAttackingOrBlockingCreature(final FilterAttackingOrBlockingCreature filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterBlockingCreature.java b/Mage/src/main/java/mage/filter/common/FilterBlockingCreature.java index 9a285ba6c6..660b9abf15 100644 --- a/Mage/src/main/java/mage/filter/common/FilterBlockingCreature.java +++ b/Mage/src/main/java/mage/filter/common/FilterBlockingCreature.java @@ -15,7 +15,7 @@ public class FilterBlockingCreature extends FilterCreaturePermanent { public FilterBlockingCreature(String name) { super(name); - this.add(new BlockingPredicate()); + this.add(BlockingPredicate.instance); } public FilterBlockingCreature(final FilterBlockingCreature filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureForAttack.java b/Mage/src/main/java/mage/filter/common/FilterCreatureForAttack.java index 112685b0dd..68b75d7926 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureForAttack.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureForAttack.java @@ -25,9 +25,9 @@ public class FilterCreatureForAttack extends FilterCreaturePermanent { public FilterCreatureForAttack(String name) { super(name); - this.add(Predicates.not(new AttackingPredicate())); - this.add(Predicates.not(new BlockingPredicate())); - this.add(Predicates.not(new TappedPredicate())); + this.add(Predicates.not(AttackingPredicate.instance)); + this.add(Predicates.not(BlockingPredicate.instance)); + this.add(Predicates.not(TappedPredicate.instance)); this.add(Predicates.not(new AbilityPredicate(DefenderAbility.class))); this.add(new CanTapPredicate()); } diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureForCombat.java b/Mage/src/main/java/mage/filter/common/FilterCreatureForCombat.java index 5b418ce182..dc94c1fa32 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureForCombat.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureForCombat.java @@ -18,7 +18,7 @@ public class FilterCreatureForCombat extends FilterCreatureForCombatBase { public FilterCreatureForCombat(String name) { super(name); - this.add(Predicates.not(new TappedPredicate())); + this.add(Predicates.not(TappedPredicate.instance)); } public FilterCreatureForCombat(final FilterCreatureForCombat filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureForCombatBase.java b/Mage/src/main/java/mage/filter/common/FilterCreatureForCombatBase.java index 195d4cefcb..a5daa73e32 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureForCombatBase.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureForCombatBase.java @@ -22,7 +22,7 @@ public class FilterCreatureForCombatBase extends FilterCreaturePermanent { public FilterCreatureForCombatBase(String name) { super(name); - this.add(Predicates.not(new AttackingPredicate())); + this.add(Predicates.not(AttackingPredicate.instance)); this.add(new PhasedInPredicate()); this.add(new CanBlockPredicate()); } diff --git a/Mage/src/main/java/mage/filter/common/FilterHistoricCard.java b/Mage/src/main/java/mage/filter/common/FilterHistoricCard.java index fc843f163c..eb3f7cf1c1 100644 --- a/Mage/src/main/java/mage/filter/common/FilterHistoricCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterHistoricCard.java @@ -20,7 +20,7 @@ public class FilterHistoricCard extends FilterCard { public FilterHistoricCard(String name) { super(name); - this.add(new HistoricPredicate()); + this.add(HistoricPredicate.instance); } public FilterHistoricCard(final FilterHistoricCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterHistoricSpell.java b/Mage/src/main/java/mage/filter/common/FilterHistoricSpell.java index d6b59a6cc7..13ccb99ea1 100644 --- a/Mage/src/main/java/mage/filter/common/FilterHistoricSpell.java +++ b/Mage/src/main/java/mage/filter/common/FilterHistoricSpell.java @@ -16,7 +16,7 @@ public class FilterHistoricSpell extends FilterSpell { public FilterHistoricSpell(String name) { super(name); - this.add(new HistoricPredicate()); + this.add(HistoricPredicate.instance); } public FilterHistoricSpell(final FilterHistoricSpell filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterUntappedCreature.java b/Mage/src/main/java/mage/filter/common/FilterUntappedCreature.java index 13f1ee652a..ebf7c43da1 100644 --- a/Mage/src/main/java/mage/filter/common/FilterUntappedCreature.java +++ b/Mage/src/main/java/mage/filter/common/FilterUntappedCreature.java @@ -17,7 +17,7 @@ public class FilterUntappedCreature extends FilterCreaturePermanent { public FilterUntappedCreature(String name) { super(name); - this.add(Predicates.not(new TappedPredicate())); + this.add(Predicates.not(TappedPredicate.instance)); } public FilterUntappedCreature(final FilterUntappedCreature filter) { diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/HistoricPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/HistoricPredicate.java index fa862b16b8..39d0a7c15f 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/HistoricPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/HistoricPredicate.java @@ -10,10 +10,10 @@ import mage.filter.predicate.Predicate; import mage.game.Game; /** - * * @author LevelX2 */ -public class HistoricPredicate implements Predicate { +public enum HistoricPredicate implements Predicate { + instance; @Override public boolean apply(MageObject input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/MonocoloredPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/MonocoloredPredicate.java index 66d98053ec..50172d93ad 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/MonocoloredPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/MonocoloredPredicate.java @@ -6,10 +6,10 @@ import mage.filter.predicate.Predicate; import mage.game.Game; /** - * * @author LevelX2 */ -public class MonocoloredPredicate implements Predicate { +public enum MonocoloredPredicate implements Predicate { + instance; @Override public boolean apply(MageObject input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/MulticoloredPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/MulticoloredPredicate.java index f159866611..58a5937d74 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/MulticoloredPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/MulticoloredPredicate.java @@ -8,10 +8,10 @@ import mage.filter.predicate.Predicate; import mage.game.Game; /** - * * @author jeffwadsworth */ -public class MulticoloredPredicate implements Predicate { +public enum MulticoloredPredicate implements Predicate { + instance; @Override public boolean apply(MageObject input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/other/FaceDownPredicate.java b/Mage/src/main/java/mage/filter/predicate/other/FaceDownPredicate.java index 1253e4fb1e..c6079cf9d4 100644 --- a/Mage/src/main/java/mage/filter/predicate/other/FaceDownPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/other/FaceDownPredicate.java @@ -6,10 +6,10 @@ import mage.filter.predicate.Predicate; import mage.game.Game; /** - * * @author North */ -public class FaceDownPredicate implements Predicate { +public enum FaceDownPredicate implements Predicate { + instance; @Override public boolean apply(Card input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/AttackingPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/AttackingPredicate.java index 871661f0bc..899967ab45 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/AttackingPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/AttackingPredicate.java @@ -6,10 +6,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author North */ -public class AttackingPredicate implements Predicate { +public enum AttackingPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/BlockedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/BlockedPredicate.java index 1e0ef1f468..97fd2a2f54 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/BlockedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/BlockedPredicate.java @@ -6,10 +6,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author North */ -public class BlockedPredicate implements Predicate { +public enum BlockedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/BlockingPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/BlockingPredicate.java index 3360109111..cf2c3f7c55 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/BlockingPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/BlockingPredicate.java @@ -6,10 +6,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author North */ -public class BlockingPredicate implements Predicate { +public enum BlockingPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java index 8be4989a9f..58bc4269b2 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java @@ -11,10 +11,10 @@ import mage.game.permanent.Permanent; import mage.players.Player; /** - * * @author LevelX2 */ -public class CommanderPredicate implements Predicate { +public enum CommanderPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/CounterAnyPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/CounterAnyPredicate.java index 71065e54e3..228f1dd628 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/CounterAnyPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/CounterAnyPredicate.java @@ -1,19 +1,15 @@ package mage.filter.predicate.permanent; -import mage.counters.Counter; import mage.filter.predicate.Predicate; import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author LevelX2 */ -public class CounterAnyPredicate implements Predicate { - - public CounterAnyPredicate() { - } +public enum CounterAnyPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/DefendingPlayerControlsPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/DefendingPlayerControlsPredicate.java index 0ec99dfe6c..85fc626df4 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/DefendingPlayerControlsPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/DefendingPlayerControlsPredicate.java @@ -7,10 +7,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author TheElk801 */ -public class DefendingPlayerControlsPredicate implements ObjectSourcePlayerPredicate> { +public enum DefendingPlayerControlsPredicate implements ObjectSourcePlayerPredicate> { + instance; @Override public boolean apply(ObjectSourcePlayer input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/EnchantedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/EnchantedPredicate.java index c548735dc5..71491195df 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/EnchantedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/EnchantedPredicate.java @@ -1,19 +1,18 @@ package mage.filter.predicate.permanent; -import java.util.Objects; -import java.util.UUID; - import mage.MageObject; import mage.filter.predicate.Predicate; import mage.game.Game; import mage.game.permanent.Permanent; +import java.util.Objects; + /** - * * @author LevelX2 */ -public class EnchantedPredicate implements Predicate { +public enum EnchantedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { @@ -26,6 +25,6 @@ public class EnchantedPredicate implements Predicate { @Override public String toString() { - return "Enchanted" ; + return "Enchanted"; } } diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/EquippedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/EquippedPredicate.java index cb0b266d9e..c92c414594 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/EquippedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/EquippedPredicate.java @@ -15,7 +15,8 @@ import java.util.Objects; /** * @author LevelX2 */ -public class EquippedPredicate implements Predicate { +public enum EquippedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/TappedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/TappedPredicate.java index fb3319ac46..2b4d720d9c 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/TappedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/TappedPredicate.java @@ -6,10 +6,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author North */ -public class TappedPredicate implements Predicate { +public enum TappedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/TokenPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/TokenPredicate.java index 61afd03d76..97e8f49f5e 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/TokenPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/TokenPredicate.java @@ -7,10 +7,10 @@ import mage.game.permanent.Permanent; import mage.game.permanent.PermanentToken; /** - * * @author North */ -public class TokenPredicate implements Predicate { +public enum TokenPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/TransformedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/TransformedPredicate.java index 8cbcf132be..9479bcf814 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/TransformedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/TransformedPredicate.java @@ -6,10 +6,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; /** - * * @author Saga */ -public class TransformedPredicate implements Predicate { +public enum TransformedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { @@ -18,6 +18,6 @@ public class TransformedPredicate implements Predicate { @Override public String toString() { - return "Transformed" ; + return "Transformed"; } } \ No newline at end of file diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/UnblockedPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/UnblockedPredicate.java index 4b164bc4ae..2bcff6037f 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/UnblockedPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/UnblockedPredicate.java @@ -13,7 +13,8 @@ import mage.game.turn.Step; * * @author LevelX2 */ -public class UnblockedPredicate implements Predicate { +public enum UnblockedPredicate implements Predicate { + instance; @Override public boolean apply(Permanent input, Game game) { diff --git a/Mage/src/main/java/mage/game/command/emblems/AurraSingBaneOfJediEmblem.java b/Mage/src/main/java/mage/game/command/emblems/AurraSingBaneOfJediEmblem.java index 8917e9a01f..30763b68c2 100644 --- a/Mage/src/main/java/mage/game/command/emblems/AurraSingBaneOfJediEmblem.java +++ b/Mage/src/main/java/mage/game/command/emblems/AurraSingBaneOfJediEmblem.java @@ -18,7 +18,7 @@ public final class AurraSingBaneOfJediEmblem extends Emblem { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a nontoken creature you control"); static { - filter.add(Predicates.not(new TokenPredicate())); + filter.add(Predicates.not(TokenPredicate.instance)); } // Whenever a nontoken creature you control leaves the battlefied, discard a card. diff --git a/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java b/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java index 784207f8c1..0b5da1d1e4 100644 --- a/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java @@ -35,7 +35,7 @@ public class AkoumPlane extends Plane { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature that isn't enchanted"); static { - filter.add(Predicates.not(new EnchantedPredicate())); + filter.add(Predicates.not(EnchantedPredicate.instance)); filterCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); }