From 9a603fbaab662e45d7d25364aea0e55534542b36 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 11:33:21 -0500 Subject: [PATCH 01/10] replaced StaticValue with singletons --- .../src/mage/cards/a/AcclaimedContender.java | 2 +- .../src/mage/cards/a/AdventurousImpulse.java | 2 +- .../src/mage/cards/a/AjanisInfluence.java | 2 +- .../src/mage/cards/a/AkiriLineSlinger.java | 2 +- Mage.Sets/src/mage/cards/a/AkroanHoplite.java | 2 +- Mage.Sets/src/mage/cards/a/AllHallowsEve.java | 2 +- .../src/mage/cards/a/AncestralMemories.java | 2 +- .../src/mage/cards/a/AncientStirrings.java | 2 +- Mage.Sets/src/mage/cards/a/Anticipate.java | 2 +- Mage.Sets/src/mage/cards/a/ArcBlade.java | 2 +- Mage.Sets/src/mage/cards/a/ArcaneDenial.java | 2 +- Mage.Sets/src/mage/cards/a/ArcanistsOwl.java | 2 +- Mage.Sets/src/mage/cards/a/Arcbond.java | 2 +- .../src/mage/cards/a/ArmageddonClock.java | 2 +- Mage.Sets/src/mage/cards/a/ArterialFlow.java | 2 +- Mage.Sets/src/mage/cards/a/AsForetold.java | 2 +- Mage.Sets/src/mage/cards/a/Aurochs.java | 2 +- Mage.Sets/src/mage/cards/a/AurochsHerd.java | 2 +- .../mage/cards/a/AzcantaTheSunkenRuin.java | 2 +- Mage.Sets/src/mage/cards/b/BalduvianRage.java | 2 +- .../src/mage/cards/b/BedeckBedazzle.java | 2 +- .../src/mage/cards/b/BelltowerSphinx.java | 2 +- .../src/mage/cards/b/BenalishHonorGuard.java | 2 +- Mage.Sets/src/mage/cards/b/Berserk.java | 2 +- .../src/mage/cards/b/BiteOfTheBlackRose.java | 2 +- .../src/mage/cards/b/BitterRevelation.java | 2 +- Mage.Sets/src/mage/cards/b/BlazingShoal.java | 2 +- Mage.Sets/src/mage/cards/b/BloodLust.java | 2 +- .../src/mage/cards/b/BloodcurdlingScream.java | 2 +- .../mage/cards/b/BoardTheWeatherlight.java | 2 +- .../src/mage/cards/b/BondOfFlourishing.java | 4 +- Mage.Sets/src/mage/cards/b/BullAurochs.java | 2 +- Mage.Sets/src/mage/cards/b/BurglarRat.java | 2 +- .../src/mage/cards/b/BurningTreeShaman.java | 2 +- Mage.Sets/src/mage/cards/c/CabalPaladin.java | 2 +- Mage.Sets/src/mage/cards/c/CacklingWitch.java | 2 +- .../src/mage/cards/c/CaligoSkinWitch.java | 2 +- .../src/mage/cards/c/CapitalPunishment.java | 2 +- .../src/mage/cards/c/ChandraPyrogenius.java | 2 +- .../mage/cards/c/ChandraTorchOfDefiance.java | 2 +- .../src/mage/cards/c/ChronomanticEscape.java | 2 +- Mage.Sets/src/mage/cards/c/CivicSaber.java | 2 +- .../src/mage/cards/c/CloakingDevice.java | 2 +- .../mage/cards/c/CommuneWithDinosaurs.java | 2 +- .../src/mage/cards/c/CommuneWithNature.java | 2 +- .../src/mage/cards/c/ConclavesBlessing.java | 2 +- .../src/mage/cards/c/ContingencyPlan.java | 2 +- .../src/mage/cards/c/CourageousOutrider.java | 2 +- Mage.Sets/src/mage/cards/c/CourtHussar.java | 2 +- .../src/mage/cards/c/CranialPlating.java | 2 +- .../src/mage/cards/c/CraterElemental.java | 2 +- .../src/mage/cards/c/CrescendoOfWar.java | 4 +- .../src/mage/cards/c/CrosstownCourier.java | 2 +- Mage.Sets/src/mage/cards/c/CunningStrike.java | 4 +- .../mage/cards/c/CurseOfShallowGraves.java | 2 +- .../src/mage/cards/c/CurseOfTheCabal.java | 2 +- .../src/mage/cards/c/CyclicalEvolution.java | 2 +- Mage.Sets/src/mage/cards/d/DemonsHorn.java | 2 +- .../src/mage/cards/d/DemonspineWhip.java | 2 +- .../src/mage/cards/d/DiabolicVision.java | 2 +- .../src/mage/cards/d/DigThroughTime.java | 2 +- .../src/mage/cards/d/DiscoveryDispersal.java | 2 +- .../mage/cards/d/DisinformationCampaign.java | 2 +- .../src/mage/cards/d/DomriChaosBringer.java | 2 +- .../src/mage/cards/d/DovinGrandArbiter.java | 4 +- .../src/mage/cards/d/DownhillCharge.java | 2 +- .../src/mage/cards/d/DragonlordOjutai.java | 2 +- .../cards/d/DranaKalastriaBloodchief.java | 4 +- .../src/mage/cards/d/DrawnFromDreams.java | 2 +- Mage.Sets/src/mage/cards/e/Earthshaker.java | 2 +- .../src/mage/cards/e/EmberethSkyblazer.java | 2 +- Mage.Sets/src/mage/cards/e/EndlessScream.java | 2 +- Mage.Sets/src/mage/cards/e/Enrage.java | 2 +- .../src/mage/cards/e/ExpansionExplosion.java | 2 +- .../src/mage/cards/f/FaerieMechanist.java | 2 +- Mage.Sets/src/mage/cards/f/FatalFrenzy.java | 2 +- Mage.Sets/src/mage/cards/f/FatalLore.java | 2 +- Mage.Sets/src/mage/cards/f/FeralAnimist.java | 2 +- .../src/mage/cards/f/FesteringMarch.java | 2 +- Mage.Sets/src/mage/cards/f/FistsOfFlame.java | 2 +- Mage.Sets/src/mage/cards/f/Flamebreak.java | 2 +- .../src/mage/cards/f/ForbiddenAlchemy.java | 2 +- Mage.Sets/src/mage/cards/f/FoulEmissary.java | 2 +- Mage.Sets/src/mage/cards/g/GhoulsFeast.java | 2 +- .../mage/cards/g/GlaiveOfTheGuildpact.java | 2 +- .../src/mage/cards/g/GlimpseTheFuture.java | 2 +- .../src/mage/cards/g/GlintNestCrane.java | 2 +- .../src/mage/cards/g/GoblinGaveleer.java | 2 +- .../src/mage/cards/g/GoblinPiledriver.java | 2 +- .../src/mage/cards/g/GoblinRabblemaster.java | 2 +- .../src/mage/cards/g/GolemSkinGauntlets.java | 2 +- Mage.Sets/src/mage/cards/g/GreatDefender.java | 2 +- .../mage/cards/g/GrevenPredatorCaptain.java | 2 +- Mage.Sets/src/mage/cards/g/GrimFlayer.java | 2 +- .../src/mage/cards/g/GruulBeastmaster.java | 2 +- Mage.Sets/src/mage/cards/g/GurmagDrowner.java | 2 +- Mage.Sets/src/mage/cards/h/HarshMentor.java | 2 +- Mage.Sets/src/mage/cards/h/Hatred.java | 2 +- .../src/mage/cards/h/HeartlashCinder.java | 2 +- .../src/mage/cards/h/HellkiteIgniter.java | 2 +- Mage.Sets/src/mage/cards/h/HoldTheGates.java | 2 +- .../src/mage/cards/h/HowlFromBeyond.java | 2 +- .../src/mage/cards/h/HungerOfTheNim.java | 2 +- .../src/mage/cards/i/IchneumonDruid.java | 2 +- .../src/mage/cards/i/ImmolationShaman.java | 2 +- Mage.Sets/src/mage/cards/i/ImpactTremors.java | 2 +- Mage.Sets/src/mage/cards/i/Impulse.java | 2 +- .../mage/cards/i/IncubationIncongruity.java | 4 +- .../src/mage/cards/i/IndenturedDjinn.java | 2 +- .../src/mage/cards/i/InfiniteHourglass.java | 2 +- .../mage/cards/j/JaceTheLivingGuildpact.java | 2 +- Mage.Sets/src/mage/cards/k/KavuScout.java | 2 +- Mage.Sets/src/mage/cards/k/KessigWolfRun.java | 2 +- .../src/mage/cards/k/KitsuneLoreweaver.java | 2 +- .../src/mage/cards/k/KruphixsInsight.java | 2 +- Mage.Sets/src/mage/cards/k/KryShield.java | 2 +- Mage.Sets/src/mage/cards/k/KyloRen.java | 2 +- Mage.Sets/src/mage/cards/l/LastRites.java | 2 +- .../src/mage/cards/l/LavaclawReaches.java | 2 +- .../src/mage/cards/l/LavakinBrawler.java | 2 +- Mage.Sets/src/mage/cards/l/LichsTomb.java | 2 +- .../src/mage/cards/l/LilianasSpoils.java | 2 +- .../src/mage/cards/l/LilianasTriumph.java | 2 +- .../src/mage/cards/l/LodestoneBauble.java | 2 +- Mage.Sets/src/mage/cards/l/LoneRevenant.java | 2 +- .../src/mage/cards/l/LostOrderOfJarkeld.java | 2 +- Mage.Sets/src/mage/cards/m/Machinate.java | 2 +- Mage.Sets/src/mage/cards/m/MagmaSliver.java | 2 +- .../mage/cards/m/ManticoreOfTheGauntlet.java | 2 +- .../src/mage/cards/m/MeishinTheMindCage.java | 2 +- .../src/mage/cards/m/MemorialToUnity.java | 2 +- Mage.Sets/src/mage/cards/m/MephiticOoze.java | 2 +- .../src/mage/cards/m/MercadiasDownfall.java | 2 +- .../src/mage/cards/m/MercilessJavelineer.java | 2 +- .../src/mage/cards/m/MilitantInquisitor.java | 2 +- Mage.Sets/src/mage/cards/m/MilitiaBugler.java | 2 +- Mage.Sets/src/mage/cards/m/MobMentality.java | 2 +- .../src/mage/cards/m/MoodmarkPainter.java | 2 +- Mage.Sets/src/mage/cards/n/NagaOracle.java | 4 +- .../src/mage/cards/n/NaggingThoughts.java | 2 +- .../mage/cards/n/NajeelaTheBladeBlossom.java | 2 +- .../src/mage/cards/n/NarsetParterOfVeils.java | 2 +- .../mage/cards/n/NicolBolasTheRavager.java | 2 +- Mage.Sets/src/mage/cards/n/NimDevourer.java | 2 +- Mage.Sets/src/mage/cards/n/NimGrotesque.java | 2 +- Mage.Sets/src/mage/cards/n/NimLasher.java | 2 +- Mage.Sets/src/mage/cards/n/NimShambler.java | 2 +- Mage.Sets/src/mage/cards/n/NimShrieker.java | 2 +- .../src/mage/cards/n/NissaGenesisMage.java | 2 +- Mage.Sets/src/mage/cards/n/NullProfusion.java | 2 +- Mage.Sets/src/mage/cards/o/OathOfChandra.java | 2 +- Mage.Sets/src/mage/cards/o/OboroEnvoy.java | 2 +- .../src/mage/cards/o/OloroAgelessAscetic.java | 2 +- Mage.Sets/src/mage/cards/o/OnceUponATime.java | 2 +- Mage.Sets/src/mage/cards/o/OnwardVictory.java | 2 +- .../src/mage/cards/p/PeerThroughDepths.java | 2 +- .../src/mage/cards/p/PhyrexianNegator.java | 2 +- .../mage/cards/p/PhyrexianObliterator.java | 2 +- .../src/mage/cards/p/PhyrexianTotem.java | 2 +- .../src/mage/cards/p/PiecesOfThePuzzle.java | 2 +- Mage.Sets/src/mage/cards/p/PropheticBolt.java | 2 +- Mage.Sets/src/mage/cards/r/RabbleRouser.java | 2 +- Mage.Sets/src/mage/cards/r/RafterDemon.java | 2 +- Mage.Sets/src/mage/cards/r/RageExtractor.java | 2 +- .../src/mage/cards/r/RagebloodShaman.java | 2 +- .../src/mage/cards/r/RakdosRiteknife.java | 2 +- .../src/mage/cards/r/RalIzzetViceroy.java | 2 +- Mage.Sets/src/mage/cards/r/RalsOutburst.java | 2 +- .../src/mage/cards/r/RalsStaticaster.java | 2 +- Mage.Sets/src/mage/cards/r/RamunapRuins.java | 2 +- Mage.Sets/src/mage/cards/r/RansackTheLab.java | 2 +- Mage.Sets/src/mage/cards/r/RatColony.java | 2 +- Mage.Sets/src/mage/cards/r/RavenFamiliar.java | 2 +- Mage.Sets/src/mage/cards/r/RealityStrobe.java | 2 +- .../src/mage/cards/r/RimehornAurochs.java | 2 +- .../src/mage/cards/r/RiptideMangler.java | 2 +- .../src/mage/cards/r/RoilmagesTrick.java | 2 +- .../src/mage/cards/r/RubblebeltRioters.java | 2 +- .../src/mage/cards/r/RunechantersPike.java | 2 +- Mage.Sets/src/mage/cards/r/RushOfBlood.java | 2 +- .../src/mage/cards/r/RuthlessSniper.java | 2 +- .../src/mage/cards/s/SalvageSlasher.java | 2 +- .../src/mage/cards/s/SarkhanFireblood.java | 2 +- .../src/mage/cards/s/SarkhansDragonfire.java | 2 +- Mage.Sets/src/mage/cards/s/SeaGateOracle.java | 2 +- Mage.Sets/src/mage/cards/s/SeekTheWilds.java | 2 +- Mage.Sets/src/mage/cards/s/Sentinel.java | 2 +- Mage.Sets/src/mage/cards/s/SentinelTower.java | 2 +- .../src/mage/cards/s/ShaleskinBruiser.java | 2 +- .../mage/cards/s/ShimmerOfPossibility.java | 2 +- .../src/mage/cards/s/SightBeyondSight.java | 2 +- .../src/mage/cards/s/SilhanaWayfinder.java | 2 +- .../src/mage/cards/s/SilvergillDouser.java | 2 +- .../mage/cards/s/SionaCaptainOfThePyleas.java | 2 +- Mage.Sets/src/mage/cards/s/SkallaWolf.java | 2 +- .../src/mage/cards/s/SkeletalScrying.java | 2 +- Mage.Sets/src/mage/cards/s/SleightOfHand.java | 2 +- Mage.Sets/src/mage/cards/s/SoTiny.java | 2 +- .../src/mage/cards/s/SokenzanSpellblade.java | 2 +- Mage.Sets/src/mage/cards/s/SoulScarMage.java | 2 +- Mage.Sets/src/mage/cards/s/Soulshriek.java | 2 +- .../src/mage/cards/s/SpontaneousMutation.java | 2 +- .../mage/cards/s/SqueakingPieGrubfellows.java | 2 +- .../src/mage/cards/s/StoneforgeAcolyte.java | 2 +- .../src/mage/cards/s/StormfistCrusader.java | 2 +- .../src/mage/cards/s/StrategicPlanning.java | 2 +- Mage.Sets/src/mage/cards/s/Subdue.java | 2 +- .../src/mage/cards/s/SultaiAscendancy.java | 2 +- .../src/mage/cards/s/SultaiSoothsayer.java | 2 +- .../src/mage/cards/s/SumalaWoodshaper.java | 2 +- Mage.Sets/src/mage/cards/s/SupremeWill.java | 2 +- .../src/mage/cards/s/SurgeOfStrength.java | 2 +- .../src/mage/cards/t/TaigamSidisisHand.java | 2 +- .../src/mage/cards/t/TaigamsScheming.java | 2 +- .../src/mage/cards/t/TasigursCruelty.java | 2 +- Mage.Sets/src/mage/cards/t/TearsOfRage.java | 2 +- .../mage/cards/t/TeferiTemporalArchmage.java | 2 +- Mage.Sets/src/mage/cards/t/TempestDjinn.java | 2 +- Mage.Sets/src/mage/cards/t/Tephraderm.java | 4 +- Mage.Sets/src/mage/cards/t/TerraRavager.java | 2 +- .../mage/cards/t/TezzeretsGatebreaker.java | 2 +- .../src/mage/cards/t/TheAntiquitiesWar.java | 2 +- .../src/mage/cards/t/TheBattleOfGeonosis.java | 2 +- .../src/mage/cards/t/TheTriumphOfAnax.java | 2 +- .../src/mage/cards/t/ThievesFortune.java | 2 +- .../src/mage/cards/t/ThunderousMight.java | 2 +- .../mage/cards/t/TomorrowAzamisFamiliar.java | 2 +- Mage.Sets/src/mage/cards/t/TowerGeist.java | 2 +- .../src/mage/cards/u/UnderrealmLich.java | 2 +- .../src/mage/cards/u/UnityOfTheDroids.java | 2 +- Mage.Sets/src/mage/cards/u/Unnerve.java | 2 +- Mage.Sets/src/mage/cards/v/VhatiIlDal.java | 4 +- Mage.Sets/src/mage/cards/v/ViciousRumors.java | 2 +- .../src/mage/cards/v/VileManifestation.java | 2 +- Mage.Sets/src/mage/cards/v/VivienReid.java | 2 +- .../src/mage/cards/v/VolrathsDungeon.java | 2 +- .../src/mage/cards/w/WallOfTombstones.java | 2 +- .../src/mage/cards/w/WanderingGoblins.java | 2 +- Mage.Sets/src/mage/cards/w/Weatherlight.java | 2 +- .../src/mage/cards/w/WineOfBloodAndIron.java | 2 +- .../src/mage/cards/y/YodaJediMaster.java | 2 +- .../abilities/costs/common/PayLifeCost.java | 2 +- .../dynamicvalue/common/StaticValue.java | 28 ++--- .../effects/common/CreateTokenEffect.java | 6 +- .../common/CreateTokenTargetEffect.java | 4 +- .../effects/common/DamageAllEffect.java | 4 +- .../DamageAttachedControllerEffect.java | 2 +- .../effects/common/DamageAttachedEffect.java | 2 +- .../common/DamageControllerEffect.java | 4 +- .../common/DamageEverythingEffect.java | 6 +- .../effects/common/DamageMultiEffect.java | 4 +- .../effects/common/DamagePlayersEffect.java | 6 +- .../common/DamageTargetControllerEffect.java | 4 +- .../effects/common/DamageTargetEffect.java | 10 +- .../effects/common/DrawCardAllEffect.java | 2 +- .../DrawCardSourceControllerEffect.java | 2 +- .../effects/common/DrawCardTargetEffect.java | 4 +- .../effects/common/GainLifeEffect.java | 2 +- .../effects/common/GainLifeTargetEffect.java | 2 +- .../LookLibraryAndPickControllerEffect.java | 8 +- .../common/LookLibraryControllerEffect.java | 2 +- .../common/LoseLifeAllPlayersEffect.java | 2 +- .../LoseLifeControllerAttachedEffect.java | 2 +- .../common/LoseLifeDefendingPlayerEffect.java | 2 +- .../common/LoseLifeOpponentsEffect.java | 2 +- .../LoseLifePermanentControllerEffect.java | 2 +- .../LoseLifeSourceControllerEffect.java | 2 +- .../effects/common/LoseLifeTargetEffect.java | 2 +- .../PutLibraryIntoGraveTargetEffect.java | 2 +- ...ardOfLibraryIntoGraveEachPlayerEffect.java | 2 +- ...TopCardOfLibraryIntoGraveTargetEffect.java | 2 +- .../RevealLibraryPutIntoHandEffect.java | 2 +- .../RevealTargetPlayerLibraryEffect.java | 2 +- .../effects/common/SacrificeAllEffect.java | 2 +- .../common/SacrificeControllerEffect.java | 2 +- .../effects/common/SacrificeEffect.java | 2 +- .../common/SacrificeOpponentsEffect.java | 2 +- .../SacrificeOpponentsUnlessPayEffect.java | 4 +- .../common/SetPlayerLifeAllEffect.java | 2 +- .../common/SetPlayerLifeSourceEffect.java | 2 +- .../common/SetPlayerLifeTargetEffect.java | 2 +- .../common/continuous/BoostAllEffect.java | 6 +- .../continuous/BoostControlledEffect.java | 8 +- .../continuous/BoostEnchantedEffect.java | 6 +- .../continuous/BoostEquippedEffect.java | 2 +- .../common/continuous/BoostSourceEffect.java | 6 +- .../common/continuous/BoostTargetEffect.java | 6 +- .../MaximumHandSizeControllerEffect.java | 2 +- .../SetPowerToughnessAllEffect.java | 8 +- .../SetPowerToughnessTargetEffect.java | 2 +- .../cost/CastWithoutPayingManaCostEffect.java | 2 +- .../counter/AddCountersAttachedEffect.java | 2 +- .../counter/AddCountersSourceEffect.java | 2 +- .../counter/AddCountersTargetEffect.java | 2 +- .../GetEnergyCountersControllerEffect.java | 2 +- .../counter/RemoveCountersAttachedEffect.java | 2 +- .../DiscardCardYouChooseTargetEffect.java | 112 +++++++++--------- .../discard/DiscardControllerEffect.java | 4 +- .../discard/DiscardEachPlayerEffect.java | 6 +- .../common/discard/DiscardTargetEffect.java | 4 +- .../effects/keyword/AmassEffect.java | 2 +- .../effects/keyword/BolsterEffect.java | 2 +- .../effects/keyword/SupportEffect.java | 4 +- .../AddConditionalManaOfAnyColorEffect.java | 2 +- .../mana/AddManaInAnyCombinationEffect.java | 4 +- .../abilities/keyword/BushidoAbility.java | 2 +- .../abilities/keyword/ReinforceAbility.java | 2 +- .../mage/abilities/keyword/RepairAbility.java | 2 +- .../abilities/keyword/SoulshiftAbility.java | 2 +- .../mana/ConditionalAnyColorManaAbility.java | 2 +- .../main/java/mage/filter/StaticFilters.java | 7 ++ .../planes/AcademyAtTolariaWestPlane.java | 2 +- .../command/planes/UndercityReachesPlane.java | 2 +- .../java/mage/game/stack/StackObjImpl.java | 2 +- .../main/java/mage/target/TargetAmount.java | 2 +- .../target/common/TargetAnyTargetAmount.java | 2 +- .../common/TargetCreatureOrPlayerAmount.java | 2 +- .../target/common/TargetPermanentAmount.java | 2 +- 318 files changed, 440 insertions(+), 435 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java index 7dfaf13e36..59ebda2d7e 100644 --- a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java +++ b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java @@ -59,7 +59,7 @@ public final class AcclaimedContender extends CardImpl { // When Acclaimed Contender enters the battlefield, if you control another Knight, look at the top five cards of your library. You may reveal a Knight, Aura, Equipment, or legendary artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new ConditionalInterveningIfTriggeredAbility( new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter2, Zone.LIBRARY, false, + StaticValue.get(5), false, StaticValue.get(1), filter2, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true)), condition, "When {this} enters the battlefield, " + "if you control another Knight, look at the top five cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java b/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java index 8e2cc8cdf6..bcc789c74d 100644 --- a/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java +++ b/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java @@ -27,7 +27,7 @@ public final class AdventurousImpulse extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{G}"); //Look at the top three cards of your library. You may reveal a creature or land card from among them and put it into your hand. Put the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), filter, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), filter, false)); } diff --git a/Mage.Sets/src/mage/cards/a/AjanisInfluence.java b/Mage.Sets/src/mage/cards/a/AjanisInfluence.java index f8dd582e05..c751240d10 100644 --- a/Mage.Sets/src/mage/cards/a/AjanisInfluence.java +++ b/Mage.Sets/src/mage/cards/a/AjanisInfluence.java @@ -35,7 +35,7 @@ public final class AjanisInfluence extends CardImpl { // Look at the top five cards of your library. You may reveal a white card form among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top five cards of your library. " + "You may reveal a white card from among them and put it into your hand. " diff --git a/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java b/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java index 3dc3fdf14c..ef937537b2 100644 --- a/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java +++ b/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java @@ -46,7 +46,7 @@ public final class AkiriLineSlinger extends CardImpl { this.addAbility(VigilanceAbility.getInstance()); // Akiri, Line-Slinger gets +1/+0 for each artifact you control. - Effect effect = new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield); + Effect effect = new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield); effect.setText("{this} gets +1/+0 for each artifact you control"); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/a/AkroanHoplite.java b/Mage.Sets/src/mage/cards/a/AkroanHoplite.java index d19cdaf3b6..3a9d6a906e 100644 --- a/Mage.Sets/src/mage/cards/a/AkroanHoplite.java +++ b/Mage.Sets/src/mage/cards/a/AkroanHoplite.java @@ -39,7 +39,7 @@ public final class AkroanHoplite extends CardImpl { this.toughness = new MageInt(2); // Whenever Akroan Hoplite attacks, it gets +X/+0 until end of turn, where X is the number of attacking creatures you control. - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.EndOfTurn, true), false)); } public AkroanHoplite(final AkroanHoplite card) { diff --git a/Mage.Sets/src/mage/cards/a/AllHallowsEve.java b/Mage.Sets/src/mage/cards/a/AllHallowsEve.java index d61463522c..62e2cdcf70 100644 --- a/Mage.Sets/src/mage/cards/a/AllHallowsEve.java +++ b/Mage.Sets/src/mage/cards/a/AllHallowsEve.java @@ -31,7 +31,7 @@ public final class AllHallowsEve extends CardImpl { // Exile All Hallow's Eve with two scream counters on it. this.getSpellAbility().addEffect(ExileSpellEffect.getInstance()); - Effect effect = new AddCountersSourceEffect(CounterType.SCREAM.createInstance(), new StaticValue(2), true, true); + Effect effect = new AddCountersSourceEffect(CounterType.SCREAM.createInstance(), StaticValue.get(2), true, true); effect.setText("with 2 scream counters on it"); this.getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/a/AncestralMemories.java b/Mage.Sets/src/mage/cards/a/AncestralMemories.java index 008fe2f058..b7fb61cb3b 100644 --- a/Mage.Sets/src/mage/cards/a/AncestralMemories.java +++ b/Mage.Sets/src/mage/cards/a/AncestralMemories.java @@ -26,7 +26,7 @@ public final class AncestralMemories extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{U}{U}{U}"); // Look at the top seven cards of your library. Put two of them into your hand and the rest into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(7), false, new StaticValue(2), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(7), false, StaticValue.get(2), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); } diff --git a/Mage.Sets/src/mage/cards/a/AncientStirrings.java b/Mage.Sets/src/mage/cards/a/AncientStirrings.java index 490c2641f5..6186b701d5 100644 --- a/Mage.Sets/src/mage/cards/a/AncientStirrings.java +++ b/Mage.Sets/src/mage/cards/a/AncientStirrings.java @@ -29,7 +29,7 @@ public final class AncientStirrings extends CardImpl { // Look at the top five cards of your library. You may reveal a colorless card from among them and put it into your hand. // Then put the rest on the bottom of your library in any order. (Cards with no colored mana in their mana costs are colorless. Lands are also colorless.) - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(1), filter, Zone.LIBRARY, + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true)); } diff --git a/Mage.Sets/src/mage/cards/a/Anticipate.java b/Mage.Sets/src/mage/cards/a/Anticipate.java index 69db6614b5..3610f73c96 100644 --- a/Mage.Sets/src/mage/cards/a/Anticipate.java +++ b/Mage.Sets/src/mage/cards/a/Anticipate.java @@ -21,7 +21,7 @@ public final class Anticipate extends CardImpl { // Look at the top three cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect - (new StaticValue(3), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + (StaticValue.get(3), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); } public Anticipate(final Anticipate card) { diff --git a/Mage.Sets/src/mage/cards/a/ArcBlade.java b/Mage.Sets/src/mage/cards/a/ArcBlade.java index a46a4a804e..f9f194d70f 100644 --- a/Mage.Sets/src/mage/cards/a/ArcBlade.java +++ b/Mage.Sets/src/mage/cards/a/ArcBlade.java @@ -29,7 +29,7 @@ public final class ArcBlade extends CardImpl { // Exile Arc Blade this.getSpellAbility().addEffect(ExileSpellEffect.getInstance()); // with three time counters on it. - Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), new StaticValue(3), false, true); + Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), StaticValue.get(3), false, true); effect.setText("with 3 time counters on it"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetAnyTarget()); diff --git a/Mage.Sets/src/mage/cards/a/ArcaneDenial.java b/Mage.Sets/src/mage/cards/a/ArcaneDenial.java index 40d3f369d1..5609c3c536 100644 --- a/Mage.Sets/src/mage/cards/a/ArcaneDenial.java +++ b/Mage.Sets/src/mage/cards/a/ArcaneDenial.java @@ -75,7 +75,7 @@ class ArcaneDenialEffect extends OneShotEffect { countered = true; } if (controller != null) { - Effect effect = new DrawCardTargetEffect(new StaticValue(2), false, true); + Effect effect = new DrawCardTargetEffect(StaticValue.get(2), false, true); effect.setTargetPointer(new FixedTarget(controller.getId())); effect.setText("Its controller may draw up to two cards"); DelayedTriggeredAbility ability = new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(effect); diff --git a/Mage.Sets/src/mage/cards/a/ArcanistsOwl.java b/Mage.Sets/src/mage/cards/a/ArcanistsOwl.java index 4684c16b20..c3dec2d694 100644 --- a/Mage.Sets/src/mage/cards/a/ArcanistsOwl.java +++ b/Mage.Sets/src/mage/cards/a/ArcanistsOwl.java @@ -35,7 +35,7 @@ public final class ArcanistsOwl extends CardImpl { // When Arcanist's Owl enters the battlefield, look at the top four cards of your library. You may reveal an artifact or enchantment card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top four cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/a/Arcbond.java b/Mage.Sets/src/mage/cards/a/Arcbond.java index b572b6f642..9c01e62c67 100644 --- a/Mage.Sets/src/mage/cards/a/Arcbond.java +++ b/Mage.Sets/src/mage/cards/a/Arcbond.java @@ -139,7 +139,7 @@ class ArcbondEffect extends OneShotEffect { } FilterPermanent filter = new FilterCreaturePermanent("each other creature"); filter.add(Predicates.not(new PermanentIdPredicate(sourceId))); - return new DamageEverythingEffect(new StaticValue(damage), filter, sourceId).apply(game, source); + return new DamageEverythingEffect(StaticValue.get(damage), filter, sourceId).apply(game, source); } return false; } diff --git a/Mage.Sets/src/mage/cards/a/ArmageddonClock.java b/Mage.Sets/src/mage/cards/a/ArmageddonClock.java index ab44b0fe73..1bacb43868 100644 --- a/Mage.Sets/src/mage/cards/a/ArmageddonClock.java +++ b/Mage.Sets/src/mage/cards/a/ArmageddonClock.java @@ -28,7 +28,7 @@ public final class ArmageddonClock extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{6}"); // At the beginning of your upkeep, put a doom counter on Armageddon Clock. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(CounterType.DOOM.createInstance(), new StaticValue(1), true), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(CounterType.DOOM.createInstance(), StaticValue.get(1), true), TargetController.YOU, false)); // At the beginning of your draw step, Armageddon Clock deals damage equal to the number of doom counters on it to each player. this.addAbility(new BeginningOfDrawTriggeredAbility(new DamagePlayersEffect(Outcome.Damage, new CountersSourceCount(CounterType.DOOM)) .setText("{this} deals damage equal to the number of doom counters on it to each player"), TargetController.YOU, false)); diff --git a/Mage.Sets/src/mage/cards/a/ArterialFlow.java b/Mage.Sets/src/mage/cards/a/ArterialFlow.java index e5b9848f22..7cd6f7bfa2 100644 --- a/Mage.Sets/src/mage/cards/a/ArterialFlow.java +++ b/Mage.Sets/src/mage/cards/a/ArterialFlow.java @@ -31,7 +31,7 @@ public final class ArterialFlow extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{B}{B}"); // Each opponent discards two cards. - this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(new StaticValue(2), false, TargetController.OPPONENT)); + this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(StaticValue.get(2), false, TargetController.OPPONENT)); // If you control a Vampire, each opponent loses 2 life and you gain 2 life. this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new LoseLifeOpponentsEffect(2), new PermanentsOnTheBattlefieldCondition(filter), "If you control a Vampire, each opponent loses 2 life")); diff --git a/Mage.Sets/src/mage/cards/a/AsForetold.java b/Mage.Sets/src/mage/cards/a/AsForetold.java index e5cf038407..ddbf71d310 100644 --- a/Mage.Sets/src/mage/cards/a/AsForetold.java +++ b/Mage.Sets/src/mage/cards/a/AsForetold.java @@ -34,7 +34,7 @@ public final class AsForetold extends CardImpl { new BeginningOfUpkeepTriggeredAbility( new AddCountersSourceEffect( CounterType.TIME.createInstance(), - new StaticValue(1), + StaticValue.get(1), true), TargetController.YOU, false)); diff --git a/Mage.Sets/src/mage/cards/a/Aurochs.java b/Mage.Sets/src/mage/cards/a/Aurochs.java index ddd1acbe40..4960ec3865 100644 --- a/Mage.Sets/src/mage/cards/a/Aurochs.java +++ b/Mage.Sets/src/mage/cards/a/Aurochs.java @@ -40,7 +40,7 @@ public final class Aurochs extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Whenever Aurochs attacks, it gets +1/+0 until end of turn for each other attacking Aurochs. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter1, 1); - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, StaticValue.get(0), Duration.EndOfTurn, true), false)); } public Aurochs(final Aurochs card) { diff --git a/Mage.Sets/src/mage/cards/a/AurochsHerd.java b/Mage.Sets/src/mage/cards/a/AurochsHerd.java index 62223e8f2e..3434b0ab19 100644 --- a/Mage.Sets/src/mage/cards/a/AurochsHerd.java +++ b/Mage.Sets/src/mage/cards/a/AurochsHerd.java @@ -49,7 +49,7 @@ public final class AurochsHerd extends CardImpl { new TargetCardInLibrary(filter1), true), true)); // Whenever Aurochs Herd attacks, it gets +1/+0 until end of turn for each other attacking Aurochs. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter2, 1); - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, StaticValue.get(0), Duration.EndOfTurn, true), false)); } public AurochsHerd(final AurochsHerd card) { diff --git a/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java b/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java index a3161a53af..ac9524d8de 100644 --- a/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java +++ b/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java @@ -48,7 +48,7 @@ public final class AzcantaTheSunkenRuin extends CardImpl { Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, true ), new ManaCostsImpl<>("{2}{U}") ); diff --git a/Mage.Sets/src/mage/cards/b/BalduvianRage.java b/Mage.Sets/src/mage/cards/b/BalduvianRage.java index 9f3e910722..0fe88f380d 100644 --- a/Mage.Sets/src/mage/cards/b/BalduvianRage.java +++ b/Mage.Sets/src/mage/cards/b/BalduvianRage.java @@ -25,7 +25,7 @@ public final class BalduvianRage extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{X}{R}"); // Target attacking creature gets +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent(new FilterAttackingCreature())); // Draw a card at the beginning of the next turn's upkeep. diff --git a/Mage.Sets/src/mage/cards/b/BedeckBedazzle.java b/Mage.Sets/src/mage/cards/b/BedeckBedazzle.java index 514dd6b598..cecff56cfc 100644 --- a/Mage.Sets/src/mage/cards/b/BedeckBedazzle.java +++ b/Mage.Sets/src/mage/cards/b/BedeckBedazzle.java @@ -75,7 +75,7 @@ class BedazzleEffect extends OneShotEffect { if (permanent != null) { permanent.destroy(source.getSourceId(), game, false); } - Effect effect = new DamageTargetEffect(new StaticValue(2), true, "", true); + Effect effect = new DamageTargetEffect(StaticValue.get(2), true, "", true); effect.setTargetPointer(new FixedTarget(source.getTargets().get(1).getFirstTarget(), game)); effect.apply(game, source); return true; diff --git a/Mage.Sets/src/mage/cards/b/BelltowerSphinx.java b/Mage.Sets/src/mage/cards/b/BelltowerSphinx.java index 832d83f0d6..4ef63a4281 100644 --- a/Mage.Sets/src/mage/cards/b/BelltowerSphinx.java +++ b/Mage.Sets/src/mage/cards/b/BelltowerSphinx.java @@ -75,7 +75,7 @@ class BelltowerSphinxEffect extends TriggeredAbilityImpl { Player player = game.getPlayer(controller); if (player != null) { getEffects().get(0).setTargetPointer(new FixedTarget(player.getId())); - ((PutLibraryIntoGraveTargetEffect) getEffects().get(0)).setAmount(new StaticValue(event.getAmount())); + ((PutLibraryIntoGraveTargetEffect) getEffects().get(0)).setAmount(StaticValue.get(event.getAmount())); return true; } } diff --git a/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java b/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java index ed878bde48..6cca792f35 100644 --- a/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java +++ b/Mage.Sets/src/mage/cards/b/BenalishHonorGuard.java @@ -39,7 +39,7 @@ public final class BenalishHonorGuard extends CardImpl { // Benalish Honor Guard gets +1/+0 for each legendary creature you control. PermanentsOnBattlefieldCount count = new PermanentsOnBattlefieldCount(filter); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, StaticValue.get(0), Duration.WhileOnBattlefield))); } public BenalishHonorGuard(final BenalishHonorGuard card) { diff --git a/Mage.Sets/src/mage/cards/b/Berserk.java b/Mage.Sets/src/mage/cards/b/Berserk.java index cd620758c5..2cb2a76011 100644 --- a/Mage.Sets/src/mage/cards/b/Berserk.java +++ b/Mage.Sets/src/mage/cards/b/Berserk.java @@ -43,7 +43,7 @@ public final class Berserk extends CardImpl { Effect effect = new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn); effect.setText("Target creature gains trample"); this.getSpellAbility().addEffect(effect); - effect = new BoostTargetEffect(TargetPermanentPowerCount.instance, new StaticValue(0), Duration.EndOfTurn, true); + effect = new BoostTargetEffect(TargetPermanentPowerCount.instance, StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("and gets +X/+0 until end of turn, where X is its power"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addEffect(new BerserkDestroyEffect()); diff --git a/Mage.Sets/src/mage/cards/b/BiteOfTheBlackRose.java b/Mage.Sets/src/mage/cards/b/BiteOfTheBlackRose.java index 2eb7cef394..e31af9ce41 100644 --- a/Mage.Sets/src/mage/cards/b/BiteOfTheBlackRose.java +++ b/Mage.Sets/src/mage/cards/b/BiteOfTheBlackRose.java @@ -78,7 +78,7 @@ class BiteOfTheBlackRoseEffect extends OneShotEffect { ContinuousEffect effect = new BoostOpponentsEffect(-2, -2, Duration.EndOfTurn); game.addEffect(effect, source); } else { - new DiscardEachPlayerEffect(new StaticValue(2), false, TargetController.OPPONENT).apply(game, source); + new DiscardEachPlayerEffect(StaticValue.get(2), false, TargetController.OPPONENT).apply(game, source); } return true; } diff --git a/Mage.Sets/src/mage/cards/b/BitterRevelation.java b/Mage.Sets/src/mage/cards/b/BitterRevelation.java index fed897d761..2787c1c3fa 100644 --- a/Mage.Sets/src/mage/cards/b/BitterRevelation.java +++ b/Mage.Sets/src/mage/cards/b/BitterRevelation.java @@ -20,7 +20,7 @@ public final class BitterRevelation extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{B}"); // Look at the top four cards of your library. Put two of them into your hand and the rest into your graveyard. You lose 2 life. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(2), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(2), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); this.getSpellAbility().addEffect(new LoseLifeSourceControllerEffect(2)); } diff --git a/Mage.Sets/src/mage/cards/b/BlazingShoal.java b/Mage.Sets/src/mage/cards/b/BlazingShoal.java index 9f6238b97e..ddf99ccecf 100644 --- a/Mage.Sets/src/mage/cards/b/BlazingShoal.java +++ b/Mage.Sets/src/mage/cards/b/BlazingShoal.java @@ -38,7 +38,7 @@ public final class BlazingShoal extends CardImpl { this.addAbility(new AlternativeCostSourceAbility(new ExileFromHandCost(new TargetCardInHand(filter),true))); // Target creature gets +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostTargetEffect(ExileFromHandCostCardConvertedMana.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(ExileFromHandCostCardConvertedMana.instance, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/b/BloodLust.java b/Mage.Sets/src/mage/cards/b/BloodLust.java index c9ac2e0070..4f3cc6291b 100644 --- a/Mage.Sets/src/mage/cards/b/BloodLust.java +++ b/Mage.Sets/src/mage/cards/b/BloodLust.java @@ -39,7 +39,7 @@ public final class BloodLust extends CardImpl { // If target creature has toughness 5 or greater, it gets +4/-4 until end of turn. Otherwise, it gets +4/-X until end of turn, where X is its toughness minus 1. this.getSpellAbility().addEffect(new ConditionalContinuousEffect( new BoostTargetEffect(4, -4, Duration.EndOfTurn), - new BoostTargetEffect(new StaticValue(4), new SignInversionDynamicValue(TargetPermanentToughnessMinus1Value.instance), Duration.WhileOnBattlefield), + new BoostTargetEffect(StaticValue.get(4), new SignInversionDynamicValue(TargetPermanentToughnessMinus1Value.instance), Duration.WhileOnBattlefield), new TargetMatchesFilterCondition(filter), "If target creature has toughness 5 or greater, it gets +4/-4 until end of turn. Otherwise, it gets +4/-X until end of turn, where X is its toughness minus 1")); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/b/BloodcurdlingScream.java b/Mage.Sets/src/mage/cards/b/BloodcurdlingScream.java index 50d803fc36..0a5c9f99fc 100644 --- a/Mage.Sets/src/mage/cards/b/BloodcurdlingScream.java +++ b/Mage.Sets/src/mage/cards/b/BloodcurdlingScream.java @@ -21,7 +21,7 @@ public final class BloodcurdlingScream extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{X}{B}"); // Target creature gets +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostTargetEffect(ExileFromHandCostCardConvertedMana.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(ExileFromHandCostCardConvertedMana.instance, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java index cebfdf8ec6..bee629017e 100644 --- a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java +++ b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java @@ -28,7 +28,7 @@ public final class BoardTheWeatherlight extends CardImpl { // Look at the top five cards of your library. You may reveal a historic card from among them and put it into your hand. Put the rest on the bottom of your library in random order. this.getSpellAbility().addEffect( new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false) .setBackInRandomOrder(true) .setText("Look at the top five cards of your library. You may reveal a historic card from among them" diff --git a/Mage.Sets/src/mage/cards/b/BondOfFlourishing.java b/Mage.Sets/src/mage/cards/b/BondOfFlourishing.java index bba9076cfe..840a0fe576 100644 --- a/Mage.Sets/src/mage/cards/b/BondOfFlourishing.java +++ b/Mage.Sets/src/mage/cards/b/BondOfFlourishing.java @@ -23,8 +23,8 @@ public final class BondOfFlourishing extends CardImpl { // Look at the top three card of your library. You may reveal a permanent card from among them and put it into your hand. Put the rest on the bottom of your library in any order. You gain 3 life. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(3), false, - new StaticValue(1), filter, false + StaticValue.get(3), false, + StaticValue.get(1), filter, false )); this.getSpellAbility().addEffect(new GainLifeEffect(3).setText("You gain 3 life.")); } diff --git a/Mage.Sets/src/mage/cards/b/BullAurochs.java b/Mage.Sets/src/mage/cards/b/BullAurochs.java index 7da88699f1..9fe75590cc 100644 --- a/Mage.Sets/src/mage/cards/b/BullAurochs.java +++ b/Mage.Sets/src/mage/cards/b/BullAurochs.java @@ -40,7 +40,7 @@ public final class BullAurochs extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Whenever Bull Aurochs attacks, it gets +1/+0 until end of turn for each other attacking Aurochs. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter, 1); - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, StaticValue.get(0), Duration.EndOfTurn, true), false)); } public BullAurochs(final BullAurochs card) { diff --git a/Mage.Sets/src/mage/cards/b/BurglarRat.java b/Mage.Sets/src/mage/cards/b/BurglarRat.java index f6efa16d72..3663dcf96e 100644 --- a/Mage.Sets/src/mage/cards/b/BurglarRat.java +++ b/Mage.Sets/src/mage/cards/b/BurglarRat.java @@ -27,7 +27,7 @@ public final class BurglarRat extends CardImpl { // When Burglar Rat enters the battlefield, each opponent discards a card. this.addAbility(new EntersBattlefieldTriggeredAbility( new DiscardEachPlayerEffect( - new StaticValue(1), false, + StaticValue.get(1), false, TargetController.OPPONENT ) )); diff --git a/Mage.Sets/src/mage/cards/b/BurningTreeShaman.java b/Mage.Sets/src/mage/cards/b/BurningTreeShaman.java index 18b29ddd9b..4ea90941b3 100644 --- a/Mage.Sets/src/mage/cards/b/BurningTreeShaman.java +++ b/Mage.Sets/src/mage/cards/b/BurningTreeShaman.java @@ -48,7 +48,7 @@ public final class BurningTreeShaman extends CardImpl { class BurningTreeShamanTriggeredAbility extends TriggeredAbilityImpl { BurningTreeShamanTriggeredAbility() { - super(Zone.BATTLEFIELD, new DamageTargetEffect(new StaticValue(1), true, "that player", true)); + super(Zone.BATTLEFIELD, new DamageTargetEffect(StaticValue.get(1), true, "that player", true)); } BurningTreeShamanTriggeredAbility(final BurningTreeShamanTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/c/CabalPaladin.java b/Mage.Sets/src/mage/cards/c/CabalPaladin.java index 27fcd64de7..e68cdcdf4e 100644 --- a/Mage.Sets/src/mage/cards/c/CabalPaladin.java +++ b/Mage.Sets/src/mage/cards/c/CabalPaladin.java @@ -30,7 +30,7 @@ public final class CabalPaladin extends CardImpl { // Whenever you cast a historic spell, Cabal Paladin deals 2 damage to each opponent. this.addAbility(new SpellCastControllerTriggeredAbility( - new DamagePlayersEffect(Outcome.Damage, new StaticValue(2), TargetController.OPPONENT) + new DamagePlayersEffect(Outcome.Damage, StaticValue.get(2), TargetController.OPPONENT) .setText("{this} deals 2 damage to each opponent. (Artifacts, legendaries, and Sagas are historic.)"), new FilterHistoricSpell("a historic spell"), false )); diff --git a/Mage.Sets/src/mage/cards/c/CacklingWitch.java b/Mage.Sets/src/mage/cards/c/CacklingWitch.java index 37f93e1542..efd5f51c73 100644 --- a/Mage.Sets/src/mage/cards/c/CacklingWitch.java +++ b/Mage.Sets/src/mage/cards/c/CacklingWitch.java @@ -35,7 +35,7 @@ public final class CacklingWitch extends CardImpl { // {X}{B}, {tap}, Discard a card: Target creature gets +X/+0 until end of turn. ManacostVariableValue manaX = ManacostVariableValue.instance; Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new BoostTargetEffect(manaX, new StaticValue(0), Duration.EndOfTurn), + new BoostTargetEffect(manaX, StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl("{X}{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); diff --git a/Mage.Sets/src/mage/cards/c/CaligoSkinWitch.java b/Mage.Sets/src/mage/cards/c/CaligoSkinWitch.java index 1ecf21e9cc..8d57cd27aa 100644 --- a/Mage.Sets/src/mage/cards/c/CaligoSkinWitch.java +++ b/Mage.Sets/src/mage/cards/c/CaligoSkinWitch.java @@ -34,7 +34,7 @@ public final class CaligoSkinWitch extends CardImpl { // When Caligo Skin-Witch enters the battlefield, if it was kicked, each opponent discards two cards. this.addAbility(new ConditionalInterveningIfTriggeredAbility( new EntersBattlefieldTriggeredAbility(new DiscardEachPlayerEffect( - new StaticValue(2), + StaticValue.get(2), false, TargetController.OPPONENT )), diff --git a/Mage.Sets/src/mage/cards/c/CapitalPunishment.java b/Mage.Sets/src/mage/cards/c/CapitalPunishment.java index 12d184d282..9974a47e66 100644 --- a/Mage.Sets/src/mage/cards/c/CapitalPunishment.java +++ b/Mage.Sets/src/mage/cards/c/CapitalPunishment.java @@ -69,7 +69,7 @@ class CapitalPunishmentDilemmaEffect extends CouncilsDilemmaVoteEffect { //Taxes Votes if (voteTwoCount > 0) { - Effect discardEffect = new DiscardEachPlayerEffect(new StaticValue(voteTwoCount), false, TargetController.OPPONENT); + Effect discardEffect = new DiscardEachPlayerEffect(StaticValue.get(voteTwoCount), false, TargetController.OPPONENT); discardEffect.apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/c/ChandraPyrogenius.java b/Mage.Sets/src/mage/cards/c/ChandraPyrogenius.java index 66a1e08ca2..5e9a1f97aa 100644 --- a/Mage.Sets/src/mage/cards/c/ChandraPyrogenius.java +++ b/Mage.Sets/src/mage/cards/c/ChandraPyrogenius.java @@ -34,7 +34,7 @@ public final class ChandraPyrogenius extends CardImpl { this.addAbility(new PlaneswalkerEntersWithLoyaltyCountersAbility(5)); // +2: Chandra, Pyrogenius deals 2 damage to each opponent. - this.addAbility(new LoyaltyAbility(new DamagePlayersEffect(Outcome.Damage, new StaticValue(2), TargetController.OPPONENT), 2)); + this.addAbility(new LoyaltyAbility(new DamagePlayersEffect(Outcome.Damage, StaticValue.get(2), TargetController.OPPONENT), 2)); // -3: Chandra, Pyrogenius deals 4 damage to target creature. LoyaltyAbility ability = new LoyaltyAbility(new DamageTargetEffect(4), -3); diff --git a/Mage.Sets/src/mage/cards/c/ChandraTorchOfDefiance.java b/Mage.Sets/src/mage/cards/c/ChandraTorchOfDefiance.java index f0b547ad53..793e0dfe27 100644 --- a/Mage.Sets/src/mage/cards/c/ChandraTorchOfDefiance.java +++ b/Mage.Sets/src/mage/cards/c/ChandraTorchOfDefiance.java @@ -103,7 +103,7 @@ class ChandraTorchOfDefianceEffect extends OneShotEffect { } } if (!cardWasCast) { - new DamagePlayersEffect(Outcome.Damage, new StaticValue(2), TargetController.OPPONENT).apply(game, source); + new DamagePlayersEffect(Outcome.Damage, StaticValue.get(2), TargetController.OPPONENT).apply(game, source); } } return true; diff --git a/Mage.Sets/src/mage/cards/c/ChronomanticEscape.java b/Mage.Sets/src/mage/cards/c/ChronomanticEscape.java index 85e5095570..4ee2d599a6 100644 --- a/Mage.Sets/src/mage/cards/c/ChronomanticEscape.java +++ b/Mage.Sets/src/mage/cards/c/ChronomanticEscape.java @@ -29,7 +29,7 @@ public final class ChronomanticEscape extends CardImpl { // Until your next turn, creatures can't attack you. Exile Chronomantic Escape with three time counters on it. getSpellAbility().addEffect(new CantAttackYouAllEffect(Duration.UntilYourNextTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); getSpellAbility().addEffect(ExileSpellEffect.getInstance()); - Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), new StaticValue(3), true, true); + Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), StaticValue.get(3), true, true); effect.setText("with 3 time counters on it"); getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/c/CivicSaber.java b/Mage.Sets/src/mage/cards/c/CivicSaber.java index 9324cef5ed..1120b59252 100644 --- a/Mage.Sets/src/mage/cards/c/CivicSaber.java +++ b/Mage.Sets/src/mage/cards/c/CivicSaber.java @@ -31,7 +31,7 @@ public final class CivicSaber extends CardImpl { this.subtype.add(SubType.EQUIPMENT); // Equipped creature gets +1/+0 for each of its colors. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CivicSaberColorCount(), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CivicSaberColorCount(), StaticValue.get(0), Duration.WhileOnBattlefield))); // Equip {1} this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1))); } diff --git a/Mage.Sets/src/mage/cards/c/CloakingDevice.java b/Mage.Sets/src/mage/cards/c/CloakingDevice.java index 4cd2fb6588..defcb2a8ed 100644 --- a/Mage.Sets/src/mage/cards/c/CloakingDevice.java +++ b/Mage.Sets/src/mage/cards/c/CloakingDevice.java @@ -72,7 +72,7 @@ class CloakingDeviceLoseLifeDefendingPlayerEffect extends OneShotEffect { * attacker false if attacker has to be taken from targetPointer */ public CloakingDeviceLoseLifeDefendingPlayerEffect(int amount, boolean attackerIsSource) { - this(new StaticValue(amount), attackerIsSource); + this(StaticValue.get(amount), attackerIsSource); } public CloakingDeviceLoseLifeDefendingPlayerEffect(DynamicValue amount, boolean attackerIsSource) { diff --git a/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java b/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java index c039f4477c..23786a5032 100644 --- a/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java +++ b/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java @@ -32,7 +32,7 @@ public final class CommuneWithDinosaurs extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{G}"); //Look at the top five cards of your library. You may reveal a Dinosaur or land card from among them and put it into your hand. Put the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(1), filter, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(1), filter, false)); } public CommuneWithDinosaurs(final CommuneWithDinosaurs card) { diff --git a/Mage.Sets/src/mage/cards/c/CommuneWithNature.java b/Mage.Sets/src/mage/cards/c/CommuneWithNature.java index 39ca3ffe29..91d82edb35 100644 --- a/Mage.Sets/src/mage/cards/c/CommuneWithNature.java +++ b/Mage.Sets/src/mage/cards/c/CommuneWithNature.java @@ -21,7 +21,7 @@ public final class CommuneWithNature extends CardImpl { // Look at the top five cards of your library. You may reveal a creature card from among them and put it into your hand. Put the rest on the bottom of your library in any order. this.getSpellAbility().addEffect( new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), new FilterCreatureCard("a creature card"), false + StaticValue.get(5), false, StaticValue.get(1), new FilterCreatureCard("a creature card"), false ) ); } diff --git a/Mage.Sets/src/mage/cards/c/ConclavesBlessing.java b/Mage.Sets/src/mage/cards/c/ConclavesBlessing.java index 77f408046d..f0f2d51a02 100644 --- a/Mage.Sets/src/mage/cards/c/ConclavesBlessing.java +++ b/Mage.Sets/src/mage/cards/c/ConclavesBlessing.java @@ -48,7 +48,7 @@ public final class ConclavesBlessing extends CardImpl { // Enchanted creature gets +0/+2 for each other creature you control. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter, 2); - BoostEnchantedEffect effect = new BoostEnchantedEffect(new StaticValue(0), value, Duration.WhileOnBattlefield); + BoostEnchantedEffect effect = new BoostEnchantedEffect(StaticValue.get(0), value, Duration.WhileOnBattlefield); effect.setText("Enchanted creature gets +0/+2 for each other creature you control."); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/c/ContingencyPlan.java b/Mage.Sets/src/mage/cards/c/ContingencyPlan.java index 314a7f97eb..9a023ba324 100644 --- a/Mage.Sets/src/mage/cards/c/ContingencyPlan.java +++ b/Mage.Sets/src/mage/cards/c/ContingencyPlan.java @@ -20,7 +20,7 @@ public final class ContingencyPlan extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{U}"); // Look at the top five cards of your library. Put any number of them into your graveyard and the rest back on top of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(5), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(5), new FilterCard("cards"), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false)); } diff --git a/Mage.Sets/src/mage/cards/c/CourageousOutrider.java b/Mage.Sets/src/mage/cards/c/CourageousOutrider.java index d2fee2adb5..cf514bdcf9 100644 --- a/Mage.Sets/src/mage/cards/c/CourageousOutrider.java +++ b/Mage.Sets/src/mage/cards/c/CourageousOutrider.java @@ -34,7 +34,7 @@ public final class CourageousOutrider extends CardImpl { // When Courageous Outrider enters the battlefield, look at the top four cards of your library. You may reveal a Human card from among them // and put it into your hand. Put the rest on the bottom of your library in any order. - this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), filter, false) , false)); + this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), filter, false) , false)); } public CourageousOutrider(final CourageousOutrider card) { diff --git a/Mage.Sets/src/mage/cards/c/CourtHussar.java b/Mage.Sets/src/mage/cards/c/CourtHussar.java index 9d860ac291..8d7af3227b 100644 --- a/Mage.Sets/src/mage/cards/c/CourtHussar.java +++ b/Mage.Sets/src/mage/cards/c/CourtHussar.java @@ -36,7 +36,7 @@ public final class CourtHussar extends CardImpl { this.addAbility(VigilanceAbility.getInstance()); // When Court Hussar enters the battlefield, look at the top three cards of your library, then put one of them into your hand and the rest on the bottom of your library in any order. this.addAbility(new EntersBattlefieldTriggeredAbility( - new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false), + new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false), false)); // When Court Hussar enters the battlefield, sacrifice it unless {W} was spent to cast it. this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(new ManaWasSpentCondition(ColoredManaSymbol.W)), false), new ManaSpentToCastWatcher()); diff --git a/Mage.Sets/src/mage/cards/c/CranialPlating.java b/Mage.Sets/src/mage/cards/c/CranialPlating.java index e61d82526e..79f4fccfac 100644 --- a/Mage.Sets/src/mage/cards/c/CranialPlating.java +++ b/Mage.Sets/src/mage/cards/c/CranialPlating.java @@ -38,7 +38,7 @@ public final class CranialPlating extends CardImpl { this.subtype.add(SubType.EQUIPMENT); // Equipped creature gets +1/+0 for each artifact you control. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new PermanentsOnBattlefieldCount(filterCounted), new StaticValue(0)))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new PermanentsOnBattlefieldCount(filterCounted), StaticValue.get(0)))); // {B}{B}: Attach Cranial Plating to target creature you control. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.BoostCreature, "Attach {this} to target creature you control"), new ManaCostsImpl("{B}{B}")); ability.addTarget(new TargetControlledCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/c/CraterElemental.java b/Mage.Sets/src/mage/cards/c/CraterElemental.java index 7407da0896..bc228e6e42 100644 --- a/Mage.Sets/src/mage/cards/c/CraterElemental.java +++ b/Mage.Sets/src/mage/cards/c/CraterElemental.java @@ -45,7 +45,7 @@ public final class CraterElemental extends CardImpl { // Formidable — {2}{R}: Crater Elemental has base power 8 until end of turn. Activate this ability only if creatures you control have total power 8 or greater. ability = new ActivateIfConditionActivatedAbility( Zone.BATTLEFIELD, - new SetPowerSourceEffect(new StaticValue(8), Duration.EndOfTurn, SubLayer.SetPT_7b), + new SetPowerSourceEffect(StaticValue.get(8), Duration.EndOfTurn, SubLayer.SetPT_7b), new ManaCostsImpl("{2}{R}"), FormidableCondition.instance); ability.setAbilityWord(AbilityWord.FORMIDABLE); diff --git a/Mage.Sets/src/mage/cards/c/CrescendoOfWar.java b/Mage.Sets/src/mage/cards/c/CrescendoOfWar.java index 9b817b7a2d..b7867992ff 100644 --- a/Mage.Sets/src/mage/cards/c/CrescendoOfWar.java +++ b/Mage.Sets/src/mage/cards/c/CrescendoOfWar.java @@ -32,11 +32,11 @@ public final class CrescendoOfWar extends CardImpl { this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(CounterType.STRIFE.createInstance(1), true), TargetController.ANY, false)); // Attacking creatures get +1/+0 for each strife counter on Crescendo of War. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(new CountersSourceCount(CounterType.STRIFE), new StaticValue(0), + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(new CountersSourceCount(CounterType.STRIFE), StaticValue.get(0), Duration.WhileOnBattlefield, new FilterAttackingCreature(), false))); // Blocking creatures you control get +1/+0 for each strife counter on Crescendo of War. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(new CountersSourceCount(CounterType.STRIFE), new StaticValue(0), + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(new CountersSourceCount(CounterType.STRIFE), StaticValue.get(0), Duration.WhileOnBattlefield, new FilterBlockingCreature(), false))); } diff --git a/Mage.Sets/src/mage/cards/c/CrosstownCourier.java b/Mage.Sets/src/mage/cards/c/CrosstownCourier.java index 8cb48f04f7..093357a261 100644 --- a/Mage.Sets/src/mage/cards/c/CrosstownCourier.java +++ b/Mage.Sets/src/mage/cards/c/CrosstownCourier.java @@ -70,7 +70,7 @@ public final class CrosstownCourier extends CardImpl { for (Effect effect : getEffects()) { if (effect instanceof PutLibraryIntoGraveTargetEffect) { effect.setTargetPointer(new FixedTarget(event.getTargetId())); - ((PutLibraryIntoGraveTargetEffect) effect).setAmount(new StaticValue(event.getAmount())); + ((PutLibraryIntoGraveTargetEffect) effect).setAmount(StaticValue.get(event.getAmount())); return true; } } diff --git a/Mage.Sets/src/mage/cards/c/CunningStrike.java b/Mage.Sets/src/mage/cards/c/CunningStrike.java index c88372e06b..08f0bbbd06 100644 --- a/Mage.Sets/src/mage/cards/c/CunningStrike.java +++ b/Mage.Sets/src/mage/cards/c/CunningStrike.java @@ -23,9 +23,9 @@ public final class CunningStrike extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{U}{R}"); // Cunning Strike deals 2 damage to target creature and 2 damage to target player. - this.getSpellAbility().addEffect(new DamageTargetEffect(new StaticValue(2), true, "", true)); + this.getSpellAbility().addEffect(new DamageTargetEffect(StaticValue.get(2), true, "", true)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); - Effect effect = new DamageTargetEffect(new StaticValue(2), true, "", true); + Effect effect = new DamageTargetEffect(StaticValue.get(2), true, "", true); effect.setTargetPointer(new SecondTargetPointer()); effect.setText("and 2 damage to target player"); this.getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/c/CurseOfShallowGraves.java b/Mage.Sets/src/mage/cards/c/CurseOfShallowGraves.java index d83d76ef44..7a9a2e8ce6 100644 --- a/Mage.Sets/src/mage/cards/c/CurseOfShallowGraves.java +++ b/Mage.Sets/src/mage/cards/c/CurseOfShallowGraves.java @@ -119,7 +119,7 @@ class CurseOfShallowEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player attacker = game.getPlayer(this.getTargetPointer().getFirst(game, source)); if (attacker != null && attacker.chooseUse(outcome, "create a tapped 2/2 black Zombie creature token?", source, game)) { - Effect effect = new CreateTokenTargetEffect(new ZombieToken(), new StaticValue(1), true, false); + Effect effect = new CreateTokenTargetEffect(new ZombieToken(), StaticValue.get(1), true, false); effect.setTargetPointer(targetPointer); return effect.apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/c/CurseOfTheCabal.java b/Mage.Sets/src/mage/cards/c/CurseOfTheCabal.java index 7cf0bfda69..b2bab76674 100644 --- a/Mage.Sets/src/mage/cards/c/CurseOfTheCabal.java +++ b/Mage.Sets/src/mage/cards/c/CurseOfTheCabal.java @@ -131,7 +131,7 @@ class CurseOfTheCabalInterveningIfTriggeredAbility extends ConditionalIntervenin class CurseOfTheCabalTriggeredAbilityConditionalDelay extends AddCountersSourceEffect { public CurseOfTheCabalTriggeredAbilityConditionalDelay() { - super(CounterType.TIME.createInstance(), new StaticValue(2), false, true); + super(CounterType.TIME.createInstance(), StaticValue.get(2), false, true); } @Override diff --git a/Mage.Sets/src/mage/cards/c/CyclicalEvolution.java b/Mage.Sets/src/mage/cards/c/CyclicalEvolution.java index 35f05870d4..208b1573a7 100644 --- a/Mage.Sets/src/mage/cards/c/CyclicalEvolution.java +++ b/Mage.Sets/src/mage/cards/c/CyclicalEvolution.java @@ -29,7 +29,7 @@ public final class CyclicalEvolution extends CardImpl { getSpellAbility().addEffect(new BoostTargetEffect(3, 3, Duration.EndOfTurn)); getSpellAbility().addTarget(new TargetCreaturePermanent()); getSpellAbility().addEffect(ExileSpellEffect.getInstance()); - Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), new StaticValue(3), true, true); + Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), StaticValue.get(3), true, true); effect.setText("with 3 time counters on it"); getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/d/DemonsHorn.java b/Mage.Sets/src/mage/cards/d/DemonsHorn.java index 71e71e2d01..d94ddc1d1d 100644 --- a/Mage.Sets/src/mage/cards/d/DemonsHorn.java +++ b/Mage.Sets/src/mage/cards/d/DemonsHorn.java @@ -29,7 +29,7 @@ public final class DemonsHorn extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}"); // Whenever a player casts a black spell, you may gain 1 life. - this.addAbility(new SpellCastAllTriggeredAbility(new GainLifeEffect(new StaticValue(1), "you may gain 1 life"), filter, true)); + this.addAbility(new SpellCastAllTriggeredAbility(new GainLifeEffect(StaticValue.get(1), "you may gain 1 life"), filter, true)); } public DemonsHorn(final DemonsHorn card) { diff --git a/Mage.Sets/src/mage/cards/d/DemonspineWhip.java b/Mage.Sets/src/mage/cards/d/DemonspineWhip.java index 7e246d0cbe..3191caa20a 100644 --- a/Mage.Sets/src/mage/cards/d/DemonspineWhip.java +++ b/Mage.Sets/src/mage/cards/d/DemonspineWhip.java @@ -31,7 +31,7 @@ public final class DemonspineWhip extends CardImpl { this.subtype.add(SubType.EQUIPMENT); // {X}: Equipped creature gets +X/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new XPaid(), new StaticValue(0), Duration.EndOfTurn), new ManaCostsImpl("{X}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new XPaid(), StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl("{X}"))); // Equip {1} this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1))); diff --git a/Mage.Sets/src/mage/cards/d/DiabolicVision.java b/Mage.Sets/src/mage/cards/d/DiabolicVision.java index 7495f8a1b6..e374d3683b 100644 --- a/Mage.Sets/src/mage/cards/d/DiabolicVision.java +++ b/Mage.Sets/src/mage/cards/d/DiabolicVision.java @@ -19,7 +19,7 @@ public final class DiabolicVision extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{U}{B}"); // Look at the top five cards of your library. Put one of them into your hand and the rest on top of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(1), new FilterCard(), true, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(1), new FilterCard(), true, false)); } public DiabolicVision(final DiabolicVision card) { diff --git a/Mage.Sets/src/mage/cards/d/DigThroughTime.java b/Mage.Sets/src/mage/cards/d/DigThroughTime.java index 4aa9c91b04..fbc8168103 100644 --- a/Mage.Sets/src/mage/cards/d/DigThroughTime.java +++ b/Mage.Sets/src/mage/cards/d/DigThroughTime.java @@ -25,7 +25,7 @@ public final class DigThroughTime extends CardImpl { this.addAbility(new DelveAbility()); // Look at the top seven cards of your library. Put two of them into your hand and the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(7), false, new StaticValue(2), new FilterCard(), Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(7), false, StaticValue.get(2), new FilterCard(), Zone.LIBRARY, false, false)); } public DigThroughTime(final DigThroughTime card) { diff --git a/Mage.Sets/src/mage/cards/d/DiscoveryDispersal.java b/Mage.Sets/src/mage/cards/d/DiscoveryDispersal.java index 0ab5468322..6daa999a75 100644 --- a/Mage.Sets/src/mage/cards/d/DiscoveryDispersal.java +++ b/Mage.Sets/src/mage/cards/d/DiscoveryDispersal.java @@ -115,7 +115,7 @@ class DispersalEffect extends OneShotEffect { filter.add(Predicates.or(permsToReturn)); new ReturnToHandFromBattlefieldAllEffect(filter).apply(game, source); new DiscardEachPlayerEffect( - new StaticValue(1), false, TargetController.OPPONENT + StaticValue.get(1), false, TargetController.OPPONENT ).apply(game, source); return true; } diff --git a/Mage.Sets/src/mage/cards/d/DisinformationCampaign.java b/Mage.Sets/src/mage/cards/d/DisinformationCampaign.java index 7b67d4bc80..4ffc2d9f04 100644 --- a/Mage.Sets/src/mage/cards/d/DisinformationCampaign.java +++ b/Mage.Sets/src/mage/cards/d/DisinformationCampaign.java @@ -29,7 +29,7 @@ public final class DisinformationCampaign extends CardImpl { Ability ability = new EntersBattlefieldTriggeredAbility( new DrawCardSourceControllerEffect(1, "you")); ability.addEffect(new DiscardEachPlayerEffect( - new StaticValue(1), false, TargetController.OPPONENT).concatBy("and")); + StaticValue.get(1), false, TargetController.OPPONENT).concatBy("and")); this.addAbility(ability); // Whenever you surveil, return Disinformation Campaign to its owner's hand. diff --git a/Mage.Sets/src/mage/cards/d/DomriChaosBringer.java b/Mage.Sets/src/mage/cards/d/DomriChaosBringer.java index ed75b4de9e..5ed58faaa1 100644 --- a/Mage.Sets/src/mage/cards/d/DomriChaosBringer.java +++ b/Mage.Sets/src/mage/cards/d/DomriChaosBringer.java @@ -44,7 +44,7 @@ public final class DomriChaosBringer extends CardImpl { // −3: Look at the top four cards of your library. You may reveal up to two creature cards from among them and put them into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new LoyaltyAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(2), + StaticValue.get(4), false, StaticValue.get(2), StaticFilters.FILTER_CARD_CREATURE, Zone.LIBRARY, false, true, true, Zone.HAND, false, false, false ).setText( diff --git a/Mage.Sets/src/mage/cards/d/DovinGrandArbiter.java b/Mage.Sets/src/mage/cards/d/DovinGrandArbiter.java index ea2400d975..4d7d713cfc 100644 --- a/Mage.Sets/src/mage/cards/d/DovinGrandArbiter.java +++ b/Mage.Sets/src/mage/cards/d/DovinGrandArbiter.java @@ -47,8 +47,8 @@ public final class DovinGrandArbiter extends CardImpl { // -7: Look at the top ten cards of your library. Put three of them into your hand and the rest on the bottom of your library in a random order. this.addAbility(new LoyaltyAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(10), false, - new StaticValue(3), StaticFilters.FILTER_CARD, + StaticValue.get(10), false, + StaticValue.get(3), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false, false, Zone.HAND, false, false, false ).setBackInRandomOrder(true).setText("Look at the top ten cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/d/DownhillCharge.java b/Mage.Sets/src/mage/cards/d/DownhillCharge.java index ed0d2d0eb2..f14bbae019 100644 --- a/Mage.Sets/src/mage/cards/d/DownhillCharge.java +++ b/Mage.Sets/src/mage/cards/d/DownhillCharge.java @@ -36,7 +36,7 @@ public final class DownhillCharge extends CardImpl { // You may sacrifice a Mountain rather than pay Downhill Charge's mana cost. this.addAbility(new AlternativeCostSourceAbility(new SacrificeTargetCost(new TargetControlledPermanent(filter)))); // Target creature gets +X/+0 until end of turn, where X is the number of Mountains you control. - Effect effect = new BoostTargetEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.EndOfTurn, true); + Effect effect = new BoostTargetEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("Target creature gets +X/+0 until end of turn, where X is the number of Mountains you control."); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/d/DragonlordOjutai.java b/Mage.Sets/src/mage/cards/d/DragonlordOjutai.java index cbb71bd250..98e6aa3cc6 100644 --- a/Mage.Sets/src/mage/cards/d/DragonlordOjutai.java +++ b/Mage.Sets/src/mage/cards/d/DragonlordOjutai.java @@ -47,7 +47,7 @@ public final class DragonlordOjutai extends CardImpl { // Whenever Dragonlord Ojutai deals combat damage to a player, look at the top three cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new LookLibraryAndPickControllerEffect - (new StaticValue(3), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false), false)); + (StaticValue.get(3), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false), false)); } public DragonlordOjutai(final DragonlordOjutai card) { diff --git a/Mage.Sets/src/mage/cards/d/DranaKalastriaBloodchief.java b/Mage.Sets/src/mage/cards/d/DranaKalastriaBloodchief.java index 404fafb5f7..28f6054c85 100644 --- a/Mage.Sets/src/mage/cards/d/DranaKalastriaBloodchief.java +++ b/Mage.Sets/src/mage/cards/d/DranaKalastriaBloodchief.java @@ -37,8 +37,8 @@ public final class DranaKalastriaBloodchief extends CardImpl { this.toughness = new MageInt(4); this.addAbility(FlyingAbility.getInstance()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(new StaticValue(0), new SignInversionDynamicValue(ManacostVariableValue.instance), Duration.EndOfTurn), new ManaCostsImpl("{X}{B}{B}")); - ability.addEffect(new BoostSourceEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(StaticValue.get(0), new SignInversionDynamicValue(ManacostVariableValue.instance), Duration.EndOfTurn), new ManaCostsImpl("{X}{B}{B}")); + ability.addEffect(new BoostSourceEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/d/DrawnFromDreams.java b/Mage.Sets/src/mage/cards/d/DrawnFromDreams.java index b2ff445b84..a9777c2989 100644 --- a/Mage.Sets/src/mage/cards/d/DrawnFromDreams.java +++ b/Mage.Sets/src/mage/cards/d/DrawnFromDreams.java @@ -20,7 +20,7 @@ public final class DrawnFromDreams extends CardImpl { // Look at the top seven cards of your library. Put two of them into your hand and the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(7), false, new StaticValue(2), + StaticValue.get(7), false, StaticValue.get(2), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false ).setBackInRandomOrder(true)); } diff --git a/Mage.Sets/src/mage/cards/e/Earthshaker.java b/Mage.Sets/src/mage/cards/e/Earthshaker.java index 6a10728d67..85b4eb7ebf 100644 --- a/Mage.Sets/src/mage/cards/e/Earthshaker.java +++ b/Mage.Sets/src/mage/cards/e/Earthshaker.java @@ -34,7 +34,7 @@ public final class Earthshaker extends CardImpl { this.power = new MageInt(4); this.toughness = new MageInt(5); // Whenever you cast a Spirit or Arcane spell, Earthshaker deals 2 damage to each creature without flying. - this.addAbility(new SpellCastControllerTriggeredAbility(new DamageAllEffect(new StaticValue(2) , creatureFilter), StaticFilters.SPIRIT_OR_ARCANE_CARD, false)); + this.addAbility(new SpellCastControllerTriggeredAbility(new DamageAllEffect(StaticValue.get(2) , creatureFilter), StaticFilters.SPIRIT_OR_ARCANE_CARD, false)); } public Earthshaker(final Earthshaker card) { diff --git a/Mage.Sets/src/mage/cards/e/EmberethSkyblazer.java b/Mage.Sets/src/mage/cards/e/EmberethSkyblazer.java index 9eff019996..efbdb2cc02 100644 --- a/Mage.Sets/src/mage/cards/e/EmberethSkyblazer.java +++ b/Mage.Sets/src/mage/cards/e/EmberethSkyblazer.java @@ -43,7 +43,7 @@ public final class EmberethSkyblazer extends CardImpl { // Whenever Embereth Skyblazer attacks, you may pay {2}{R}. If you do, creatures you control get +X/+0 until end of turn, where X is the number of opponents you have. this.addAbility(new AttacksTriggeredAbility(new DoIfCostPaid( new BoostControlledEffect( - OpponentsCount.instance, StaticValue.getZeroValue(), Duration.EndOfTurn, + OpponentsCount.instance, StaticValue.get(0), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false, true ).setText("creatures you control get +X/+0 until end of turn, where X is the number of opponents you have"), new ManaCostsImpl("{2}{R}") diff --git a/Mage.Sets/src/mage/cards/e/EndlessScream.java b/Mage.Sets/src/mage/cards/e/EndlessScream.java index 75fc451a8a..f4e0aef884 100644 --- a/Mage.Sets/src/mage/cards/e/EndlessScream.java +++ b/Mage.Sets/src/mage/cards/e/EndlessScream.java @@ -41,7 +41,7 @@ public final class EndlessScream extends CardImpl { // Endless Scream enters the battlefield with X scream counters on it. this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.SCREAM.createInstance()))); // Enchanted creature gets +1/+0 for each scream counter on Endless Scream. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(new CountersSourceCount(CounterType.SCREAM), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(new CountersSourceCount(CounterType.SCREAM), StaticValue.get(0), Duration.WhileOnBattlefield))); } public EndlessScream(final EndlessScream card) { diff --git a/Mage.Sets/src/mage/cards/e/Enrage.java b/Mage.Sets/src/mage/cards/e/Enrage.java index 9d83d33659..5546838f80 100644 --- a/Mage.Sets/src/mage/cards/e/Enrage.java +++ b/Mage.Sets/src/mage/cards/e/Enrage.java @@ -22,7 +22,7 @@ public final class Enrage extends CardImpl { // Target creature gets +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/e/ExpansionExplosion.java b/Mage.Sets/src/mage/cards/e/ExpansionExplosion.java index 88cd4ef9f9..0b2039c094 100644 --- a/Mage.Sets/src/mage/cards/e/ExpansionExplosion.java +++ b/Mage.Sets/src/mage/cards/e/ExpansionExplosion.java @@ -80,7 +80,7 @@ class ExplosionEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { int xValue = source.getManaCostsToPay().getX(); - Effect effect = new DamageTargetEffect(new StaticValue(xValue), true, "", true); + Effect effect = new DamageTargetEffect(StaticValue.get(xValue), true, "", true); effect.setTargetPointer(new FixedTarget(source.getFirstTarget(), game)); effect.apply(game, source); Player player = game.getPlayer(source.getTargets().get(1).getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/f/FaerieMechanist.java b/Mage.Sets/src/mage/cards/f/FaerieMechanist.java index d3593c1bb3..b3255885a5 100644 --- a/Mage.Sets/src/mage/cards/f/FaerieMechanist.java +++ b/Mage.Sets/src/mage/cards/f/FaerieMechanist.java @@ -37,7 +37,7 @@ public final class FaerieMechanist extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // When Faerie Mechanist enters the battlefield, look at the top three cards of your library. // You may reveal an artifact card from among them and put it into your hand. Put the rest on the bottom of your library in any order. - this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), filter, false))); + this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), filter, false))); } public FaerieMechanist(final FaerieMechanist card) { diff --git a/Mage.Sets/src/mage/cards/f/FatalFrenzy.java b/Mage.Sets/src/mage/cards/f/FatalFrenzy.java index 6b07415820..a5147f18f1 100644 --- a/Mage.Sets/src/mage/cards/f/FatalFrenzy.java +++ b/Mage.Sets/src/mage/cards/f/FatalFrenzy.java @@ -35,7 +35,7 @@ public final class FatalFrenzy extends CardImpl { this.getSpellAbility().addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn) .setText("Until end of turn, target creature you control gains trample") ); - this.getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, new StaticValue(0), Duration.EndOfTurn, true) + this.getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, StaticValue.get(0), Duration.EndOfTurn, true) .setText("and gets +X/+0, where X is its power.") ); this.getSpellAbility().addEffect(new FatalFrenzyEffect()); diff --git a/Mage.Sets/src/mage/cards/f/FatalLore.java b/Mage.Sets/src/mage/cards/f/FatalLore.java index c4a641dedc..9978b96de5 100644 --- a/Mage.Sets/src/mage/cards/f/FatalLore.java +++ b/Mage.Sets/src/mage/cards/f/FatalLore.java @@ -79,7 +79,7 @@ class FatalLoreEffect extends OneShotEffect { destroyCreature.setTargetPointer(new FixedTarget(targetId)); destroyCreature.apply(game, source); } - Effect opponentDrawsCards = new DrawCardTargetEffect(new StaticValue(3), false, true); + Effect opponentDrawsCards = new DrawCardTargetEffect(StaticValue.get(3), false, true); opponentDrawsCards.setTargetPointer(new FixedTarget(chosenOpponent.getId())); opponentDrawsCards.apply(game, source); return true; diff --git a/Mage.Sets/src/mage/cards/f/FeralAnimist.java b/Mage.Sets/src/mage/cards/f/FeralAnimist.java index d552a59695..6fbca8779b 100644 --- a/Mage.Sets/src/mage/cards/f/FeralAnimist.java +++ b/Mage.Sets/src/mage/cards/f/FeralAnimist.java @@ -31,7 +31,7 @@ public final class FeralAnimist extends CardImpl { // {3}: Feral Animist gets +X/+0 until end of turn, where X is its power. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, - new BoostSourceEffect(new SourcePermanentPowerCount(), new StaticValue(0), Duration.EndOfTurn, true), + new BoostSourceEffect(new SourcePermanentPowerCount(), StaticValue.get(0), Duration.EndOfTurn, true), new GenericManaCost(3))); } diff --git a/Mage.Sets/src/mage/cards/f/FesteringMarch.java b/Mage.Sets/src/mage/cards/f/FesteringMarch.java index 9d6b6a93c0..20f67b9c97 100644 --- a/Mage.Sets/src/mage/cards/f/FesteringMarch.java +++ b/Mage.Sets/src/mage/cards/f/FesteringMarch.java @@ -29,7 +29,7 @@ public final class FesteringMarch extends CardImpl { // Exile Festering March this.getSpellAbility().addEffect(ExileSpellEffect.getInstance()); // with three time counters on it. - Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), new StaticValue(3), false, true); + Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), StaticValue.get(3), false, true); effect.setText("with 3 time counters on it"); this.getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/f/FistsOfFlame.java b/Mage.Sets/src/mage/cards/f/FistsOfFlame.java index 418879d2c4..6b5af78da9 100644 --- a/Mage.Sets/src/mage/cards/f/FistsOfFlame.java +++ b/Mage.Sets/src/mage/cards/f/FistsOfFlame.java @@ -30,7 +30,7 @@ public final class FistsOfFlame extends CardImpl { ).setText("Until end of turn, target creature gains trample")); this.getSpellAbility().addEffect(new BoostTargetEffect( CardsDrawnThisTurnDynamicValue.instance, - StaticValue.getZeroValue(), Duration.EndOfTurn + StaticValue.get(0), Duration.EndOfTurn ).setText("and gets +1/+0 for each card you've drawn this turn.")); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addWatcher(new CardsDrawnThisTurnWatcher()); diff --git a/Mage.Sets/src/mage/cards/f/Flamebreak.java b/Mage.Sets/src/mage/cards/f/Flamebreak.java index ecda085357..78091a868d 100644 --- a/Mage.Sets/src/mage/cards/f/Flamebreak.java +++ b/Mage.Sets/src/mage/cards/f/Flamebreak.java @@ -37,7 +37,7 @@ public final class Flamebreak extends CardImpl { // Flamebreak deals 3 damage to each creature without flying and each player. Creatures dealt damage this way can't be regenerated this turn. - this.getSpellAbility().addEffect(new DamageEverythingEffect(new StaticValue(3), filter1)); + this.getSpellAbility().addEffect(new DamageEverythingEffect(StaticValue.get(3), filter1)); this.getSpellAbility().addEffect(new FlamebreakCantRegenerateEffect()); this.getSpellAbility().addWatcher(new DamagedByWatcher(false)); } diff --git a/Mage.Sets/src/mage/cards/f/ForbiddenAlchemy.java b/Mage.Sets/src/mage/cards/f/ForbiddenAlchemy.java index 42c0cb35e6..637895487f 100644 --- a/Mage.Sets/src/mage/cards/f/ForbiddenAlchemy.java +++ b/Mage.Sets/src/mage/cards/f/ForbiddenAlchemy.java @@ -22,7 +22,7 @@ public final class ForbiddenAlchemy extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{U}"); // Look at the top four cards of your library. Put one of them into your hand and the rest into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); // Flashback {6}{B} diff --git a/Mage.Sets/src/mage/cards/f/FoulEmissary.java b/Mage.Sets/src/mage/cards/f/FoulEmissary.java index 5caf63570d..cca047343a 100644 --- a/Mage.Sets/src/mage/cards/f/FoulEmissary.java +++ b/Mage.Sets/src/mage/cards/f/FoulEmissary.java @@ -41,7 +41,7 @@ public final class FoulEmissary extends CardImpl { this.toughness = new MageInt(1); // When Foul Emissary enters the battlefield, look at the top four cards of your library. You may reveal a creature card from among them and put it into your hand. Put the rest on the bottom of your library in any order. - this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), filter, false))); + this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), filter, false))); // When you sacrifice Foul Emissary while casting a spell with emerge, create a 3/2 colorless Eldrazi Horror creature token. this.addAbility(new FoulEmissaryTriggeredAbility(new CreateTokenEffect(new EldraziHorrorToken()), false)); diff --git a/Mage.Sets/src/mage/cards/g/GhoulsFeast.java b/Mage.Sets/src/mage/cards/g/GhoulsFeast.java index a97e983884..f43717382f 100644 --- a/Mage.Sets/src/mage/cards/g/GhoulsFeast.java +++ b/Mage.Sets/src/mage/cards/g/GhoulsFeast.java @@ -24,7 +24,7 @@ public final class GhoulsFeast extends CardImpl { // Target creature gets +X/+0 until end of turn, where X is the number of creature cards in your graveyard. DynamicValue xValue = new CardsInControllerGraveyardCount(new FilterCreatureCard("creature card")); - this.getSpellAbility().addEffect(new BoostTargetEffect(xValue, new StaticValue(0), Duration.EndOfTurn, true)); + this.getSpellAbility().addEffect(new BoostTargetEffect(xValue, StaticValue.get(0), Duration.EndOfTurn, true)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/g/GlaiveOfTheGuildpact.java b/Mage.Sets/src/mage/cards/g/GlaiveOfTheGuildpact.java index c46079038b..fcfdbdfbf7 100644 --- a/Mage.Sets/src/mage/cards/g/GlaiveOfTheGuildpact.java +++ b/Mage.Sets/src/mage/cards/g/GlaiveOfTheGuildpact.java @@ -34,7 +34,7 @@ public final class GlaiveOfTheGuildpact extends CardImpl { Zone.BATTLEFIELD, new BoostEquippedEffect( GateYouControlCount.instance, - new StaticValue(0) + StaticValue.get(0) ) ); ability.addEffect(new GainAbilityAttachedEffect( diff --git a/Mage.Sets/src/mage/cards/g/GlimpseTheFuture.java b/Mage.Sets/src/mage/cards/g/GlimpseTheFuture.java index bb2f7d5e33..e200cb2234 100644 --- a/Mage.Sets/src/mage/cards/g/GlimpseTheFuture.java +++ b/Mage.Sets/src/mage/cards/g/GlimpseTheFuture.java @@ -19,7 +19,7 @@ public final class GlimpseTheFuture extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{U}"); // Look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); } diff --git a/Mage.Sets/src/mage/cards/g/GlintNestCrane.java b/Mage.Sets/src/mage/cards/g/GlintNestCrane.java index af36bbbbe3..4a20dbf4b9 100644 --- a/Mage.Sets/src/mage/cards/g/GlintNestCrane.java +++ b/Mage.Sets/src/mage/cards/g/GlintNestCrane.java @@ -32,7 +32,7 @@ public final class GlintNestCrane extends CardImpl { // When Glint-Nest Crane enters the battlefield, look at the top four cards of your library. You may reveal an artifact card from among them and // put it into your hand. Put the rest on the bottom of your library in any order. this.addAbility(new EntersBattlefieldTriggeredAbility( - new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), + new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD_ARTIFACT_AN, Zone.LIBRARY, false, true, false, Zone.HAND, true))); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinGaveleer.java b/Mage.Sets/src/mage/cards/g/GoblinGaveleer.java index 80e9f6f20d..9db43599dd 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinGaveleer.java +++ b/Mage.Sets/src/mage/cards/g/GoblinGaveleer.java @@ -33,7 +33,7 @@ public final class GoblinGaveleer extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Goblin Gaveleer gets +2/+0 for each Equipment attached to it. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new EquipmentAttachedCount(2), - new StaticValue(0), Duration.WhileOnBattlefield))); + StaticValue.get(0), Duration.WhileOnBattlefield))); } public GoblinGaveleer(final GoblinGaveleer card) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinPiledriver.java b/Mage.Sets/src/mage/cards/g/GoblinPiledriver.java index 1c355d9091..3aacc2532a 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinPiledriver.java +++ b/Mage.Sets/src/mage/cards/g/GoblinPiledriver.java @@ -43,7 +43,7 @@ public final class GoblinPiledriver extends CardImpl { this.addAbility(ProtectionAbility.from(ObjectColor.BLUE)); // Whenever Goblin Piledriver attacks, it gets +2/+0 until end of turn for each other attacking Goblin. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter, 2); - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, StaticValue.get(0), Duration.EndOfTurn, true), false)); } public GoblinPiledriver(final GoblinPiledriver card) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java b/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java index 813b051f72..6190cfee3c 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java +++ b/Mage.Sets/src/mage/cards/g/GoblinRabblemaster.java @@ -55,7 +55,7 @@ public final class GoblinRabblemaster extends CardImpl { this.addAbility(new BeginningOfCombatTriggeredAbility(new CreateTokenEffect(new GoblinToken(true)), TargetController.YOU, false)); // When Goblin Rabblemaster attacks, it gets +1/+0 until end of turn for each other attacking Goblin. - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(attackingFilter), new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(attackingFilter), StaticValue.get(0), Duration.EndOfTurn, true), false)); } public GoblinRabblemaster(final GoblinRabblemaster card) { diff --git a/Mage.Sets/src/mage/cards/g/GolemSkinGauntlets.java b/Mage.Sets/src/mage/cards/g/GolemSkinGauntlets.java index 5f3d1e6993..9c9e80861d 100644 --- a/Mage.Sets/src/mage/cards/g/GolemSkinGauntlets.java +++ b/Mage.Sets/src/mage/cards/g/GolemSkinGauntlets.java @@ -31,7 +31,7 @@ public final class GolemSkinGauntlets extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}"); this.subtype.add(SubType.EQUIPMENT); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new GolemSkinGauntletsAttachedCount(), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new GolemSkinGauntletsAttachedCount(), StaticValue.get(0), Duration.WhileOnBattlefield))); this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2))); } diff --git a/Mage.Sets/src/mage/cards/g/GreatDefender.java b/Mage.Sets/src/mage/cards/g/GreatDefender.java index 369c3eafd6..417204ff9a 100644 --- a/Mage.Sets/src/mage/cards/g/GreatDefender.java +++ b/Mage.Sets/src/mage/cards/g/GreatDefender.java @@ -22,7 +22,7 @@ public final class GreatDefender extends CardImpl { // Target creature gets +0/+X until end of turn, where X is its converted mana cost. this.getSpellAbility().addTarget(new TargetCreaturePermanent()); - this.getSpellAbility().addEffect(new BoostTargetEffect(new StaticValue(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) + this.getSpellAbility().addEffect(new BoostTargetEffect(StaticValue.get(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) .setText("Target creature gets +0/+X until end of turn, where X is its converted mana cost.") ); } diff --git a/Mage.Sets/src/mage/cards/g/GrevenPredatorCaptain.java b/Mage.Sets/src/mage/cards/g/GrevenPredatorCaptain.java index 8024fbd211..cdf3130f8d 100644 --- a/Mage.Sets/src/mage/cards/g/GrevenPredatorCaptain.java +++ b/Mage.Sets/src/mage/cards/g/GrevenPredatorCaptain.java @@ -41,7 +41,7 @@ public final class GrevenPredatorCaptain extends CardImpl { // Greven, Predator Captain gets +X/+0, where X is the amount of life you've lost this turn. this.addAbility(new SimpleStaticAbility(new BoostSourceEffect( - GrevenPredatorCaptainValue.instance, StaticValue.getZeroValue(), Duration.WhileOnBattlefield + GrevenPredatorCaptainValue.instance, StaticValue.get(0), Duration.WhileOnBattlefield ))); // Whenever Greven attacks, you may sacrifice another creature. If you do, you draw cards equal to that creature's power and you lose life equal to that creature's toughness. diff --git a/Mage.Sets/src/mage/cards/g/GrimFlayer.java b/Mage.Sets/src/mage/cards/g/GrimFlayer.java index de4d208c74..1856b0ae15 100644 --- a/Mage.Sets/src/mage/cards/g/GrimFlayer.java +++ b/Mage.Sets/src/mage/cards/g/GrimFlayer.java @@ -39,7 +39,7 @@ public final class GrimFlayer extends CardImpl { // Whenever Grim Flayer deals combat damage to a player, look at the top three cards of your library. Put any number of them into your graveyard // and the rest back on top of your library in any order. Effect effect = new LookLibraryAndPickControllerEffect( - new StaticValue(3), false, new StaticValue(3), new FilterCard(), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false); + StaticValue.get(3), false, StaticValue.get(3), new FilterCard(), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false); effect.setText("look at the top three cards of your library. Put any number of them into your graveyard and the rest back on top of your library in any order"); this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(effect, false)); diff --git a/Mage.Sets/src/mage/cards/g/GruulBeastmaster.java b/Mage.Sets/src/mage/cards/g/GruulBeastmaster.java index c0e203c35b..bd475efdee 100644 --- a/Mage.Sets/src/mage/cards/g/GruulBeastmaster.java +++ b/Mage.Sets/src/mage/cards/g/GruulBeastmaster.java @@ -47,7 +47,7 @@ public final class GruulBeastmaster extends CardImpl { // Whenever Gruul Beastmaster attacks, another target creature you control gets +X/+0 until end of turn, where X is Gruul Beastmaster's power. Ability ability = new AttacksTriggeredAbility(new BoostTargetEffect( - xValue, StaticValue.getZeroValue(), Duration.EndOfTurn, true + xValue, StaticValue.get(0), Duration.EndOfTurn, true ), false); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/g/GurmagDrowner.java b/Mage.Sets/src/mage/cards/g/GurmagDrowner.java index bf96ee3b1c..c15181cfbc 100644 --- a/Mage.Sets/src/mage/cards/g/GurmagDrowner.java +++ b/Mage.Sets/src/mage/cards/g/GurmagDrowner.java @@ -30,7 +30,7 @@ public final class GurmagDrowner extends CardImpl { this.addAbility(new ExploitAbility()); // When Gurmag Drowner exploits a creature, look at the top four cards of your library. Put one of them into your hand and the rest into your graveyard. - this.addAbility(new ExploitCreatureTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), + this.addAbility(new ExploitCreatureTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false), false)); } diff --git a/Mage.Sets/src/mage/cards/h/HarshMentor.java b/Mage.Sets/src/mage/cards/h/HarshMentor.java index 7a01484d2a..16471d1c81 100644 --- a/Mage.Sets/src/mage/cards/h/HarshMentor.java +++ b/Mage.Sets/src/mage/cards/h/HarshMentor.java @@ -50,7 +50,7 @@ public final class HarshMentor extends CardImpl { class HarshMentorTriggeredAbility extends TriggeredAbilityImpl { HarshMentorTriggeredAbility() { - super(Zone.BATTLEFIELD, new DamageTargetEffect(new StaticValue(2), true, "that player", true)); + super(Zone.BATTLEFIELD, new DamageTargetEffect(StaticValue.get(2), true, "that player", true)); } HarshMentorTriggeredAbility(final HarshMentorTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/h/Hatred.java b/Mage.Sets/src/mage/cards/h/Hatred.java index 1d096e1cb6..b539314056 100644 --- a/Mage.Sets/src/mage/cards/h/Hatred.java +++ b/Mage.Sets/src/mage/cards/h/Hatred.java @@ -27,7 +27,7 @@ public final class Hatred extends CardImpl { // Target creature gets +X/+0 until end of turn. DynamicValue xValue = GetXValue.instance; - this.getSpellAbility().addEffect(new BoostTargetEffect(xValue, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(xValue, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/h/HeartlashCinder.java b/Mage.Sets/src/mage/cards/h/HeartlashCinder.java index 02b0909a97..21ef0f07b5 100644 --- a/Mage.Sets/src/mage/cards/h/HeartlashCinder.java +++ b/Mage.Sets/src/mage/cards/h/HeartlashCinder.java @@ -40,7 +40,7 @@ public final class HeartlashCinder extends CardImpl { this.addAbility(HasteAbility.getInstance()); // Chroma - When Heartlash Cinder enters the battlefield, it gets +X/+0 until end of turn, where X is the number of red mana symbols in the mana costs of permanents you control. - ContinuousEffect effect = new BoostSourceEffect(new ChromaHeartlashCinderCount(), new StaticValue(0), Duration.EndOfTurn, true); + ContinuousEffect effect = new BoostSourceEffect(new ChromaHeartlashCinderCount(), StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("Chroma — When Heartlash Cinder enters the battlefield, it gets +X/+0 until end of turn, where X is the number of red mana symbols in the mana costs of permanents you control."); this.addAbility(new EntersBattlefieldTriggeredAbility(effect, false, true)); diff --git a/Mage.Sets/src/mage/cards/h/HellkiteIgniter.java b/Mage.Sets/src/mage/cards/h/HellkiteIgniter.java index 566e9bca98..f69ac3f81a 100644 --- a/Mage.Sets/src/mage/cards/h/HellkiteIgniter.java +++ b/Mage.Sets/src/mage/cards/h/HellkiteIgniter.java @@ -46,7 +46,7 @@ public final class HellkiteIgniter extends CardImpl { this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect( new PermanentsOnBattlefieldCount(filter), - new StaticValue(0), + StaticValue.get(0), Duration.EndOfTurn, true), new ManaCostsImpl("{1}{R}"))); diff --git a/Mage.Sets/src/mage/cards/h/HoldTheGates.java b/Mage.Sets/src/mage/cards/h/HoldTheGates.java index 4efa8b303a..e8b5b30675 100644 --- a/Mage.Sets/src/mage/cards/h/HoldTheGates.java +++ b/Mage.Sets/src/mage/cards/h/HoldTheGates.java @@ -28,7 +28,7 @@ public final class HoldTheGates extends CardImpl { // Creatures you control get +0/+1 for each Gate you control and have vigilance. Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, - new BoostControlledEffect(new StaticValue(0), GateYouControlCount.instance, Duration.WhileOnBattlefield)); + new BoostControlledEffect(StaticValue.get(0), GateYouControlCount.instance, Duration.WhileOnBattlefield)); ability.addEffect(new GainAbilityControlledEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, new FilterControlledCreaturePermanent("Creatures")) .setText("Creatures you control get +0/+1 for each Gate you control and have vigilance")); ability.addHint(GateYouControlHint.instance); diff --git a/Mage.Sets/src/mage/cards/h/HowlFromBeyond.java b/Mage.Sets/src/mage/cards/h/HowlFromBeyond.java index ec2c6e9dd4..9697ef5ba1 100644 --- a/Mage.Sets/src/mage/cards/h/HowlFromBeyond.java +++ b/Mage.Sets/src/mage/cards/h/HowlFromBeyond.java @@ -23,7 +23,7 @@ public final class HowlFromBeyond extends CardImpl { // Target creature gets +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostTargetEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java b/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java index 24cf8cadfa..203988cf0d 100644 --- a/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java +++ b/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java @@ -30,7 +30,7 @@ public final class HungerOfTheNim extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{B}"); // Target creature gets +1/+0 until end of turn for each artifact you control. - Effect effect = new BoostTargetEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.EndOfTurn, true); + Effect effect = new BoostTargetEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("Target creature gets +1/+0 until end of turn for each artifact you control"); getSpellAbility().addEffect(effect); getSpellAbility().addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/i/IchneumonDruid.java b/Mage.Sets/src/mage/cards/i/IchneumonDruid.java index c341056251..6ac8a96806 100644 --- a/Mage.Sets/src/mage/cards/i/IchneumonDruid.java +++ b/Mage.Sets/src/mage/cards/i/IchneumonDruid.java @@ -52,7 +52,7 @@ public final class IchneumonDruid extends CardImpl { class IchneumonDruidAbility extends TriggeredAbilityImpl { public IchneumonDruidAbility() { - super(Zone.BATTLEFIELD, new DamageTargetEffect(new StaticValue(4), false, "that player", true)); + super(Zone.BATTLEFIELD, new DamageTargetEffect(StaticValue.get(4), false, "that player", true)); } public IchneumonDruidAbility(final IchneumonDruidAbility ability) { diff --git a/Mage.Sets/src/mage/cards/i/ImmolationShaman.java b/Mage.Sets/src/mage/cards/i/ImmolationShaman.java index a4eddb6286..f7bc1ddca0 100644 --- a/Mage.Sets/src/mage/cards/i/ImmolationShaman.java +++ b/Mage.Sets/src/mage/cards/i/ImmolationShaman.java @@ -69,7 +69,7 @@ public final class ImmolationShaman extends CardImpl { class ImmolationShamanTriggeredAbility extends TriggeredAbilityImpl { ImmolationShamanTriggeredAbility() { - super(Zone.BATTLEFIELD, new DamageTargetEffect(new StaticValue(1), true, "that player", true)); + super(Zone.BATTLEFIELD, new DamageTargetEffect(StaticValue.get(1), true, "that player", true)); } private ImmolationShamanTriggeredAbility(final ImmolationShamanTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/i/ImpactTremors.java b/Mage.Sets/src/mage/cards/i/ImpactTremors.java index bd9ec49c39..e905b6ef88 100644 --- a/Mage.Sets/src/mage/cards/i/ImpactTremors.java +++ b/Mage.Sets/src/mage/cards/i/ImpactTremors.java @@ -24,7 +24,7 @@ public final class ImpactTremors extends CardImpl { // Whenever a creature enters the battlefield under your control, Impact Tremors deals 1 damage to each opponent. this.addAbility(new EntersBattlefieldControlledTriggeredAbility(Zone.BATTLEFIELD, - new DamagePlayersEffect(Outcome.Damage, new StaticValue(1), TargetController.OPPONENT), + new DamagePlayersEffect(Outcome.Damage, StaticValue.get(1), TargetController.OPPONENT), new FilterCreaturePermanent("a creature"), false)); } diff --git a/Mage.Sets/src/mage/cards/i/Impulse.java b/Mage.Sets/src/mage/cards/i/Impulse.java index 1ff1b93fac..5d9bbacb64 100644 --- a/Mage.Sets/src/mage/cards/i/Impulse.java +++ b/Mage.Sets/src/mage/cards/i/Impulse.java @@ -20,7 +20,7 @@ public final class Impulse extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{U}"); // Look at the top four cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); } diff --git a/Mage.Sets/src/mage/cards/i/IncubationIncongruity.java b/Mage.Sets/src/mage/cards/i/IncubationIncongruity.java index 7604c2ab92..07e76c0b33 100644 --- a/Mage.Sets/src/mage/cards/i/IncubationIncongruity.java +++ b/Mage.Sets/src/mage/cards/i/IncubationIncongruity.java @@ -30,8 +30,8 @@ public final class IncubationIncongruity extends SplitCard { // Incubation // Look at the top five cards of your library. You may reveal a creature card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.getLeftHalfCard().getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, - new StaticValue(1), StaticFilters.FILTER_CARD_CREATURE_A, + StaticValue.get(5), false, + StaticValue.get(1), StaticFilters.FILTER_CARD_CREATURE_A, Zone.LIBRARY, false, true, false, Zone.HAND, false, false, false ).setBackInRandomOrder(true)); diff --git a/Mage.Sets/src/mage/cards/i/IndenturedDjinn.java b/Mage.Sets/src/mage/cards/i/IndenturedDjinn.java index 6e54d5ab21..85127a972c 100644 --- a/Mage.Sets/src/mage/cards/i/IndenturedDjinn.java +++ b/Mage.Sets/src/mage/cards/i/IndenturedDjinn.java @@ -71,7 +71,7 @@ class IndenturedDjinnEffect extends OneShotEffect { for (UUID playerId : game.getOpponents(source.getControllerId())) { Player player = game.getPlayer(playerId); if (player != null) { - Effect effect = new DrawCardTargetEffect(new StaticValue(3), false, true); + Effect effect = new DrawCardTargetEffect(StaticValue.get(3), false, true); effect.setTargetPointer(new FixedTarget(playerId)); effect.setText(player.getLogName() + " may draw up to three cards"); effect.apply(game, source); diff --git a/Mage.Sets/src/mage/cards/i/InfiniteHourglass.java b/Mage.Sets/src/mage/cards/i/InfiniteHourglass.java index f06540d90a..0e5527fb04 100644 --- a/Mage.Sets/src/mage/cards/i/InfiniteHourglass.java +++ b/Mage.Sets/src/mage/cards/i/InfiniteHourglass.java @@ -39,7 +39,7 @@ public final class InfiniteHourglass extends CardImpl { Zone.BATTLEFIELD, new BoostAllEffect( new CountersSourceCount(CounterType.TIME), - new StaticValue(0), + StaticValue.get(0), Duration.WhileOnBattlefield ) )); diff --git a/Mage.Sets/src/mage/cards/j/JaceTheLivingGuildpact.java b/Mage.Sets/src/mage/cards/j/JaceTheLivingGuildpact.java index 762da47ab1..71a5f2af17 100644 --- a/Mage.Sets/src/mage/cards/j/JaceTheLivingGuildpact.java +++ b/Mage.Sets/src/mage/cards/j/JaceTheLivingGuildpact.java @@ -42,7 +42,7 @@ public final class JaceTheLivingGuildpact extends CardImpl { // +1: Look at the top two cards of your library. Put one of them into your graveyard. Effect effect = new LookLibraryAndPickControllerEffect( - new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, true, false, false, Zone.GRAVEYARD, false); + StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, true, false, false, Zone.GRAVEYARD, false); effect.setText("Look at the top two cards of your library. Put one of them into your graveyard"); this.addAbility(new LoyaltyAbility(effect, 1)); diff --git a/Mage.Sets/src/mage/cards/k/KavuScout.java b/Mage.Sets/src/mage/cards/k/KavuScout.java index dc4c345f4f..87747287fa 100644 --- a/Mage.Sets/src/mage/cards/k/KavuScout.java +++ b/Mage.Sets/src/mage/cards/k/KavuScout.java @@ -31,7 +31,7 @@ public final class KavuScout extends CardImpl { this.toughness = new MageInt(2); // Domain - Kavu Scout gets +1/+0 for each basic land type among lands you control. - Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new DomainValue(), new StaticValue(0), Duration.WhileOnBattlefield)); + Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new DomainValue(), StaticValue.get(0), Duration.WhileOnBattlefield)); ability.setAbilityWord(AbilityWord.DOMAIN); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/k/KessigWolfRun.java b/Mage.Sets/src/mage/cards/k/KessigWolfRun.java index 3dfb9a59d9..787bae0044 100644 --- a/Mage.Sets/src/mage/cards/k/KessigWolfRun.java +++ b/Mage.Sets/src/mage/cards/k/KessigWolfRun.java @@ -33,7 +33,7 @@ public final class KessigWolfRun extends CardImpl { // {X}{R}{G}, {T}: Target creature gets +X/+0 and gains trample until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{X}{R}{G}")); ability.addCost(new TapSourceCost()); - ability.addEffect(new BoostTargetEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + ability.addEffect(new BoostTargetEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/k/KitsuneLoreweaver.java b/Mage.Sets/src/mage/cards/k/KitsuneLoreweaver.java index 0b71aea401..107a1fb17a 100644 --- a/Mage.Sets/src/mage/cards/k/KitsuneLoreweaver.java +++ b/Mage.Sets/src/mage/cards/k/KitsuneLoreweaver.java @@ -30,7 +30,7 @@ public final class KitsuneLoreweaver extends CardImpl { this.toughness = new MageInt(1); // {1}{W}: Kitsune Loreweaver gets +0/+X until end of turn, where X is the number of cards in your hand. - Effect effect = new BoostSourceEffect(new StaticValue(0), CardsInControllerHandCount.instance, Duration.EndOfTurn, true); + Effect effect = new BoostSourceEffect(StaticValue.get(0), CardsInControllerHandCount.instance, Duration.EndOfTurn, true); effect.setText("{this} gets +0/+X until end of turn, where X is the number of cards in your hand"); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{W}"))); } diff --git a/Mage.Sets/src/mage/cards/k/KruphixsInsight.java b/Mage.Sets/src/mage/cards/k/KruphixsInsight.java index a0cf363446..fa4071206c 100644 --- a/Mage.Sets/src/mage/cards/k/KruphixsInsight.java +++ b/Mage.Sets/src/mage/cards/k/KruphixsInsight.java @@ -28,7 +28,7 @@ public final class KruphixsInsight extends CardImpl { // Reveal the top six cards of your library. Put up to three enchantment cards from among them into your hand and the rest of the revealed cards into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(6), false, new StaticValue(3), filter, Zone.GRAVEYARD, false, true, true,Zone.HAND, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(6), false, StaticValue.get(3), filter, Zone.GRAVEYARD, false, true, true,Zone.HAND, false)); } public KruphixsInsight(final KruphixsInsight card) { diff --git a/Mage.Sets/src/mage/cards/k/KryShield.java b/Mage.Sets/src/mage/cards/k/KryShield.java index eb321f215e..2b1f7c3697 100644 --- a/Mage.Sets/src/mage/cards/k/KryShield.java +++ b/Mage.Sets/src/mage/cards/k/KryShield.java @@ -31,7 +31,7 @@ public final class KryShield extends CardImpl { Effect effect = new PreventDamageByTargetEffect(Duration.EndOfTurn); effect.setText("Prevent all damage that would be dealt this turn by target creature you control"); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new GenericManaCost(2)); - ability.addEffect(new BoostTargetEffect(new StaticValue(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) + ability.addEffect(new BoostTargetEffect(StaticValue.get(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) .setText("That creature gets +0/+X until end of turn, where X is its converted mana cost")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetControlledCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/k/KyloRen.java b/Mage.Sets/src/mage/cards/k/KyloRen.java index eab9b02ff1..06cfc0f593 100644 --- a/Mage.Sets/src/mage/cards/k/KyloRen.java +++ b/Mage.Sets/src/mage/cards/k/KyloRen.java @@ -62,7 +62,7 @@ public final class KyloRen extends CardImpl { // Whenever Kylo Ren attacks, it gets +1/+0 for each creature in your graveyard and you may tap target creature defending player controls. CardsInControllerGraveyardCount value = new CardsInControllerGraveyardCount(StaticFilters.FILTER_CARD_CREATURE); - Effect effect = new BoostSourceEffect(value, new StaticValue(0), Duration.WhileOnBattlefield); + Effect effect = new BoostSourceEffect(value, StaticValue.get(0), Duration.WhileOnBattlefield); effect.setText("it gets +1/+0 for each creature in your graveyard"); Ability ability = new AttacksTriggeredAbility(effect, false); ability.addEffect(new KyloRenTapTargetEffect()); diff --git a/Mage.Sets/src/mage/cards/l/LastRites.java b/Mage.Sets/src/mage/cards/l/LastRites.java index 843b17bccf..4abccd4d7b 100644 --- a/Mage.Sets/src/mage/cards/l/LastRites.java +++ b/Mage.Sets/src/mage/cards/l/LastRites.java @@ -83,7 +83,7 @@ class LastRitesEffect extends OneShotEffect { } FilterCard filter = new FilterCard((discardCount > 1 ? "" : "a") + " nonland card" + (discardCount > 1 ? "s" : "")); filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - StaticValue discardValue = new StaticValue(discardCount); + StaticValue discardValue = StaticValue.get(discardCount); Effect effect = new DiscardCardYouChooseTargetEffect(discardValue, filter, TargetController.ANY); effect.setTargetPointer(new FixedTarget(targetPlayer.getId())); effect.apply(game, source); diff --git a/Mage.Sets/src/mage/cards/l/LavaclawReaches.java b/Mage.Sets/src/mage/cards/l/LavaclawReaches.java index 9988c05f7d..e9039503d4 100644 --- a/Mage.Sets/src/mage/cards/l/LavaclawReaches.java +++ b/Mage.Sets/src/mage/cards/l/LavaclawReaches.java @@ -60,7 +60,7 @@ class LavaclawReachesToken extends TokenImpl { color.setBlack(true); power = new MageInt(2); toughness = new MageInt(2); - addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn), new ManaCostsImpl("{X}"))); + addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl("{X}"))); } public LavaclawReachesToken(final LavaclawReachesToken token) { super(token); diff --git a/Mage.Sets/src/mage/cards/l/LavakinBrawler.java b/Mage.Sets/src/mage/cards/l/LavakinBrawler.java index 4edc4e9084..0cf5eb70f4 100644 --- a/Mage.Sets/src/mage/cards/l/LavakinBrawler.java +++ b/Mage.Sets/src/mage/cards/l/LavakinBrawler.java @@ -34,7 +34,7 @@ public final class LavakinBrawler extends CardImpl { // Whenever Lavakin Brawler attacks, it gets +1/+0 until end of turn for each Elemental you control. this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect( - xValue, StaticValue.getZeroValue(), Duration.EndOfTurn, true + xValue, StaticValue.get(0), Duration.EndOfTurn, true ).setText("it gets +1/+0 until end of turn for each Elemental you control"), false)); } diff --git a/Mage.Sets/src/mage/cards/l/LichsTomb.java b/Mage.Sets/src/mage/cards/l/LichsTomb.java index 878d5d48e5..e87edd1fbc 100644 --- a/Mage.Sets/src/mage/cards/l/LichsTomb.java +++ b/Mage.Sets/src/mage/cards/l/LichsTomb.java @@ -67,7 +67,7 @@ class LichsTombTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { if (event.getPlayerId().equals(this.getControllerId())) { - ((SacrificeEffect) this.getEffects().get(0)).setAmount(new StaticValue(event.getAmount())); + ((SacrificeEffect) this.getEffects().get(0)).setAmount(StaticValue.get(event.getAmount())); return true; } return false; diff --git a/Mage.Sets/src/mage/cards/l/LilianasSpoils.java b/Mage.Sets/src/mage/cards/l/LilianasSpoils.java index 9238ae90a5..5f99953c62 100644 --- a/Mage.Sets/src/mage/cards/l/LilianasSpoils.java +++ b/Mage.Sets/src/mage/cards/l/LilianasSpoils.java @@ -34,7 +34,7 @@ public final class LilianasSpoils extends CardImpl { // Look at the top five cards of your library. You may reveal a black card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top five cards of your library. " + "You may reveal a black card from among them and put it into your hand. " diff --git a/Mage.Sets/src/mage/cards/l/LilianasTriumph.java b/Mage.Sets/src/mage/cards/l/LilianasTriumph.java index 5cb8a89ec4..ebe4f4488d 100644 --- a/Mage.Sets/src/mage/cards/l/LilianasTriumph.java +++ b/Mage.Sets/src/mage/cards/l/LilianasTriumph.java @@ -34,7 +34,7 @@ public final class LilianasTriumph extends CardImpl { )); this.getSpellAbility().addEffect(new ConditionalOneShotEffect( new DiscardEachPlayerEffect( - new StaticValue(1), false, TargetController.OPPONENT + StaticValue.get(1), false, TargetController.OPPONENT ), condition, "If you control a Liliana planeswalker, each opponent also discards a card." )); } diff --git a/Mage.Sets/src/mage/cards/l/LodestoneBauble.java b/Mage.Sets/src/mage/cards/l/LodestoneBauble.java index 06526f843f..a28028d795 100644 --- a/Mage.Sets/src/mage/cards/l/LodestoneBauble.java +++ b/Mage.Sets/src/mage/cards/l/LodestoneBauble.java @@ -138,7 +138,7 @@ class LodestoneBaubleDrawEffect extends OneShotEffect { UUID targetId = this.getTargetPointer().getFirst(game, source); Player targetPlayer = game.getPlayer(targetId); if (targetPlayer != null) { - Effect effect = new DrawCardTargetEffect(new StaticValue(1), false); + Effect effect = new DrawCardTargetEffect(StaticValue.get(1), false); effect.setTargetPointer(new FixedTarget(targetPlayer.getId())); DelayedTriggeredAbility ability = new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(effect); game.addDelayedTriggeredAbility(ability, source); diff --git a/Mage.Sets/src/mage/cards/l/LoneRevenant.java b/Mage.Sets/src/mage/cards/l/LoneRevenant.java index 9fdb6664e9..23122d6937 100644 --- a/Mage.Sets/src/mage/cards/l/LoneRevenant.java +++ b/Mage.Sets/src/mage/cards/l/LoneRevenant.java @@ -54,7 +54,7 @@ class LoneRevenantTriggeredAbility extends TriggeredAbilityImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); public LoneRevenantTriggeredAbility() { - super(Zone.BATTLEFIELD, new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + super(Zone.BATTLEFIELD, new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); } public LoneRevenantTriggeredAbility(final LoneRevenantTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/l/LostOrderOfJarkeld.java b/Mage.Sets/src/mage/cards/l/LostOrderOfJarkeld.java index 44b3f31f12..1d28ca854c 100644 --- a/Mage.Sets/src/mage/cards/l/LostOrderOfJarkeld.java +++ b/Mage.Sets/src/mage/cards/l/LostOrderOfJarkeld.java @@ -40,7 +40,7 @@ public final class LostOrderOfJarkeld extends CardImpl { this.addAbility(new SimpleStaticAbility( Zone.ALL, new SetPowerToughnessSourceEffect( - new AdditiveDynamicValue(new CreaturesControlledByChosenPlayer(), new StaticValue(1)), Duration.EndOfGame) + new AdditiveDynamicValue(new CreaturesControlledByChosenPlayer(), StaticValue.get(1)), Duration.EndOfGame) )); } diff --git a/Mage.Sets/src/mage/cards/m/Machinate.java b/Mage.Sets/src/mage/cards/m/Machinate.java index b1039219f0..2b6459a845 100644 --- a/Mage.Sets/src/mage/cards/m/Machinate.java +++ b/Mage.Sets/src/mage/cards/m/Machinate.java @@ -30,7 +30,7 @@ public final class Machinate extends CardImpl { // Look at the top X cards of your library, where X is the number of artifacts you control. Put one of those cards into your hand and the rest on the bottom of your library in any order. DynamicValue artifactsOnControl = new PermanentsOnBattlefieldCount(filter); - LookLibraryAndPickControllerEffect effect = new LookLibraryAndPickControllerEffect(artifactsOnControl, false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false); + LookLibraryAndPickControllerEffect effect = new LookLibraryAndPickControllerEffect(artifactsOnControl, false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false); effect.setText("Look at the top X cards of your library, where X is the number of artifacts you control. Put one of those cards into your hand and the rest on the bottom of your library in any order."); this.getSpellAbility().addEffect(effect); } diff --git a/Mage.Sets/src/mage/cards/m/MagmaSliver.java b/Mage.Sets/src/mage/cards/m/MagmaSliver.java index 61976a473c..eadc0ecd65 100644 --- a/Mage.Sets/src/mage/cards/m/MagmaSliver.java +++ b/Mage.Sets/src/mage/cards/m/MagmaSliver.java @@ -36,7 +36,7 @@ public final class MagmaSliver extends CardImpl { this.toughness = new MageInt(3); // All Slivers have "{tap}: Target Sliver creature gets +X/+0 until end of turn, where X is the number of Slivers on the battlefield." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(new PermanentsOnBattlefieldCount(StaticFilters.FILTER_PERMANENT_CREATURE_SLIVERS), new StaticValue(0), Duration.EndOfTurn, true), new TapSourceCost()); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(new PermanentsOnBattlefieldCount(StaticFilters.FILTER_PERMANENT_CREATURE_SLIVERS), StaticValue.get(0), Duration.EndOfTurn, true), new TapSourceCost()); Target target = new TargetCreaturePermanent(new FilterCreaturePermanent(SubType.SLIVER, "Sliver creature")); ability.addTarget(target); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURE_SLIVERS))); diff --git a/Mage.Sets/src/mage/cards/m/ManticoreOfTheGauntlet.java b/Mage.Sets/src/mage/cards/m/ManticoreOfTheGauntlet.java index 914c755108..e21c70d44a 100644 --- a/Mage.Sets/src/mage/cards/m/ManticoreOfTheGauntlet.java +++ b/Mage.Sets/src/mage/cards/m/ManticoreOfTheGauntlet.java @@ -37,7 +37,7 @@ public final class ManticoreOfTheGauntlet extends CardImpl { counters.setText("put a -1/-1 counter on target creature you control"); counters.setTargetPointer(new FirstTargetPointer()); - Effect damage = new DamageTargetEffect(new StaticValue(3), true, "", true); + Effect damage = new DamageTargetEffect(StaticValue.get(3), true, "", true); damage.setText("{this} deals 3 damage to target opponent or planeswalker."); damage.setTargetPointer(new SecondTargetPointer()); diff --git a/Mage.Sets/src/mage/cards/m/MeishinTheMindCage.java b/Mage.Sets/src/mage/cards/m/MeishinTheMindCage.java index a88e657705..fcb4fc4fcd 100644 --- a/Mage.Sets/src/mage/cards/m/MeishinTheMindCage.java +++ b/Mage.Sets/src/mage/cards/m/MeishinTheMindCage.java @@ -26,7 +26,7 @@ public final class MeishinTheMindCage extends CardImpl { addSuperType(SuperType.LEGENDARY); // All creatures get -X/-0, where X is the number of cards in your hand. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(new SignInversionDynamicValue(CardsInControllerHandCount.instance), new StaticValue(0), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURE, false, "All creatures get -X/-0, where X is the number of cards in your hand"))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(new SignInversionDynamicValue(CardsInControllerHandCount.instance), StaticValue.get(0), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURE, false, "All creatures get -X/-0, where X is the number of cards in your hand"))); } public MeishinTheMindCage(final MeishinTheMindCage card) { diff --git a/Mage.Sets/src/mage/cards/m/MemorialToUnity.java b/Mage.Sets/src/mage/cards/m/MemorialToUnity.java index 4a60ce8a17..750b423fbd 100644 --- a/Mage.Sets/src/mage/cards/m/MemorialToUnity.java +++ b/Mage.Sets/src/mage/cards/m/MemorialToUnity.java @@ -34,7 +34,7 @@ public final class MemorialToUnity extends CardImpl { // {2}{G}, {T}, Sacrifice Memorial to Unity: Look at the top five cards of your library. You may reveal a creature card from among them and put it into your hand. Then put the rest on the bottom of your library in a random order. Effect effect = new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), new FilterCreatureCard("a creature card"), false, true + StaticValue.get(5), false, StaticValue.get(1), new FilterCreatureCard("a creature card"), false, true ).setBackInRandomOrder(true); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}{G}")); diff --git a/Mage.Sets/src/mage/cards/m/MephiticOoze.java b/Mage.Sets/src/mage/cards/m/MephiticOoze.java index ac2ebf0e0d..ff727fb266 100644 --- a/Mage.Sets/src/mage/cards/m/MephiticOoze.java +++ b/Mage.Sets/src/mage/cards/m/MephiticOoze.java @@ -38,7 +38,7 @@ public final class MephiticOoze extends CardImpl { this.toughness = new MageInt(5); // Mephitic Ooze gets +1/+0 for each artifact you control. - Effect effect = new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield); + Effect effect = new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield); effect.setText("{this} gets +1/+0 for each artifact you control"); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java b/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java index babb46a1ab..29f5ae26e8 100644 --- a/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java +++ b/Mage.Sets/src/mage/cards/m/MercadiasDownfall.java @@ -32,7 +32,7 @@ public final class MercadiasDownfall extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{R}"); // Each attacking creature gets +1/+0 until end of turn for each nonbasic land defending player controls. - this.getSpellAbility().addEffect(new BoostAllEffect(new DefendersNonBasicLandCount(), new StaticValue(0), Duration.EndOfTurn, new FilterAttackingCreature(), true, rule)); + this.getSpellAbility().addEffect(new BoostAllEffect(new DefendersNonBasicLandCount(), StaticValue.get(0), Duration.EndOfTurn, new FilterAttackingCreature(), true, rule)); } diff --git a/Mage.Sets/src/mage/cards/m/MercilessJavelineer.java b/Mage.Sets/src/mage/cards/m/MercilessJavelineer.java index 4e8804712f..0ec6754e71 100644 --- a/Mage.Sets/src/mage/cards/m/MercilessJavelineer.java +++ b/Mage.Sets/src/mage/cards/m/MercilessJavelineer.java @@ -40,7 +40,7 @@ public final class MercilessJavelineer extends CardImpl { Zone.BATTLEFIELD, new AddCountersTargetEffect( CounterType.M1M1.createInstance(), - new StaticValue(1), + StaticValue.get(1), Outcome.Removal), new ManaCostsImpl("{2}")); ability.addEffect( diff --git a/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java b/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java index 8a8d2254ef..d128a303bf 100644 --- a/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java +++ b/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java @@ -38,7 +38,7 @@ public final class MilitantInquisitor extends CardImpl { this.toughness = new MageInt(3); // Miltant Inquisitor gets +1/+0 for each Equipment you control. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield))); } public MilitantInquisitor(final MilitantInquisitor card) { diff --git a/Mage.Sets/src/mage/cards/m/MilitiaBugler.java b/Mage.Sets/src/mage/cards/m/MilitiaBugler.java index 38feec7603..adee64fd9e 100644 --- a/Mage.Sets/src/mage/cards/m/MilitiaBugler.java +++ b/Mage.Sets/src/mage/cards/m/MilitiaBugler.java @@ -40,7 +40,7 @@ public final class MilitiaBugler extends CardImpl { // When Militia Bugler enters the battlefield, look at the top four cards of your library. You may reveal a creature card with power 2 or less from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, Zone.LIBRARY, false, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, true, Zone.HAND, false, true, false ), false)); } diff --git a/Mage.Sets/src/mage/cards/m/MobMentality.java b/Mage.Sets/src/mage/cards/m/MobMentality.java index e00596f1a3..a3f24a467c 100644 --- a/Mage.Sets/src/mage/cards/m/MobMentality.java +++ b/Mage.Sets/src/mage/cards/m/MobMentality.java @@ -59,7 +59,7 @@ public final class MobMentality extends CardImpl { class MobMentalityTriggeredAbility extends TriggeredAbilityImpl { MobMentalityTriggeredAbility() { - super(Zone.BATTLEFIELD, new BoostTargetEffect(new AttackingCreatureCount(), new StaticValue(0), Duration.EndOfTurn, true)); + super(Zone.BATTLEFIELD, new BoostTargetEffect(new AttackingCreatureCount(), StaticValue.get(0), Duration.EndOfTurn, true)); } private MobMentalityTriggeredAbility(final MobMentalityTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/m/MoodmarkPainter.java b/Mage.Sets/src/mage/cards/m/MoodmarkPainter.java index f114b04ed0..da7c3de883 100644 --- a/Mage.Sets/src/mage/cards/m/MoodmarkPainter.java +++ b/Mage.Sets/src/mage/cards/m/MoodmarkPainter.java @@ -44,7 +44,7 @@ public final class MoodmarkPainter extends CardImpl { false, "Undergrowth — " ); ability.addEffect(new BoostTargetEffect( - xValue, new StaticValue(0), + xValue, StaticValue.get(0), Duration.EndOfTurn, true ).setText("and gets +X/+0 until end of turn, " + "where X is the number of creature cards in your graveyard") diff --git a/Mage.Sets/src/mage/cards/n/NagaOracle.java b/Mage.Sets/src/mage/cards/n/NagaOracle.java index 22e5123b44..e1d1376f29 100644 --- a/Mage.Sets/src/mage/cards/n/NagaOracle.java +++ b/Mage.Sets/src/mage/cards/n/NagaOracle.java @@ -32,9 +32,9 @@ public final class NagaOracle extends CardImpl { // and the rest back on top of your library in any order. Effect effect = new LookLibraryAndPickControllerEffect( /* oh god, Microsoft looks conservative with their function parameters in comparison */ - new StaticValue(3), + StaticValue.get(3), false, - new StaticValue(3), + StaticValue.get(3), new FilterCard("cards"), Zone.LIBRARY, true, diff --git a/Mage.Sets/src/mage/cards/n/NaggingThoughts.java b/Mage.Sets/src/mage/cards/n/NaggingThoughts.java index 9aa95cbb7e..6da1d42ae9 100644 --- a/Mage.Sets/src/mage/cards/n/NaggingThoughts.java +++ b/Mage.Sets/src/mage/cards/n/NaggingThoughts.java @@ -22,7 +22,7 @@ public final class NaggingThoughts extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{U}"); // Look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.GRAVEYARD, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.GRAVEYARD, false, false)); // Madness {1}{U} this.addAbility(new MadnessAbility(this, new ManaCostsImpl("{1}{U}"))); diff --git a/Mage.Sets/src/mage/cards/n/NajeelaTheBladeBlossom.java b/Mage.Sets/src/mage/cards/n/NajeelaTheBladeBlossom.java index d39e57e989..8b268d3ff5 100644 --- a/Mage.Sets/src/mage/cards/n/NajeelaTheBladeBlossom.java +++ b/Mage.Sets/src/mage/cards/n/NajeelaTheBladeBlossom.java @@ -48,7 +48,7 @@ public final class NajeelaTheBladeBlossom extends CardImpl { // Whenever a Warrior attacks, you may have its controller create a 1/1 white Warrior creature token that's tapped and attacking. this.addAbility(new AttacksAllTriggeredAbility( - new CreateTokenTargetEffect(new WarriorToken(), new StaticValue(1), true, true) + new CreateTokenTargetEffect(new WarriorToken(), StaticValue.get(1), true, true) .setText("you may have its controller create a 1/1 white Warrior creature token that's tapped and attacking"), true, filter, SetTargetPointer.PLAYER, false, true )); diff --git a/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java b/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java index 9a6571e6ce..b9d358dd4f 100644 --- a/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java +++ b/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java @@ -44,7 +44,7 @@ public final class NarsetParterOfVeils extends CardImpl { // -2: Look at the top four cards of your library. You may reveal a noncreature, nonland card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new LoyaltyAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top four cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/n/NicolBolasTheRavager.java b/Mage.Sets/src/mage/cards/n/NicolBolasTheRavager.java index b6c5f0efd2..c71dab4b0b 100644 --- a/Mage.Sets/src/mage/cards/n/NicolBolasTheRavager.java +++ b/Mage.Sets/src/mage/cards/n/NicolBolasTheRavager.java @@ -41,7 +41,7 @@ public final class NicolBolasTheRavager extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // When Nicol Bolas, the Ravager enters the battlefield, each opponent discards a card. - this.addAbility(new EntersBattlefieldTriggeredAbility(new DiscardEachPlayerEffect(new StaticValue(1), false, TargetController.OPPONENT))); + this.addAbility(new EntersBattlefieldTriggeredAbility(new DiscardEachPlayerEffect(StaticValue.get(1), false, TargetController.OPPONENT))); // {4}{U}{B}{R}: Exile Nicol Bolas, the Ravager, then return him to the battlefield transformed under his owner's control. Activate this ability only any time you could cast a sorcerry. this.addAbility(new TransformAbility()); diff --git a/Mage.Sets/src/mage/cards/n/NimDevourer.java b/Mage.Sets/src/mage/cards/n/NimDevourer.java index bf9f12e8e3..3487c3f83d 100644 --- a/Mage.Sets/src/mage/cards/n/NimDevourer.java +++ b/Mage.Sets/src/mage/cards/n/NimDevourer.java @@ -49,7 +49,7 @@ public final class NimDevourer extends CardImpl { this.toughness = new MageInt(1); // Nim Devourer gets +1/+0 for each artifact you control. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield))); // {B}{B}: Return Nim Devourer from your graveyard to the battlefield, then sacrifice a creature. Activate this ability only during your upkeep. Ability ability = new ConditionalActivatedAbility(Zone.GRAVEYARD, diff --git a/Mage.Sets/src/mage/cards/n/NimGrotesque.java b/Mage.Sets/src/mage/cards/n/NimGrotesque.java index 7effd55015..03442660b8 100644 --- a/Mage.Sets/src/mage/cards/n/NimGrotesque.java +++ b/Mage.Sets/src/mage/cards/n/NimGrotesque.java @@ -29,7 +29,7 @@ public final class NimGrotesque extends CardImpl { this.toughness = new MageInt(6); // Nim Grotesque gets +1/+0 for each artifact you control. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(new FilterControlledArtifactPermanent()), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(new FilterControlledArtifactPermanent()), StaticValue.get(0), Duration.WhileOnBattlefield))); } public NimGrotesque(final NimGrotesque card) { diff --git a/Mage.Sets/src/mage/cards/n/NimLasher.java b/Mage.Sets/src/mage/cards/n/NimLasher.java index f31e98ace3..073663abf7 100644 --- a/Mage.Sets/src/mage/cards/n/NimLasher.java +++ b/Mage.Sets/src/mage/cards/n/NimLasher.java @@ -33,7 +33,7 @@ public final class NimLasher extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield))); } public NimLasher(final NimLasher card) { diff --git a/Mage.Sets/src/mage/cards/n/NimShambler.java b/Mage.Sets/src/mage/cards/n/NimShambler.java index 27f19d64ee..dff0c0e4ad 100644 --- a/Mage.Sets/src/mage/cards/n/NimShambler.java +++ b/Mage.Sets/src/mage/cards/n/NimShambler.java @@ -38,7 +38,7 @@ public final class NimShambler extends CardImpl { this.power = new MageInt(2); this.toughness = new MageInt(1); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)))); } diff --git a/Mage.Sets/src/mage/cards/n/NimShrieker.java b/Mage.Sets/src/mage/cards/n/NimShrieker.java index 8bef1efc8a..cfcac4f232 100644 --- a/Mage.Sets/src/mage/cards/n/NimShrieker.java +++ b/Mage.Sets/src/mage/cards/n/NimShrieker.java @@ -35,7 +35,7 @@ public final class NimShrieker extends CardImpl { this.power = new MageInt(0); this.toughness = new MageInt(1); this.addAbility(FlyingAbility.getInstance()); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield))); } public NimShrieker(final NimShrieker card) { diff --git a/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java b/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java index 1629683674..ba4a695ce0 100644 --- a/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java +++ b/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java @@ -58,7 +58,7 @@ public final class NissaGenesisMage extends CardImpl { //-10: Look at the top ten cards of your library. You may put any number of creature and/or land cards from among them onto the battlefield. Put the rest on the bottom of your library in a random order.); this.addAbility(new LoyaltyAbility( - new LookLibraryAndPickControllerEffect(new StaticValue(10), false, new StaticValue(10), filter, + new LookLibraryAndPickControllerEffect(StaticValue.get(10), false, StaticValue.get(10), filter, Zone.LIBRARY, true, false, true, Zone.BATTLEFIELD, true, true, false).setBackInRandomOrder(true), -10)); } diff --git a/Mage.Sets/src/mage/cards/n/NullProfusion.java b/Mage.Sets/src/mage/cards/n/NullProfusion.java index 6332585855..263d299c77 100644 --- a/Mage.Sets/src/mage/cards/n/NullProfusion.java +++ b/Mage.Sets/src/mage/cards/n/NullProfusion.java @@ -37,7 +37,7 @@ public final class NullProfusion extends CardImpl { // Your maximum hand size is two. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new MaximumHandSizeControllerEffect( - new StaticValue(2), + StaticValue.get(2), Duration.WhileOnBattlefield, HandSizeModification.SET, TargetController.YOU diff --git a/Mage.Sets/src/mage/cards/o/OathOfChandra.java b/Mage.Sets/src/mage/cards/o/OathOfChandra.java index a6018a68aa..6dfec92ff9 100644 --- a/Mage.Sets/src/mage/cards/o/OathOfChandra.java +++ b/Mage.Sets/src/mage/cards/o/OathOfChandra.java @@ -48,7 +48,7 @@ public final class OathOfChandra extends CardImpl { this.addAbility(ability); // At the beginning of each end step, if a planeswalker entered the battlefield under your control this turn, Oath of Chandra deals 2 damage to each opponent. this.addAbility(new ConditionalInterveningIfTriggeredAbility(new BeginningOfEndStepTriggeredAbility( - new DamagePlayersEffect(Outcome.Damage, new StaticValue(2), TargetController.OPPONENT), + new DamagePlayersEffect(Outcome.Damage, StaticValue.get(2), TargetController.OPPONENT), TargetController.ANY, false), OathOfChandraCondition.instance, "At the beginning of each end step, if a planeswalker entered the battlefield under your control this turn, {this} deals 2 damage to each opponent."), new OathOfChandraWatcher()); } diff --git a/Mage.Sets/src/mage/cards/o/OboroEnvoy.java b/Mage.Sets/src/mage/cards/o/OboroEnvoy.java index fa6d5891b0..eb728f92e8 100644 --- a/Mage.Sets/src/mage/cards/o/OboroEnvoy.java +++ b/Mage.Sets/src/mage/cards/o/OboroEnvoy.java @@ -39,7 +39,7 @@ public final class OboroEnvoy extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {2}, Return a land you control to its owner's hand: Target creature gets -X/-0 until end of turn, where X is the number of cards in your hand. - Effect effect = new BoostTargetEffect(new SignInversionDynamicValue(CardsInControllerHandCount.instance), new StaticValue(-0), Duration.EndOfTurn, true); + Effect effect = new BoostTargetEffect(new SignInversionDynamicValue(CardsInControllerHandCount.instance), StaticValue.get(-0), Duration.EndOfTurn, true); effect.setText("Target creature gets -X/-0 until end of turn, where X is the number of cards in your hand"); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new GenericManaCost(2)); ability.addCost(new ReturnToHandChosenControlledPermanentCost(new TargetControlledPermanent(new FilterControlledLandPermanent("a land")))); diff --git a/Mage.Sets/src/mage/cards/o/OloroAgelessAscetic.java b/Mage.Sets/src/mage/cards/o/OloroAgelessAscetic.java index 3d51dcc109..125e2172b4 100644 --- a/Mage.Sets/src/mage/cards/o/OloroAgelessAscetic.java +++ b/Mage.Sets/src/mage/cards/o/OloroAgelessAscetic.java @@ -47,7 +47,7 @@ public final class OloroAgelessAscetic extends CardImpl { // At the beginning of your upkeep, if Oloro, Ageless Ascetic is in the command zone, you gain 2 life. this.addAbility(new BeginningOfUpkeepTriggeredAbility(Zone.COMMAND, - new GainLifeEffect(new StaticValue(2), "if {this} is in the command zone, you gain 2 life"), TargetController.YOU, false)); + new GainLifeEffect(StaticValue.get(2), "if {this} is in the command zone, you gain 2 life"), TargetController.YOU, false)); } public OloroAgelessAscetic(final OloroAgelessAscetic card) { diff --git a/Mage.Sets/src/mage/cards/o/OnceUponATime.java b/Mage.Sets/src/mage/cards/o/OnceUponATime.java index 871e8985a4..ef52898979 100644 --- a/Mage.Sets/src/mage/cards/o/OnceUponATime.java +++ b/Mage.Sets/src/mage/cards/o/OnceUponATime.java @@ -46,7 +46,7 @@ public final class OnceUponATime extends CardImpl { // Look at the top five cards of your library. You may reveal a creature or land card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top five cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/o/OnwardVictory.java b/Mage.Sets/src/mage/cards/o/OnwardVictory.java index e5d5aa698d..c18eb6220f 100644 --- a/Mage.Sets/src/mage/cards/o/OnwardVictory.java +++ b/Mage.Sets/src/mage/cards/o/OnwardVictory.java @@ -25,7 +25,7 @@ public final class OnwardVictory extends SplitCard { // Onward // Target creature gets +X/+0 until end of turn where X is its power. getLeftHalfCard().getSpellAbility().addTarget(new TargetCreaturePermanent()); - getLeftHalfCard().getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, new StaticValue(0), Duration.EndOfTurn, true)); + getLeftHalfCard().getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, StaticValue.get(0), Duration.EndOfTurn, true)); // to // Victory diff --git a/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java b/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java index f508a5a8f2..f9bee649d1 100644 --- a/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java +++ b/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java @@ -35,7 +35,7 @@ public final class PeerThroughDepths extends CardImpl { // Look at the top five cards of your library. You may reveal an instant or sorcery card from among them and put it into your hand. // Put the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(1), filter, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(1), filter, false)); } public PeerThroughDepths (final PeerThroughDepths card) { diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianNegator.java b/Mage.Sets/src/mage/cards/p/PhyrexianNegator.java index 728446d4d4..1511c15e12 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianNegator.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianNegator.java @@ -74,7 +74,7 @@ class PhyrexianNegatorTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(controller); if (player != null) { getEffects().get(0).setTargetPointer(new FixedTarget(player.getId())); - ((SacrificeEffect) getEffects().get(0)).setAmount(new StaticValue(event.getAmount())); + ((SacrificeEffect) getEffects().get(0)).setAmount(StaticValue.get(event.getAmount())); return true; } } diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianObliterator.java b/Mage.Sets/src/mage/cards/p/PhyrexianObliterator.java index cfd66b7524..167ae39f70 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianObliterator.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianObliterator.java @@ -77,7 +77,7 @@ class PhyrexianObliteratorTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(controller); if (player != null) { getEffects().get(0).setTargetPointer(new FixedTarget(player.getId())); - ((SacrificeEffect) getEffects().get(0)).setAmount(new StaticValue(event.getAmount())); + ((SacrificeEffect) getEffects().get(0)).setAmount(StaticValue.get(event.getAmount())); return true; } } diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianTotem.java b/Mage.Sets/src/mage/cards/p/PhyrexianTotem.java index b48842a7ea..7347df1497 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianTotem.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianTotem.java @@ -106,7 +106,7 @@ class PhyrexianTotemTriggeredAbility extends TriggeredAbilityImpl { public boolean checkTrigger(GameEvent event, Game game) { if (event.getTargetId().equals(getSourceId())) { getEffects().get(0).setTargetPointer(new FixedTarget(getControllerId())); - ((SacrificeEffect) getEffects().get(0)).setAmount(new StaticValue(event.getAmount())); + ((SacrificeEffect) getEffects().get(0)).setAmount(StaticValue.get(event.getAmount())); return true; } return false; diff --git a/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java b/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java index 51aac31bb4..9fb20172f3 100644 --- a/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java +++ b/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java @@ -29,7 +29,7 @@ public final class PiecesOfThePuzzle extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{U}"); // Reveal the top five cards of your library. Put up to two instant and/or sorcery cards from among them into your hand and the rest into your graveyard. - Effect effect = new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(2), FILTER, Zone.GRAVEYARD, false, true, true, Zone.HAND, false); + Effect effect = new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(2), FILTER, Zone.GRAVEYARD, false, true, true, Zone.HAND, false); effect.setText("Reveal the top five cards of your library. Put up to two instant and/or sorcery cards from among them into your hand and the rest into your graveyard"); this.getSpellAbility().addEffect(effect); } diff --git a/Mage.Sets/src/mage/cards/p/PropheticBolt.java b/Mage.Sets/src/mage/cards/p/PropheticBolt.java index 76a980aabe..3e0479362b 100644 --- a/Mage.Sets/src/mage/cards/p/PropheticBolt.java +++ b/Mage.Sets/src/mage/cards/p/PropheticBolt.java @@ -25,7 +25,7 @@ public final class PropheticBolt extends CardImpl { // Prophetic Bolt deals 4 damage to any target. Look at the top four cards of your library. Put one of those cards into your hand and the rest on the bottom of your library in any order. this.getSpellAbility().addEffect(new DamageTargetEffect(4)); this.getSpellAbility().addTarget(new TargetAnyTarget()); - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); } public PropheticBolt(final PropheticBolt card) { diff --git a/Mage.Sets/src/mage/cards/r/RabbleRouser.java b/Mage.Sets/src/mage/cards/r/RabbleRouser.java index 3ea9d9ab5d..989395a15d 100644 --- a/Mage.Sets/src/mage/cards/r/RabbleRouser.java +++ b/Mage.Sets/src/mage/cards/r/RabbleRouser.java @@ -40,7 +40,7 @@ public final class RabbleRouser extends CardImpl { //{R}, {T}: Attacking creatures get +X/+0 until end of turn, where X is Rabble-Rouser's power. DynamicValue amount = new SourcePermanentPowerCount(); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new BoostAllEffect(amount, new StaticValue(0), Duration.EndOfTurn, new FilterAttackingCreature(), false, + new BoostAllEffect(amount, StaticValue.get(0), Duration.EndOfTurn, new FilterAttackingCreature(), false, "Attacking creatures get +X/+0 until end of turn, where X is {this}'s power", true), new ManaCostsImpl("{R}")); ability.addCost(new TapSourceCost()); diff --git a/Mage.Sets/src/mage/cards/r/RafterDemon.java b/Mage.Sets/src/mage/cards/r/RafterDemon.java index 10e7f1afef..9891e41b34 100644 --- a/Mage.Sets/src/mage/cards/r/RafterDemon.java +++ b/Mage.Sets/src/mage/cards/r/RafterDemon.java @@ -34,7 +34,7 @@ public final class RafterDemon extends CardImpl { // When Rafter Demon enters the battlefield, if its spectacle cost was paid, each opponent discards a card. this.addAbility(new ConditionalInterveningIfTriggeredAbility( new EntersBattlefieldTriggeredAbility(new DiscardEachPlayerEffect( - new StaticValue(1), false, TargetController.OPPONENT + StaticValue.get(1), false, TargetController.OPPONENT )), SpectacleCondition.instance, "When {this} enters the battlefield, " + "if its spectacle cost was paid, " + diff --git a/Mage.Sets/src/mage/cards/r/RageExtractor.java b/Mage.Sets/src/mage/cards/r/RageExtractor.java index 1b0351aa64..10bfaa1f76 100644 --- a/Mage.Sets/src/mage/cards/r/RageExtractor.java +++ b/Mage.Sets/src/mage/cards/r/RageExtractor.java @@ -66,7 +66,7 @@ class RageExtractorTriggeredAbility extends TriggeredAbilityImpl { if (spell != null) { for (ManaCost cost : spell.getCard().getManaCost()) { if (cost instanceof PhyrexianManaCost) { - ((DamageTargetEffect)getEffects().get(0)).setAmount(new StaticValue(spell.getConvertedManaCost())); + ((DamageTargetEffect)getEffects().get(0)).setAmount(StaticValue.get(spell.getConvertedManaCost())); return true; } } diff --git a/Mage.Sets/src/mage/cards/r/RagebloodShaman.java b/Mage.Sets/src/mage/cards/r/RagebloodShaman.java index df4e25fe79..ae12ac75d1 100644 --- a/Mage.Sets/src/mage/cards/r/RagebloodShaman.java +++ b/Mage.Sets/src/mage/cards/r/RagebloodShaman.java @@ -36,7 +36,7 @@ public final class RagebloodShaman extends CardImpl { // Trample this.addAbility(TrampleAbility.getInstance()); // Other Minotaur creatures you control get +1/+1 and have trample. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(new StaticValue(1), new StaticValue(1), Duration.WhileOnBattlefield, filter, true))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(StaticValue.get(1), StaticValue.get(1), Duration.WhileOnBattlefield, filter, true))); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.WhileOnBattlefield, filter, true))); } diff --git a/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java b/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java index 5af3ca5d8d..4f5f3f3b79 100644 --- a/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java +++ b/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java @@ -42,7 +42,7 @@ public final class RakdosRiteknife extends CardImpl { this.subtype.add(SubType.EQUIPMENT); // Equipped creature gets +1/+0 for each blood counter on Rakdos Riteknife and has "{T}, Sacrifice a creature: Put a blood counter on Rakdos Riteknife." - SimpleStaticAbility staticAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CountersSourceCount(CounterType.BLOOD), new StaticValue(0)).setText("Equipped creature gets +1/+0 for each blood counter on {this}")); + SimpleStaticAbility staticAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CountersSourceCount(CounterType.BLOOD), StaticValue.get(0)).setText("Equipped creature gets +1/+0 for each blood counter on {this}")); SimpleActivatedAbility grantedAbility = new SimpleActivatedAbility(new RakdosRiteKnifeEffect(this.getId()), new TapSourceCost()); grantedAbility.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); staticAbility.addEffect(new GainAbilityAttachedEffect(grantedAbility, AttachmentType.EQUIPMENT).setText("and has \"{T}, Sacrifice a creature: Put a blood counter on {this}.\"")); diff --git a/Mage.Sets/src/mage/cards/r/RalIzzetViceroy.java b/Mage.Sets/src/mage/cards/r/RalIzzetViceroy.java index 7390e5066e..5b6b887a5d 100644 --- a/Mage.Sets/src/mage/cards/r/RalIzzetViceroy.java +++ b/Mage.Sets/src/mage/cards/r/RalIzzetViceroy.java @@ -35,7 +35,7 @@ public final class RalIzzetViceroy extends CardImpl { // +1: Look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. this.addAbility(new LoyaltyAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(2), false, new StaticValue(1), + StaticValue.get(2), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false ), 1 )); diff --git a/Mage.Sets/src/mage/cards/r/RalsOutburst.java b/Mage.Sets/src/mage/cards/r/RalsOutburst.java index 40944d7951..43c5dffb7c 100644 --- a/Mage.Sets/src/mage/cards/r/RalsOutburst.java +++ b/Mage.Sets/src/mage/cards/r/RalsOutburst.java @@ -24,7 +24,7 @@ public final class RalsOutburst extends CardImpl { this.getSpellAbility().addEffect(new DamageTargetEffect(3)); this.getSpellAbility().addTarget(new TargetAnyTarget()); this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(2), false, new StaticValue(1), + StaticValue.get(2), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false )); } diff --git a/Mage.Sets/src/mage/cards/r/RalsStaticaster.java b/Mage.Sets/src/mage/cards/r/RalsStaticaster.java index 87de152208..bab88d5831 100644 --- a/Mage.Sets/src/mage/cards/r/RalsStaticaster.java +++ b/Mage.Sets/src/mage/cards/r/RalsStaticaster.java @@ -48,7 +48,7 @@ public final class RalsStaticaster extends CardImpl { // Whenever Ral's Staticaster attacks, if you control a Ral planeswalker, Ral's Staticaster gets +1/+0 for each card in your hand until end of turn. this.addAbility(new ConditionalInterveningIfTriggeredAbility( new AttacksTriggeredAbility(new BoostSourceEffect( - CardsInControllerHandCount.instance, new StaticValue(0), + CardsInControllerHandCount.instance, StaticValue.get(0), Duration.EndOfTurn, true), false), new PermanentsOnTheBattlefieldCondition(filter), "Whenever {this} attacks, if you control a Ral planeswalker, " diff --git a/Mage.Sets/src/mage/cards/r/RamunapRuins.java b/Mage.Sets/src/mage/cards/r/RamunapRuins.java index 8d0421a4f9..20886a354b 100644 --- a/Mage.Sets/src/mage/cards/r/RamunapRuins.java +++ b/Mage.Sets/src/mage/cards/r/RamunapRuins.java @@ -49,7 +49,7 @@ public final class RamunapRuins extends CardImpl { this.addAbility(manaAbility); // {2}{R}{R}, {t}, Sacrifice a Desert: Ramunap Ruins deals 2 damage to each opponent. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamagePlayersEffect(Outcome.Damage, new StaticValue(2), TargetController.OPPONENT), + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamagePlayersEffect(Outcome.Damage, StaticValue.get(2), TargetController.OPPONENT), new ManaCostsImpl("{2}{R}{R}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, true))); diff --git a/Mage.Sets/src/mage/cards/r/RansackTheLab.java b/Mage.Sets/src/mage/cards/r/RansackTheLab.java index 252f5e0b82..7242bd300a 100644 --- a/Mage.Sets/src/mage/cards/r/RansackTheLab.java +++ b/Mage.Sets/src/mage/cards/r/RansackTheLab.java @@ -19,7 +19,7 @@ public final class RansackTheLab extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{B}"); // Look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); } diff --git a/Mage.Sets/src/mage/cards/r/RatColony.java b/Mage.Sets/src/mage/cards/r/RatColony.java index 86b6a1d5c2..ac4d8ab9cc 100644 --- a/Mage.Sets/src/mage/cards/r/RatColony.java +++ b/Mage.Sets/src/mage/cards/r/RatColony.java @@ -41,7 +41,7 @@ public final class RatColony extends CardImpl { // Rat Colony gets +1/+0 for each other Rat you control. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), - new StaticValue(0), Duration.WhileOnBattlefield, false))); + StaticValue.get(0), Duration.WhileOnBattlefield, false))); // A deck can have any number of cards named Rat Colony. this.addAbility(new SimpleStaticAbility(Zone.ALL, new InfoEffect("A deck can have any number of cards named Rat Colony."))); diff --git a/Mage.Sets/src/mage/cards/r/RavenFamiliar.java b/Mage.Sets/src/mage/cards/r/RavenFamiliar.java index f867635d39..5082eff967 100644 --- a/Mage.Sets/src/mage/cards/r/RavenFamiliar.java +++ b/Mage.Sets/src/mage/cards/r/RavenFamiliar.java @@ -33,7 +33,7 @@ public final class RavenFamiliar extends CardImpl { this.addAbility(new EchoAbility("{2}{U}")); // When Raven Familiar enters the battlefield, look at the top three cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. this.addAbility(new EntersBattlefieldTriggeredAbility( - new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false), + new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false), false)); } diff --git a/Mage.Sets/src/mage/cards/r/RealityStrobe.java b/Mage.Sets/src/mage/cards/r/RealityStrobe.java index 08893bd4b6..7176e3a00e 100644 --- a/Mage.Sets/src/mage/cards/r/RealityStrobe.java +++ b/Mage.Sets/src/mage/cards/r/RealityStrobe.java @@ -30,7 +30,7 @@ public final class RealityStrobe extends CardImpl { // Exile Reality Strobe this.getSpellAbility().addEffect(ExileSpellEffect.getInstance()); // with three time counters on it. - Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), new StaticValue(3), false, true); + Effect effect = new AddCountersSourceEffect(CounterType.TIME.createInstance(), StaticValue.get(3), false, true); effect.setText("with 3 time counters on it"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetPermanent()); diff --git a/Mage.Sets/src/mage/cards/r/RimehornAurochs.java b/Mage.Sets/src/mage/cards/r/RimehornAurochs.java index b1488d7428..8145bfdae6 100644 --- a/Mage.Sets/src/mage/cards/r/RimehornAurochs.java +++ b/Mage.Sets/src/mage/cards/r/RimehornAurochs.java @@ -47,7 +47,7 @@ public final class RimehornAurochs extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Whenever Rimehorn Aurochs attacks, it gets +1/+0 until end of turn for each other attacking Aurochs. - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.EndOfTurn, true), false)); // {2}{S}: Target creature blocks target creature this turn if able. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RimehornAurochsEffect(), new ManaCostsImpl("{2}{S}")); diff --git a/Mage.Sets/src/mage/cards/r/RiptideMangler.java b/Mage.Sets/src/mage/cards/r/RiptideMangler.java index 52742ac9f9..32ffe916cb 100644 --- a/Mage.Sets/src/mage/cards/r/RiptideMangler.java +++ b/Mage.Sets/src/mage/cards/r/RiptideMangler.java @@ -71,7 +71,7 @@ class RiptideManglerEffect extends OneShotEffect { if (permanent == null) { return false; } - game.addEffect(new SetPowerSourceEffect(new StaticValue(permanent.getPower().getValue()), Duration.WhileOnBattlefield, SubLayer.SetPT_7b), source); + game.addEffect(new SetPowerSourceEffect(StaticValue.get(permanent.getPower().getValue()), Duration.WhileOnBattlefield, SubLayer.SetPT_7b), source); return true; } } diff --git a/Mage.Sets/src/mage/cards/r/RoilmagesTrick.java b/Mage.Sets/src/mage/cards/r/RoilmagesTrick.java index 496d1bd6a7..8533a96154 100644 --- a/Mage.Sets/src/mage/cards/r/RoilmagesTrick.java +++ b/Mage.Sets/src/mage/cards/r/RoilmagesTrick.java @@ -34,7 +34,7 @@ public final class RoilmagesTrick extends CardImpl { // Converge — Creatures your opponents control get -X/-0 until end of turn, where X is the number of colors of mana spent to cast Roilmage's Trick. this.getSpellAbility().setAbilityWord(AbilityWord.CONVERGE); this.getSpellAbility().addEffect(new BoostAllEffect( - new SignInversionDynamicValue(ColorsOfManaSpentToCastCount.getInstance()), new StaticValue(-0), Duration.EndOfTurn, filter, false, + new SignInversionDynamicValue(ColorsOfManaSpentToCastCount.getInstance()), StaticValue.get(-0), Duration.EndOfTurn, filter, false, "Creatures your opponents control get -X/-0 until end of turn, where X is the number of colors of mana spent to cast {this}.
", true)); // Draw a card. diff --git a/Mage.Sets/src/mage/cards/r/RubblebeltRioters.java b/Mage.Sets/src/mage/cards/r/RubblebeltRioters.java index 836019948d..a9b33ad769 100644 --- a/Mage.Sets/src/mage/cards/r/RubblebeltRioters.java +++ b/Mage.Sets/src/mage/cards/r/RubblebeltRioters.java @@ -32,7 +32,7 @@ public final class RubblebeltRioters extends CardImpl { // Whenever Rubblebelt Rioters attacks, it gets +X/+0 until end of turn, where X is the greatest power among creatures you control. this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect( - GreatestPowerAmongControlledCreaturesValue.instance, new StaticValue(0), + GreatestPowerAmongControlledCreaturesValue.instance, StaticValue.get(0), Duration.EndOfTurn, true ), false)); } diff --git a/Mage.Sets/src/mage/cards/r/RunechantersPike.java b/Mage.Sets/src/mage/cards/r/RunechantersPike.java index 8c61e3ba2a..678cbe7a13 100644 --- a/Mage.Sets/src/mage/cards/r/RunechantersPike.java +++ b/Mage.Sets/src/mage/cards/r/RunechantersPike.java @@ -42,7 +42,7 @@ public final class RunechantersPike extends CardImpl { // Equipped creature has first strike and gets +X/+0 where X is the number of instant and sorcery cards in your graveyard. Effect effect = new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT); - Effect effect2 = new BoostEquippedEffect(new RunechantersPikeValue(), new StaticValue(0)); + Effect effect2 = new BoostEquippedEffect(new RunechantersPikeValue(), StaticValue.get(0)); effect.setText("Equipped creature has first strike"); effect2.setText(" and gets +X/+0 where X is the number of instant and sorcery cards in your graveyard."); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect); diff --git a/Mage.Sets/src/mage/cards/r/RushOfBlood.java b/Mage.Sets/src/mage/cards/r/RushOfBlood.java index 09daee68f0..da5f102f20 100644 --- a/Mage.Sets/src/mage/cards/r/RushOfBlood.java +++ b/Mage.Sets/src/mage/cards/r/RushOfBlood.java @@ -22,7 +22,7 @@ public final class RushOfBlood extends CardImpl { // Target creature gets +X/+0 until end of turn, where X is its power. - this.getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, new StaticValue(0), Duration.EndOfTurn, true)); + this.getSpellAbility().addEffect(new BoostTargetEffect(TargetPermanentPowerCount.instance, StaticValue.get(0), Duration.EndOfTurn, true)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Sets/src/mage/cards/r/RuthlessSniper.java b/Mage.Sets/src/mage/cards/r/RuthlessSniper.java index bc84b92180..da492f5da0 100644 --- a/Mage.Sets/src/mage/cards/r/RuthlessSniper.java +++ b/Mage.Sets/src/mage/cards/r/RuthlessSniper.java @@ -35,7 +35,7 @@ public final class RuthlessSniper extends CardImpl { new DoIfCostPaid( new AddCountersTargetEffect( CounterType.M1M1.createInstance(), - new StaticValue(1), + StaticValue.get(1), Outcome.Removal), new ManaCostsImpl("{1}"))); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SalvageSlasher.java b/Mage.Sets/src/mage/cards/s/SalvageSlasher.java index f786b4b01c..4fa24e8edb 100644 --- a/Mage.Sets/src/mage/cards/s/SalvageSlasher.java +++ b/Mage.Sets/src/mage/cards/s/SalvageSlasher.java @@ -31,7 +31,7 @@ public final class SalvageSlasher extends CardImpl { // Salvage Slasher gets +1/+0 for each artifact card in your graveyard. BoostSourceEffect effect = new BoostSourceEffect(new CardsInControllerGraveyardCount(new FilterArtifactCard()), - new StaticValue(0), + StaticValue.get(0), Duration.WhileOnBattlefield); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/s/SarkhanFireblood.java b/Mage.Sets/src/mage/cards/s/SarkhanFireblood.java index c7dfe6717e..274afded81 100644 --- a/Mage.Sets/src/mage/cards/s/SarkhanFireblood.java +++ b/Mage.Sets/src/mage/cards/s/SarkhanFireblood.java @@ -47,7 +47,7 @@ public final class SarkhanFireblood extends CardImpl { // +1: Add two mana of any combination of colors. Spend this mana only to cast Dragon spells. this.addAbility(new LoyaltyAbility( new AddConditionalManaOfAnyColorEffect( - new StaticValue(2), + StaticValue.get(2), new ConditionalSpellManaBuilder(filter), false ), 1 diff --git a/Mage.Sets/src/mage/cards/s/SarkhansDragonfire.java b/Mage.Sets/src/mage/cards/s/SarkhansDragonfire.java index d61bdcf846..06b3411b02 100644 --- a/Mage.Sets/src/mage/cards/s/SarkhansDragonfire.java +++ b/Mage.Sets/src/mage/cards/s/SarkhansDragonfire.java @@ -34,7 +34,7 @@ public final class SarkhansDragonfire extends CardImpl { // Look at the top five cards of your library. You may reveal a red card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top five cards of your library. " + "You may reveal a red card from among them and put it into your hand. " diff --git a/Mage.Sets/src/mage/cards/s/SeaGateOracle.java b/Mage.Sets/src/mage/cards/s/SeaGateOracle.java index d00986166e..d1b6ac4e32 100644 --- a/Mage.Sets/src/mage/cards/s/SeaGateOracle.java +++ b/Mage.Sets/src/mage/cards/s/SeaGateOracle.java @@ -28,7 +28,7 @@ public final class SeaGateOracle extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(3); - this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false), false)); + this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false), false)); } diff --git a/Mage.Sets/src/mage/cards/s/SeekTheWilds.java b/Mage.Sets/src/mage/cards/s/SeekTheWilds.java index d5eae19227..89b0aef0b9 100644 --- a/Mage.Sets/src/mage/cards/s/SeekTheWilds.java +++ b/Mage.Sets/src/mage/cards/s/SeekTheWilds.java @@ -27,7 +27,7 @@ public final class SeekTheWilds extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{G}"); // Look at the top four cards of your library. You may reveal a creature or land card from among them and put it into your hand. Put the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), filter, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), filter, false)); } diff --git a/Mage.Sets/src/mage/cards/s/Sentinel.java b/Mage.Sets/src/mage/cards/s/Sentinel.java index 2601ee42de..bdbfd2e58c 100644 --- a/Mage.Sets/src/mage/cards/s/Sentinel.java +++ b/Mage.Sets/src/mage/cards/s/Sentinel.java @@ -81,7 +81,7 @@ class SentinelEffect extends OneShotEffect { Permanent targetPermanent = game.getPermanentOrLKIBattlefield(targetPointer.getFirst(game, source)); if (controller != null && targetPermanent != null) { int newToughness = CardUtil.addWithOverflowCheck(targetPermanent.getPower().getValue(), 1); - game.addEffect(new SetToughnessSourceEffect(new StaticValue(newToughness), Duration.Custom, SubLayer.SetPT_7b), source); + game.addEffect(new SetToughnessSourceEffect(StaticValue.get(newToughness), Duration.Custom, SubLayer.SetPT_7b), source); return true; } return false; diff --git a/Mage.Sets/src/mage/cards/s/SentinelTower.java b/Mage.Sets/src/mage/cards/s/SentinelTower.java index bc33d74c3b..be47a83810 100644 --- a/Mage.Sets/src/mage/cards/s/SentinelTower.java +++ b/Mage.Sets/src/mage/cards/s/SentinelTower.java @@ -80,7 +80,7 @@ class SentinelTowerTriggeredAbility extends SpellCastAllTriggeredAbility { } for (Effect effect : this.getEffects()) { if (effect instanceof DamageTargetEffect) { - ((DamageTargetEffect) effect).setAmount(new StaticValue(damageToDeal)); + ((DamageTargetEffect) effect).setAmount(StaticValue.get(damageToDeal)); return true; } } diff --git a/Mage.Sets/src/mage/cards/s/ShaleskinBruiser.java b/Mage.Sets/src/mage/cards/s/ShaleskinBruiser.java index c666d6d3bf..a50bb9be0c 100644 --- a/Mage.Sets/src/mage/cards/s/ShaleskinBruiser.java +++ b/Mage.Sets/src/mage/cards/s/ShaleskinBruiser.java @@ -41,7 +41,7 @@ public final class ShaleskinBruiser extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Whenever Shaleskin Bruiser attacks, it gets +3/+0 until end of turn for each other attacking Beast. PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter, 3); - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(value, StaticValue.get(0), Duration.EndOfTurn, true), false)); } public ShaleskinBruiser(final ShaleskinBruiser card) { diff --git a/Mage.Sets/src/mage/cards/s/ShimmerOfPossibility.java b/Mage.Sets/src/mage/cards/s/ShimmerOfPossibility.java index 46bfea6cf1..5b3056dc54 100644 --- a/Mage.Sets/src/mage/cards/s/ShimmerOfPossibility.java +++ b/Mage.Sets/src/mage/cards/s/ShimmerOfPossibility.java @@ -20,7 +20,7 @@ public final class ShimmerOfPossibility extends CardImpl { // Look at the top four cards of your library. Put one of them into your hand and the rest on the bottom of your library in a random order. this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, + StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false, false, Zone.HAND, false, false, false ).setBackInRandomOrder(true)); } diff --git a/Mage.Sets/src/mage/cards/s/SightBeyondSight.java b/Mage.Sets/src/mage/cards/s/SightBeyondSight.java index ea21f3a08d..3051bee590 100644 --- a/Mage.Sets/src/mage/cards/s/SightBeyondSight.java +++ b/Mage.Sets/src/mage/cards/s/SightBeyondSight.java @@ -21,7 +21,7 @@ public final class SightBeyondSight extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{U}"); // Look at the top two cards of your library. Put of them into your hand and the other on the bottom of your library. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); // Rebound this.addAbility(new ReboundAbility()); diff --git a/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java b/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java index 38d0f6e90e..54e4a2e230 100644 --- a/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java +++ b/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java @@ -40,7 +40,7 @@ public final class SilhanaWayfinder extends CardImpl { // When Silhana Wayfinder enters the battlefield, look at the top four cards of your library. You may reveal a creature or land card from among them and put it on top of your library. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, Zone.LIBRARY, false, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, true, Zone.LIBRARY, false, true, false ).setBackInRandomOrder(true).setText("look at the top four cards of your library. " + "You may reveal a creature or land card from among them " + diff --git a/Mage.Sets/src/mage/cards/s/SilvergillDouser.java b/Mage.Sets/src/mage/cards/s/SilvergillDouser.java index efbdede1e2..903197f46d 100644 --- a/Mage.Sets/src/mage/cards/s/SilvergillDouser.java +++ b/Mage.Sets/src/mage/cards/s/SilvergillDouser.java @@ -42,7 +42,7 @@ public final class SilvergillDouser extends CardImpl { // {tap}: Target creature gets -X/-0 until end of turn, where X is the number of Merfolk and/or Faeries you control. DynamicValue number = new PermanentsOnBattlefieldCount(new FilterControlledPermanent(filter), -1); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(number, new StaticValue(0), Duration.EndOfTurn, true), new TapSourceCost()); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(number, StaticValue.get(0), Duration.EndOfTurn, true), new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SionaCaptainOfThePyleas.java b/Mage.Sets/src/mage/cards/s/SionaCaptainOfThePyleas.java index 4e53bd7233..97838a6a85 100644 --- a/Mage.Sets/src/mage/cards/s/SionaCaptainOfThePyleas.java +++ b/Mage.Sets/src/mage/cards/s/SionaCaptainOfThePyleas.java @@ -44,7 +44,7 @@ public final class SionaCaptainOfThePyleas extends CardImpl { // When Siona, Captain of the Pyleas enters the battlefield, look at the top seven cards of your library. You may reveal an Aura card among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(7), false, new StaticValue(1), filter, + StaticValue.get(7), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("Look at the top seven cards of your library. " + diff --git a/Mage.Sets/src/mage/cards/s/SkallaWolf.java b/Mage.Sets/src/mage/cards/s/SkallaWolf.java index 130422f9fb..5407429b46 100644 --- a/Mage.Sets/src/mage/cards/s/SkallaWolf.java +++ b/Mage.Sets/src/mage/cards/s/SkallaWolf.java @@ -37,7 +37,7 @@ public final class SkallaWolf extends CardImpl { // When Skalla Wolf enters the battlefield, look at the top five cards of your library. You may reveal a green card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("look at the top five cards of your library. " + "You may reveal a green card from among them and put it into your hand. " diff --git a/Mage.Sets/src/mage/cards/s/SkeletalScrying.java b/Mage.Sets/src/mage/cards/s/SkeletalScrying.java index 558d631939..7e65477a11 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalScrying.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalScrying.java @@ -82,7 +82,7 @@ class SkeletalScryingEffect extends OneShotEffect { protected DynamicValue amount; public SkeletalScryingEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public SkeletalScryingEffect(DynamicValue amount) { diff --git a/Mage.Sets/src/mage/cards/s/SleightOfHand.java b/Mage.Sets/src/mage/cards/s/SleightOfHand.java index da5fd50320..b45d2f89ea 100644 --- a/Mage.Sets/src/mage/cards/s/SleightOfHand.java +++ b/Mage.Sets/src/mage/cards/s/SleightOfHand.java @@ -21,7 +21,7 @@ public final class SleightOfHand extends CardImpl { // Look at the top two cards of your library. Put one of them into your hand and the other on the bottom of your library. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false)); } public SleightOfHand(final SleightOfHand card) { diff --git a/Mage.Sets/src/mage/cards/s/SoTiny.java b/Mage.Sets/src/mage/cards/s/SoTiny.java index 6b41d69da8..48db1b608d 100644 --- a/Mage.Sets/src/mage/cards/s/SoTiny.java +++ b/Mage.Sets/src/mage/cards/s/SoTiny.java @@ -44,7 +44,7 @@ public final class SoTiny extends CardImpl { // Enchanted creature gets -2/-0. It gets -6/-0 instead as long as its controller has seven or more cards in their graveyard. this.addAbility(new SimpleStaticAbility( - new BoostEnchantedEffect(SoTinyValue.instance, StaticValue.getZeroValue()) + new BoostEnchantedEffect(SoTinyValue.instance, StaticValue.get(0)) .setText("enchanted creature gets -2/-0. It gets -6/-0 instead as long as " + "its controller has seven or more cards in their graveyard") )); diff --git a/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java b/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java index 56e925fe0c..889544a4f4 100644 --- a/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java +++ b/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java @@ -35,7 +35,7 @@ public final class SokenzanSpellblade extends CardImpl { // Bushido 1 this.addAbility(new BushidoAbility(1)); // {1}{R}: Sokenzan Spellblade gets +X/+0 until end of turn, where X is the number of cards in your hand. - Effect effect = new BoostSourceEffect(CardsInControllerHandCount.instance, new StaticValue(0), Duration.EndOfTurn, true); + Effect effect = new BoostSourceEffect(CardsInControllerHandCount.instance, StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("{this} gets +X/+0 until end of turn, where X is the number of cards in your hand"); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{R}") diff --git a/Mage.Sets/src/mage/cards/s/SoulScarMage.java b/Mage.Sets/src/mage/cards/s/SoulScarMage.java index b45ced6860..4070c4dd5f 100644 --- a/Mage.Sets/src/mage/cards/s/SoulScarMage.java +++ b/Mage.Sets/src/mage/cards/s/SoulScarMage.java @@ -74,7 +74,7 @@ class SoulScarMageDamageReplacementEffect extends ReplacementEffectImpl { public boolean replaceEvent(GameEvent event, Ability source, Game game) { Permanent toGetCounters = game.getPermanent(event.getTargetId()); if (toGetCounters != null) { - AddCountersTargetEffect addCounters = new AddCountersTargetEffect(CounterType.M1M1.createInstance(), new StaticValue(event.getAmount())); + AddCountersTargetEffect addCounters = new AddCountersTargetEffect(CounterType.M1M1.createInstance(), StaticValue.get(event.getAmount())); addCounters.setTargetPointer(new FixedTarget(toGetCounters.getId())); addCounters.apply(game, source); return true; diff --git a/Mage.Sets/src/mage/cards/s/Soulshriek.java b/Mage.Sets/src/mage/cards/s/Soulshriek.java index 93dc244d8a..bc5d1e9909 100644 --- a/Mage.Sets/src/mage/cards/s/Soulshriek.java +++ b/Mage.Sets/src/mage/cards/s/Soulshriek.java @@ -70,7 +70,7 @@ class SoulshriekEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Permanent permanent = game.getPermanent(source.getFirstTarget()); if (permanent != null) { - ContinuousEffect boost = new BoostTargetEffect(new CardsInControllerGraveyardCount(Soulshriek.filterCard), new StaticValue(0), Duration.EndOfTurn); + ContinuousEffect boost = new BoostTargetEffect(new CardsInControllerGraveyardCount(Soulshriek.filterCard), StaticValue.get(0), Duration.EndOfTurn); boost.setTargetPointer(new FixedTarget(permanent, game)); game.addEffect(boost, source); Effect sacrifice = new SacrificeTargetEffect("Sacrifice that creature at the beginning of the next end step", source.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/s/SpontaneousMutation.java b/Mage.Sets/src/mage/cards/s/SpontaneousMutation.java index 42eefd7728..ae0cd57747 100644 --- a/Mage.Sets/src/mage/cards/s/SpontaneousMutation.java +++ b/Mage.Sets/src/mage/cards/s/SpontaneousMutation.java @@ -43,7 +43,7 @@ public final class SpontaneousMutation extends CardImpl { // Enchanted creature gets -X/-0, where X is the number of cards in your graveyard. DynamicValue value = new SignInversionDynamicValue(new CardsInControllerGraveyardCount()); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(value, new StaticValue(-0)))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(value, StaticValue.get(-0)))); } public SpontaneousMutation(final SpontaneousMutation card) { diff --git a/Mage.Sets/src/mage/cards/s/SqueakingPieGrubfellows.java b/Mage.Sets/src/mage/cards/s/SqueakingPieGrubfellows.java index 909107ce46..dd9218364d 100644 --- a/Mage.Sets/src/mage/cards/s/SqueakingPieGrubfellows.java +++ b/Mage.Sets/src/mage/cards/s/SqueakingPieGrubfellows.java @@ -28,7 +28,7 @@ public final class SqueakingPieGrubfellows extends CardImpl { // Kinship - At the beginning of your upkeep, you may look at the top card of your library. If it shares a creature type with Squeaking Pie Grubfellows, you may reveal it. // If you do, each opponent discards a card. - this.addAbility(new KinshipAbility(new DiscardEachPlayerEffect(new StaticValue(1), false, TargetController.OPPONENT))); + this.addAbility(new KinshipAbility(new DiscardEachPlayerEffect(StaticValue.get(1), false, TargetController.OPPONENT))); } public SqueakingPieGrubfellows(final SqueakingPieGrubfellows card) { diff --git a/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java b/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java index d4e82d39c8..7716f303d2 100644 --- a/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java +++ b/Mage.Sets/src/mage/cards/s/StoneforgeAcolyte.java @@ -48,7 +48,7 @@ public final class StoneforgeAcolyte extends CardImpl { // Cohort — {T}, Tap an untapped Ally you control: Look at the top four cards of your library. // You may reveal an Equipment card from among them and put it into your hand. Put the rest on the bottom of your library in any order. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), filterEquipment, false), + new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), filterEquipment, false), new TapSourceCost()); ability.addCost(new TapTargetCost(new TargetControlledPermanent(filterAlly))); ability.setAbilityWord(AbilityWord.COHORT); diff --git a/Mage.Sets/src/mage/cards/s/StormfistCrusader.java b/Mage.Sets/src/mage/cards/s/StormfistCrusader.java index ab4d35ed3d..8fd35a8ffe 100644 --- a/Mage.Sets/src/mage/cards/s/StormfistCrusader.java +++ b/Mage.Sets/src/mage/cards/s/StormfistCrusader.java @@ -35,7 +35,7 @@ public final class StormfistCrusader extends CardImpl { Ability ability = new BeginningOfUpkeepTriggeredAbility( new DrawCardAllEffect(1), TargetController.YOU, false ); - ability.addEffect(new LoseLifeAllPlayersEffect(new StaticValue(1), "and loses 1 life")); + ability.addEffect(new LoseLifeAllPlayersEffect(StaticValue.get(1), "and loses 1 life")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StrategicPlanning.java b/Mage.Sets/src/mage/cards/s/StrategicPlanning.java index 356d960fb5..ec0a49fb9e 100644 --- a/Mage.Sets/src/mage/cards/s/StrategicPlanning.java +++ b/Mage.Sets/src/mage/cards/s/StrategicPlanning.java @@ -20,7 +20,7 @@ public final class StrategicPlanning extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{U}"); // Look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false)); } diff --git a/Mage.Sets/src/mage/cards/s/Subdue.java b/Mage.Sets/src/mage/cards/s/Subdue.java index 970e3df788..d692172bf5 100644 --- a/Mage.Sets/src/mage/cards/s/Subdue.java +++ b/Mage.Sets/src/mage/cards/s/Subdue.java @@ -24,7 +24,7 @@ public final class Subdue extends CardImpl { // Prevent all combat damage that would be dealt by target creature this turn. That creature gets +0/+X until end of turn, where X is its converted mana cost. this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addEffect(new PreventDamageByTargetEffect(Duration.EndOfTurn, true)); - this.getSpellAbility().addEffect(new BoostTargetEffect(new StaticValue(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) + this.getSpellAbility().addEffect(new BoostTargetEffect(StaticValue.get(0), TargetConvertedManaCost.instance, Duration.EndOfTurn, true) .setText("That creature gets +0/+X until end of turn, where X is its converted mana cost")); } diff --git a/Mage.Sets/src/mage/cards/s/SultaiAscendancy.java b/Mage.Sets/src/mage/cards/s/SultaiAscendancy.java index 0fb165a16e..acf496c1e8 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiAscendancy.java +++ b/Mage.Sets/src/mage/cards/s/SultaiAscendancy.java @@ -24,7 +24,7 @@ public final class SultaiAscendancy extends CardImpl { // At the beginning of your upkeep, look at the top two cards of your library. Put any number of them into your graveyard and the rest on top of your library in any order. Effect effect = new LookLibraryAndPickControllerEffect( - new StaticValue(2), false, new StaticValue(2), new FilterCard(), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false); + StaticValue.get(2), false, StaticValue.get(2), new FilterCard(), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false); effect.setText("look at the top two cards of your library. Put any number of them into your graveyard and the rest on top of your library in any order"); this.addAbility(new BeginningOfUpkeepTriggeredAbility(effect, TargetController.YOU, false)); } diff --git a/Mage.Sets/src/mage/cards/s/SultaiSoothsayer.java b/Mage.Sets/src/mage/cards/s/SultaiSoothsayer.java index 3a40b420f8..de3340594f 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiSoothsayer.java +++ b/Mage.Sets/src/mage/cards/s/SultaiSoothsayer.java @@ -28,7 +28,7 @@ public final class SultaiSoothsayer extends CardImpl { this.toughness = new MageInt(5); // When Sultai Soothsayer enters the battlefield, look at the top four cards of your library. Put one of them into your hand and the rest into your graveyard. - this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), + this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false), false)); } diff --git a/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java b/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java index dd6a0db960..4c3e777a98 100644 --- a/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java +++ b/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java @@ -40,7 +40,7 @@ public final class SumalaWoodshaper extends CardImpl { // When Sumala Woodshaper enters the battlefield, look at the top four cards of your library. You may reveal a creature or enchantment card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, Zone.LIBRARY, false, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, false, false, false ).setBackInRandomOrder(true), false)); } diff --git a/Mage.Sets/src/mage/cards/s/SupremeWill.java b/Mage.Sets/src/mage/cards/s/SupremeWill.java index 3cf8a608f6..c61922a238 100644 --- a/Mage.Sets/src/mage/cards/s/SupremeWill.java +++ b/Mage.Sets/src/mage/cards/s/SupremeWill.java @@ -29,7 +29,7 @@ public final class SupremeWill extends CardImpl { // or Look at the top four cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. Mode mode = new Mode(); - mode.addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false)); + mode.addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false)); this.getSpellAbility().addMode(mode); } diff --git a/Mage.Sets/src/mage/cards/s/SurgeOfStrength.java b/Mage.Sets/src/mage/cards/s/SurgeOfStrength.java index d71e125bb6..b41e9bac99 100644 --- a/Mage.Sets/src/mage/cards/s/SurgeOfStrength.java +++ b/Mage.Sets/src/mage/cards/s/SurgeOfStrength.java @@ -42,7 +42,7 @@ public final class SurgeOfStrength extends CardImpl { Effect effect = new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn); effect.setText("Target creature gains trample"); this.getSpellAbility().addEffect(effect); - effect = new BoostTargetEffect(TargetConvertedManaCost.instance, new StaticValue(0), Duration.EndOfTurn, true); + effect = new BoostTargetEffect(TargetConvertedManaCost.instance, StaticValue.get(0), Duration.EndOfTurn, true); effect.setText("and gets +X/+0 until end of turn, where X is that creature's converted mana cost"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/t/TaigamSidisisHand.java b/Mage.Sets/src/mage/cards/t/TaigamSidisisHand.java index 10f37ba6ec..5b16a419ae 100644 --- a/Mage.Sets/src/mage/cards/t/TaigamSidisisHand.java +++ b/Mage.Sets/src/mage/cards/t/TaigamSidisisHand.java @@ -54,7 +54,7 @@ public final class TaigamSidisisHand extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect())); // At the beginning of your upkeep, look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false), TargetController.YOU, false)); // {B}, {T}, Exile X cards from your graveyard: Target creature gets -X/-X until end of turn. diff --git a/Mage.Sets/src/mage/cards/t/TaigamsScheming.java b/Mage.Sets/src/mage/cards/t/TaigamsScheming.java index 2b9ee29215..3c01f0020c 100644 --- a/Mage.Sets/src/mage/cards/t/TaigamsScheming.java +++ b/Mage.Sets/src/mage/cards/t/TaigamsScheming.java @@ -20,7 +20,7 @@ public final class TaigamsScheming extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{U}"); // Look at the top five cards of your library. Put any number of them into your graveyard and the rest back on top of your library in any order - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(5), + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(5), new FilterCard("cards"), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false)); } diff --git a/Mage.Sets/src/mage/cards/t/TasigursCruelty.java b/Mage.Sets/src/mage/cards/t/TasigursCruelty.java index 5cc2a98c58..d92e28dca3 100644 --- a/Mage.Sets/src/mage/cards/t/TasigursCruelty.java +++ b/Mage.Sets/src/mage/cards/t/TasigursCruelty.java @@ -23,7 +23,7 @@ public final class TasigursCruelty extends CardImpl { this.addAbility(new DelveAbility()); // Each opponent discards two cards. - this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(new StaticValue(2), false, TargetController.OPPONENT)); + this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(StaticValue.get(2), false, TargetController.OPPONENT)); } public TasigursCruelty(final TasigursCruelty card) { diff --git a/Mage.Sets/src/mage/cards/t/TearsOfRage.java b/Mage.Sets/src/mage/cards/t/TearsOfRage.java index c92ca99bce..f7f4b06c64 100644 --- a/Mage.Sets/src/mage/cards/t/TearsOfRage.java +++ b/Mage.Sets/src/mage/cards/t/TearsOfRage.java @@ -35,7 +35,7 @@ public final class TearsOfRage extends CardImpl { this.addAbility(new CastOnlyDuringPhaseStepSourceAbility(PhaseStep.DECLARE_ATTACKERS)); // Attacking creatures you control get +X/+0 until end of turn, where X is the number of attacking creatures. Sacrifice those creatures at the beginning of the next end step. - BoostControlledEffect effect = new BoostControlledEffect(new AttackingCreatureCount("the number of attacking creatures"), new StaticValue(0), + BoostControlledEffect effect = new BoostControlledEffect(new AttackingCreatureCount("the number of attacking creatures"), StaticValue.get(0), Duration.EndOfTurn, new FilterAttackingCreature("Attacking creatures"), false); effect.setLockedIn(true); getSpellAbility().addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/t/TeferiTemporalArchmage.java b/Mage.Sets/src/mage/cards/t/TeferiTemporalArchmage.java index 213dfc7d5a..c96b638971 100644 --- a/Mage.Sets/src/mage/cards/t/TeferiTemporalArchmage.java +++ b/Mage.Sets/src/mage/cards/t/TeferiTemporalArchmage.java @@ -35,7 +35,7 @@ public final class TeferiTemporalArchmage extends CardImpl { // +1: Look at the top two cards of your library. Put one of them into your hand and the other on the bottom of your library. this.addAbility(new LoyaltyAbility(new LookLibraryAndPickControllerEffect( - new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false), 1)); + StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false), 1)); // -1: Untap up to four target permanents. LoyaltyAbility loyaltyAbility = new LoyaltyAbility(new UntapTargetEffect(), -1); diff --git a/Mage.Sets/src/mage/cards/t/TempestDjinn.java b/Mage.Sets/src/mage/cards/t/TempestDjinn.java index 05d381d8c2..40be981749 100644 --- a/Mage.Sets/src/mage/cards/t/TempestDjinn.java +++ b/Mage.Sets/src/mage/cards/t/TempestDjinn.java @@ -44,7 +44,7 @@ public final class TempestDjinn extends CardImpl { // Tempest Djinn gets +1/+0 for each basic Island you control. PermanentsOnBattlefieldCount count = new PermanentsOnBattlefieldCount(filter); - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, new StaticValue(0), Duration.WhileOnBattlefield))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, StaticValue.get(0), Duration.WhileOnBattlefield))); } public TempestDjinn(final TempestDjinn card) { diff --git a/Mage.Sets/src/mage/cards/t/Tephraderm.java b/Mage.Sets/src/mage/cards/t/Tephraderm.java index 5b33109c49..bd8baa98f9 100644 --- a/Mage.Sets/src/mage/cards/t/Tephraderm.java +++ b/Mage.Sets/src/mage/cards/t/Tephraderm.java @@ -78,7 +78,7 @@ class TephradermCreatureDamageTriggeredAbility extends TriggeredAbilityImpl { for (Effect effect : getEffects()) { if (effect instanceof DamageTargetEffect) { effect.setTargetPointer(new FixedTarget(sourcePermanent.getId())); - ((DamageTargetEffect) effect).setAmount(new StaticValue(event.getAmount())); + ((DamageTargetEffect) effect).setAmount(StaticValue.get(event.getAmount())); } } return true; @@ -124,7 +124,7 @@ class TephradermSpellDamageTriggeredAbility extends TriggeredAbilityImpl { for (Effect effect : getEffects()) { if (effect instanceof DamageTargetEffect) { effect.setTargetPointer(new FixedTarget(sourceSpell.getControllerId())); - ((DamageTargetEffect) effect).setAmount(new StaticValue(event.getAmount())); + ((DamageTargetEffect) effect).setAmount(StaticValue.get(event.getAmount())); } } return true; diff --git a/Mage.Sets/src/mage/cards/t/TerraRavager.java b/Mage.Sets/src/mage/cards/t/TerraRavager.java index 1e7f332026..2152ed8f3e 100644 --- a/Mage.Sets/src/mage/cards/t/TerraRavager.java +++ b/Mage.Sets/src/mage/cards/t/TerraRavager.java @@ -34,7 +34,7 @@ public final class TerraRavager extends CardImpl { this.toughness = new MageInt(4); // Whenever Terra Ravager attacks, it gets +X/+0 until end of turn, where X is the number of lands defending player controls. - this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new TerraRavagerLandCount(), new StaticValue(0), Duration.EndOfTurn, true), false)); + this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new TerraRavagerLandCount(), StaticValue.get(0), Duration.EndOfTurn, true), false)); } public TerraRavager(final TerraRavager card) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java index 4ea0fddead..7b7a6efe2b 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java @@ -43,7 +43,7 @@ public final class TezzeretsGatebreaker extends CardImpl { // When Tezzeret's Gatebreaker enters the battlefield, look at the top five cards of your library. You may reveal a blue or artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. this.addAbility(new EntersBattlefieldTriggeredAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true).setText("look at the top five cards of your library. " + "You may reveal a blue or artifact card from among them and put it into your hand. " diff --git a/Mage.Sets/src/mage/cards/t/TheAntiquitiesWar.java b/Mage.Sets/src/mage/cards/t/TheAntiquitiesWar.java index 1000f251b2..4f125fbec7 100644 --- a/Mage.Sets/src/mage/cards/t/TheAntiquitiesWar.java +++ b/Mage.Sets/src/mage/cards/t/TheAntiquitiesWar.java @@ -40,7 +40,7 @@ public final class TheAntiquitiesWar extends CardImpl { // I, II — Look at the top five cards of your library. You may reveal an artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_I, SagaChapter.CHAPTER_II, - new LookLibraryAndPickControllerEffect(new StaticValue(5), false, new StaticValue(1), + new LookLibraryAndPickControllerEffect(StaticValue.get(5), false, StaticValue.get(1), StaticFilters.FILTER_CARD_ARTIFACT_AN, Zone.LIBRARY, false, true, false, Zone.HAND, true, true, false).setBackInRandomOrder(true)); // III — Artifacts you control become artifact creatures with base power and toughness 5/5 until end of turn. diff --git a/Mage.Sets/src/mage/cards/t/TheBattleOfGeonosis.java b/Mage.Sets/src/mage/cards/t/TheBattleOfGeonosis.java index 7207f52b1a..30cd3236f0 100644 --- a/Mage.Sets/src/mage/cards/t/TheBattleOfGeonosis.java +++ b/Mage.Sets/src/mage/cards/t/TheBattleOfGeonosis.java @@ -35,7 +35,7 @@ public final class TheBattleOfGeonosis extends CardImpl { this.getSpellAbility().addEffect(effect); // Creatures you control get +X/+0 until end of turn. - this.getSpellAbility().addEffect(new BoostControlledEffect(ManacostVariableValue.instance, new StaticValue(0), Duration.EndOfTurn)); + this.getSpellAbility().addEffect(new BoostControlledEffect(ManacostVariableValue.instance, StaticValue.get(0), Duration.EndOfTurn)); } diff --git a/Mage.Sets/src/mage/cards/t/TheTriumphOfAnax.java b/Mage.Sets/src/mage/cards/t/TheTriumphOfAnax.java index 150e93adad..922049eeda 100644 --- a/Mage.Sets/src/mage/cards/t/TheTriumphOfAnax.java +++ b/Mage.Sets/src/mage/cards/t/TheTriumphOfAnax.java @@ -50,7 +50,7 @@ public final class TheTriumphOfAnax extends CardImpl { TrampleAbility.getInstance(), Duration.EndOfTurn, "Until end of turn, target creature gains trample" ), new BoostTargetEffect( - xValue, StaticValue.getZeroValue(), Duration.EndOfTurn, true + xValue, StaticValue.get(0), Duration.EndOfTurn, true ).setText("and gets +X/+0, where X is the number of lore counters on {this}")), new TargetCreaturePermanent() ); diff --git a/Mage.Sets/src/mage/cards/t/ThievesFortune.java b/Mage.Sets/src/mage/cards/t/ThievesFortune.java index 3b38ec85c2..46372b0dfc 100644 --- a/Mage.Sets/src/mage/cards/t/ThievesFortune.java +++ b/Mage.Sets/src/mage/cards/t/ThievesFortune.java @@ -26,7 +26,7 @@ public final class ThievesFortune extends CardImpl { this.addAbility(new ProwlAbility(this, "{U}")); // Look at the top four cards of your library. Put one of them into your hand and the rest on the bottom of your library in any order. - this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false)); + this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.LIBRARY, false, false)); } public ThievesFortune(final ThievesFortune card) { diff --git a/Mage.Sets/src/mage/cards/t/ThunderousMight.java b/Mage.Sets/src/mage/cards/t/ThunderousMight.java index bd30f816fc..178807b294 100644 --- a/Mage.Sets/src/mage/cards/t/ThunderousMight.java +++ b/Mage.Sets/src/mage/cards/t/ThunderousMight.java @@ -32,7 +32,7 @@ public final class ThunderousMight extends CardImpl { this.addAbility(ability); // Whenever enchanted creature attacks, it gets +X/+0 until end of turn, where X is your devotion to red. - BoostEnchantedEffect effect = new BoostEnchantedEffect(DevotionCount.R, new StaticValue(0), Duration.EndOfTurn); + BoostEnchantedEffect effect = new BoostEnchantedEffect(DevotionCount.R, StaticValue.get(0), Duration.EndOfTurn); effect.setText("it gets +X/+0 until end of turn, where X is your devotion to red"); effect.setLockedIn(true); this.addAbility(new AttacksAttachedTriggeredAbility(effect, AttachmentType.AURA, false) diff --git a/Mage.Sets/src/mage/cards/t/TomorrowAzamisFamiliar.java b/Mage.Sets/src/mage/cards/t/TomorrowAzamisFamiliar.java index edf1eb734e..29b92ef501 100644 --- a/Mage.Sets/src/mage/cards/t/TomorrowAzamisFamiliar.java +++ b/Mage.Sets/src/mage/cards/t/TomorrowAzamisFamiliar.java @@ -66,7 +66,7 @@ class TomorrowAzamisFamiliarReplacementEffect extends ReplacementEffectImpl { @Override public boolean replaceEvent(GameEvent event, Ability source, Game game) { - new LookLibraryAndPickControllerEffect(new StaticValue(3), false, new StaticValue(1), new FilterCard(), Zone.LIBRARY, false, false) + new LookLibraryAndPickControllerEffect(StaticValue.get(3), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, false, false) .apply(game, source); return true; } diff --git a/Mage.Sets/src/mage/cards/t/TowerGeist.java b/Mage.Sets/src/mage/cards/t/TowerGeist.java index bc51284f02..c5b427d0ab 100644 --- a/Mage.Sets/src/mage/cards/t/TowerGeist.java +++ b/Mage.Sets/src/mage/cards/t/TowerGeist.java @@ -60,7 +60,7 @@ public final class TowerGeist extends CardImpl { // When Tower Geist enters the battlefield, look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. this.addAbility(new EntersBattlefieldTriggeredAbility( - new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), new FilterCard(), Zone.GRAVEYARD, false, false))); + new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.GRAVEYARD, false, false))); } public TowerGeist(final TowerGeist card) { diff --git a/Mage.Sets/src/mage/cards/u/UnderrealmLich.java b/Mage.Sets/src/mage/cards/u/UnderrealmLich.java index 72d3b775ba..0f4ed7786d 100644 --- a/Mage.Sets/src/mage/cards/u/UnderrealmLich.java +++ b/Mage.Sets/src/mage/cards/u/UnderrealmLich.java @@ -91,7 +91,7 @@ class UnderrealmLichReplacementEffect extends ReplacementEffectImpl { @Override public boolean replaceEvent(GameEvent event, Ability source, Game game) { return new LookLibraryAndPickControllerEffect( - new StaticValue(3), false, new StaticValue(1), + StaticValue.get(3), false, StaticValue.get(1), StaticFilters.FILTER_CARD, Zone.GRAVEYARD, false, false, false, Zone.HAND, false ).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java b/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java index cd333a0bec..cac786cdcc 100644 --- a/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java +++ b/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java @@ -42,7 +42,7 @@ public final class UnityOfTheDroids extends CardImpl { // Look at the top four cards of your library. Put one of them into your hand and the rest into your graveyard. Mode mode = new Mode(); - mode.addEffect(new LookLibraryAndPickControllerEffect(new StaticValue(4), false, new StaticValue(1), new FilterCard(), Zone.GRAVEYARD, false, false)); + mode.addEffect(new LookLibraryAndPickControllerEffect(StaticValue.get(4), false, StaticValue.get(1), new FilterCard(), Zone.GRAVEYARD, false, false)); this.getSpellAbility().addMode(mode); // Destroy target nonartifact creature. diff --git a/Mage.Sets/src/mage/cards/u/Unnerve.java b/Mage.Sets/src/mage/cards/u/Unnerve.java index 5cc212732b..226743c0b0 100644 --- a/Mage.Sets/src/mage/cards/u/Unnerve.java +++ b/Mage.Sets/src/mage/cards/u/Unnerve.java @@ -19,7 +19,7 @@ public final class Unnerve extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{B}"); // Each opponent discards two cards. - this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(new StaticValue(2), false, TargetController.OPPONENT)); + this.getSpellAbility().addEffect(new DiscardEachPlayerEffect(StaticValue.get(2), false, TargetController.OPPONENT)); } public Unnerve(final Unnerve card) { diff --git a/Mage.Sets/src/mage/cards/v/VhatiIlDal.java b/Mage.Sets/src/mage/cards/v/VhatiIlDal.java index e5e913c261..b1bc8efe49 100644 --- a/Mage.Sets/src/mage/cards/v/VhatiIlDal.java +++ b/Mage.Sets/src/mage/cards/v/VhatiIlDal.java @@ -71,9 +71,9 @@ class VhatiIlDalEffect extends OneShotEffect { DynamicValue power = null; DynamicValue toughness = null; if (controller.chooseUse(outcome, "Set power? (otherwise toughness is set)", source, game)) { - power = new StaticValue(1); + power = StaticValue.get(1); } else { - toughness = new StaticValue(1); + toughness = StaticValue.get(1); } ContinuousEffect effect = new SetPowerToughnessTargetEffect(power, toughness, Duration.EndOfTurn); game.addEffect(effect, source); diff --git a/Mage.Sets/src/mage/cards/v/ViciousRumors.java b/Mage.Sets/src/mage/cards/v/ViciousRumors.java index 447886bd3c..245ce9a78e 100644 --- a/Mage.Sets/src/mage/cards/v/ViciousRumors.java +++ b/Mage.Sets/src/mage/cards/v/ViciousRumors.java @@ -25,7 +25,7 @@ public final class ViciousRumors extends CardImpl { new DamagePlayersEffect(1, TargetController.OPPONENT) ); this.getSpellAbility().addEffect(new DiscardEachPlayerEffect( - new StaticValue(1), false, + StaticValue.get(1), false, TargetController.OPPONENT )); this.getSpellAbility().addEffect( diff --git a/Mage.Sets/src/mage/cards/v/VileManifestation.java b/Mage.Sets/src/mage/cards/v/VileManifestation.java index 85e6119b50..cfa223e406 100644 --- a/Mage.Sets/src/mage/cards/v/VileManifestation.java +++ b/Mage.Sets/src/mage/cards/v/VileManifestation.java @@ -44,7 +44,7 @@ public final class VileManifestation extends CardImpl { // Vile Manifestation gets +1/+0 for each card with cycling in your graveyard. DynamicValue amount = new CardsInControllerGraveyardCount(new FilterCard(filter)); - Effect effect = new BoostSourceEffect(amount, new StaticValue(0), Duration.WhileOnBattlefield); + Effect effect = new BoostSourceEffect(amount, StaticValue.get(0), Duration.WhileOnBattlefield); effect.setText("Vile Manifestation gets +1/+0 for each card with cycling in your graveyard."); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/v/VivienReid.java b/Mage.Sets/src/mage/cards/v/VivienReid.java index 2ef81f8189..8da6c440ca 100644 --- a/Mage.Sets/src/mage/cards/v/VivienReid.java +++ b/Mage.Sets/src/mage/cards/v/VivienReid.java @@ -57,7 +57,7 @@ public final class VivienReid extends CardImpl { // +1: Look at the top four cards of your library. You may reveal a creature or land card from among them and put it into your hand. Put the rest on the bottom of your library in any order. this.addAbility(new LoyaltyAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(4), false, new StaticValue(1), filter, + StaticValue.get(4), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false) .setBackInRandomOrder(true) .setText("Look at the top four cards of your library. You may reveal a creature or land card from among them" diff --git a/Mage.Sets/src/mage/cards/v/VolrathsDungeon.java b/Mage.Sets/src/mage/cards/v/VolrathsDungeon.java index 3c8444a70e..c3fe5e8e00 100644 --- a/Mage.Sets/src/mage/cards/v/VolrathsDungeon.java +++ b/Mage.Sets/src/mage/cards/v/VolrathsDungeon.java @@ -64,7 +64,7 @@ class PayLifeActivePlayerCost extends CostImpl { private final DynamicValue amount; public PayLifeActivePlayerCost(int amount) { - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); this.text = "Pay " + amount + " life"; } diff --git a/Mage.Sets/src/mage/cards/w/WallOfTombstones.java b/Mage.Sets/src/mage/cards/w/WallOfTombstones.java index 7deea14229..d1399069cd 100644 --- a/Mage.Sets/src/mage/cards/w/WallOfTombstones.java +++ b/Mage.Sets/src/mage/cards/w/WallOfTombstones.java @@ -65,7 +65,7 @@ class WallOfTombstonesEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { int newToughness = CardUtil.addWithOverflowCheck(1, new CardsInControllerGraveyardCount(StaticFilters.FILTER_CARD_CREATURE).calculate(game, source, this)); - game.addEffect(new SetToughnessSourceEffect(new StaticValue(newToughness), Duration.Custom, SubLayer.SetPT_7b), source); + game.addEffect(new SetToughnessSourceEffect(StaticValue.get(newToughness), Duration.Custom, SubLayer.SetPT_7b), source); return true; } } diff --git a/Mage.Sets/src/mage/cards/w/WanderingGoblins.java b/Mage.Sets/src/mage/cards/w/WanderingGoblins.java index 07c91d93eb..a0c19520e4 100644 --- a/Mage.Sets/src/mage/cards/w/WanderingGoblins.java +++ b/Mage.Sets/src/mage/cards/w/WanderingGoblins.java @@ -30,7 +30,7 @@ public final class WanderingGoblins extends CardImpl { this.toughness = new MageInt(3); // Domain - {3}: Wandering Goblins gets +1/+0 until end of turn for each basic land type among lands you control. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new DomainValue(), new StaticValue(0), Duration.EndOfTurn), new GenericManaCost(3))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new DomainValue(), StaticValue.get(0), Duration.EndOfTurn), new GenericManaCost(3))); } public WanderingGoblins(final WanderingGoblins card) { diff --git a/Mage.Sets/src/mage/cards/w/Weatherlight.java b/Mage.Sets/src/mage/cards/w/Weatherlight.java index 64498880c3..650994cde8 100644 --- a/Mage.Sets/src/mage/cards/w/Weatherlight.java +++ b/Mage.Sets/src/mage/cards/w/Weatherlight.java @@ -43,7 +43,7 @@ public final class Weatherlight extends CardImpl { // Whenever Weatherlight deals combat damage to a player, look at the top five cards of your library. You may reveal a historic card from among them and put it into your hand. Put the rest on the bottom of your library in any order. this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility( new LookLibraryAndPickControllerEffect( - new StaticValue(5), false, new StaticValue(1), filter, + StaticValue.get(5), false, StaticValue.get(1), filter, Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false ).setBackInRandomOrder(true), false diff --git a/Mage.Sets/src/mage/cards/w/WineOfBloodAndIron.java b/Mage.Sets/src/mage/cards/w/WineOfBloodAndIron.java index f5e9142898..f332091d87 100644 --- a/Mage.Sets/src/mage/cards/w/WineOfBloodAndIron.java +++ b/Mage.Sets/src/mage/cards/w/WineOfBloodAndIron.java @@ -29,7 +29,7 @@ public final class WineOfBloodAndIron extends CardImpl { // {4}: Target creature gets +X/+0 until end of turn, where X is its power. Sacrifice Wine of Blood and Iron at the beginning of the next end step. SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new BoostTargetEffect(TargetPermanentPowerCount.instance, new StaticValue(0), Duration.EndOfTurn, true), + new BoostTargetEffect(TargetPermanentPowerCount.instance, StaticValue.get(0), Duration.EndOfTurn, true), new GenericManaCost(4)); Effect effect = new CreateDelayedTriggeredAbilityEffect( new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new SacrificeSourceEffect()), false); diff --git a/Mage.Sets/src/mage/cards/y/YodaJediMaster.java b/Mage.Sets/src/mage/cards/y/YodaJediMaster.java index 761caea8c7..24b4f8132a 100644 --- a/Mage.Sets/src/mage/cards/y/YodaJediMaster.java +++ b/Mage.Sets/src/mage/cards/y/YodaJediMaster.java @@ -51,7 +51,7 @@ public final class YodaJediMaster extends CardImpl { this.addAbility(new PlaneswalkerEntersWithLoyaltyCountersAbility(3)); // +1: Look at the top two cards of your library. Put one on the bottom of your library. - Effect effect = new LookLibraryAndPickControllerEffect(new StaticValue(2), false, new StaticValue(1), + Effect effect = new LookLibraryAndPickControllerEffect(StaticValue.get(2), false, StaticValue.get(1), new FilterCard(), Zone.LIBRARY, true, false, false, Zone.LIBRARY, false, false, true); effect.setText("Look at the top two cards of your library. Put one on the bottom of your library"); this.addAbility(new LoyaltyAbility(effect, 1)); diff --git a/Mage/src/main/java/mage/abilities/costs/common/PayLifeCost.java b/Mage/src/main/java/mage/abilities/costs/common/PayLifeCost.java index 332b6545b0..18c902d5af 100644 --- a/Mage/src/main/java/mage/abilities/costs/common/PayLifeCost.java +++ b/Mage/src/main/java/mage/abilities/costs/common/PayLifeCost.java @@ -18,7 +18,7 @@ public class PayLifeCost extends CostImpl { private final DynamicValue amount; public PayLifeCost(int amount) { - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); this.text = "Pay " + Integer.toString(amount) + " life"; } diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java index f5a11f8136..12d2b4f4df 100644 --- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java +++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java @@ -5,24 +5,17 @@ import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.effects.Effect; import mage.game.Game; +import java.util.HashMap; +import java.util.Map; + public class StaticValue implements DynamicValue { + private static final Map staticValueMap = new HashMap(); + private final int value; - private final String message; - private static final StaticValue zeroValue = new StaticValue(0); - public StaticValue(int value) { - this(value, ""); - } - - public StaticValue(int value, String message) { + private StaticValue(int value) { this.value = value; - this.message = message; - } - - public StaticValue(final StaticValue staticValue) { - this.value = staticValue.value; - this.message = staticValue.message; } @Override @@ -32,7 +25,7 @@ public class StaticValue implements DynamicValue { @Override public StaticValue copy() { - return new StaticValue(this); + return this; } @Override @@ -42,14 +35,15 @@ public class StaticValue implements DynamicValue { @Override public String getMessage() { - return message; + return ""; } public int getValue() { return value; } - public static StaticValue getZeroValue() { - return zeroValue; + public static StaticValue get(int value) { + staticValueMap.putIfAbsent(value, new StaticValue(value)); + return staticValueMap.get(value); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/CreateTokenEffect.java b/Mage/src/main/java/mage/abilities/effects/common/CreateTokenEffect.java index 7f686b6f05..0ee482597c 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CreateTokenEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CreateTokenEffect.java @@ -32,11 +32,11 @@ public class CreateTokenEffect extends OneShotEffect { private ArrayList lastAddedTokenIds = new ArrayList<>(); public CreateTokenEffect(Token token) { - this(token, new StaticValue(1)); + this(token, StaticValue.get(1)); } public CreateTokenEffect(Token token, int amount) { - this(token, new StaticValue(amount)); + this(token, StaticValue.get(amount)); } public CreateTokenEffect(Token token, DynamicValue amount) { @@ -44,7 +44,7 @@ public class CreateTokenEffect extends OneShotEffect { } public CreateTokenEffect(Token token, int amount, boolean tapped, boolean attacking) { - this(token, new StaticValue(amount), tapped, attacking); + this(token, StaticValue.get(amount), tapped, attacking); } public CreateTokenEffect(Token token, DynamicValue amount, boolean tapped, boolean attacking) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/CreateTokenTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/CreateTokenTargetEffect.java index 15bc8d25af..d74b91930b 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CreateTokenTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CreateTokenTargetEffect.java @@ -22,11 +22,11 @@ public class CreateTokenTargetEffect extends OneShotEffect { private boolean attacking; public CreateTokenTargetEffect(Token token) { - this(token, new StaticValue(1)); + this(token, StaticValue.get(1)); } public CreateTokenTargetEffect(Token token, int amount) { - this(token, new StaticValue(amount)); + this(token, StaticValue.get(amount)); } public CreateTokenTargetEffect(Token token, DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageAllEffect.java index d65ba442e6..8dffba358d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageAllEffect.java @@ -22,11 +22,11 @@ public class DamageAllEffect extends OneShotEffect { private String sourceName = "{source}"; public DamageAllEffect(int amount, FilterPermanent filter) { - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); } public DamageAllEffect(int amount, String whoDealDamageName, FilterPermanent filter) { - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); this.sourceName = whoDealDamageName; setText(); // TODO: replace to @Override public String getText() diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedControllerEffect.java index 6c0f4f0fdd..68d1b93da6 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedControllerEffect.java @@ -22,7 +22,7 @@ public class DamageAttachedControllerEffect extends OneShotEffect { public DamageAttachedControllerEffect(int amount) { super(Outcome.Damage); - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); } public DamageAttachedControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedEffect.java index 384e3d1ff2..23ba7d6d86 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageAttachedEffect.java @@ -22,7 +22,7 @@ public class DamageAttachedEffect extends OneShotEffect { public DamageAttachedEffect(int amount) { super(Outcome.Damage); - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); } public DamageAttachedEffect(int amount, String whoDealDamageName) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageControllerEffect.java index de059f270a..1977287239 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageControllerEffect.java @@ -31,14 +31,14 @@ public class DamageControllerEffect extends OneShotEffect { public DamageControllerEffect(int amount, boolean preventable, String whoDealDamageName) { super(Outcome.Damage); - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); this.preventable = preventable; this.sourceName = whoDealDamageName; } public DamageControllerEffect(int amount, boolean preventable) { super(Outcome.Damage); - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); this.preventable = preventable; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageEverythingEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageEverythingEffect.java index 8dd83355fb..42c78008ce 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageEverythingEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageEverythingEffect.java @@ -27,11 +27,11 @@ public class DamageEverythingEffect extends OneShotEffect { private String sourceName = "{source}"; public DamageEverythingEffect(int amount) { - this(new StaticValue(amount), new FilterCreaturePermanent()); + this(StaticValue.get(amount), new FilterCreaturePermanent()); } public DamageEverythingEffect(int amount, String whoDealDamageName) { - this(new StaticValue(amount), new FilterCreaturePermanent()); + this(StaticValue.get(amount), new FilterCreaturePermanent()); this.sourceName = whoDealDamageName; setText(); // TODO: replace to @Override public String getText() @@ -42,7 +42,7 @@ public class DamageEverythingEffect extends OneShotEffect { } public DamageEverythingEffect(int amount, FilterPermanent filter) { - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); } public DamageEverythingEffect(DynamicValue amount, FilterPermanent filter) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageMultiEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageMultiEffect.java index 6ec376482a..df1c5397bb 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageMultiEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageMultiEffect.java @@ -26,11 +26,11 @@ public class DamageMultiEffect extends OneShotEffect { private final Set damagedSet = new HashSet<>(); public DamageMultiEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public DamageMultiEffect(int amount, String whoDealDamageName) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); this.sourceName = whoDealDamageName; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamagePlayersEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamagePlayersEffect.java index c8ff352c31..0b4c5395ef 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamagePlayersEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamagePlayersEffect.java @@ -21,15 +21,15 @@ public class DamagePlayersEffect extends OneShotEffect { private String sourceName = "{source}"; public DamagePlayersEffect(int amount) { - this(Outcome.Damage, new StaticValue(amount)); + this(Outcome.Damage, StaticValue.get(amount)); } public DamagePlayersEffect(int amount, TargetController controller) { - this(Outcome.Damage, new StaticValue(amount), controller); + this(Outcome.Damage, StaticValue.get(amount), controller); } public DamagePlayersEffect(int amount, TargetController controller, String whoDealDamageName) { - this(Outcome.Damage, new StaticValue(amount), controller); + this(Outcome.Damage, StaticValue.get(amount), controller); this.sourceName = whoDealDamageName; setText(); // TODO: replace to @Override public String getText() diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageTargetControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageTargetControllerEffect.java index a1f9ce8615..ea805fe9e5 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageTargetControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageTargetControllerEffect.java @@ -21,11 +21,11 @@ public class DamageTargetControllerEffect extends OneShotEffect { protected boolean preventable; public DamageTargetControllerEffect(int amount) { - this(new StaticValue(amount), true); + this(StaticValue.get(amount), true); } public DamageTargetControllerEffect(int amount, boolean preventable) { - this(new StaticValue(amount), preventable); + this(StaticValue.get(amount), preventable); } public DamageTargetControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DamageTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DamageTargetEffect.java index 626b7225cb..d4db66bb45 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DamageTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DamageTargetEffect.java @@ -27,24 +27,24 @@ public class DamageTargetEffect extends OneShotEffect { protected String sourceName = "{source}"; public DamageTargetEffect(int amount) { - this(new StaticValue(amount), true); + this(StaticValue.get(amount), true); } public DamageTargetEffect(int amount, String whoDealDamageName) { - this(new StaticValue(amount), true); + this(StaticValue.get(amount), true); this.sourceName = whoDealDamageName; } public DamageTargetEffect(int amount, boolean preventable) { - this(new StaticValue(amount), preventable); + this(StaticValue.get(amount), preventable); } public DamageTargetEffect(int amount, boolean preventable, String targetDescription) { - this(new StaticValue(amount), preventable, targetDescription); + this(StaticValue.get(amount), preventable, targetDescription); } public DamageTargetEffect(int amount, boolean preventable, String targetDescription, String whoDealDamageName) { - this(new StaticValue(amount), preventable, targetDescription); + this(StaticValue.get(amount), preventable, targetDescription); this.sourceName = whoDealDamageName; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DrawCardAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DrawCardAllEffect.java index d2da1c7b9a..0e87c451e8 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DrawCardAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DrawCardAllEffect.java @@ -30,7 +30,7 @@ public class DrawCardAllEffect extends OneShotEffect { } public DrawCardAllEffect(int amount, TargetController targetController) { - this(new StaticValue(amount), targetController); + this(StaticValue.get(amount), targetController); } public DrawCardAllEffect(DynamicValue amount, TargetController targetController) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DrawCardSourceControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DrawCardSourceControllerEffect.java index c56a4f28b8..8a2533827d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DrawCardSourceControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DrawCardSourceControllerEffect.java @@ -23,7 +23,7 @@ public class DrawCardSourceControllerEffect extends OneShotEffect { } public DrawCardSourceControllerEffect(int amount, String whoDrawCard) { - this(new StaticValue(amount), whoDrawCard); + this(StaticValue.get(amount), whoDrawCard); } public DrawCardSourceControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DrawCardTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DrawCardTargetEffect.java index 7ab53d6f60..585c3f0341 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DrawCardTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DrawCardTargetEffect.java @@ -25,11 +25,11 @@ public class DrawCardTargetEffect extends OneShotEffect { protected boolean upTo; public DrawCardTargetEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public DrawCardTargetEffect(int amount, boolean optional) { - this(new StaticValue(amount), optional); + this(StaticValue.get(amount), optional); } public DrawCardTargetEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/GainLifeEffect.java b/Mage/src/main/java/mage/abilities/effects/common/GainLifeEffect.java index 51b5e4ef33..105097a667 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/GainLifeEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/GainLifeEffect.java @@ -19,7 +19,7 @@ public class GainLifeEffect extends OneShotEffect { private DynamicValue life; public GainLifeEffect(int life) { - this(new StaticValue(life)); + this(StaticValue.get(life)); } public GainLifeEffect(DynamicValue life) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/GainLifeTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/GainLifeTargetEffect.java index d8a79bfc80..98210835fb 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/GainLifeTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/GainLifeTargetEffect.java @@ -22,7 +22,7 @@ public class GainLifeTargetEffect extends OneShotEffect { private DynamicValue life; public GainLifeTargetEffect(int life) { - this(new StaticValue(life)); + this(StaticValue.get(life)); } public GainLifeTargetEffect(DynamicValue life) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LookLibraryAndPickControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LookLibraryAndPickControllerEffect.java index 2155cbc1d4..9dca85f406 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LookLibraryAndPickControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LookLibraryAndPickControllerEffect.java @@ -87,8 +87,8 @@ public class LookLibraryAndPickControllerEffect extends LookLibraryControllerEff public LookLibraryAndPickControllerEffect(int numberOfCards, int numberToPick, FilterCard pickFilter, boolean upTo) { - this(new StaticValue(numberOfCards), false, - new StaticValue(numberToPick), pickFilter, Zone.LIBRARY, false, + this(StaticValue.get(numberOfCards), false, + StaticValue.get(numberToPick), pickFilter, Zone.LIBRARY, false, true, upTo); } @@ -104,8 +104,8 @@ public class LookLibraryAndPickControllerEffect extends LookLibraryControllerEff public LookLibraryAndPickControllerEffect(int numberOfCards, int numberToPick, FilterCard pickFilter, boolean reveal, boolean upTo, Zone targetZonePickedCards, boolean optional) { - this(new StaticValue(numberOfCards), false, - new StaticValue(numberToPick), pickFilter, Zone.LIBRARY, false, + this(StaticValue.get(numberOfCards), false, + StaticValue.get(numberToPick), pickFilter, Zone.LIBRARY, false, reveal, upTo, targetZonePickedCards, optional, true, true); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/LookLibraryControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LookLibraryControllerEffect.java index 766e1b2ed8..fdacd31698 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LookLibraryControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LookLibraryControllerEffect.java @@ -44,7 +44,7 @@ public class LookLibraryControllerEffect extends OneShotEffect { } public LookLibraryControllerEffect(int numberOfCards, boolean mayShuffleAfter, boolean putOnTop) { - this(new StaticValue(numberOfCards), mayShuffleAfter, putOnTop); + this(StaticValue.get(numberOfCards), mayShuffleAfter, putOnTop); } public LookLibraryControllerEffect(DynamicValue numberOfCards, boolean mayShuffleAfter, boolean putOnTop) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeAllPlayersEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeAllPlayersEffect.java index 8bc73d8080..c320d8f13e 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeAllPlayersEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeAllPlayersEffect.java @@ -20,7 +20,7 @@ public class LoseLifeAllPlayersEffect extends OneShotEffect { private final DynamicValue amount; public LoseLifeAllPlayersEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifeAllPlayersEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java index abf9bbae7c..450eaec382 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java @@ -17,7 +17,7 @@ public class LoseLifeControllerAttachedEffect extends OneShotEffect { protected DynamicValue amount; public LoseLifeControllerAttachedEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifeControllerAttachedEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeDefendingPlayerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeDefendingPlayerEffect.java index 507ad217d1..ca058b0762 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeDefendingPlayerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeDefendingPlayerEffect.java @@ -25,7 +25,7 @@ public class LoseLifeDefendingPlayerEffect extends OneShotEffect { * attacker false if attacker has to be taken from targetPointer */ public LoseLifeDefendingPlayerEffect(int amount, boolean attackerIsSource) { - this(new StaticValue(amount), attackerIsSource); + this(StaticValue.get(amount), attackerIsSource); } public LoseLifeDefendingPlayerEffect(DynamicValue amount, boolean attackerIsSource) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeOpponentsEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeOpponentsEffect.java index 72e7a17cd5..ead8433dc7 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeOpponentsEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeOpponentsEffect.java @@ -21,7 +21,7 @@ public class LoseLifeOpponentsEffect extends OneShotEffect { private DynamicValue amount; public LoseLifeOpponentsEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifeOpponentsEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifePermanentControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifePermanentControllerEffect.java index 5d6ecf576b..00274e26a9 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifePermanentControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifePermanentControllerEffect.java @@ -21,7 +21,7 @@ public class LoseLifePermanentControllerEffect extends OneShotEffect { protected DynamicValue amount; public LoseLifePermanentControllerEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifePermanentControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeSourceControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeSourceControllerEffect.java index 9fe9cae185..0707a45334 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeSourceControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeSourceControllerEffect.java @@ -19,7 +19,7 @@ public class LoseLifeSourceControllerEffect extends OneShotEffect { protected DynamicValue amount; public LoseLifeSourceControllerEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifeSourceControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeTargetEffect.java index f46fa4dc76..93c03a7146 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeTargetEffect.java @@ -19,7 +19,7 @@ public class LoseLifeTargetEffect extends OneShotEffect { protected DynamicValue amount; public LoseLifeTargetEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public LoseLifeTargetEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java index f1158cb434..665a930257 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PutLibraryIntoGraveTargetEffect.java @@ -19,7 +19,7 @@ public class PutLibraryIntoGraveTargetEffect extends OneShotEffect { private DynamicValue amount; public PutLibraryIntoGraveTargetEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public PutLibraryIntoGraveTargetEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveEachPlayerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveEachPlayerEffect.java index 2e27fe567d..9cd5fa8702 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveEachPlayerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveEachPlayerEffect.java @@ -23,7 +23,7 @@ public class PutTopCardOfLibraryIntoGraveEachPlayerEffect extends OneShotEffect private final TargetController targetController; public PutTopCardOfLibraryIntoGraveEachPlayerEffect(int numberCards, TargetController targetController) { - this(new StaticValue(numberCards), targetController); + this(StaticValue.get(numberCards), targetController); } public PutTopCardOfLibraryIntoGraveEachPlayerEffect(DynamicValue numberCards, TargetController targetController) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveTargetEffect.java index 308222981d..d45f62ad2c 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PutTopCardOfLibraryIntoGraveTargetEffect.java @@ -19,7 +19,7 @@ public class PutTopCardOfLibraryIntoGraveTargetEffect extends OneShotEffect { private DynamicValue numberCards; public PutTopCardOfLibraryIntoGraveTargetEffect(int numberCards) { - this(new StaticValue(numberCards)); + this(StaticValue.get(numberCards)); } public PutTopCardOfLibraryIntoGraveTargetEffect(DynamicValue numberCards) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/RevealLibraryPutIntoHandEffect.java b/Mage/src/main/java/mage/abilities/effects/common/RevealLibraryPutIntoHandEffect.java index f5243a0773..c77e3560f4 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/RevealLibraryPutIntoHandEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/RevealLibraryPutIntoHandEffect.java @@ -32,7 +32,7 @@ public class RevealLibraryPutIntoHandEffect extends OneShotEffect { } public RevealLibraryPutIntoHandEffect(int amountCards, FilterCard filter, Zone zoneToPutRest, boolean anyOrder) { - this(new StaticValue(amountCards), filter, zoneToPutRest, anyOrder); + this(StaticValue.get(amountCards), filter, zoneToPutRest, anyOrder); } public RevealLibraryPutIntoHandEffect(DynamicValue amountCards, FilterCard filter, Zone zoneToPutRest, boolean anyOrder) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/RevealTargetPlayerLibraryEffect.java b/Mage/src/main/java/mage/abilities/effects/common/RevealTargetPlayerLibraryEffect.java index 8a3d0feb6e..afb199ca96 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/RevealTargetPlayerLibraryEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/RevealTargetPlayerLibraryEffect.java @@ -22,7 +22,7 @@ public class RevealTargetPlayerLibraryEffect extends OneShotEffect { private DynamicValue amountCards; public RevealTargetPlayerLibraryEffect(int amountCards) { - this(new StaticValue(amountCards)); + this(StaticValue.get(amountCards)); } public RevealTargetPlayerLibraryEffect(DynamicValue amountCards) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SacrificeAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SacrificeAllEffect.java index 8f5cdf4a3e..434ebc8225 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SacrificeAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SacrificeAllEffect.java @@ -30,7 +30,7 @@ public class SacrificeAllEffect extends OneShotEffect { } public SacrificeAllEffect(int amount, FilterControlledPermanent filter) { - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); } public SacrificeAllEffect(DynamicValue amount, FilterControlledPermanent filter) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SacrificeControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SacrificeControllerEffect.java index a633f247cb..70cb4035c4 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SacrificeControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SacrificeControllerEffect.java @@ -22,7 +22,7 @@ public class SacrificeControllerEffect extends SacrificeEffect { } public SacrificeControllerEffect(FilterPermanent filter, int count, String preText ) { - this(filter, new StaticValue(count), preText); + this(filter, StaticValue.get(count), preText); } public SacrificeControllerEffect(final SacrificeControllerEffect effect ) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SacrificeEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SacrificeEffect.java index cf5006a114..fc954a3a5d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SacrificeEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SacrificeEffect.java @@ -26,7 +26,7 @@ public class SacrificeEffect extends OneShotEffect { private DynamicValue count; public SacrificeEffect(FilterPermanent filter, int count, String preText) { - this(filter, new StaticValue(count), preText); + this(filter, StaticValue.get(count), preText); } public SacrificeEffect(FilterPermanent filter, DynamicValue count, String preText) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsEffect.java index 243c524d5c..f1d9df7128 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsEffect.java @@ -32,7 +32,7 @@ public class SacrificeOpponentsEffect extends OneShotEffect { } public SacrificeOpponentsEffect(int amount, FilterPermanent filter) { - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); } public SacrificeOpponentsEffect(DynamicValue amount, FilterPermanent filter) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsUnlessPayEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsUnlessPayEffect.java index 0ed4cc9022..f37daeadb0 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsUnlessPayEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SacrificeOpponentsUnlessPayEffect.java @@ -49,11 +49,11 @@ public class SacrificeOpponentsUnlessPayEffect extends OneShotEffect { } public SacrificeOpponentsUnlessPayEffect(Cost cost, FilterPermanent filter, int amount) { - this(cost, filter, new StaticValue(amount)); + this(cost, filter, StaticValue.get(amount)); } public SacrificeOpponentsUnlessPayEffect(int genericManaCost, FilterPermanent filter, int amount) { - this(new GenericManaCost(genericManaCost), filter, new StaticValue(amount)); + this(new GenericManaCost(genericManaCost), filter, StaticValue.get(amount)); } public SacrificeOpponentsUnlessPayEffect(Cost cost, FilterPermanent filter, DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeAllEffect.java index fa7befc917..cb691a322a 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeAllEffect.java @@ -33,7 +33,7 @@ public class SetPlayerLifeAllEffect extends OneShotEffect { } public SetPlayerLifeAllEffect(int amount, TargetController targetController) { - this(new StaticValue(amount), targetController); + this(StaticValue.get(amount), targetController); } public SetPlayerLifeAllEffect(DynamicValue amount, TargetController targetController) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeSourceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeSourceEffect.java index 54db0d0d56..17ca7f5981 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeSourceEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeSourceEffect.java @@ -22,7 +22,7 @@ public class SetPlayerLifeSourceEffect extends OneShotEffect { protected DynamicValue amount; public SetPlayerLifeSourceEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public SetPlayerLifeSourceEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeTargetEffect.java index ed9c40731f..cb79f6e1f6 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/SetPlayerLifeTargetEffect.java @@ -18,7 +18,7 @@ public class SetPlayerLifeTargetEffect extends OneShotEffect { protected DynamicValue amount; public SetPlayerLifeTargetEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public SetPlayerLifeTargetEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostAllEffect.java index bf9e508a8b..bf1261f926 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostAllEffect.java @@ -40,7 +40,7 @@ public class BoostAllEffect extends ContinuousEffectImpl { } public BoostAllEffect(int power, int toughness, Duration duration, FilterCreaturePermanent filter, boolean excludeSource) { - this(new StaticValue(power), new StaticValue(toughness), duration, filter, excludeSource); + this(StaticValue.get(power), StaticValue.get(toughness), duration, filter, excludeSource); } public BoostAllEffect(DynamicValue power, DynamicValue toughness, Duration duration, FilterCreaturePermanent filter, boolean excludeSource) { @@ -92,8 +92,8 @@ public class BoostAllEffect extends ContinuousEffectImpl { } } if (lockedInPT) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostControlledEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostControlledEffect.java index 8404e0ecee..901fd63335 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostControlledEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostControlledEffect.java @@ -41,11 +41,11 @@ public class BoostControlledEffect extends ContinuousEffectImpl { } public BoostControlledEffect(int power, int toughness, Duration duration, FilterCreaturePermanent filter) { - this(new StaticValue(power), new StaticValue(toughness), duration, filter, false); + this(StaticValue.get(power), StaticValue.get(toughness), duration, filter, false); } public BoostControlledEffect(int power, int toughness, Duration duration, FilterCreaturePermanent filter, boolean excludeSource) { - this(new StaticValue(power), new StaticValue(toughness), duration, filter, excludeSource, true); + this(StaticValue.get(power), StaticValue.get(toughness), duration, filter, excludeSource, true); } public BoostControlledEffect(DynamicValue power, DynamicValue toughness, Duration duration, FilterCreaturePermanent filter, boolean excludeSource) { @@ -97,8 +97,8 @@ public class BoostControlledEffect extends ContinuousEffectImpl { } } if (this.lockedIn) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEnchantedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEnchantedEffect.java index a68c167ad2..8dcdd7f70a 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEnchantedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEnchantedEffect.java @@ -28,7 +28,7 @@ public class BoostEnchantedEffect extends ContinuousEffectImpl { } public BoostEnchantedEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration); + this(StaticValue.get(power), StaticValue.get(toughness), duration); } public BoostEnchantedEffect(DynamicValue power, DynamicValue toughness) { @@ -58,8 +58,8 @@ public class BoostEnchantedEffect extends ContinuousEffectImpl { public void init(Ability source, Game game) { super.init(source, game); if (lockedIn) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } if (affectedObjectsSet) { // Added boosts of activated or triggered abilities exist independent from the source they are created by diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java index d093e52be5..1e9c895a25 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java @@ -27,7 +27,7 @@ public class BoostEquippedEffect extends ContinuousEffectImpl { } public BoostEquippedEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration); + this(StaticValue.get(power), StaticValue.get(toughness), duration); } public BoostEquippedEffect(DynamicValue powerDynamicValue, DynamicValue toughnessDynamicValue) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostSourceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostSourceEffect.java index 28f5b2ba00..1cfa40263a 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostSourceEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostSourceEffect.java @@ -25,7 +25,7 @@ public class BoostSourceEffect extends ContinuousEffectImpl implements SourceEff private boolean lockedIn; public BoostSourceEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration, false); + this(StaticValue.get(power), StaticValue.get(toughness), duration, false); } public BoostSourceEffect(DynamicValue power, DynamicValue toughness, Duration duration) { @@ -69,8 +69,8 @@ public class BoostSourceEffect extends ContinuousEffectImpl implements SourceEff } } if (lockedIn) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostTargetEffect.java index 9254999b2b..438fce895f 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostTargetEffect.java @@ -32,7 +32,7 @@ public class BoostTargetEffect extends ContinuousEffectImpl { } public BoostTargetEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration, false); + this(StaticValue.get(power), StaticValue.get(toughness), duration, false); } public BoostTargetEffect(DynamicValue power, DynamicValue toughness, Duration duration) { @@ -69,8 +69,8 @@ public class BoostTargetEffect extends ContinuousEffectImpl { public void init(Ability source, Game game) { super.init(source, game); if (lockedIn) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/MaximumHandSizeControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/MaximumHandSizeControllerEffect.java index 5e47292d52..295d99cd80 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/MaximumHandSizeControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/MaximumHandSizeControllerEffect.java @@ -39,7 +39,7 @@ public class MaximumHandSizeControllerEffect extends ContinuousEffectImpl { } public MaximumHandSizeControllerEffect(int handSize, Duration duration, HandSizeModification handSizeModification, TargetController targetController) { - this(new StaticValue(handSize), duration, handSizeModification, targetController); + this(StaticValue.get(handSize), duration, handSizeModification, targetController); } public MaximumHandSizeControllerEffect(DynamicValue handSize, Duration duration, HandSizeModification handSizeModification, TargetController targetController) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessAllEffect.java index fc73adaccc..edb7b8e459 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessAllEffect.java @@ -31,11 +31,11 @@ public class SetPowerToughnessAllEffect extends ContinuousEffectImpl { private boolean lockedInPT; public SetPowerToughnessAllEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration, new FilterCreaturePermanent("Creatures"), true); + this(StaticValue.get(power), StaticValue.get(toughness), duration, new FilterCreaturePermanent("Creatures"), true); } public SetPowerToughnessAllEffect(int power, int toughness, Duration duration, FilterPermanent filter, boolean lockedInPT) { - this(new StaticValue(power), new StaticValue(toughness), duration, filter, lockedInPT); + this(StaticValue.get(power), StaticValue.get(toughness), duration, filter, lockedInPT); } public SetPowerToughnessAllEffect(DynamicValue power, DynamicValue toughness, Duration duration, FilterPermanent filter, boolean lockedInPT) { @@ -68,8 +68,8 @@ public class SetPowerToughnessAllEffect extends ContinuousEffectImpl { } } if (lockedInPT) { - power = new StaticValue(power.calculate(game, source, this)); - toughness = new StaticValue(toughness.calculate(game, source, this)); + power = StaticValue.get(power.calculate(game, source, this)); + toughness = StaticValue.get(toughness.calculate(game, source, this)); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessTargetEffect.java index 5c46ea3360..0649128a62 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/SetPowerToughnessTargetEffect.java @@ -31,7 +31,7 @@ public class SetPowerToughnessTargetEffect extends ContinuousEffectImpl { } public SetPowerToughnessTargetEffect(int power, int toughness, Duration duration) { - this(new StaticValue(power), new StaticValue(toughness), duration); + this(StaticValue.get(power), StaticValue.get(toughness), duration); } public SetPowerToughnessTargetEffect(final SetPowerToughnessTargetEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java index e4bb6995a5..4c36466ddf 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java @@ -33,7 +33,7 @@ public class CastWithoutPayingManaCostEffect extends OneShotEffect { * @param maxCost Maximum converted mana cost for this effect to apply to */ public CastWithoutPayingManaCostEffect(int maxCost) { - this(new StaticValue(maxCost)); + this(StaticValue.get(maxCost)); } public CastWithoutPayingManaCostEffect(DynamicValue maxCost) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersAttachedEffect.java index 0687972d50..5a9f9bbbb1 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersAttachedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersAttachedEffect.java @@ -23,7 +23,7 @@ public class AddCountersAttachedEffect extends OneShotEffect { private String textEnchanted; public AddCountersAttachedEffect(Counter counter, String textEnchanted) { - this(counter, new StaticValue(1), textEnchanted); + this(counter, StaticValue.get(1), textEnchanted); } /** diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersSourceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersSourceEffect.java index 1b5ba2047d..208a4c0b1e 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersSourceEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersSourceEffect.java @@ -31,7 +31,7 @@ public class AddCountersSourceEffect extends OneShotEffect { } public AddCountersSourceEffect(Counter counter, boolean informPlayers) { - this(counter, new StaticValue(0), informPlayers); + this(counter, StaticValue.get(0), informPlayers); } public AddCountersSourceEffect(Counter counter, DynamicValue amount, boolean informPlayers) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersTargetEffect.java index 4c717eb6e4..b3166e83b5 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/AddCountersTargetEffect.java @@ -36,7 +36,7 @@ public class AddCountersTargetEffect extends OneShotEffect { } public AddCountersTargetEffect(Counter counter, Outcome outcome) { - this(counter, new StaticValue(0), outcome); + this(counter, StaticValue.get(0), outcome); } public AddCountersTargetEffect(Counter counter, DynamicValue amount, Outcome outcome) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/GetEnergyCountersControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/GetEnergyCountersControllerEffect.java index 8b9664f79b..170a9448b7 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/GetEnergyCountersControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/GetEnergyCountersControllerEffect.java @@ -19,7 +19,7 @@ public class GetEnergyCountersControllerEffect extends OneShotEffect { private final DynamicValue value; public GetEnergyCountersControllerEffect(int value) { - this(new StaticValue(value)); + this(StaticValue.get(value)); } public GetEnergyCountersControllerEffect(DynamicValue value) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/RemoveCountersAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/RemoveCountersAttachedEffect.java index 775ca85982..59451c359b 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/RemoveCountersAttachedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/RemoveCountersAttachedEffect.java @@ -24,7 +24,7 @@ public class RemoveCountersAttachedEffect extends OneShotEffect { private String textEnchanted; public RemoveCountersAttachedEffect(Counter counter, String textEnchanted) { - this(counter, new StaticValue(0), textEnchanted); + this(counter, StaticValue.get(0), textEnchanted); } /** diff --git a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardCardYouChooseTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardCardYouChooseTargetEffect.java index be0200c24f..5e2d1d1193 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardCardYouChooseTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardCardYouChooseTargetEffect.java @@ -11,6 +11,7 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; +import mage.filter.StaticFilters; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -31,16 +32,18 @@ public class DiscardCardYouChooseTargetEffect extends OneShotEffect { private final DynamicValue numberCardsToDiscard; private boolean revealAllCards; + private static final FilterCard filterOneCard = new FilterCard("one card"); + public DiscardCardYouChooseTargetEffect() { this(new FilterCard("a card")); } public DiscardCardYouChooseTargetEffect(TargetController targetController) { - this(new FilterCard("a card"), targetController); + this(StaticFilters.FILTER_CARD_A, targetController); } public DiscardCardYouChooseTargetEffect(DynamicValue numberCardsToDiscard, TargetController targetController) { - this(numberCardsToDiscard, new FilterCard("cards"), targetController); + this(numberCardsToDiscard, StaticFilters.FILTER_CARD_CARDS, targetController); } public DiscardCardYouChooseTargetEffect(FilterCard filter) { @@ -48,12 +51,11 @@ public class DiscardCardYouChooseTargetEffect extends OneShotEffect { } public DiscardCardYouChooseTargetEffect(TargetController targetController, int numberCardsToReveal) { - this(new FilterCard("one card"), targetController, - new StaticValue(numberCardsToReveal, new StringBuilder(CardUtil.numberToText(numberCardsToReveal)).append(" cards").toString())); + this(filterOneCard, targetController, StaticValue.get(numberCardsToReveal)); } public DiscardCardYouChooseTargetEffect(TargetController targetController, DynamicValue numberCardsToReveal) { - this(new FilterCard("one card"), targetController, numberCardsToReveal); + this(filterOneCard, targetController, numberCardsToReveal); } public DiscardCardYouChooseTargetEffect(FilterCard filter, TargetController targetController, DynamicValue numberCardsToReveal) { @@ -63,13 +65,13 @@ public class DiscardCardYouChooseTargetEffect extends OneShotEffect { this.revealAllCards = false; this.numberCardsToReveal = numberCardsToReveal; - this.numberCardsToDiscard = new StaticValue(1); + this.numberCardsToDiscard = StaticValue.get(1); staticText = this.setText(); } public DiscardCardYouChooseTargetEffect(FilterCard filter, TargetController targetController) { - this(new StaticValue(1), filter, targetController); + this(StaticValue.get(1), filter, targetController); } public DiscardCardYouChooseTargetEffect(DynamicValue numberCardsToDiscard, FilterCard filter, TargetController targetController) { @@ -97,54 +99,56 @@ public class DiscardCardYouChooseTargetEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player player = game.getPlayer(targetPointer.getFirst(game, source)); Player controller = game.getPlayer(source.getControllerId()); - if (player != null && controller != null) { - if (revealAllCards) { - this.numberCardsToReveal = new StaticValue(player.getHand().size()); - } - int numberToReveal = this.numberCardsToReveal.calculate(game, source, this); - if (numberToReveal > 0) { - Cards revealedCards = new CardsImpl(); - numberToReveal = Math.min(player.getHand().size(), numberToReveal); - if (player.getHand().size() > numberToReveal) { - TargetCardInHand chosenCards = new TargetCardInHand(numberToReveal, numberToReveal, new FilterCard("card in " + player.getName() + "'s hand")); - chosenCards.setNotTarget(true); - if (chosenCards.canChoose(player.getId(), game) && player.chooseTarget(Outcome.Discard, player.getHand(), chosenCards, source, game)) { - if (!chosenCards.getTargets().isEmpty()) { - List targets = chosenCards.getTargets(); - for (UUID targetid : targets) { - Card card = game.getCard(targetid); - if (card != null) { - revealedCards.add(card); - } - } - } - } - } else { - revealedCards.addAll(player.getHand()); - } - - Card sourceCard = game.getCard(source.getSourceId()); - player.revealCards(sourceCard != null ? sourceCard.getIdName() + " (" + sourceCard.getZoneChangeCounter(game) + ')' : "Discard", revealedCards, game); - - boolean result = true; - int filteredCardsCount = revealedCards.count(filter, source.getSourceId(), source.getControllerId(), game); - int numberToDiscard = Math.min(this.numberCardsToDiscard.calculate(game, source, this), filteredCardsCount); - if (numberToDiscard > 0) { - TargetCard target = new TargetCard(numberToDiscard, Zone.HAND, filter); - if (controller.choose(Outcome.Benefit, revealedCards, target, game)) { - for (UUID targetId : target.getTargets()) { - Card card = revealedCards.get(targetId, game); - if (!player.discard(card, source, game)) { - result = false; - } - } - } - } - return result; - } + if (player == null || controller == null) { + return false; + } + if (revealAllCards) { + this.numberCardsToReveal = StaticValue.get(player.getHand().size()); + } + int numberToReveal = this.numberCardsToReveal.calculate(game, source, this); + if (numberToReveal <= 0) { return true; } - return false; + Cards revealedCards = new CardsImpl(); + numberToReveal = Math.min(player.getHand().size(), numberToReveal); + if (player.getHand().size() > numberToReveal) { + TargetCardInHand chosenCards = new TargetCardInHand(numberToReveal, numberToReveal, new FilterCard("card in " + player.getName() + "'s hand")); + chosenCards.setNotTarget(true); + if (chosenCards.canChoose(player.getId(), game) && player.chooseTarget(Outcome.Discard, player.getHand(), chosenCards, source, game)) { + if (!chosenCards.getTargets().isEmpty()) { + List targets = chosenCards.getTargets(); + for (UUID targetid : targets) { + Card card = game.getCard(targetid); + if (card != null) { + revealedCards.add(card); + } + } + } + } + } else { + revealedCards.addAll(player.getHand()); + } + + Card sourceCard = game.getCard(source.getSourceId()); + player.revealCards(sourceCard != null ? sourceCard.getIdName() + " (" + sourceCard.getZoneChangeCounter(game) + ')' : "Discard", revealedCards, game); + + boolean result = true; + int filteredCardsCount = revealedCards.count(filter, source.getSourceId(), source.getControllerId(), game); + int numberToDiscard = Math.min(this.numberCardsToDiscard.calculate(game, source, this), filteredCardsCount); + if (numberToDiscard <= 0) { + return result; + } + TargetCard target = new TargetCard(numberToDiscard, Zone.HAND, filter); + if (!controller.choose(Outcome.Benefit, revealedCards, target, game)) { + return result; + } + for (UUID targetId : target.getTargets()) { + Card card = revealedCards.get(targetId, game); + if (!player.discard(card, source, game)) { + result = false; + } + } + return result; } @Override @@ -169,7 +173,7 @@ public class DiscardCardYouChooseTargetEffect extends OneShotEffect { } else { if (numberCardsToReveal instanceof StaticValue) { sb.append(" reveals "); - sb.append(numberCardsToReveal.getMessage()); + sb.append(CardUtil.numberToText(((StaticValue) numberCardsToReveal).getValue()) + " cards"); sb.append(" from their hand"); } else { sb.append(" reveals a number of cards from their hand equal to "); diff --git a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardControllerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardControllerEffect.java index 0d637f099b..278a4747c8 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardControllerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardControllerEffect.java @@ -20,11 +20,11 @@ public class DiscardControllerEffect extends OneShotEffect { protected boolean randomDiscard; public DiscardControllerEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public DiscardControllerEffect(int amount, boolean randomDiscard) { - this(new StaticValue(amount), randomDiscard); + this(StaticValue.get(amount), randomDiscard); } public DiscardControllerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardEachPlayerEffect.java b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardEachPlayerEffect.java index 2d35c6dc24..91ebc6228d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardEachPlayerEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardEachPlayerEffect.java @@ -27,15 +27,15 @@ public class DiscardEachPlayerEffect extends OneShotEffect { private TargetController targetController; public DiscardEachPlayerEffect() { - this(new StaticValue(1), false); + this(StaticValue.get(1), false); } public DiscardEachPlayerEffect(TargetController targetController) { - this(new StaticValue(1), false, targetController); + this(StaticValue.get(1), false, targetController); } public DiscardEachPlayerEffect(int amount, boolean randomDiscard) { - this(new StaticValue(amount), randomDiscard); + this(StaticValue.get(amount), randomDiscard); } public DiscardEachPlayerEffect(DynamicValue amount, boolean randomDiscard) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardTargetEffect.java index 238c6b21a2..66b1351f34 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/discard/DiscardTargetEffect.java @@ -32,7 +32,7 @@ public class DiscardTargetEffect extends OneShotEffect { } public DiscardTargetEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } /** @@ -44,7 +44,7 @@ public class DiscardTargetEffect extends OneShotEffect { public DiscardTargetEffect(int amount, boolean randomDiscard) { super(Outcome.Discard); this.randomDiscard = randomDiscard; - this.amount = new StaticValue(amount); + this.amount = StaticValue.get(amount); } public DiscardTargetEffect(final DiscardTargetEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/AmassEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/AmassEffect.java index b30a4dce7f..2ad1b35fd1 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/AmassEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/AmassEffect.java @@ -36,7 +36,7 @@ public class AmassEffect extends OneShotEffect { private UUID amassedCreatureId = null; public AmassEffect(int amassNumber) { - this(new StaticValue(amassNumber)); + this(StaticValue.get(amassNumber)); staticText = "amass " + amassNumber + ". (Put " + CardUtil.numberToText(amassNumber) + " +1/+1 counter" + (amassNumber > 1 ? "s " : " ") + "on an Army you control. If you don't control one, " diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java index c7711d81db..3bf6a6c9f8 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java @@ -30,7 +30,7 @@ public class BolsterEffect extends OneShotEffect { private final DynamicValue amount; public BolsterEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public BolsterEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/SupportEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/SupportEffect.java index ca6298c759..c650a130b7 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/SupportEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/SupportEffect.java @@ -20,8 +20,8 @@ public class SupportEffect extends AddCountersTargetEffect { private final boolean otherPermanent; public SupportEffect(Card card, int amount, boolean otherPermanent) { - super(CounterType.P1P1.createInstance(0), new StaticValue(1)); - this.amountSupportTargets = new StaticValue(amount); + super(CounterType.P1P1.createInstance(0), StaticValue.get(1)); + this.amountSupportTargets = StaticValue.get(amount); this.otherPermanent = otherPermanent; if (card.isInstant() || card.isSorcery()) { card.getSpellAbility().addTarget(new TargetCreaturePermanent(0, amount, new FilterCreaturePermanent("target creatures"), false)); diff --git a/Mage/src/main/java/mage/abilities/effects/mana/AddConditionalManaOfAnyColorEffect.java b/Mage/src/main/java/mage/abilities/effects/mana/AddConditionalManaOfAnyColorEffect.java index ab93862ffe..0f644f6b6f 100644 --- a/Mage/src/main/java/mage/abilities/effects/mana/AddConditionalManaOfAnyColorEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/mana/AddConditionalManaOfAnyColorEffect.java @@ -28,7 +28,7 @@ public class AddConditionalManaOfAnyColorEffect extends ManaEffect { private final boolean oneChoice; public AddConditionalManaOfAnyColorEffect(int amount, ConditionalManaBuilder manaBuilder) { - this(new StaticValue(amount), manaBuilder); + this(StaticValue.get(amount), manaBuilder); } public AddConditionalManaOfAnyColorEffect(DynamicValue amount, ConditionalManaBuilder manaBuilder) { diff --git a/Mage/src/main/java/mage/abilities/effects/mana/AddManaInAnyCombinationEffect.java b/Mage/src/main/java/mage/abilities/effects/mana/AddManaInAnyCombinationEffect.java index ffe2627005..17e49384e3 100644 --- a/Mage/src/main/java/mage/abilities/effects/mana/AddManaInAnyCombinationEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/mana/AddManaInAnyCombinationEffect.java @@ -23,11 +23,11 @@ public class AddManaInAnyCombinationEffect extends ManaEffect { private final DynamicValue amount; public AddManaInAnyCombinationEffect(int amount) { - this(new StaticValue(amount), ColoredManaSymbol.B, ColoredManaSymbol.U, ColoredManaSymbol.R, ColoredManaSymbol.W, ColoredManaSymbol.G); + this(StaticValue.get(amount), ColoredManaSymbol.B, ColoredManaSymbol.U, ColoredManaSymbol.R, ColoredManaSymbol.W, ColoredManaSymbol.G); } public AddManaInAnyCombinationEffect(int amount, ColoredManaSymbol... coloredManaSymbols) { - this(new StaticValue(amount), coloredManaSymbols); + this(StaticValue.get(amount), coloredManaSymbols); } public AddManaInAnyCombinationEffect(DynamicValue amount, ColoredManaSymbol... coloredManaSymbols) { diff --git a/Mage/src/main/java/mage/abilities/keyword/BushidoAbility.java b/Mage/src/main/java/mage/abilities/keyword/BushidoAbility.java index 46ee9d436b..fe61fea3a2 100644 --- a/Mage/src/main/java/mage/abilities/keyword/BushidoAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/BushidoAbility.java @@ -20,7 +20,7 @@ public class BushidoAbility extends TriggeredAbilityImpl { private String rulesText = null; public BushidoAbility(int value) { - this(new StaticValue(value)); + this(StaticValue.get(value)); rulesText = "Bushido " + value + getReminder(Integer.toString(value)); } diff --git a/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java b/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java index 96e54314c3..89b2d51a7b 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java @@ -17,7 +17,7 @@ public class ReinforceAbility extends SimpleActivatedAbility { private Cost cost; public ReinforceAbility(int count, Cost cost) { - this(new StaticValue(count), cost); + this(StaticValue.get(count), cost); } public ReinforceAbility(DynamicValue count, Cost cost) { diff --git a/Mage/src/main/java/mage/abilities/keyword/RepairAbility.java b/Mage/src/main/java/mage/abilities/keyword/RepairAbility.java index 5a270a4d9e..9bde3078e5 100644 --- a/Mage/src/main/java/mage/abilities/keyword/RepairAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/RepairAbility.java @@ -35,7 +35,7 @@ public class RepairAbility extends DiesTriggeredAbility { private String ruleText; public RepairAbility(int count) { - super(new AddCountersSourceEffect(CounterType.REPAIR.createInstance(), new StaticValue(count), false, true)); + super(new AddCountersSourceEffect(CounterType.REPAIR.createInstance(), StaticValue.get(count), false, true)); addSubAbility(new RepairBeginningOfUpkeepInterveningIfTriggeredAbility()); addSubAbility(new RepairCastFromGraveyardTriggeredAbility()); diff --git a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java index 3c56b148e8..90bea4bb88 100644 --- a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java @@ -33,7 +33,7 @@ public class SoulshiftAbility extends DiesTriggeredAbility { private final DynamicValue amount; public SoulshiftAbility(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public SoulshiftAbility(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/abilities/mana/ConditionalAnyColorManaAbility.java b/Mage/src/main/java/mage/abilities/mana/ConditionalAnyColorManaAbility.java index 26f751b371..c8d9cf3ac4 100644 --- a/Mage/src/main/java/mage/abilities/mana/ConditionalAnyColorManaAbility.java +++ b/Mage/src/main/java/mage/abilities/mana/ConditionalAnyColorManaAbility.java @@ -31,7 +31,7 @@ public class ConditionalAnyColorManaAbility extends ActivatedManaAbilityImpl { } public ConditionalAnyColorManaAbility(Cost cost, int amount, ConditionalManaBuilder manaBuilder, boolean oneChoice) { - this(cost, new StaticValue(amount), manaBuilder, oneChoice); + this(cost, StaticValue.get(amount), manaBuilder, oneChoice); } public ConditionalAnyColorManaAbility(Cost cost, DynamicValue amount, ConditionalManaBuilder manaBuilder, boolean oneChoice) { diff --git a/Mage/src/main/java/mage/filter/StaticFilters.java b/Mage/src/main/java/mage/filter/StaticFilters.java index 7ee3a2caa2..86de642847 100644 --- a/Mage/src/main/java/mage/filter/StaticFilters.java +++ b/Mage/src/main/java/mage/filter/StaticFilters.java @@ -50,6 +50,13 @@ public final class StaticFilters { FILTER_CARD.setLockedFilter(true); } + + public static final FilterCard FILTER_CARD_A = new FilterCard("a card"); + + static { + FILTER_CARD_A.setLockedFilter(true); + } + public static final FilterCard FILTER_CARD_CARDS = new FilterCard("cards"); static { diff --git a/Mage/src/main/java/mage/game/command/planes/AcademyAtTolariaWestPlane.java b/Mage/src/main/java/mage/game/command/planes/AcademyAtTolariaWestPlane.java index 58b485755b..e8b54b8e29 100644 --- a/Mage/src/main/java/mage/game/command/planes/AcademyAtTolariaWestPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/AcademyAtTolariaWestPlane.java @@ -63,7 +63,7 @@ class DrawCardsActivePlayerEffect extends OneShotEffect { protected DynamicValue amount; public DrawCardsActivePlayerEffect(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public DrawCardsActivePlayerEffect(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java b/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java index 351207d6ce..b87d8e5131 100644 --- a/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java @@ -102,7 +102,7 @@ class UndercityReachesTriggeredAbility extends TriggeredAbilityImpl { if (((DamagedPlayerEvent) event).isCombatDamage()) { Permanent creature = game.getPermanent(event.getSourceId()); if (creature != null) { - Effect effect = new DrawCardTargetEffect(new StaticValue(1), false, true); + Effect effect = new DrawCardTargetEffect(StaticValue.get(1), false, true); effect.setTargetPointer(new FixedTarget(creature.getControllerId())); effect.apply(game, null); return true; diff --git a/Mage/src/main/java/mage/game/stack/StackObjImpl.java b/Mage/src/main/java/mage/game/stack/StackObjImpl.java index 8af461dfdb..48c32191a9 100644 --- a/Mage/src/main/java/mage/game/stack/StackObjImpl.java +++ b/Mage/src/main/java/mage/game/stack/StackObjImpl.java @@ -200,7 +200,7 @@ public abstract class StackObjImpl implements StackObject { // build a target definition with exactly one possible target to select that replaces old target Target tempTarget = target.copy(); if (target instanceof TargetAmount) { - ((TargetAmount) tempTarget).setAmountDefinition(new StaticValue(target.getTargetAmount(targetId))); + ((TargetAmount) tempTarget).setAmountDefinition(StaticValue.get(target.getTargetAmount(targetId))); } tempTarget.setMinNumberOfTargets(1); tempTarget.setMaxNumberOfTargets(1); diff --git a/Mage/src/main/java/mage/target/TargetAmount.java b/Mage/src/main/java/mage/target/TargetAmount.java index 84ced7d035..b493de4880 100644 --- a/Mage/src/main/java/mage/target/TargetAmount.java +++ b/Mage/src/main/java/mage/target/TargetAmount.java @@ -22,7 +22,7 @@ public abstract class TargetAmount extends TargetImpl { int remainingAmount; public TargetAmount(int amount) { - this(new StaticValue(amount)); + this(StaticValue.get(amount)); } public TargetAmount(DynamicValue amount) { diff --git a/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java b/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java index 544c8a6de3..2ecce4b326 100644 --- a/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java +++ b/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java @@ -29,7 +29,7 @@ public class TargetAnyTargetAmount extends TargetPermanentOrPlayerAmount { // any positive number or zero, unless something (such as damage or counters) is being divided // or distributed among “any number” of players and/or objects. In that case, a nonzero number // of players and/or objects must be chosen if possible. - this(new StaticValue(amount), maxNumberOfTargets); + this(StaticValue.get(amount), maxNumberOfTargets); this.minNumberOfTargets = 1; } diff --git a/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java b/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java index 00fa98bf45..8ae66a9ec5 100644 --- a/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java +++ b/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java @@ -24,7 +24,7 @@ public class TargetCreatureOrPlayerAmount extends TargetPermanentOrPlayerAmount // any positive number or zero, unless something (such as damage or counters) is being divided // or distributed among “any number” of players and/or objects. In that case, a nonzero number // of players and/or objects must be chosen if possible. - this(new StaticValue(amount)); + this(StaticValue.get(amount)); this.minNumberOfTargets = 1; } diff --git a/Mage/src/main/java/mage/target/common/TargetPermanentAmount.java b/Mage/src/main/java/mage/target/common/TargetPermanentAmount.java index b6c9afedc3..77187b2931 100644 --- a/Mage/src/main/java/mage/target/common/TargetPermanentAmount.java +++ b/Mage/src/main/java/mage/target/common/TargetPermanentAmount.java @@ -28,7 +28,7 @@ public abstract class TargetPermanentAmount extends TargetAmount { // any positive number or zero, unless something (such as damage or counters) is being divided // or distributed among “any number” of players and/or objects. In that case, a nonzero number // of players and/or objects must be chosen if possible. - this(new StaticValue(amount), filter); + this(StaticValue.get(amount), filter); } TargetPermanentAmount(DynamicValue amount, FilterPermanent filter) { From 724acc4e14532f04b42af945c3aa8eed16bfa691 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 20:44:43 -0500 Subject: [PATCH 02/10] fixed failing tests --- .../mage/abilities/TriggeredAbilityImpl.java | 63 +++++++++---------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/Mage/src/main/java/mage/abilities/TriggeredAbilityImpl.java b/Mage/src/main/java/mage/abilities/TriggeredAbilityImpl.java index d9910c6d7a..62cf4f0ea3 100644 --- a/Mage/src/main/java/mage/abilities/TriggeredAbilityImpl.java +++ b/Mage/src/main/java/mage/abilities/TriggeredAbilityImpl.java @@ -1,7 +1,5 @@ package mage.abilities; -import java.util.Locale; -import java.util.UUID; import mage.MageObject; import mage.abilities.effects.Effect; import mage.constants.AbilityType; @@ -14,6 +12,9 @@ import mage.game.events.ZoneChangeEvent; import mage.players.Player; import mage.util.CardUtil; +import java.util.Locale; +import java.util.UUID; + /** * @author BetaSteward_at_googlemail.com */ @@ -155,39 +156,37 @@ public abstract class TriggeredAbilityImpl extends AbilityImpl implements Trigge * latter triggers trigger from the game state after the move where the * Kozilek card is itself and has the ability. */ - if (event != null && event.getTargetId() != null && event.getTargetId().equals(getSourceId())) { - switch (event.getType()) { - case ZONE_CHANGE: - ZoneChangeEvent zce = (ZoneChangeEvent) event; - if (event.getTargetId().equals(getSourceId()) && !zce.getToZone().isPublicZone()) { - // If an ability triggers when the object that has it is put into a hidden zone from a graveyard, - // that ability triggers from the graveyard, (such as Golgari Brownscale), - // Yixlid Jailer will prevent that ability from triggering. - if (zce.getFromZone().match(Zone.GRAVEYARD)) { - if (!CardUtil.cardHadAbility(this, game.getLastKnownInformationCard(getSourceId(), zce.getFromZone()), getSourceId(), game)) { - return false; - } + if (event == null || event.getTargetId() == null || !event.getTargetId().equals(getSourceId())) { + return super.isInUseableZone(game, source, event); + } + switch (event.getType()) { + case ZONE_CHANGE: + ZoneChangeEvent zce = (ZoneChangeEvent) event; + if (event.getTargetId().equals(getSourceId()) && !zce.getToZone().isPublicZone()) { + // If an ability triggers when the object that has it is put into a hidden zone from a graveyard, + // that ability triggers from the graveyard, (such as Golgari Brownscale), + // Yixlid Jailer will prevent that ability from triggering. + if (zce.getFromZone().match(Zone.GRAVEYARD)) { + if (!CardUtil.cardHadAbility(this, game.getLastKnownInformationCard(getSourceId(), zce.getFromZone()), getSourceId(), game)) { + return false; } } - break; - case DESTROYED_PERMANENT: - if (isLeavesTheBattlefieldTrigger()) { - if (event.getType() == EventType.DESTROYED_PERMANENT) { - source = game.getLastKnownInformation(getSourceId(), Zone.BATTLEFIELD); - } else if (((ZoneChangeEvent) event).getTarget() != null) { - source = ((ZoneChangeEvent) event).getTarget(); - } else { - source = game.getLastKnownInformation(getSourceId(), event.getZone()); - } + } + case DESTROYED_PERMANENT: + if (isLeavesTheBattlefieldTrigger()) { + if (event.getType() == EventType.DESTROYED_PERMANENT) { + source = game.getLastKnownInformation(getSourceId(), Zone.BATTLEFIELD); + } else if (((ZoneChangeEvent) event).getTarget() != null) { + source = ((ZoneChangeEvent) event).getTarget(); + } else { + source = game.getLastKnownInformation(getSourceId(), event.getZone()); } - break; - case PHASED_OUT: - case PHASED_IN: - if (this.zone == Zone.ALL || game.getLastKnownInformation(getSourceId(), zone) != null) { - return this.hasSourceObjectAbility(game, source, event); - } - break; - } + } + case PHASED_OUT: + case PHASED_IN: + if (this.zone == Zone.ALL || game.getLastKnownInformation(getSourceId(), zone) != null) { + return this.hasSourceObjectAbility(game, source, event); + } } return super.isInUseableZone(game, source, event); } From a09f0f6f3d8fc38d277fe249a13fd9cfe8ef922a Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 21:37:55 -0500 Subject: [PATCH 03/10] updated THB spoiler --- Utils/mtg-cards-data.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 8fc97b5330..8754e14191 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -36461,7 +36461,7 @@ Naiad of Hidden Coves|Theros Beyond Death|56|C|{2}{U}|Enchantment Creature - Nym Omen of the Sea|Theros Beyond Death|58|C|{1}{U}|Enchantment|||Flash$When Omen of the Sea enters the battlefield, scry 2, then draw a card.${2}{U}, Sacrifice Omen of the Sea: Scry 2.| One with the Stars|Theros Beyond Death|59|U|{3}{U}|Enchantment - Aura|||Enchant creature or enchantment$Enchanted permanent is an enchantment and loses all other card types.| Shimmerwing Chimera|Theros Beyond Death|64|U|{3}{U}|Enchantment Creature - Chimera|3|2|Flying$At the beginning of your upkeep, return up to one other target enchantment you control to its owner's hand.| -Shoal Kraken|Theros Beyond Death|65|U|{4}{U}|Creature - Kraken|3|5|Constellation — Whenever an enchantment creature enters the battlefield under your control, you may a draw card. If you do, discard a card.| +Shoal Kraken|Theros Beyond Death|65|U|{4}{U}|Creature - Kraken|3|5|Constellation — Whenever an enchantment enters the battlefield under your control, you may a draw card. If you do, discard a card.| Stinging Lionfish|Theros Beyond Death|69|U|{1}{U}|Enchantment Creature - Fish|2|1|Whenever you cast your first spell during each opponent's turn, you may tap or untap target nonland permanent.| Sweet Oblivion|Theros Beyond Death|70|U|{1}{U}|Sorcery|||Target player puts the top four cards of their library into their graveyard.$Escape—{3}{U}, Exile four other cards from your graveyard.| Thassa, Deep-Dwelling|Theros Beyond Death|71|M|{3}{U}|Legendary Enchantment Creature - God|6|5|Indestructible$As long as your devotion to blue is less than five, Thassa isn't a creature.$At the beginning of your end step, exile up to one other target creature you control, then return that card to the battlefield under your control.${3}{U}: Tap another target creature.| @@ -36484,9 +36484,11 @@ Tymaret Calls the Dead|Theros Beyond Death|118|R|{2}{B}|Enchantment - Saga|||(As Tymaret, Chosen from Death|Theros Beyond Death|119|U|{B}{B}|Legendary Enchantment Creature - Demigod|2|*|Tymaret's toughness is equal to your devotion to black.${1}{B}: Exile up to two target cards from graveyards. You gain 1 life for each creature card exiled this way.| Woe Strider|Theros Beyond Death|123|R|{2}{B}|Creature - Horror|3|2|When Woe Strider enters the battlefield, create a 0/1 white Goat creature token.$Sacrifice another creature: Scry 1.$Escape—{3}{B}{B}, Exile four other cards from your graveyard.$Woe Strider escapes with two +1/+1 counters on it.| The Akroan War|Theros Beyond Death|124|R|{3}{R}|Enchantment - Saga|||(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)$I — Gain control of target creature for as long as The Akroan War remains on the battlefield.$II — Until your next turn, creatures your opponents control attack each combat if able.$III — Each tapped creature deals damage to itself equal to its power.| +Arena Trickster|Theros Beyond Death|126|C|{3}{R}|Creature - Human Shaman|3|3|Whenever you cast your first spell during each opponent's turn, put a +1/+1 counter on Arena Trickster.| Blood Aspirant|Theros Beyond Death|128|U|{1}{R}|Creature - Satyr Berserker|1|1|Whenever you sacrifice a permanent, put a +1/+1 counter on Blood Aspirant.${1}{R}, {T}, Sacrifice a creature or enchantment: Blood Aspirant deals 1 damage to target creature. That creature can't block this turn.| Escape Velocity|Theros Beyond Death|132|U|{R}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +1/+0 and has haste.$Escape—{1}{R}, Exile two other cards from your graveyard.| Omen of the Forge|Theros Beyond Death|145|C|{1}{R}|Enchantment|||Flash$When Omen of the Forge enters the battlefield, it deals 2 damage to any target.${2}{R}, Sacrifice Omen of the Forge: Scry 2.| +Oread of Mountain's Blaze|Theros Beyond Death|146|C|{1}{R}|Enchantment Creature - Nymph|1|3|{2}{R}, Discard a card: Draw a card.| Ox of Agonas|Theros Beyond Death|147|M|{3}{R}{R}|Creature - Ox|4|2|When Ox of Agonas enters the battlefield, discard your hand, then draw three cards.$Escape—{R}{R}, Exile eight other cards from your graveyard.$Ox of Agonas escapes with a +1/+1 counter on it.| Purphoros, Bronze-Blooded|Theros Beyond Death|150|M|{4}{R}|Legendary Enchantment Creature - God|7|6|Indestructible$As long as your devotion to red is less than five, Purphoros isn't a creature.$Other creatures you control have haste.${2}{R}: You may put a red creature card or an artifact creature card from your hand onto the battlefield. Sacrifice it at the beginning of the next end step.| Purphoros's Intervention|Theros Beyond Death|151|R|{X}{R}|Sorcery|||Choose one —$• Create an X/1 red Elemental creature token with trample and haste. Sacrifice it at the beginning of the next end step.$• Purphoros's Intervention deals twice X damage to target creature or planeswalker.| @@ -36519,7 +36521,7 @@ Klothys, God of Destiny|Theros Beyond Death|220|M|{1}{R}{G}|Legendary Enchantmen Kunoros, Hound of Athreos|Theros Beyond Death|222|R|{1}{W}{B}|Legendary Creature - Hound|3|3|Vigilance, menace, lifelink$Creature cards in graveyards can't enter the battlefield.$Players can't cast spells from graveyards.| Polukranos, Unchained|Theros Beyond Death|224|M|{2}{B}{G}|Legendary Creature - Zombie Hydra|0|0|Polukranos enters the battlefield with six +1/+1 counters on it. It escapes with twelve +1/+1 counters on it instead.$If damage would be dealt to Polukranos while it has a +1/+1 counter on it, prevent that damage and remove that many +1/+1 counters from it.${1}{B}{G}: Polukranos fights another target creature.$Escape—{4}{B}{G}, Exile six other cards from your graveyard.| Rise to Glory|Theros Beyond Death|225|U|{3}{W}{B}|Sorcery|||Choose one or both —$• Return target creature card from your graveyard to the battlefield.$• Return target Aura card from your graveyard to the battlefield.| -Siona, Captain of the Pyleas|Theros Beyond Death|226|U|{1}{G}{W}|Legendary Creature - Human Soldier|2|2|When Siona, Captain of the Pyleas enters the battlefield, look at the top seven cards of your library. You may reveal an Aura card among them and put it into your hand. Put the rest on the bottom of your library in a random order.$Whenever an Aura you control becomes attached to a creature you control, create a 1/1 white Human Soldier creature token.| +Siona, Captain of the Pyleas|Theros Beyond Death|226|U|{1}{G}{W}|Legendary Creature - Human Soldier|2|2|When Siona, Captain of the Pyleas enters the battlefield, look at the top seven cards of your library. You may reveal an Aura card from among them and put it into your hand. Put the rest on the bottom of your library in a random order.$Whenever an Aura you control becomes attached to a creature you control, create a 1/1 white Human Soldier creature token.| Staggering Insight|Theros Beyond Death|228|U|{W}{U}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +1/+1 and has lifelink and "Whenever this creature deals combat damage to a player, draw a card."| Warden of the Chained|Theros Beyond Death|230|U|{1}{R}{G}|Creature - Minotaur Warrior|4|4|Trample$Warden of the Chained can't attack unless you control another creature with power 4 or greater.| Nyx Lotus|Theros Beyond Death|235|R|{4}|Legendary Artifact|||Nyx Lotus enters the battlefield tapped.${T}: Choose a color. Add an amount of mana of that color equal to your devotion to that color.| From 690e042b364e744c00c31181c93d85cfcd70254e Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 21:55:44 -0500 Subject: [PATCH 04/10] Implemented Arena Trickster --- .../src/mage/cards/a/ArenaTrickster.java | 41 +++++++++++++ .../src/mage/cards/s/StingingLionfish.java | 58 +++---------------- .../src/mage/cards/w/WavebreakHippocamp.java | 52 ++--------------- .../src/mage/sets/TherosBeyondDeath.java | 1 + ...rstSpellOpponentsTurnTriggeredAbility.java | 50 ++++++++++++++++ 5 files changed, 104 insertions(+), 98 deletions(-) create mode 100644 Mage.Sets/src/mage/cards/a/ArenaTrickster.java create mode 100644 Mage/src/main/java/mage/abilities/common/FirstSpellOpponentsTurnTriggeredAbility.java diff --git a/Mage.Sets/src/mage/cards/a/ArenaTrickster.java b/Mage.Sets/src/mage/cards/a/ArenaTrickster.java new file mode 100644 index 0000000000..6204999c1c --- /dev/null +++ b/Mage.Sets/src/mage/cards/a/ArenaTrickster.java @@ -0,0 +1,41 @@ +package mage.cards.a; + +import mage.MageInt; +import mage.abilities.common.FirstSpellOpponentsTurnTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.counters.CounterType; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class ArenaTrickster extends CardImpl { + + public ArenaTrickster(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{R}"); + + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.SHAMAN); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + // Whenever you cast your first spell during each opponent's turn, put a +1/+1 counter on Arena Trickster. + this.addAbility(new FirstSpellOpponentsTurnTriggeredAbility( + new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false + )); + } + + private ArenaTrickster(final ArenaTrickster card) { + super(card); + } + + @Override + public ArenaTrickster copy() { + return new ArenaTrickster(this); + } +} diff --git a/Mage.Sets/src/mage/cards/s/StingingLionfish.java b/Mage.Sets/src/mage/cards/s/StingingLionfish.java index 4a885ea730..448356bc00 100644 --- a/Mage.Sets/src/mage/cards/s/StingingLionfish.java +++ b/Mage.Sets/src/mage/cards/s/StingingLionfish.java @@ -1,19 +1,15 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.common.SpellCastControllerTriggeredAbility; +import mage.abilities.Ability; +import mage.abilities.common.FirstSpellOpponentsTurnTriggeredAbility; import mage.abilities.effects.common.MayTapOrUntapTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; -import mage.game.Game; -import mage.game.events.GameEvent; -import mage.game.stack.Spell; -import mage.target.common.TargetNonlandPermanent; -import mage.watchers.common.SpellsCastWatcher; +import mage.target.TargetPermanent; -import java.util.List; import java.util.UUID; /** @@ -29,7 +25,11 @@ public final class StingingLionfish extends CardImpl { this.toughness = new MageInt(1); // Whenever you cast your first spell during each opponent's turn, you may tap or untap target nonland permanent. - this.addAbility(new StingingLionfishTriggeredAbility(), new SpellsCastWatcher()); + Ability ability = new FirstSpellOpponentsTurnTriggeredAbility( + new MayTapOrUntapTargetEffect(), false + ); + ability.addTarget(new TargetPermanent()); + this.addAbility(ability); } private StingingLionfish(final StingingLionfish card) { @@ -41,45 +41,3 @@ public final class StingingLionfish extends CardImpl { return new StingingLionfish(this); } } - -class StingingLionfishTriggeredAbility extends SpellCastControllerTriggeredAbility { - - StingingLionfishTriggeredAbility() { - super(new MayTapOrUntapTargetEffect(), false); - this.addTarget(new TargetNonlandPermanent()); - } - - private StingingLionfishTriggeredAbility(StingingLionfishTriggeredAbility ability) { - super(ability); - } - - @Override - public StingingLionfishTriggeredAbility copy() { - return new StingingLionfishTriggeredAbility(this); - } - - @Override - public boolean checkTrigger(GameEvent event, Game game) { - if (game.getActivePlayerId().equals(this.getControllerId()) // ignore controller turn - || !super.checkTrigger(event, game)) { - return false; - } - - if (!game.getOpponents(this.getControllerId()).contains(game.getActivePlayerId())) { - return false; - } - - SpellsCastWatcher watcher = game.getState().getWatcher(SpellsCastWatcher.class); - if (watcher == null) { - return false; - } - - List spells = watcher.getSpellsCastThisTurn(event.getPlayerId()); - return spells != null && spells.size() == 1; - } - - @Override - public String getRule() { - return "Whenever you cast your first spell during each opponent's turn, you mat tap or untap target permanent."; - } -} \ No newline at end of file diff --git a/Mage.Sets/src/mage/cards/w/WavebreakHippocamp.java b/Mage.Sets/src/mage/cards/w/WavebreakHippocamp.java index f245d20d59..8985a23646 100644 --- a/Mage.Sets/src/mage/cards/w/WavebreakHippocamp.java +++ b/Mage.Sets/src/mage/cards/w/WavebreakHippocamp.java @@ -1,18 +1,13 @@ package mage.cards.w; import mage.MageInt; -import mage.abilities.common.SpellCastControllerTriggeredAbility; +import mage.abilities.common.FirstSpellOpponentsTurnTriggeredAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; -import mage.game.Game; -import mage.game.events.GameEvent; -import mage.game.stack.Spell; -import mage.watchers.common.SpellsCastWatcher; -import java.util.List; import java.util.UUID; /** @@ -29,7 +24,9 @@ public final class WavebreakHippocamp extends CardImpl { this.toughness = new MageInt(2); // Whenever you cast your first spell during each opponent's turn, draw a card. - this.addAbility(new WavebreakHippocampTriggeredAbility(), new SpellsCastWatcher()); + this.addAbility(new FirstSpellOpponentsTurnTriggeredAbility( + new DrawCardSourceControllerEffect(1), false + )); } private WavebreakHippocamp(final WavebreakHippocamp card) { @@ -41,44 +38,3 @@ public final class WavebreakHippocamp extends CardImpl { return new WavebreakHippocamp(this); } } - -class WavebreakHippocampTriggeredAbility extends SpellCastControllerTriggeredAbility { - - WavebreakHippocampTriggeredAbility() { - super(new DrawCardSourceControllerEffect(1), false); - } - - private WavebreakHippocampTriggeredAbility(WavebreakHippocampTriggeredAbility ability) { - super(ability); - } - - @Override - public WavebreakHippocampTriggeredAbility copy() { - return new WavebreakHippocampTriggeredAbility(this); - } - - @Override - public boolean checkTrigger(GameEvent event, Game game) { - if (game.getActivePlayerId().equals(this.getControllerId()) // ignore controller turn - || !super.checkTrigger(event, game)) { - return false; - } - - if (!game.getOpponents(this.getControllerId()).contains(game.getActivePlayerId())) { - return false; - } - - SpellsCastWatcher watcher = game.getState().getWatcher(SpellsCastWatcher.class); - if (watcher == null) { - return false; - } - - List spells = watcher.getSpellsCastThisTurn(event.getPlayerId()); - return spells != null && spells.size() == 1; - } - - @Override - public String getRule() { - return "Whenever you cast your first spell during each opponent's turn, draw a card."; - } -} \ No newline at end of file diff --git a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java index 7662bc9acc..b3e0b4de92 100644 --- a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java +++ b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java @@ -30,6 +30,7 @@ public final class TherosBeyondDeath extends ExpansionSet { cards.add(new SetCardInfo("Aphemia, the Cacophony", 84, Rarity.RARE, mage.cards.a.AphemiaTheCacophony.class)); cards.add(new SetCardInfo("Arasta of the Endless Web", 165, Rarity.RARE, mage.cards.a.ArastaOfTheEndlessWeb.class)); cards.add(new SetCardInfo("Archon of Falling Stars", 2, Rarity.UNCOMMON, mage.cards.a.ArchonOfFallingStars.class)); + cards.add(new SetCardInfo("Arena Trickster", 126, Rarity.COMMON, mage.cards.a.ArenaTrickster.class)); cards.add(new SetCardInfo("Ashiok's Erasure", 43, Rarity.RARE, mage.cards.a.AshioksErasure.class)); cards.add(new SetCardInfo("Ashiok, Nightmare Muse", 208, Rarity.MYTHIC, mage.cards.a.AshiokNightmareMuse.class)); cards.add(new SetCardInfo("Ashiok, Sculptor of Fears", 274, Rarity.MYTHIC, mage.cards.a.AshiokSculptorOfFears.class)); diff --git a/Mage/src/main/java/mage/abilities/common/FirstSpellOpponentsTurnTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/FirstSpellOpponentsTurnTriggeredAbility.java new file mode 100644 index 0000000000..84aef8d67f --- /dev/null +++ b/Mage/src/main/java/mage/abilities/common/FirstSpellOpponentsTurnTriggeredAbility.java @@ -0,0 +1,50 @@ +package mage.abilities.common; + +import mage.abilities.effects.Effect; +import mage.filter.FilterSpell; +import mage.game.Game; +import mage.game.events.GameEvent; +import mage.game.stack.Spell; +import mage.watchers.common.SpellsCastWatcher; + +import java.util.List; + +/** + * @author TheElk801 + */ +public class FirstSpellOpponentsTurnTriggeredAbility extends SpellCastControllerTriggeredAbility { + + private static final FilterSpell defaultFilter + = new FilterSpell("your first spell during each opponent's turn"); + + public FirstSpellOpponentsTurnTriggeredAbility(Effect effect, boolean optional) { + super(effect, defaultFilter, optional); + this.addWatcher(new SpellsCastWatcher()); + } + + private FirstSpellOpponentsTurnTriggeredAbility(final FirstSpellOpponentsTurnTriggeredAbility ability) { + super(ability); + } + + @Override + public FirstSpellOpponentsTurnTriggeredAbility copy() { + return new FirstSpellOpponentsTurnTriggeredAbility(this); + } + + @Override + public boolean checkTrigger(GameEvent event, Game game) { + if (game.isActivePlayer(this.getControllerId()) // ignore controller turn + || !super.checkTrigger(event, game) + || !game.getOpponents(this.getControllerId()).contains(game.getActivePlayerId())) { + return false; + } + + SpellsCastWatcher watcher = game.getState().getWatcher(SpellsCastWatcher.class); + if (watcher == null) { + return false; + } + + List spells = watcher.getSpellsCastThisTurn(event.getPlayerId()); + return spells != null && spells.size() == 1; + } +} From 30b13d2d0c75ef6c6a9e35264e3191f182c02a57 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 21:56:49 -0500 Subject: [PATCH 05/10] Implemented Oread of Mountain's Blaze --- .../mage/cards/o/OreadOfMountainsBlaze.java | 44 +++++++++++++++++++ .../src/mage/sets/TherosBeyondDeath.java | 1 + 2 files changed, 45 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/o/OreadOfMountainsBlaze.java diff --git a/Mage.Sets/src/mage/cards/o/OreadOfMountainsBlaze.java b/Mage.Sets/src/mage/cards/o/OreadOfMountainsBlaze.java new file mode 100644 index 0000000000..8f2f8c49e0 --- /dev/null +++ b/Mage.Sets/src/mage/cards/o/OreadOfMountainsBlaze.java @@ -0,0 +1,44 @@ +package mage.cards.o; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.costs.common.DiscardCardCost; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class OreadOfMountainsBlaze extends CardImpl { + + public OreadOfMountainsBlaze(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{1}{R}"); + + this.subtype.add(SubType.NYMPH); + this.power = new MageInt(1); + this.toughness = new MageInt(3); + + // {2}{R}, Discard a card: Draw a card. + Ability ability = new SimpleActivatedAbility( + new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{R}") + ); + ability.addCost(new DiscardCardCost()); + this.addAbility(ability); + } + + private OreadOfMountainsBlaze(final OreadOfMountainsBlaze card) { + super(card); + } + + @Override + public OreadOfMountainsBlaze copy() { + return new OreadOfMountainsBlaze(this); + } +} diff --git a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java index b3e0b4de92..8cae70fc74 100644 --- a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java +++ b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java @@ -92,6 +92,7 @@ public final class TherosBeyondDeath extends ExpansionSet { cards.add(new SetCardInfo("Omen of the Sea", 58, Rarity.COMMON, mage.cards.o.OmenOfTheSea.class)); cards.add(new SetCardInfo("Omen of the Sun", 30, Rarity.COMMON, mage.cards.o.OmenOfTheSun.class)); cards.add(new SetCardInfo("One with the Stars", 59, Rarity.UNCOMMON, mage.cards.o.OneWithTheStars.class)); + cards.add(new SetCardInfo("Oread of Mountain's Blaze", 146, Rarity.COMMON, mage.cards.o.OreadOfMountainsBlaze.class)); cards.add(new SetCardInfo("Ox of Agonas", 147, Rarity.MYTHIC, mage.cards.o.OxOfAgonas.class)); cards.add(new SetCardInfo("Pharika's Spawn", 112, Rarity.UNCOMMON, mage.cards.p.PharikasSpawn.class)); cards.add(new SetCardInfo("Pious Wayfarer", 32, Rarity.COMMON, mage.cards.p.PiousWayfarer.class)); From 06e069c5dbfb024a6b746e964ff81d58aa8cdae3 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 5 Jan 2020 22:35:20 -0500 Subject: [PATCH 06/10] updated implementation as suggested --- .../dynamicvalue/common/StaticValue.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java index 12d2b4f4df..360034367d 100644 --- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java +++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/StaticValue.java @@ -5,12 +5,19 @@ import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.effects.Effect; import mage.game.Game; -import java.util.HashMap; -import java.util.Map; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.IntStream; public class StaticValue implements DynamicValue { - private static final Map staticValueMap = new HashMap(); + private static final List staticValues = new ArrayList(); + + static { + IntStream.rangeClosed(-10, 10) + .mapToObj(StaticValue::new) + .forEachOrdered(staticValues::add); + } private final int value; @@ -43,7 +50,9 @@ public class StaticValue implements DynamicValue { } public static StaticValue get(int value) { - staticValueMap.putIfAbsent(value, new StaticValue(value)); - return staticValueMap.get(value); + if (value < -10 || value > 10) { + return new StaticValue(value); + } + return staticValues.get(value + 10); } } From e565863bd2f64ef8b16a6495606cd6f127c23a77 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Mon, 6 Jan 2020 12:58:50 +0100 Subject: [PATCH 07/10] Added test for Nissa, Sage Animist -7 ability. --- .../src/mage/cards/n/NissaSageAnimist.java | 52 +----------- .../planeswalker/NissaVastwoodSeerTest.java | 80 +++++++++++++++++++ .../target/common/TargetCardInLibrary.java | 4 +- 3 files changed, 83 insertions(+), 53 deletions(-) create mode 100644 Mage.Tests/src/test/java/org/mage/test/cards/planeswalker/NissaVastwoodSeerTest.java diff --git a/Mage.Sets/src/mage/cards/n/NissaSageAnimist.java b/Mage.Sets/src/mage/cards/n/NissaSageAnimist.java index b64572e12c..fac457a76b 100644 --- a/Mage.Sets/src/mage/cards/n/NissaSageAnimist.java +++ b/Mage.Sets/src/mage/cards/n/NissaSageAnimist.java @@ -48,7 +48,7 @@ public final class NissaSageAnimist extends CardImpl { // -7: Untap up to six target lands. They become 6/6 Elemental creatures. They're still lands. Ability ability = new LoyaltyAbility(new UntapTargetEffect(), -7); - ability.addTarget(new TargetLandPermanent(0, 6, StaticFilters.FILTER_LANDS, false)); + ability.addTarget(new TargetLandPermanent(0, 6, StaticFilters.FILTER_LAND, false)); ability.addEffect(new NissaSageAnimistMinusAnimateEffect()); this.addAbility(ability); } @@ -127,54 +127,4 @@ class NissaSageAnimistMinusAnimateEffect extends OneShotEffect { } return true; } - -// class NissaSageAnimistMinusSevenEffect extends ContinuousEffectImpl { -// -// NissaSageAnimistMinusSevenEffect() { -// super(Duration.EndOfGame, Outcome.BecomeCreature); -// this.staticText = "They become 6/6 Elemental creatures. They're still lands"; -// } -// -// NissaSageAnimistMinusSevenEffect(final NissaSageAnimistMinusSevenEffect effect) { -// super(effect); -// } -// -// @Override -// public NissaSageAnimistMinusSevenEffect copy() { -// return new NissaSageAnimistMinusSevenEffect(this); -// } -// -// @Override -// public boolean apply(Layer layer, SubLayer sublayer, Ability source, Game game) { -// for (UUID permanentId : this.getTargetPointer().getTargets(game, source)) { -// Permanent permanent = game.getPermanent(permanentId); -// if (permanent != null) { -// switch (layer) { -// case TypeChangingEffects_4: -// permanent.addCardType(CardType.CREATURE); -// if (!permanent.hasSubtype(SubType.ELEMENTAL, game)) { -// permanent.getSubtype(game).add(SubType.ELEMENTAL); -// } -// break; -// case PTChangingEffects_7: -// if (sublayer == SubLayer.SetPT_7b) { -// permanent.getToughness().setValue(6); -// permanent.getPower().setValue(6); -// } -// } -// } -// } -// return true; -// } -// -// @Override -// public boolean apply(Game game, Ability source) { -// return false; -// } -// -// @Override -// public boolean hasLayer(Layer layer) { -// return layer == Layer.TypeChangingEffects_4 || layer == Layer.PTChangingEffects_7; -// } -// } } diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/planeswalker/NissaVastwoodSeerTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/planeswalker/NissaVastwoodSeerTest.java new file mode 100644 index 0000000000..0ca072667c --- /dev/null +++ b/Mage.Tests/src/test/java/org/mage/test/cards/planeswalker/NissaVastwoodSeerTest.java @@ -0,0 +1,80 @@ +package org.mage.test.cards.planeswalker; + +import mage.constants.CardType; +import mage.constants.PhaseStep; +import mage.constants.SubType; +import mage.constants.Zone; +import mage.filter.Filter; +import org.junit.Test; +import org.mage.test.serverside.base.CardTestPlayerBase; + + +/** + * + * @author LevelX2 + */ +public class NissaVastwoodSeerTest extends CardTestPlayerBase { + +// https://github.com/magefree/mage/issues/5677 +/* +EDH again, I'm playing Nissa, Vastwood Seer as my commander. +I got her to 7 loyalty, used her -7 to untap lands and make them into creatures. So far so good. +Nissa died, went back to command zone, lands stayed as creatures (as they should). +Next turn I replay Nissa, but the moment I try to cast another spell (or activate an ability, +maybe it was directly on replaying her, can't remember exactly), all my 6 creature lands are back to being regular lands. +A few turns later, my opponent uses overloaded cyclonic rift, which also bounces Nissa to my hand. +Not entirely sure, but I believe it again took at least until priority got passed for my lands to reappear, +maybe even until I tried to activate an ability or cast something. +This was not a 1 time thing either. +After replaying Nissa (again) and casting another card, my creature lands went back to being regular lands again. +Later I used her -2 to kill her, which (after putting another spell on the stack) got me my creature lands back again. + */ + @Test + public void NissaVastwoodSeerAnimationTest() { + setStrictChooseMode(true); + + addCard(Zone.LIBRARY, playerA, "Forest"); + addCard(Zone.BATTLEFIELD, playerA, "Forest", 5); + addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1); + + // When Nissa, Vastwood Seer enters the battlefield, you may search your library for a basic Forest card, + // reveal it, put it into your hand, then shuffle your library. + // Whenever a land enters the battlefield under your control, if you control seven or more lands, + // exile Nissa, then return her to the battlefield transformed under her owner's control. + // Nissa, Sage Animist + // +1: Reveal the top card of your library. If it's a land card, put it onto the battlefield. Otherwise, put it into your hand. + // -2: Create a legendary 4/4 green Elemental creature token named Ashaya, the Awoken World. + // -7: Untap up to six target lands. They become 6/6 Elemental creatures. They're still lands. + addCard(Zone.HAND, playerA, "Nissa, Vastwood Seer"); + + castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Nissa, Vastwood Seer"); + setChoice(playerA, "Yes"); + addTarget(playerA, "Forest"); + + playLand(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Forest"); + + activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "+1: Reveal"); + activateAbility(3, PhaseStep.POSTCOMBAT_MAIN, playerA, "+1: Reveal"); + activateAbility(5, PhaseStep.POSTCOMBAT_MAIN, playerA, "+1: Reveal"); + activateAbility(7, PhaseStep.POSTCOMBAT_MAIN, playerA, "+1: Reveal"); + activateAbility(9, PhaseStep.POSTCOMBAT_MAIN, playerA, "-7: Untap up to six target"); + addTarget(playerA, "Forest^Forest^Forest^Forest^Forest^Forest"); + setStopAt(9, PhaseStep.END_TURN); + execute(); + + assertPermanentCount(playerA, "Nissa, Vastwood Seer", 0); + assertPermanentCount(playerA, "Nissa, Sage Animist", 0); + assertGraveyardCount(playerA, "Nissa, Vastwood Seer", 1); + + assertPermanentCount(playerA, "Swamp", 1); + + assertType("Forest", CardType.CREATURE, SubType.ELEMENTAL); + assertPermanentCount(playerA, "Forest", 6); + assertPowerToughness(playerA, "Forest", 6, 6, Filter.ComparisonScope.All); + + + + + } + +} diff --git a/Mage/src/main/java/mage/target/common/TargetCardInLibrary.java b/Mage/src/main/java/mage/target/common/TargetCardInLibrary.java index 2e923b3fb6..7ab5c77f95 100644 --- a/Mage/src/main/java/mage/target/common/TargetCardInLibrary.java +++ b/Mage/src/main/java/mage/target/common/TargetCardInLibrary.java @@ -73,9 +73,9 @@ public class TargetCardInLibrary extends TargetCard { } cards.sort(Comparator.comparing(MageObject::getName)); Cards cardsId = new CardsImpl(); - for (Card card : cards) { + cards.forEach((card) -> { cardsId.add(card); - } + }); while (!isChosen() && !doneChosing()) { if (!player.canRespond()) { From f0a8a4f13f9e9db9e7a220fd557e7ef7a8b313a2 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 6 Jan 2020 08:10:54 -0500 Subject: [PATCH 08/10] Implemented Eutropia the Twice-Favored --- .../mage/cards/e/EutropiaTheTwiceFavored.java | 52 +++++++++++++++++++ .../src/mage/sets/TherosBeyondDeath.java | 1 + Utils/mtg-cards-data.txt | 1 + 3 files changed, 54 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/e/EutropiaTheTwiceFavored.java diff --git a/Mage.Sets/src/mage/cards/e/EutropiaTheTwiceFavored.java b/Mage.Sets/src/mage/cards/e/EutropiaTheTwiceFavored.java new file mode 100644 index 0000000000..e4f3fd52c1 --- /dev/null +++ b/Mage.Sets/src/mage/cards/e/EutropiaTheTwiceFavored.java @@ -0,0 +1,52 @@ +package mage.cards.e; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.abilityword.ConstellationAbility; +import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.counters.CounterType; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class EutropiaTheTwiceFavored extends CardImpl { + + public EutropiaTheTwiceFavored(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}{U}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.WIZARD); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Constellation—Whenever an enchantment enters the battlefield under your control, put a +1/+1 counter on target creature. That creature gains flying until end of turn. + Ability ability = new ConstellationAbility( + new AddCountersTargetEffect(CounterType.P1P1.createInstance()), false, false + ); + ability.addEffect(new GainAbilityTargetEffect( + FlyingAbility.getInstance(), Duration.EndOfTurn, + "That creature gains flying until end of turn" + )); + this.addAbility(ability); + } + + private EutropiaTheTwiceFavored(final EutropiaTheTwiceFavored card) { + super(card); + } + + @Override + public EutropiaTheTwiceFavored copy() { + return new EutropiaTheTwiceFavored(this); + } +} diff --git a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java index 8cae70fc74..49c5a2ffac 100644 --- a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java +++ b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java @@ -55,6 +55,7 @@ public final class TherosBeyondDeath extends ExpansionSet { cards.add(new SetCardInfo("Erebos's Intervention", 94, Rarity.RARE, mage.cards.e.ErebossIntervention.class)); cards.add(new SetCardInfo("Erebos, Bleak-Hearted", 93, Rarity.MYTHIC, mage.cards.e.ErebosBleakHearted.class)); cards.add(new SetCardInfo("Escape Velocity", 132, Rarity.UNCOMMON, mage.cards.e.EscapeVelocity.class)); + cards.add(new SetCardInfo("Eutropia the Twice-Favored", 216, Rarity.UNCOMMON, mage.cards.e.EutropiaTheTwiceFavored.class)); cards.add(new SetCardInfo("Field of Ruin", 242, Rarity.UNCOMMON, mage.cards.f.FieldOfRuin.class)); cards.add(new SetCardInfo("Final Death", 95, Rarity.COMMON, mage.cards.f.FinalDeath.class)); cards.add(new SetCardInfo("Forest", 254, Rarity.LAND, mage.cards.basiclands.Forest.class, FULL_ART_BFZ_VARIOUS)); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 8754e14191..a6066cb703 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -36515,6 +36515,7 @@ Ashiok, Nightmare Muse|Theros Beyond Death|208|M|{3}{U}{B}|Legendary Planeswalke Atris, Oracle of Half-Truths|Theros Beyond Death|209|R|{2}{U}{B}|Legendary Creature - Human Advisor|3|2|Menace$When Atris, Oracle of Half-Truths enters the battlefield, target opponent looks at the top three cards of your library and separates them into a face-down pile and a face-up pile. Put one pile into your hand and the other into your graveyard.| Dalakos, Crafter of Wonders|Theros Beyond Death|212|R|{1}{U}{R}|Legendary Creature - Merfolk Artificer|2|4|{T}: Add {C}{C}. Spend this mana only to cast artifact spells or activate abilities of artifacts.$Equipped creatures you control have flying and haste.| Devourer of Memory|Theros Beyond Death|213|U|{U}{B}|Creature - Nightmare|2|1|Whenever one or more cards are put into your graveyard from your library, Devourer of Memory gets +1/+1 until end of turn and can't be blocked this turn.${1}{U}{B}: Put the top card of your library into your graveyard.| +Eutropia the Twice-Favored|Theros Beyond Death|216|U|{1}{G}{U}|Legendary Creature - Human Wizard|2|2|Constellation—Whenever an enchantment enters the battlefield under your control, put a +1/+1 counter on target creature. That creature gains flying until end of turn.| Gallia of the Endless Dance|Theros Beyond Death|217|R|{R}{G}|Legendary Creature - Satyr|2|2|Haste$Other Satyrs you control get +1/+1 and have haste.$Whenever you attack with three or more creatures, you may discard a card at random. If you do, draw two cards.| Haktos the Unscarred|Theros Beyond Death|218|R|{R}{R}{W}{W}|Legendary Creature - Human Warrior|6|1|Haktos the Unscarred attacks each combat if able.$As Haktos enters the battlefield, choose 2, 3, or 4 at random.$Haktos has protection from each converted mana cost other than the chosen number.| Klothys, God of Destiny|Theros Beyond Death|220|M|{1}{R}{G}|Legendary Enchantment Creature - God|4|5|Indestructible$As long as your devotion to red and green is less than seven, Klothys isn't a creature.$At the beginning of your precombat main phase, exile target card from a graveyard. If it was a land card, add {R} or {G}. Otherwise, you gain 2 life and Klothys deals 2 damage to each opponent.| From f685ee3d69e35adeab67627c211533251aa571a8 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 6 Jan 2020 13:17:45 -0500 Subject: [PATCH 09/10] moved CardTypePredicate to the CardType class --- .../main/java/mage/constants/CardType.java | 29 +++++++++++++++++- .../mageobject/CardTypePredicate.java | 30 ------------------- 2 files changed, 28 insertions(+), 31 deletions(-) delete mode 100644 Mage/src/main/java/mage/filter/predicate/mageobject/CardTypePredicate.java diff --git a/Mage/src/main/java/mage/constants/CardType.java b/Mage/src/main/java/mage/constants/CardType.java index 54fb252ac5..821db4a1ba 100644 --- a/Mage/src/main/java/mage/constants/CardType.java +++ b/Mage/src/main/java/mage/constants/CardType.java @@ -1,10 +1,13 @@ package mage.constants; +import mage.MageObject; +import mage.filter.predicate.Predicate; +import mage.game.Game; + import java.util.Arrays; import java.util.EnumSet; /** - * * @author North */ public enum CardType { @@ -20,10 +23,12 @@ public enum CardType { private final String text; private final boolean permanentType; + private final CardTypePredicate predicate; CardType(String text, boolean permanentType) { this.text = text; this.permanentType = permanentType; + this.predicate = new CardTypePredicate(this); } @Override @@ -60,4 +65,26 @@ public enum CardType { return cardTypes.toArray(new CardType[0]); } + public CardTypePredicate getPredicate() { + return this.predicate; + } + + public static class CardTypePredicate implements Predicate { + + private final CardType cardType; + + private CardTypePredicate(CardType cardType) { + this.cardType = cardType; + } + + @Override + public boolean apply(MageObject input, Game game) { + return input.getCardType().contains(cardType); + } + + @Override + public String toString() { + return "CardType(" + cardType.toString() + ')'; + } + } } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/CardTypePredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/CardTypePredicate.java deleted file mode 100644 index fa1cf8239f..0000000000 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/CardTypePredicate.java +++ /dev/null @@ -1,30 +0,0 @@ - -package mage.filter.predicate.mageobject; - -import mage.constants.CardType; -import mage.MageObject; -import mage.filter.predicate.Predicate; -import mage.game.Game; - -/** - * - * @author North - */ -public class CardTypePredicate implements Predicate { - - private final CardType cardType; - - public CardTypePredicate(CardType cardType) { - this.cardType = cardType; - } - - @Override - public boolean apply(MageObject input, Game game) { - return input.getCardType().contains(cardType); - } - - @Override - public String toString() { - return "CardType(" + cardType.toString() + ')'; - } -} From 688be783aaefe8e4ffb3c6c05965cdc7de061347 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 6 Jan 2020 13:18:17 -0500 Subject: [PATCH 10/10] refactored all usages of CardTypePredicate to match the new implementation --- .../mage/client/deckeditor/CardSelector.java | 15 +++-- .../mage/cards/a/AbandonedSarcophagus.java | 3 +- Mage.Sets/src/mage/cards/a/AbunaAcolyte.java | 3 +- Mage.Sets/src/mage/cards/a/Abundance.java | 5 +- .../src/mage/cards/a/AbzanBattlePriest.java | 3 +- Mage.Sets/src/mage/cards/a/AbzanFalconer.java | 3 +- .../src/mage/cards/a/AcclaimedContender.java | 3 +- Mage.Sets/src/mage/cards/a/AcidicSlime.java | 7 +-- Mage.Sets/src/mage/cards/a/Acquire.java | 3 +- .../src/mage/cards/a/AdmonitionAngel.java | 3 +- .../src/mage/cards/a/AdventurousImpulse.java | 3 +- .../src/mage/cards/a/AerialModification.java | 3 +- .../src/mage/cards/a/AetherMeltdown.java | 3 +- .../mage/cards/a/AethershieldArtificer.java | 3 +- Mage.Sets/src/mage/cards/a/Aftershock.java | 7 +-- .../src/mage/cards/a/AgadeemOccultist.java | 3 +- Mage.Sets/src/mage/cards/a/AinokBondKin.java | 3 +- .../src/mage/cards/a/AjaniMentorOfHeroes.java | 5 +- .../mage/cards/a/AjaniStrengthOfThePride.java | 5 +- .../src/mage/cards/a/AjaniUnyielding.java | 3 +- Mage.Sets/src/mage/cards/a/AjaniVengeant.java | 3 +- Mage.Sets/src/mage/cards/a/AjanisComrade.java | 3 +- .../src/mage/cards/a/AkiriLineSlinger.java | 3 +- .../src/mage/cards/a/AkromasVengeance.java | 7 +-- .../src/mage/cards/a/AkronLegionnaire.java | 3 +- .../src/mage/cards/a/AlchemistsRefuge.java | 3 +- .../mage/cards/a/AlelaArtfulProvocateur.java | 5 +- Mage.Sets/src/mage/cards/a/AmberPrison.java | 7 +-- Mage.Sets/src/mage/cards/a/AmrouSeekers.java | 3 +- .../src/mage/cards/a/AmuletOfUnmaking.java | 7 +-- Mage.Sets/src/mage/cards/a/Anarchist.java | 3 +- .../src/mage/cards/a/AncestralStatue.java | 3 +- .../src/mage/cards/a/AncientHellkite.java | 3 +- .../src/mage/cards/a/AngelOfJubilation.java | 3 +- Mage.Sets/src/mage/cards/a/AngelicEdict.java | 3 +- Mage.Sets/src/mage/cards/a/AngelicPurge.java | 7 +-- Mage.Sets/src/mage/cards/a/AngelicVoices.java | 3 +- Mage.Sets/src/mage/cards/a/Anger.java | 3 +- .../src/mage/cards/a/AngrathsAmbusher.java | 3 +- .../src/mage/cards/a/AnimateArtifact.java | 3 +- .../src/mage/cards/a/AnimatingFaerie.java | 3 +- Mage.Sets/src/mage/cards/a/Annul.java | 5 +- .../src/mage/cards/a/AphettoAlchemist.java | 5 +- .../src/mage/cards/a/ApostlesBlessing.java | 7 +-- .../src/mage/cards/a/ArbiterOfTheIdeal.java | 7 +-- .../src/mage/cards/a/ArcboundRavager.java | 3 +- Mage.Sets/src/mage/cards/a/ArcumDagsson.java | 5 +- Mage.Sets/src/mage/cards/a/ArensonsAura.java | 5 +- .../src/mage/cards/a/ArgivianBlacksmith.java | 5 +- Mage.Sets/src/mage/cards/a/ArgivianFind.java | 3 +- .../mage/cards/a/ArgothianEnchantress.java | 3 +- .../src/mage/cards/a/ArgothianPixies.java | 3 +- Mage.Sets/src/mage/cards/a/ArmamentOfNyx.java | 3 +- .../src/mage/cards/a/ArmedProtocolDroid.java | 3 +- .../src/mage/cards/a/ArtificersEpiphany.java | 3 +- Mage.Sets/src/mage/cards/a/ArtificersHex.java | 3 +- Mage.Sets/src/mage/cards/a/Artillerize.java | 5 +- Mage.Sets/src/mage/cards/a/AshesToAshes.java | 3 +- .../src/mage/cards/a/AshnodsTransmogrant.java | 3 +- Mage.Sets/src/mage/cards/a/Atog.java | 3 +- .../src/mage/cards/a/AttendantOfVraska.java | 4 +- Mage.Sets/src/mage/cards/a/AugurOfBolas.java | 3 +- Mage.Sets/src/mage/cards/a/AuraBarbs.java | 3 +- Mage.Sets/src/mage/cards/a/Auramancer.java | 3 +- Mage.Sets/src/mage/cards/a/Auratog.java | 3 +- .../src/mage/cards/a/AuriokSiegeSled.java | 3 +- .../src/mage/cards/a/AuriokTransfixer.java | 3 +- Mage.Sets/src/mage/cards/a/AvidReclaimer.java | 3 +- Mage.Sets/src/mage/cards/a/AvoidFate.java | 3 +- Mage.Sets/src/mage/cards/a/Awakening.java | 5 +- .../mage/cards/a/AzcantaTheSunkenRuin.java | 5 +- .../src/mage/cards/b/BaneOfProgress.java | 5 +- .../src/mage/cards/b/BanishingStroke.java | 7 +-- .../src/mage/cards/b/BanishmentDecree.java | 7 +-- Mage.Sets/src/mage/cards/b/BantCharm.java | 3 +- Mage.Sets/src/mage/cards/b/BantPanorama.java | 3 +- .../mage/cards/b/BaralChiefOfCompliance.java | 5 +- .../src/mage/cards/b/BaralsExpertise.java | 5 +- Mage.Sets/src/mage/cards/b/BarrageOgre.java | 3 +- Mage.Sets/src/mage/cards/b/BarterInBlood.java | 3 +- Mage.Sets/src/mage/cards/b/BazaarTrader.java | 7 +-- .../src/mage/cards/b/BeaconOfUnrest.java | 5 +- Mage.Sets/src/mage/cards/b/Bedevil.java | 7 +-- Mage.Sets/src/mage/cards/b/Befoul.java | 5 +- .../src/mage/cards/b/BellowingTanglewurm.java | 3 +- .../src/mage/cards/b/BelovedChaplain.java | 3 +- Mage.Sets/src/mage/cards/b/BirthingPod.java | 3 +- .../src/mage/cards/b/BishopOfRebirth.java | 3 +- Mage.Sets/src/mage/cards/b/BladeSplicer.java | 3 +- Mage.Sets/src/mage/cards/b/BlessedLight.java | 3 +- .../src/mage/cards/b/BlessedSpirits.java | 3 +- Mage.Sets/src/mage/cards/b/Blightcaster.java | 3 +- Mage.Sets/src/mage/cards/b/BlinkmothWell.java | 3 +- Mage.Sets/src/mage/cards/b/BloodAspirant.java | 5 +- Mage.Sets/src/mage/cards/b/BloodFunnel.java | 5 +- .../src/mage/cards/b/BloodlordOfVaasgoth.java | 3 +- .../src/mage/cards/b/BloodwaterEntity.java | 5 +- Mage.Sets/src/mage/cards/b/BludgeonBrawl.java | 3 +- Mage.Sets/src/mage/cards/b/BolassCitadel.java | 3 +- Mage.Sets/src/mage/cards/b/BoneMiser.java | 3 +- Mage.Sets/src/mage/cards/b/BoneShredder.java | 3 +- .../src/mage/cards/b/BontusMonument.java | 3 +- .../src/mage/cards/b/BoonweaverGiant.java | 3 +- Mage.Sets/src/mage/cards/b/BountyAgent.java | 7 +-- .../src/mage/cards/b/BragoKingEternal.java | 3 +- .../src/mage/cards/b/BraidsCabalMinion.java | 7 +-- .../src/mage/cards/b/BraidsConjurerAdept.java | 7 +-- Mage.Sets/src/mage/cards/b/Bramblecrush.java | 3 +- Mage.Sets/src/mage/cards/b/Brawn.java | 3 +- Mage.Sets/src/mage/cards/b/Brightflame.java | 3 +- Mage.Sets/src/mage/cards/b/BrineGiant.java | 3 +- Mage.Sets/src/mage/cards/b/BringToLight.java | 5 +- .../src/mage/cards/b/BrinkOfDisaster.java | 5 +- Mage.Sets/src/mage/cards/b/BrokenVisage.java | 3 +- Mage.Sets/src/mage/cards/b/Broodstar.java | 3 +- .../mage/cards/b/BrunaLightOfAlabaster.java | 5 +- .../src/mage/cards/b/BrunaTheFadingLight.java | 3 +- .../src/mage/cards/b/BrutalSuppression.java | 3 +- .../src/mage/cards/b/BrutalizerExarch.java | 3 +- Mage.Sets/src/mage/cards/b/BurningWish.java | 3 +- Mage.Sets/src/mage/cards/b/Burnout.java | 3 +- Mage.Sets/src/mage/cards/b/BygoneBishop.java | 3 +- Mage.Sets/src/mage/cards/c/CalmingVerse.java | 3 +- Mage.Sets/src/mage/cards/c/CantinaBand.java | 3 +- Mage.Sets/src/mage/cards/c/Cantivore.java | 3 +- .../src/mage/cards/c/CarpetOfFlowers.java | 3 +- .../src/mage/cards/c/CastThroughTime.java | 3 +- .../src/mage/cards/c/CataclysmicGearhulk.java | 17 +++--- .../src/mage/cards/c/CatacombDragon.java | 3 +- .../src/mage/cards/c/CatharsCompanion.java | 3 +- Mage.Sets/src/mage/cards/c/CausticWasps.java | 3 +- .../src/mage/cards/c/CelestialAncient.java | 3 +- .../src/mage/cards/c/CentaurOmenreader.java | 3 +- Mage.Sets/src/mage/cards/c/ChainOfAcid.java | 3 +- .../mage/cards/c/ChancellorOfTheSpires.java | 5 +- Mage.Sets/src/mage/cards/c/Chandler.java | 3 +- Mage.Sets/src/mage/cards/c/ChandraAblaze.java | 5 +- .../src/mage/cards/c/ChandrasDefeat.java | 5 +- .../src/mage/cards/c/CharmbreakerDevils.java | 9 ++- .../src/mage/cards/c/ChiefOfTheFoundry.java | 3 +- Mage.Sets/src/mage/cards/c/ChimericEgg.java | 6 +- Mage.Sets/src/mage/cards/c/ChromeMox.java | 3 +- .../cards/c/CircleOfProtectionArtifacts.java | 3 +- .../src/mage/cards/c/CircuitousRoute.java | 3 +- Mage.Sets/src/mage/cards/c/CitanulFlute.java | 3 +- .../src/mage/cards/c/CitanulHierophants.java | 3 +- .../src/mage/cards/c/ClackbridgeTroll.java | 3 +- Mage.Sets/src/mage/cards/c/Clambassadors.java | 9 ++- Mage.Sets/src/mage/cards/c/CleansingBeam.java | 3 +- Mage.Sets/src/mage/cards/c/ClockOfOmens.java | 3 +- .../src/mage/cards/c/ClockworkGnomes.java | 3 +- .../src/mage/cards/c/ClockworkSteed.java | 3 +- .../src/mage/cards/c/CloudstoneCurio.java | 25 ++++---- Mage.Sets/src/mage/cards/c/ClovenCasting.java | 5 +- Mage.Sets/src/mage/cards/c/CodeSlice.java | 3 +- Mage.Sets/src/mage/cards/c/Cognivore.java | 3 +- .../src/mage/cards/c/CollectedCompany.java | 3 +- .../src/mage/cards/c/CollectedConjuring.java | 3 +- .../src/mage/cards/c/CollectiveBrutality.java | 5 +- Mage.Sets/src/mage/cards/c/ComaVeil.java | 5 +- .../mage/cards/c/CommandTheDreadhorde.java | 5 +- Mage.Sets/src/mage/cards/c/Commandeer.java | 3 +- .../src/mage/cards/c/CommanderEesha.java | 3 +- Mage.Sets/src/mage/cards/c/CommonCause.java | 5 +- .../mage/cards/c/CommuneWithDinosaurs.java | 3 +- .../src/mage/cards/c/CommuneWithTheGods.java | 3 +- .../src/mage/cards/c/ConfiscationCoup.java | 3 +- .../src/mage/cards/c/ConfusionInTheRanks.java | 11 ++-- Mage.Sets/src/mage/cards/c/ConsignToDust.java | 3 +- .../src/mage/cards/c/ConsumingBonfire.java | 5 +- .../src/mage/cards/c/ConsumingSinkhole.java | 3 +- .../src/mage/cards/c/ConsumingVapors.java | 3 +- Mage.Sets/src/mage/cards/c/Coretapper.java | 3 +- Mage.Sets/src/mage/cards/c/CorpseHauler.java | 3 +- .../src/mage/cards/c/CorridorMonitor.java | 5 +- .../src/mage/cards/c/CorrosiveMentor.java | 3 +- Mage.Sets/src/mage/cards/c/CostlyPlunder.java | 5 +- Mage.Sets/src/mage/cards/c/Counterlash.java | 3 +- Mage.Sets/src/mage/cards/c/Countersquall.java | 3 +- .../src/mage/cards/c/CranialPlating.java | 3 +- Mage.Sets/src/mage/cards/c/Crash.java | 3 +- Mage.Sets/src/mage/cards/c/CreepingMold.java | 7 +-- .../src/mage/cards/c/CrimePunishment.java | 5 +- Mage.Sets/src/mage/cards/c/CropSigil.java | 5 +- Mage.Sets/src/mage/cards/c/CruelReality.java | 5 +- Mage.Sets/src/mage/cards/c/CruelRevival.java | 3 +- .../src/mage/cards/c/CrueltyOfTheSith.java | 3 +- Mage.Sets/src/mage/cards/c/Crush.java | 3 +- Mage.Sets/src/mage/cards/c/Crypsis.java | 3 +- .../src/mage/cards/c/CunningBreezedancer.java | 3 +- Mage.Sets/src/mage/cards/c/CunningWish.java | 3 +- Mage.Sets/src/mage/cards/c/CurseOfEchoes.java | 5 +- .../src/mage/cards/c/CustodiSoulcaller.java | 3 +- Mage.Sets/src/mage/cards/c/CustodiSquire.java | 7 +-- Mage.Sets/src/mage/cards/d/DampingMatrix.java | 5 +- .../src/mage/cards/d/DanceOfTheManse.java | 5 +- .../cards/d/DarettiIngeniousIconoclast.java | 5 +- .../src/mage/cards/d/DaringDemolition.java | 3 +- Mage.Sets/src/mage/cards/d/DaringThief.java | 3 +- .../src/mage/cards/d/DarkIntimations.java | 11 ++-- .../src/mage/cards/d/DarksteelForge.java | 3 +- .../src/mage/cards/d/DarksteelGarrison.java | 12 ---- .../mage/cards/d/DarthSidiousSithLord.java | 3 +- Mage.Sets/src/mage/cards/d/DawnToDusk.java | 3 +- .../src/mage/cards/d/DaxosTheReturned.java | 3 +- .../src/mage/cards/d/DayOfTheDragons.java | 3 +- Mage.Sets/src/mage/cards/d/Daze.java | 3 +- .../src/mage/cards/d/DeadeyePlunderers.java | 3 +- .../src/mage/cards/d/DeathriteShaman.java | 5 +- Mage.Sets/src/mage/cards/d/Deconstruct.java | 3 +- .../mage/cards/d/DecreeOfAnnihilation.java | 7 +-- .../src/mage/cards/d/DeepfireElemental.java | 5 +- .../src/mage/cards/d/DeeprootChampion.java | 3 +- .../src/mage/cards/d/DefiantSalvager.java | 3 +- Mage.Sets/src/mage/cards/d/DejaVu.java | 3 +- Mage.Sets/src/mage/cards/d/Demolish.java | 5 +- .../src/mage/cards/d/DeployTheGatewatch.java | 3 +- .../src/mage/cards/d/DesecrationDemon.java | 3 +- .../src/mage/cards/d/DesecrationPlague.java | 3 +- Mage.Sets/src/mage/cards/d/Desolation.java | 3 +- Mage.Sets/src/mage/cards/d/Despise.java | 5 +- .../src/mage/cards/d/DestructiveDigger.java | 5 +- .../src/mage/cards/d/DestructorDragon.java | 3 +- Mage.Sets/src/mage/cards/d/Detritivore.java | 3 +- Mage.Sets/src/mage/cards/d/Devastation.java | 3 +- .../src/mage/cards/d/DevotedCaretaker.java | 3 +- .../src/mage/cards/d/DevouringHellion.java | 5 +- .../src/mage/cards/d/DiluvianPrimordial.java | 3 +- Mage.Sets/src/mage/cards/d/DimirCharm.java | 3 +- .../src/mage/cards/d/DireFleetDaredevil.java | 5 +- .../src/mage/cards/d/DirectorKrennic.java | 3 +- .../src/mage/cards/d/DiscipleOfTheRing.java | 4 +- Mage.Sets/src/mage/cards/d/Dispel.java | 3 +- .../src/mage/cards/d/DisplayOfDominance.java | 3 +- .../src/mage/cards/d/DistendedMindbender.java | 3 +- Mage.Sets/src/mage/cards/d/Distress.java | 3 +- Mage.Sets/src/mage/cards/d/DistrictGuide.java | 3 +- Mage.Sets/src/mage/cards/d/Divest.java | 5 +- .../src/mage/cards/d/DjeruWithEyesOpen.java | 3 +- .../src/mage/cards/d/DocentOfPerfection.java | 5 +- Mage.Sets/src/mage/cards/d/Domineer.java | 3 +- Mage.Sets/src/mage/cards/d/Dovescape.java | 4 +- Mage.Sets/src/mage/cards/d/DovinsAcuity.java | 3 +- Mage.Sets/src/mage/cards/d/DowsingShaman.java | 3 +- .../src/mage/cards/d/DragonmasterOutcast.java | 3 +- .../src/mage/cards/d/DralnuLichLord.java | 5 +- Mage.Sets/src/mage/cards/d/Dreadbore.java | 5 +- Mage.Sets/src/mage/cards/d/Dreadmalkin.java | 5 +- Mage.Sets/src/mage/cards/d/Dredge.java | 3 +- .../src/mage/cards/d/DriftOfTheDead.java | 3 +- Mage.Sets/src/mage/cards/d/DrillSkimmer.java | 3 +- Mage.Sets/src/mage/cards/d/DroidFactory.java | 3 +- Mage.Sets/src/mage/cards/d/DroidUprising.java | 3 +- Mage.Sets/src/mage/cards/d/DrossScorpion.java | 3 +- Mage.Sets/src/mage/cards/d/DualCasting.java | 5 +- Mage.Sets/src/mage/cards/d/Duress.java | 5 +- Mage.Sets/src/mage/cards/e/EarthSurge.java | 3 +- Mage.Sets/src/mage/cards/e/Earthcraft.java | 3 +- Mage.Sets/src/mage/cards/e/Earthlore.java | 4 +- Mage.Sets/src/mage/cards/e/EchoingRuin.java | 3 +- .../cards/e/EidolonOfCountlessBattles.java | 3 +- Mage.Sets/src/mage/cards/e/EladamrisCall.java | 3 +- Mage.Sets/src/mage/cards/e/ElderDruid.java | 7 +-- .../src/mage/cards/e/EldritchEvolution.java | 3 +- .../src/mage/cards/e/ElectrostaticBolt.java | 3 +- Mage.Sets/src/mage/cards/e/EliteArcanist.java | 3 +- .../src/mage/cards/e/ElshaOfTheInfinite.java | 3 +- .../src/mage/cards/e/ElusiveSpellfist.java | 3 +- Mage.Sets/src/mage/cards/e/EmberGale.java | 3 +- .../src/mage/cards/e/EmbodimentOfFury.java | 6 +- .../src/mage/cards/e/EmbodimentOfInsight.java | 6 +- .../src/mage/cards/e/EmeriaShepherd.java | 3 +- .../src/mage/cards/e/EmissaryOfHope.java | 3 +- .../mage/cards/e/EmrakulThePromisedEnd.java | 3 +- .../mage/cards/e/EnchantresssPresence.java | 3 +- Mage.Sets/src/mage/cards/e/Encroach.java | 3 +- Mage.Sets/src/mage/cards/e/Encrust.java | 5 +- Mage.Sets/src/mage/cards/e/EnergyChamber.java | 10 +-- Mage.Sets/src/mage/cards/e/Enervate.java | 7 +-- .../src/mage/cards/e/EnlightenedTutor.java | 5 +- Mage.Sets/src/mage/cards/e/Envelop.java | 3 +- Mage.Sets/src/mage/cards/e/Equipoise.java | 5 +- .../src/mage/cards/e/EraOfInnovation.java | 3 +- .../src/mage/cards/e/ErtaiTheCorrupted.java | 3 +- Mage.Sets/src/mage/cards/e/EsperPanorama.java | 3 +- .../src/mage/cards/e/EtaliPrimalStorm.java | 2 - .../src/mage/cards/e/EternalDominion.java | 9 ++- .../src/mage/cards/e/EtheriumAstrolabe.java | 3 +- .../src/mage/cards/e/EtheriumSculptor.java | 3 +- .../mage/cards/e/EtherswornAdjudicator.java | 5 +- .../mage/cards/e/EtherswornShieldmage.java | 3 +- Mage.Sets/src/mage/cards/e/Evershrike.java | 3 +- .../mage/cards/e/ExavaRakdosBloodWitch.java | 3 +- .../src/mage/cards/e/ExclusionRitual.java | 3 +- Mage.Sets/src/mage/cards/e/Exhaustion.java | 3 +- Mage.Sets/src/mage/cards/e/Expunge.java | 3 +- Mage.Sets/src/mage/cards/e/Extinguish.java | 3 +- .../src/mage/cards/e/ExtinguishAllHope.java | 5 +- Mage.Sets/src/mage/cards/e/Extirpate.java | 3 +- Mage.Sets/src/mage/cards/e/Extruder.java | 3 +- .../src/mage/cards/e/EyesOfTheWatcher.java | 3 +- Mage.Sets/src/mage/cards/f/Fabricate.java | 3 +- .../src/mage/cards/f/FaerieMechanist.java | 3 +- Mage.Sets/src/mage/cards/f/FalseOrders.java | 3 +- .../src/mage/cards/f/FatedRetribution.java | 5 +- Mage.Sets/src/mage/cards/f/FeastOfDreams.java | 3 +- Mage.Sets/src/mage/cards/f/FeastOrFamine.java | 3 +- Mage.Sets/src/mage/cards/f/FenHauler.java | 3 +- Mage.Sets/src/mage/cards/f/Ferrovore.java | 3 +- Mage.Sets/src/mage/cards/f/FiligreeAngel.java | 3 +- Mage.Sets/src/mage/cards/f/FiligreeSages.java | 3 +- Mage.Sets/src/mage/cards/f/Filth.java | 3 +- .../src/mage/cards/f/FinalIteration.java | 5 +- Mage.Sets/src/mage/cards/f/FinalPayment.java | 10 +-- .../src/mage/cards/f/FinaleOfDevastation.java | 3 +- .../src/mage/cards/f/FinaleOfPromise.java | 5 +- Mage.Sets/src/mage/cards/f/Finn.java | 5 -- .../src/mage/cards/f/FirebrandArcher.java | 3 +- .../src/mage/cards/f/FirefrightMage.java | 5 +- .../src/mage/cards/f/FiremindsForesight.java | 3 +- .../mage/cards/f/FiresongAndSunspeaker.java | 3 +- Mage.Sets/src/mage/cards/f/Fissure.java | 3 +- Mage.Sets/src/mage/cards/f/Flamewright.java | 3 +- Mage.Sets/src/mage/cards/f/FlashCounter.java | 3 +- Mage.Sets/src/mage/cards/f/Flickerform.java | 3 +- .../src/mage/cards/f/FloodtideSerpent.java | 3 +- Mage.Sets/src/mage/cards/f/FloralSpuzzem.java | 3 +- Mage.Sets/src/mage/cards/f/ForceStasis.java | 5 +- Mage.Sets/src/mage/cards/f/FoulEmissary.java | 3 +- .../src/mage/cards/f/FoundryInspector.java | 3 +- Mage.Sets/src/mage/cards/f/FountainWatch.java | 5 +- .../src/mage/cards/f/FracturingGust.java | 5 +- Mage.Sets/src/mage/cards/f/FurnaceDragon.java | 3 +- Mage.Sets/src/mage/cards/g/GalvanicKey.java | 3 +- .../src/mage/cards/g/GarrukApexPredator.java | 3 +- .../src/mage/cards/g/GatecreeperVine.java | 4 +- .../src/mage/cards/g/GatekeeperOfMalakir.java | 3 +- .../src/mage/cards/g/GauntletsOfChaos.java | 7 +-- .../src/mage/cards/g/GearseekerSerpent.java | 3 +- .../mage/cards/g/GeistFueledScarecrow.java | 3 +- Mage.Sets/src/mage/cards/g/Geistblast.java | 5 +- Mage.Sets/src/mage/cards/g/GenesisHydra.java | 3 +- .../src/mage/cards/g/GethLordOfTheVault.java | 5 +- .../src/mage/cards/g/GhaltaPrimalHunger.java | 3 +- .../src/mage/cards/g/GhirapurAetherGrid.java | 3 +- .../src/mage/cards/g/GhostlyFlicker.java | 7 +-- Mage.Sets/src/mage/cards/g/Ghostway.java | 4 +- .../src/mage/cards/g/GideonsSacrifice.java | 5 +- .../src/mage/cards/g/GlareOfSubdual.java | 5 +- .../src/mage/cards/g/GlenElendraArchmage.java | 3 +- Mage.Sets/src/mage/cards/g/GlintHawk.java | 3 +- .../src/mage/cards/g/GlissaTheTraitor.java | 3 +- .../src/mage/cards/g/GluttonousTroll.java | 3 +- Mage.Sets/src/mage/cards/g/GnatMiser.java | 3 +- Mage.Sets/src/mage/cards/g/Gnathosaur.java | 3 +- .../src/mage/cards/g/GoForTheThroat.java | 3 +- Mage.Sets/src/mage/cards/g/GoblinBarrage.java | 3 +- .../src/mage/cards/g/GoblinChainwhirler.java | 5 +- .../src/mage/cards/g/GoblinElectromancer.java | 5 +- Mage.Sets/src/mage/cards/g/GoblinReplica.java | 3 +- Mage.Sets/src/mage/cards/g/Goblinslide.java | 3 +- Mage.Sets/src/mage/cards/g/GodheadOfAwe.java | 3 +- .../src/mage/cards/g/GodhunterOctopus.java | 3 +- Mage.Sets/src/mage/cards/g/GoldenWish.java | 5 +- Mage.Sets/src/mage/cards/g/GolgariThug.java | 3 +- Mage.Sets/src/mage/cards/g/GorillaShaman.java | 5 +- .../src/mage/cards/g/GrandArchitect.java | 3 +- Mage.Sets/src/mage/cards/g/Granulate.java | 3 +- .../src/mage/cards/g/GrappleWithThePast.java | 5 +- Mage.Sets/src/mage/cards/g/GraspOfFate.java | 3 +- Mage.Sets/src/mage/cards/g/GravitySphere.java | 3 +- .../src/mage/cards/g/GreaterAuramancy.java | 5 +- .../src/mage/cards/g/GreaterGargadon.java | 3 +- .../src/mage/cards/g/GreaterHarvester.java | 11 ++-- .../src/mage/cards/g/GreenSunsZenith.java | 3 +- Mage.Sets/src/mage/cards/g/GremlinMine.java | 5 +- .../src/mage/cards/g/GriffinDreamfinder.java | 3 +- .../src/mage/cards/g/GrindingStation.java | 3 +- .../src/mage/cards/g/GripOfPhyresis.java | 3 +- Mage.Sets/src/mage/cards/g/GrislySalvage.java | 3 +- .../src/mage/cards/g/GrislySpectacle.java | 3 +- .../src/mage/cards/g/GrixisPanorama.java | 3 +- .../mage/cards/g/GrowingRitesOfItlimoc.java | 3 +- Mage.Sets/src/mage/cards/g/GuardianBeast.java | 5 +- .../src/mage/cards/g/GuardianOfTheAges.java | 3 +- .../cards/g/GuardianOfTheGreatConduit.java | 4 +- Mage.Sets/src/mage/cards/g/GuidedPassage.java | 5 +- Mage.Sets/src/mage/cards/g/Guttersnipe.java | 5 +- .../src/mage/cards/g/GutturalResponse.java | 3 +- .../src/mage/cards/h/HakimLoreweaver.java | 7 +-- .../src/mage/cards/h/HalimarTidecaller.java | 5 +- .../src/mage/cards/h/HandOfThePraetors.java | 3 +- .../src/mage/cards/h/HannaShipsNavigator.java | 3 +- Mage.Sets/src/mage/cards/h/HannasCustody.java | 3 +- .../mage/cards/h/HaphazardBombardment.java | 3 +- .../src/mage/cards/h/HarvesterTroll.java | 3 +- .../src/mage/cards/h/HazoretsMonument.java | 5 +- .../src/mage/cards/h/HazoretsUndyingFury.java | 3 +- Mage.Sets/src/mage/cards/h/Heartfire.java | 5 +- Mage.Sets/src/mage/cards/h/HearthCharm.java | 3 +- Mage.Sets/src/mage/cards/h/HearthKami.java | 3 +- .../src/mage/cards/h/HeliodSunCrowned.java | 5 +- .../src/mage/cards/h/HeliodsPilgrim.java | 3 +- Mage.Sets/src/mage/cards/h/HellkiteWhelp.java | 3 +- .../src/mage/cards/h/HeraldOfDromoka.java | 3 +- .../src/mage/cards/h/HeraldOfThePantheon.java | 5 +- Mage.Sets/src/mage/cards/h/Hexdrinker.java | 3 +- .../src/mage/cards/h/HibernationsEnd.java | 3 +- .../src/mage/cards/h/HiddenAncients.java | 3 +- Mage.Sets/src/mage/cards/h/HiddenGibbons.java | 3 +- Mage.Sets/src/mage/cards/h/HitRun.java | 5 +- .../src/mage/cards/h/HoardSmelterDragon.java | 3 +- Mage.Sets/src/mage/cards/h/Hoodwink.java | 7 +-- Mage.Sets/src/mage/cards/h/HostageTaker.java | 5 +- .../src/mage/cards/h/HourOfDevastation.java | 5 +- .../src/mage/cards/h/HuatlisSpurring.java | 3 +- .../src/mage/cards/h/HungerOfTheNim.java | 3 +- Mage.Sets/src/mage/cards/h/Hypergenesis.java | 3 +- .../src/mage/cards/h/HypersonicDragon.java | 3 +- Mage.Sets/src/mage/cards/i/IceCauldron.java | 3 +- Mage.Sets/src/mage/cards/i/Icefall.java | 5 +- .../src/mage/cards/i/IcyManipulator.java | 7 +-- Mage.Sets/src/mage/cards/i/IdyllicTutor.java | 3 +- Mage.Sets/src/mage/cards/i/Illumination.java | 5 +- .../src/mage/cards/i/ImprisonedInTheMoon.java | 7 +-- Mage.Sets/src/mage/cards/i/ImpromptuRaid.java | 3 +- .../src/mage/cards/i/InTheEyeOfChaos.java | 3 +- Mage.Sets/src/mage/cards/i/Incoming.java | 9 ++- .../src/mage/cards/i/IncreasingVengeance.java | 5 +- .../mage/cards/i/IndomitableArchangel.java | 3 +- .../mage/cards/i/IndomitableCreativity.java | 5 +- Mage.Sets/src/mage/cards/i/Infuse.java | 7 +-- .../src/mage/cards/i/InitiatesCompanion.java | 5 +- .../src/mage/cards/i/InkEyesServantOfOni.java | 3 +- .../mage/cards/i/InquisitionOfKozilek.java | 3 +- .../src/mage/cards/i/InspiringStatuary.java | 3 +- .../src/mage/cards/i/InterplanarBeacon.java | 3 +- .../src/mage/cards/i/InvasiveSurgery.java | 3 +- Mage.Sets/src/mage/cards/i/InventorsFair.java | 3 +- Mage.Sets/src/mage/cards/i/InvertInvent.java | 5 +- .../src/mage/cards/i/InvertTheSkies.java | 3 +- Mage.Sets/src/mage/cards/i/IonasJudgment.java | 5 +- .../src/mage/cards/i/IsochronScepter.java | 3 +- Mage.Sets/src/mage/cards/i/IsolationZone.java | 5 +- .../mage/cards/i/IsperiaTheInscrutable.java | 3 +- .../mage/cards/i/ItlimocCradleOfTheSun.java | 2 - .../mage/cards/i/IwamoriOfTheOpenFist.java | 3 +- Mage.Sets/src/mage/cards/i/IzzetCharm.java | 3 +- .../src/mage/cards/i/IzzetChemister.java | 5 +- .../src/mage/cards/i/IzzetChronarch.java | 5 +- .../src/mage/cards/i/IzzetGuildmage.java | 5 +- Mage.Sets/src/mage/cards/j/JacesDefeat.java | 3 +- Mage.Sets/src/mage/cards/j/JacesSanctum.java | 5 +- Mage.Sets/src/mage/cards/j/JacesSentinel.java | 3 +- Mage.Sets/src/mage/cards/j/JediEnclave.java | 3 +- .../src/mage/cards/j/JeskaiAscendancy.java | 3 +- Mage.Sets/src/mage/cards/j/JeweledSpirit.java | 3 +- .../src/mage/cards/j/JhoirasToolbox.java | 3 +- Mage.Sets/src/mage/cards/j/Jokulhaups.java | 7 +-- Mage.Sets/src/mage/cards/j/Jolt.java | 7 +-- Mage.Sets/src/mage/cards/j/Joven.java | 3 +- Mage.Sets/src/mage/cards/j/JundPanorama.java | 3 +- Mage.Sets/src/mage/cards/j/JungleVillage.java | 3 +- .../src/mage/cards/j/JwariShapeshifter.java | 3 +- .../src/mage/cards/k/KahoMinamoHistorian.java | 3 +- .../mage/cards/k/KalemneDiscipleOfIroas.java | 3 +- .../src/mage/cards/k/KalemnesCaptain.java | 5 +- .../src/mage/cards/k/KamahlsDruidicVow.java | 3 +- .../cards/k/KambalConsulOfAllocation.java | 3 +- .../src/mage/cards/k/KariZevsExpertise.java | 3 +- .../src/mage/cards/k/KarnSilverGolem.java | 3 +- .../src/mage/cards/k/KarnTheGreatCreator.java | 3 +- Mage.Sets/src/mage/cards/k/KarnsTouch.java | 3 +- .../src/mage/cards/k/KatakiWarsWage.java | 3 +- .../src/mage/cards/k/KeeperOfTheDead.java | 5 +- .../src/mage/cards/k/KefnetTheMindful.java | 3 +- .../src/mage/cards/k/KefnetsMonument.java | 5 +- Mage.Sets/src/mage/cards/k/KeldonVandals.java | 3 +- .../src/mage/cards/k/KestiaTheCultivator.java | 3 +- .../src/mage/cards/k/KitesailFreebooter.java | 3 +- .../src/mage/cards/k/KolaghansCommand.java | 3 +- .../src/mage/cards/k/KozileksReturn.java | 3 +- .../src/mage/cards/k/KrallenhordeHowler.java | 3 +- .../src/mage/cards/k/KrarkClanGrunt.java | 3 +- .../src/mage/cards/k/KrarkClanShaman.java | 3 +- Mage.Sets/src/mage/cards/k/KrosanDrover.java | 3 +- .../src/mage/cards/k/KruphixsInsight.java | 3 +- .../src/mage/cards/k/KuldothaRebirth.java | 3 +- Mage.Sets/src/mage/cards/k/Kurgadon.java | 3 +- .../mage/cards/k/KynaiosAndTiroOfMeletis.java | 3 +- Mage.Sets/src/mage/cards/l/LairDelve.java | 3 +- Mage.Sets/src/mage/cards/l/LastRites.java | 3 +- .../src/mage/cards/l/LatullasOrders.java | 3 +- Mage.Sets/src/mage/cards/l/LavaFlow.java | 3 +- Mage.Sets/src/mage/cards/l/Lavalanche.java | 3 +- .../mage/cards/l/LaviniaAzoriusRenegade.java | 3 +- .../src/mage/cards/l/LaviniaOfTheTenth.java | 3 +- .../src/mage/cards/l/LayBareTheHeart.java | 3 +- .../src/mage/cards/l/LeadTheStampede.java | 3 +- Mage.Sets/src/mage/cards/l/LeaveNoTrace.java | 5 +- Mage.Sets/src/mage/cards/l/Legerdemain.java | 3 +- .../src/mage/cards/l/LegionsInitiative.java | 3 +- .../src/mage/cards/l/LeoninIconoclast.java | 5 +- Mage.Sets/src/mage/cards/l/Levitation.java | 2 - .../mage/cards/l/LeylineOfAnticipation.java | 3 +- .../cards/l/LilianaDreadhordeGeneral.java | 3 +- .../src/mage/cards/l/LinessaZephyrMage.java | 9 ++- Mage.Sets/src/mage/cards/l/LivingTsunami.java | 3 +- Mage.Sets/src/mage/cards/l/LivingWish.java | 5 +- .../mage/cards/l/LlawanCephalidEmpress.java | 5 +- Mage.Sets/src/mage/cards/l/Lobotomy.java | 3 +- Mage.Sets/src/mage/cards/l/LocustMiser.java | 3 +- Mage.Sets/src/mage/cards/l/LongshotSquad.java | 3 +- .../src/mage/cards/l/LoomingHoverguard.java | 3 +- .../src/mage/cards/l/LotusEyeMystics.java | 3 +- Mage.Sets/src/mage/cards/l/LoxodonMender.java | 3 +- .../cards/l/LukeSkywalkerTheLastJedi.java | 3 +- Mage.Sets/src/mage/cards/l/LunarMystic.java | 3 +- Mage.Sets/src/mage/cards/m/Machinate.java | 3 +- Mage.Sets/src/mage/cards/m/MagetaTheLion.java | 3 +- Mage.Sets/src/mage/cards/m/MagmaVein.java | 3 +- Mage.Sets/src/mage/cards/m/Magmaquake.java | 5 +- Mage.Sets/src/mage/cards/m/Magmaroth.java | 3 +- Mage.Sets/src/mage/cards/m/Magmaw.java | 3 +- Mage.Sets/src/mage/cards/m/MagneticFlux.java | 5 +- Mage.Sets/src/mage/cards/m/Magnivore.java | 3 +- .../src/mage/cards/m/MagusOfTheAbyss.java | 3 +- .../src/mage/cards/m/MagusOfTheDisk.java | 7 +-- .../src/mage/cards/m/MairsilThePretender.java | 3 +- .../src/mage/cards/m/MalevolentAwakening.java | 4 +- Mage.Sets/src/mage/cards/m/Malfunction.java | 5 +- .../src/mage/cards/m/MaliciousAdvice.java | 7 +-- Mage.Sets/src/mage/cards/m/ManaMatrix.java | 5 +- Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java | 7 +-- .../src/mage/cards/m/MarchOfTheMachines.java | 3 +- Mage.Sets/src/mage/cards/m/MarduCharm.java | 5 +- Mage.Sets/src/mage/cards/m/MartyrsBond.java | 5 +- .../src/mage/cards/m/MasterOfEtherium.java | 5 +- .../mage/cards/m/MasterworkOfIngenuity.java | 3 +- Mage.Sets/src/mage/cards/m/MaulSplicer.java | 3 +- .../src/mage/cards/m/MayaelTheAnima.java | 3 +- Mage.Sets/src/mage/cards/m/Megatog.java | 3 +- .../src/mage/cards/m/MelekIzzetParagon.java | 5 +- .../src/mage/cards/m/MeletisAstronomer.java | 3 +- Mage.Sets/src/mage/cards/m/MemoryPlunder.java | 5 +- Mage.Sets/src/mage/cards/m/MephiticOoze.java | 3 +- .../src/mage/cards/m/MerEkNightblade.java | 3 +- .../src/mage/cards/m/MerchantScroll.java | 3 +- .../src/mage/cards/m/MercilessResolve.java | 3 +- .../src/mage/cards/m/MesaEnchantress.java | 3 +- .../mage/cards/m/MetallurgicSummonings.java | 5 +- .../src/mage/cards/m/MetalworkColossus.java | 3 +- Mage.Sets/src/mage/cards/m/Metamorphose.java | 9 ++- .../src/mage/cards/m/MightOfTheWild.java | 3 +- .../src/mage/cards/m/MilitantInquisitor.java | 3 +- .../src/mage/cards/m/MinamoSightbender.java | 3 +- Mage.Sets/src/mage/cards/m/MindGames.java | 7 +-- .../src/mage/cards/m/MindOverMatter.java | 3 +- .../src/mage/cards/m/MindclawShaman.java | 5 +- Mage.Sets/src/mage/cards/m/Mindsparker.java | 5 +- .../src/mage/cards/m/MineExcavation.java | 5 +- .../src/mage/cards/m/MinionOfLeshrac.java | 5 +- Mage.Sets/src/mage/cards/m/Mirari.java | 5 +- Mage.Sets/src/mage/cards/m/MireInMisery.java | 5 +- Mage.Sets/src/mage/cards/m/MirrorGolem.java | 3 +- Mage.Sets/src/mage/cards/m/MirrorSheen.java | 3 +- Mage.Sets/src/mage/cards/m/Mirrorpool.java | 6 +- Mage.Sets/src/mage/cards/m/MistfireAdept.java | 3 +- Mage.Sets/src/mage/cards/m/MnemonicWall.java | 5 +- .../src/mage/cards/m/MobileGarrison.java | 5 +- Mage.Sets/src/mage/cards/m/MoldShambler.java | 3 +- Mage.Sets/src/mage/cards/m/MolderSlug.java | 3 +- Mage.Sets/src/mage/cards/m/MoltenFrame.java | 3 +- .../mage/cards/m/MomirVigSimicVisionary.java | 5 +- .../src/mage/cards/m/MonasteryLoremaster.java | 5 +- .../src/mage/cards/m/MonasteryMentor.java | 3 +- Mage.Sets/src/mage/cards/m/MonkIdealist.java | 3 +- .../src/mage/cards/m/MoratoriumStone.java | 3 +- .../src/mage/cards/m/MorbidCuriosity.java | 5 +- .../src/mage/cards/m/MoriokScavenger.java | 3 +- .../src/mage/cards/m/MorkrutNecropod.java | 5 +- Mage.Sets/src/mage/cards/m/Mortify.java | 5 +- Mage.Sets/src/mage/cards/m/MoxAmber.java | 5 +- .../src/mage/cards/m/MuddleTheMixture.java | 5 +- .../mage/cards/m/MwonvuliBeastTracker.java | 3 +- .../src/mage/cards/m/MycosynthGolem.java | 5 +- Mage.Sets/src/mage/cards/m/MyrIncubator.java | 3 +- Mage.Sets/src/mage/cards/m/MysticDenial.java | 3 +- .../src/mage/cards/m/MysticMeditation.java | 3 +- .../src/mage/cards/m/MysticRetrieval.java | 5 +- .../src/mage/cards/m/MysticalTeachings.java | 3 +- Mage.Sets/src/mage/cards/m/MysticalTutor.java | 5 +- Mage.Sets/src/mage/cards/m/MythRealized.java | 4 +- .../src/mage/cards/n/NahiriTheHarbinger.java | 11 ++-- .../src/mage/cards/n/NarsetParterOfVeils.java | 5 +- .../mage/cards/n/NaruMehaMasterWizard.java | 5 +- Mage.Sets/src/mage/cards/n/NaturesChosen.java | 8 +-- Mage.Sets/src/mage/cards/n/NayaPanorama.java | 3 +- .../mage/cards/n/NazahnReveredBladesmith.java | 3 +- Mage.Sets/src/mage/cards/n/Nekrataal.java | 3 +- Mage.Sets/src/mage/cards/n/Neoform.java | 4 +- .../src/mage/cards/n/NessianDemolok.java | 3 +- .../src/mage/cards/n/NettlevineBlight.java | 9 ++- Mage.Sets/src/mage/cards/n/NeurokProdigy.java | 3 +- .../src/mage/cards/n/NeurokTransmuter.java | 8 +-- .../src/mage/cards/n/NevinyrralsDisk.java | 7 +-- .../src/mage/cards/n/NezahalPrimalTide.java | 3 +- .../mage/cards/n/NicolBolasPlaneswalker.java | 3 +- .../src/mage/cards/n/NicolBolasTheArisen.java | 5 +- Mage.Sets/src/mage/cards/n/NimDevourer.java | 3 +- Mage.Sets/src/mage/cards/n/NimLasher.java | 3 +- Mage.Sets/src/mage/cards/n/NimShambler.java | 3 +- Mage.Sets/src/mage/cards/n/NimShrieker.java | 3 +- .../src/mage/cards/n/NissaGenesisMage.java | 5 +- .../mage/cards/n/NissaStewardOfElements.java | 5 +- .../mage/cards/n/NissaWhoShakesTheWorld.java | 3 +- Mage.Sets/src/mage/cards/n/NissasDefeat.java | 7 +-- .../src/mage/cards/n/NivixGuildmage.java | 5 +- .../src/mage/cards/n/NivmagusElemental.java | 5 +- Mage.Sets/src/mage/cards/n/NoEscape.java | 5 +- .../src/mage/cards/n/NomadMythmaker.java | 3 +- Mage.Sets/src/mage/cards/n/NovablastWurm.java | 4 +- Mage.Sets/src/mage/cards/n/NoxiousGhoul.java | 3 +- .../src/mage/cards/n/NoyanDarRoilShaper.java | 6 +- Mage.Sets/src/mage/cards/n/Nucklavee.java | 5 +- Mage.Sets/src/mage/cards/n/NullBrooch.java | 3 +- Mage.Sets/src/mage/cards/n/Nullify.java | 3 +- Mage.Sets/src/mage/cards/n/NumbingDose.java | 5 +- Mage.Sets/src/mage/cards/n/NyxInfusion.java | 3 +- Mage.Sets/src/mage/cards/o/OathOfNissa.java | 7 +-- Mage.Sets/src/mage/cards/o/Obliterate.java | 7 +-- Mage.Sets/src/mage/cards/o/ObzedatsAid.java | 11 ++-- .../src/mage/cards/o/OdunosRiverTrawler.java | 5 +- .../src/mage/cards/o/OgreGeargrabber.java | 3 +- .../src/mage/cards/o/OjutaiExemplars.java | 3 +- .../src/mage/cards/o/OketrasMonument.java | 5 +- Mage.Sets/src/mage/cards/o/OnceUponATime.java | 5 +- .../src/mage/cards/o/OneWithTheStars.java | 5 +- Mage.Sets/src/mage/cards/o/OpalAcrolith.java | 3 +- Mage.Sets/src/mage/cards/o/OpalTitan.java | 6 +- Mage.Sets/src/mage/cards/o/OpenTheGates.java | 3 +- .../src/mage/cards/o/OpportunisticDragon.java | 3 +- Mage.Sets/src/mage/cards/o/Opposition.java | 7 +-- .../src/mage/cards/o/OranRiefTheVastwood.java | 3 +- Mage.Sets/src/mage/cards/o/OrcishVandal.java | 3 +- .../src/mage/cards/o/OxiddaDaredevil.java | 3 +- .../src/mage/cards/p/PacificationArray.java | 5 +- .../src/mage/cards/p/ParadoxicalOutcome.java | 3 +- .../src/mage/cards/p/ParallelEvolution.java | 3 +- .../src/mage/cards/p/PatronOfTheOrochi.java | 3 +- .../src/mage/cards/p/PeerThroughDepths.java | 5 +- .../src/mage/cards/p/PerilousPredicament.java | 3 +- Mage.Sets/src/mage/cards/p/Perish.java | 3 +- .../src/mage/cards/p/PerniciousDeed.java | 7 +-- Mage.Sets/src/mage/cards/p/PersonalTutor.java | 3 +- .../src/mage/cards/p/PestilentSpirit.java | 5 +- .../src/mage/cards/p/PetrifiedWoodKin.java | 3 +- .../src/mage/cards/p/PharikasMender.java | 5 +- .../src/mage/cards/p/PhylacteryLich.java | 3 +- .../src/mage/cards/p/PhyrexianMetamorph.java | 5 +- .../src/mage/cards/p/PhyrexianScriptures.java | 3 +- Mage.Sets/src/mage/cards/p/PhyrexiasCore.java | 3 +- .../src/mage/cards/p/PiecesOfThePuzzle.java | 3 +- Mage.Sets/src/mage/cards/p/PilgrimsEye.java | 3 +- Mage.Sets/src/mage/cards/p/Pillage.java | 5 +- Mage.Sets/src/mage/cards/p/PistonSledge.java | 3 +- Mage.Sets/src/mage/cards/p/Plaguebearer.java | 3 +- Mage.Sets/src/mage/cards/p/Plaguecrafter.java | 5 +- .../src/mage/cards/p/PlanarOutburst.java | 3 +- .../src/mage/cards/p/PleaForGuidance.java | 3 +- Mage.Sets/src/mage/cards/p/Plunder.java | 3 +- Mage.Sets/src/mage/cards/p/PolisCrusher.java | 5 +- .../src/mage/cards/p/PossessedSkaab.java | 7 +-- Mage.Sets/src/mage/cards/p/PowderKeg.java | 3 +- .../src/mage/cards/p/PowerstoneShard.java | 3 +- .../src/mage/cards/p/PriceOfBetrayal.java | 7 +-- Mage.Sets/src/mage/cards/p/PrimalAmulet.java | 5 +- Mage.Sets/src/mage/cards/p/PrimalCommand.java | 3 +- .../mage/cards/p/PrimeSpeakerVannifar.java | 3 +- .../src/mage/cards/p/PrimevalBounty.java | 3 +- Mage.Sets/src/mage/cards/p/PristineAngel.java | 3 +- .../src/mage/cards/p/PristineSkywise.java | 3 +- .../src/mage/cards/p/ProfoundJourney.java | 11 ++-- .../src/mage/cards/p/ProphetOfKruphix.java | 5 +- .../src/mage/cards/p/ProwlingSerpopard.java | 3 +- .../src/mage/cards/p/PsychicRebuttal.java | 3 +- Mage.Sets/src/mage/cards/p/PteronGhost.java | 3 +- Mage.Sets/src/mage/cards/p/PucasMischief.java | 5 +- .../src/mage/cards/p/PullFromTheDeep.java | 5 +- Mage.Sets/src/mage/cards/p/PulseOfMurasa.java | 5 +- Mage.Sets/src/mage/cards/p/Purge.java | 3 +- Mage.Sets/src/mage/cards/p/Purify.java | 5 +- .../mage/cards/p/PurphorosBronzeBlooded.java | 3 +- Mage.Sets/src/mage/cards/p/Putrefy.java | 5 +- .../src/mage/cards/q/QuietContemplation.java | 3 +- Mage.Sets/src/mage/cards/r/RadiantPurge.java | 5 +- Mage.Sets/src/mage/cards/r/Ragamuffyn.java | 3 +- Mage.Sets/src/mage/cards/r/RakdosCharm.java | 3 +- .../src/mage/cards/r/RalsStaticaster.java | 3 +- Mage.Sets/src/mage/cards/r/RangerOfEos.java | 3 +- Mage.Sets/src/mage/cards/r/RatsOfRath.java | 7 +-- .../src/mage/cards/r/RavenousIntruder.java | 3 +- .../src/mage/cards/r/RavenousVampire.java | 3 +- Mage.Sets/src/mage/cards/r/RazorBarrier.java | 3 +- Mage.Sets/src/mage/cards/r/RealityRipple.java | 7 +-- Mage.Sets/src/mage/cards/r/ReapIntellect.java | 3 +- .../src/mage/cards/r/ReclaimingVines.java | 7 +-- .../src/mage/cards/r/ReclusiveArtificer.java | 3 +- .../src/mage/cards/r/ReclusiveWight.java | 3 +- Mage.Sets/src/mage/cards/r/Recoup.java | 3 +- Mage.Sets/src/mage/cards/r/Regression.java | 3 +- Mage.Sets/src/mage/cards/r/ReiverDemon.java | 3 +- Mage.Sets/src/mage/cards/r/Relearn.java | 5 +- Mage.Sets/src/mage/cards/r/RelicSeeker.java | 3 +- .../mage/cards/r/RemorselessPunishment.java | 3 +- .../src/mage/cards/r/RenegadeFirebrand.java | 3 +- Mage.Sets/src/mage/cards/r/Reprocess.java | 5 +- Mage.Sets/src/mage/cards/r/RescuerSphinx.java | 3 +- Mage.Sets/src/mage/cards/r/Retether.java | 5 +- .../src/mage/cards/r/ReturnToTheEarth.java | 7 +-- Mage.Sets/src/mage/cards/r/Reverberate.java | 5 +- Mage.Sets/src/mage/cards/r/Reverberation.java | 3 +- .../src/mage/cards/r/RevivingMelody.java | 3 +- .../src/mage/cards/r/RevolutionaryRebuff.java | 3 +- .../src/mage/cards/r/RhonassMonument.java | 5 +- .../src/mage/cards/r/RhysTheRedeemed.java | 4 +- Mage.Sets/src/mage/cards/r/Riddleform.java | 4 +- .../mage/cards/r/RikuOfTwoReflections.java | 5 +- Mage.Sets/src/mage/cards/r/RingOfGix.java | 7 +-- .../src/mage/cards/r/RingOfImmortals.java | 3 +- .../src/mage/cards/r/RiptideChimera.java | 3 +- .../src/mage/cards/r/RiseOfTheHobgoblins.java | 4 +- Mage.Sets/src/mage/cards/r/RiteOfRuin.java | 3 +- .../src/mage/cards/r/RitualOfTheMachine.java | 3 +- Mage.Sets/src/mage/cards/r/RofellossGift.java | 4 +- Mage.Sets/src/mage/cards/r/RooftopStorm.java | 3 +- Mage.Sets/src/mage/cards/r/Rootgrapple.java | 3 +- .../src/mage/cards/r/RumblingCrescendo.java | 4 +- .../cards/r/RuneOfProtectionArtifacts.java | 3 +- .../mage/cards/r/RuneOfProtectionLands.java | 3 +- .../src/mage/cards/r/RunechantersPike.java | 5 +- Mage.Sets/src/mage/cards/r/RunedArch.java | 3 +- Mage.Sets/src/mage/cards/r/RustScarab.java | 3 +- Mage.Sets/src/mage/cards/r/RustedSlasher.java | 3 +- .../src/mage/cards/s/SacredWhiteDeer.java | 3 +- .../src/mage/cards/s/SageOfTheInwardEye.java | 3 +- .../src/mage/cards/s/SagesKnowledge.java | 3 +- .../mage/cards/s/SaheeliSublimeArtificer.java | 5 +- .../src/mage/cards/s/SaiMasterThopterist.java | 3 +- Mage.Sets/src/mage/cards/s/SaiTok.java | 5 +- .../src/mage/cards/s/SalvagingStation.java | 5 +- .../src/mage/cards/s/SamutTheTested.java | 5 +- Mage.Sets/src/mage/cards/s/SandsOfTime.java | 9 +-- Mage.Sets/src/mage/cards/s/SapphireDrake.java | 3 +- .../src/mage/cards/s/SaprazzanBailiff.java | 5 +- Mage.Sets/src/mage/cards/s/SarkhanTheMad.java | 3 +- .../src/mage/cards/s/SarkhansUnsealing.java | 5 +- .../src/mage/cards/s/SatyrEnchanter.java | 3 +- .../src/mage/cards/s/ScaldingSalamander.java | 3 +- Mage.Sets/src/mage/cards/s/Scarecrone.java | 5 +- Mage.Sets/src/mage/cards/s/ScatterArc.java | 3 +- .../src/mage/cards/s/ScionOfDarkness.java | 3 +- Mage.Sets/src/mage/cards/s/Scourglass.java | 3 +- .../src/mage/cards/s/ScoutTheBorders.java | 3 +- .../src/mage/cards/s/ScribeOfTheMindful.java | 5 +- Mage.Sets/src/mage/cards/s/Scrivener.java | 3 +- .../src/mage/cards/s/ScrollOfTheMasters.java | 3 +- .../src/mage/cards/s/SculptingSteel.java | 3 +- Mage.Sets/src/mage/cards/s/SeekTheWilds.java | 3 +- Mage.Sets/src/mage/cards/s/Seeker.java | 5 +- .../src/mage/cards/s/SeekerOfTheWay.java | 3 +- .../src/mage/cards/s/SelfInflictedWound.java | 3 +- Mage.Sets/src/mage/cards/s/SensorSplicer.java | 3 +- Mage.Sets/src/mage/cards/s/Serenity.java | 3 +- Mage.Sets/src/mage/cards/s/SerrasLiturgy.java | 5 +- Mage.Sets/src/mage/cards/s/SerrasSanctum.java | 3 +- .../src/mage/cards/s/SettleTheScore.java | 3 +- .../src/mage/cards/s/ShalaiVoiceOfPlenty.java | 4 +- .../src/mage/cards/s/ShardingSphinx.java | 3 +- .../src/mage/cards/s/ShatteredDreams.java | 3 +- .../src/mage/cards/s/ShattergangBrothers.java | 3 +- Mage.Sets/src/mage/cards/s/ShefetMonitor.java | 3 +- .../src/mage/cards/s/ShellOfTheLastKappa.java | 5 +- Mage.Sets/src/mage/cards/s/ShiftingSky.java | 3 +- .../src/mage/cards/s/ShimianSpecter.java | 3 +- .../src/mage/cards/s/ShockmawDragon.java | 3 +- Mage.Sets/src/mage/cards/s/ShowAndTell.java | 25 ++++---- Mage.Sets/src/mage/cards/s/ShrapnelBlast.java | 3 +- .../src/mage/cards/s/ShredsOfSanity.java | 5 +- .../src/mage/cards/s/ShrewdNegotiation.java | 5 +- Mage.Sets/src/mage/cards/s/Shriekmaw.java | 3 +- .../mage/cards/s/ShuYunTheSilentTempest.java | 3 +- .../src/mage/cards/s/SiegeModification.java | 3 +- .../mage/cards/s/SigilOfTheEmptyThrone.java | 3 +- .../src/mage/cards/s/SilentSentinel.java | 3 +- .../src/mage/cards/s/SilhanaWayfinder.java | 5 +- .../src/mage/cards/s/SilumgarsCommand.java | 5 +- Mage.Sets/src/mage/cards/s/SingleCombat.java | 5 +- Mage.Sets/src/mage/cards/s/SithRuins.java | 3 +- Mage.Sets/src/mage/cards/s/SkeletonShard.java | 5 +- .../src/mage/cards/s/SkilledAnimator.java | 3 +- Mage.Sets/src/mage/cards/s/SkirkShaman.java | 5 +- Mage.Sets/src/mage/cards/s/SkullOfOrm.java | 3 +- Mage.Sets/src/mage/cards/s/Skybind.java | 3 +- .../src/mage/cards/s/SkyshipWeatherlight.java | 5 +- .../src/mage/cards/s/SkywiseTeachings.java | 3 +- .../mage/cards/s/SlobadGoblinTinkerer.java | 5 +- .../src/mage/cards/s/SnapcasterMage.java | 5 +- Mage.Sets/src/mage/cards/s/SoldeviAdnate.java | 3 +- Mage.Sets/src/mage/cards/s/Solemnity.java | 9 ++- .../mage/cards/s/SorinLordOfInnistrad.java | 5 +- Mage.Sets/src/mage/cards/s/SoulDiviner.java | 9 ++- Mage.Sets/src/mage/cards/s/SoulFoundry.java | 3 +- .../src/mage/cards/s/SoulbladeDjinn.java | 3 +- .../src/mage/cards/s/SoulfireGrandMaster.java | 5 +- Mage.Sets/src/mage/cards/s/Soulscour.java | 3 +- Mage.Sets/src/mage/cards/s/Soulshriek.java | 3 +- Mage.Sets/src/mage/cards/s/SparkDouble.java | 5 +- Mage.Sets/src/mage/cards/s/SparkReaper.java | 5 +- Mage.Sets/src/mage/cards/s/Spawnbroker.java | 6 +- .../src/mage/cards/s/SpectralGuardian.java | 3 +- Mage.Sets/src/mage/cards/s/SpellPierce.java | 3 +- Mage.Sets/src/mage/cards/s/Spellbinder.java | 3 +- .../mage/cards/s/SpellbreakerBehemoth.java | 3 +- Mage.Sets/src/mage/cards/s/Spelltwine.java | 9 ++- .../src/mage/cards/s/SpellweaverHelix.java | 3 +- .../src/mage/cards/s/SpellweaverVolute.java | 7 +-- .../src/mage/cards/s/SphinxBoneWand.java | 5 +- .../mage/cards/s/SphinxOfTheFinalWord.java | 5 +- .../src/mage/cards/s/SphinxSummoner.java | 3 +- .../src/mage/cards/s/SpiritualAsylum.java | 5 +- Mage.Sets/src/mage/cards/s/SpiteMalice.java | 3 +- Mage.Sets/src/mage/cards/s/SpoilsOfEvil.java | 5 +- .../src/mage/cards/s/SpreadingPlague.java | 3 +- Mage.Sets/src/mage/cards/s/Squeeze.java | 3 +- Mage.Sets/src/mage/cards/s/StarDestroyer.java | 3 +- .../src/mage/cards/s/StarfieldOfNyx.java | 3 +- Mage.Sets/src/mage/cards/s/StarkeOfRath.java | 5 +- Mage.Sets/src/mage/cards/s/StatusStatue.java | 7 +-- Mage.Sets/src/mage/cards/s/SteelOverseer.java | 5 +- .../src/mage/cards/s/SteelcladSerpent.java | 3 +- .../mage/cards/s/SteelshaperApprentice.java | 3 +- .../src/mage/cards/s/SteelshapersGift.java | 3 +- Mage.Sets/src/mage/cards/s/StenchOfDecay.java | 3 +- Mage.Sets/src/mage/cards/s/Stingmoggie.java | 5 +- .../src/mage/cards/s/StolenIdentity.java | 3 +- .../src/mage/cards/s/StormTheCitadel.java | 5 +- .../src/mage/cards/s/StorrevDevkarinLich.java | 5 +- Mage.Sets/src/mage/cards/s/StreamOfAcid.java | 5 +- Mage.Sets/src/mage/cards/s/StrongarmMonk.java | 3 +- .../src/mage/cards/s/StrongholdMachinist.java | 3 +- .../mage/cards/s/StructuralDistortion.java | 3 +- .../src/mage/cards/s/StubbornDenial.java | 3 +- .../src/mage/cards/s/StudentOfOjutai.java | 3 +- .../src/mage/cards/s/SumalaWoodshaper.java | 5 +- .../src/mage/cards/s/SunderFromWithin.java | 5 +- Mage.Sets/src/mage/cards/s/Sunforger.java | 3 +- .../src/mage/cards/s/SurgicalExtraction.java | 3 +- .../src/mage/cards/s/SurrakDragonclaw.java | 3 +- .../src/mage/cards/s/SurrakarSpellblade.java | 5 +- Mage.Sets/src/mage/cards/s/SurrealMemoir.java | 3 +- Mage.Sets/src/mage/cards/s/SwanSong.java | 8 +-- Mage.Sets/src/mage/cards/s/SwiftWarkite.java | 3 +- .../src/mage/cards/s/SydriGalvanicGenius.java | 7 +-- .../src/mage/cards/s/SylvanAdvocate.java | 3 +- .../src/mage/cards/s/SylvanPrimordial.java | 3 +- .../src/mage/cards/s/SylvanReclamation.java | 3 +- .../src/mage/cards/s/SynodArtificer.java | 5 +- .../src/mage/cards/t/TaigamOjutaiMaster.java | 5 +- Mage.Sets/src/mage/cards/t/TaintedAether.java | 3 +- Mage.Sets/src/mage/cards/t/TalarasBane.java | 3 +- Mage.Sets/src/mage/cards/t/Tallowisp.java | 3 +- .../src/mage/cards/t/TalrandSkySummoner.java | 5 +- .../mage/cards/t/TamiyoFieldResearcher.java | 3 +- Mage.Sets/src/mage/cards/t/TangleWire.java | 7 +-- Mage.Sets/src/mage/cards/t/Tanglewalker.java | 3 +- Mage.Sets/src/mage/cards/t/TattooWard.java | 3 +- .../src/mage/cards/t/TeferiTimeRaveler.java | 9 ++- .../src/mage/cards/t/TeferiTimebender.java | 5 +- Mage.Sets/src/mage/cards/t/TeferisCare.java | 5 +- Mage.Sets/src/mage/cards/t/TeferisCurse.java | 5 +- Mage.Sets/src/mage/cards/t/TeferisRealm.java | 9 ++- .../src/mage/cards/t/TeferisSentinel.java | 3 +- Mage.Sets/src/mage/cards/t/TelJiladWolf.java | 3 +- Mage.Sets/src/mage/cards/t/TemperedSteel.java | 3 +- .../src/mage/cards/t/TemporalDistortion.java | 3 +- Mage.Sets/src/mage/cards/t/TemporalEddy.java | 5 +- Mage.Sets/src/mage/cards/t/TemptingWurm.java | 9 ++- Mage.Sets/src/mage/cards/t/Terastodon.java | 3 +- Mage.Sets/src/mage/cards/t/Terror.java | 3 +- .../mage/cards/t/TesharAncestorsApostle.java | 3 +- .../mage/cards/t/TezzeretAgentOfBolas.java | 3 +- .../mage/cards/t/TezzeretMasterOfMetal.java | 3 +- .../cards/t/TezzeretMasterOfTheBridge.java | 5 +- .../src/mage/cards/t/TezzeretsAmbition.java | 3 +- .../mage/cards/t/TezzeretsGatebreaker.java | 3 +- Mage.Sets/src/mage/cards/t/TheAbyss.java | 3 +- .../mage/cards/t/TheBindingOfTheTitans.java | 5 +- .../src/mage/cards/t/TheEldestReborn.java | 10 +-- .../src/mage/cards/t/TheMirariConjecture.java | 5 +- Mage.Sets/src/mage/cards/t/ThingInTheIce.java | 5 +- Mage.Sets/src/mage/cards/t/ThopterArrest.java | 5 +- .../src/mage/cards/t/ThopterEngineer.java | 3 +- .../src/mage/cards/t/ThopterFoundry.java | 3 +- .../src/mage/cards/t/ThornOfAmethyst.java | 3 +- .../src/mage/cards/t/ThoughtDistortion.java | 3 +- Mage.Sets/src/mage/cards/t/ThoughtPrison.java | 3 +- Mage.Sets/src/mage/cards/t/ThranForge.java | 3 +- Mage.Sets/src/mage/cards/t/Thraximundar.java | 3 +- Mage.Sets/src/mage/cards/t/ThroneOfGeth.java | 3 +- Mage.Sets/src/mage/cards/t/TidalBore.java | 3 +- Mage.Sets/src/mage/cards/t/TimeOfNeed.java | 3 +- Mage.Sets/src/mage/cards/t/TimeOut.java | 3 +- Mage.Sets/src/mage/cards/t/TitaniasSong.java | 3 +- Mage.Sets/src/mage/cards/t/ToilToRenown.java | 7 +-- .../src/mage/cards/t/TolarianAcademy.java | 3 +- .../src/mage/cards/t/TormentOfVenom.java | 3 +- .../src/mage/cards/t/TorrentialGearhulk.java | 3 +- .../src/mage/cards/t/ToshiroUmezawa.java | 3 +- .../mage/cards/t/TotemGuideHartebeest.java | 3 +- Mage.Sets/src/mage/cards/t/TourachsGate.java | 3 +- Mage.Sets/src/mage/cards/t/Toymaker.java | 3 +- Mage.Sets/src/mage/cards/t/TragicLesson.java | 3 +- Mage.Sets/src/mage/cards/t/TragicPoet.java | 3 +- .../src/mage/cards/t/TrailOfEvidence.java | 5 +- .../src/mage/cards/t/TrashForTreasure.java | 5 +- .../mage/cards/t/TraverseTheUlvenwald.java | 3 +- Mage.Sets/src/mage/cards/t/TreasureMage.java | 3 +- .../src/mage/cards/t/TreasuryThrull.java | 7 +-- Mage.Sets/src/mage/cards/t/TributeMage.java | 3 +- .../src/mage/cards/t/TributeToTheWild.java | 5 +- Mage.Sets/src/mage/cards/t/TricksterMage.java | 7 +-- Mage.Sets/src/mage/cards/t/TrinketMage.java | 3 +- Mage.Sets/src/mage/cards/t/TrophyMage.java | 3 +- .../src/mage/cards/t/TrygonPredator.java | 5 +- Mage.Sets/src/mage/cards/t/Turnabout.java | 11 ++-- .../src/mage/cards/t/TuskguardCaptain.java | 3 +- .../src/mage/cards/t/TuvasaTheSunlit.java | 3 +- Mage.Sets/src/mage/cards/t/Twiddle.java | 7 +-- Mage.Sets/src/mage/cards/t/TwinningGlass.java | 3 +- .../src/mage/cards/t/TwistedJustice.java | 3 +- Mage.Sets/src/mage/cards/t/Twitch.java | 7 +-- .../src/mage/cards/t/TymaretCallsTheDead.java | 5 +- .../src/mage/cards/t/TyrantsFamiliar.java | 3 +- .../src/mage/cards/u/UncageTheMenagerie.java | 3 +- .../src/mage/cards/u/UncoveredClues.java | 3 +- .../src/mage/cards/u/UnderworldSlums.java | 3 +- .../src/mage/cards/u/UnityOfTheDroids.java | 5 +- Mage.Sets/src/mage/cards/u/Unmask.java | 3 +- Mage.Sets/src/mage/cards/u/UnyaroGriffin.java | 5 +- Mage.Sets/src/mage/cards/u/UrborgStalker.java | 3 +- .../src/mage/cards/u/UrgentExorcism.java | 3 +- .../mage/cards/u/UrzaAcademyHeadmaster.java | 11 ++-- .../src/mage/cards/u/UrzasRuinousBlast.java | 3 +- Mage.Sets/src/mage/cards/v/VadersCommand.java | 5 +- Mage.Sets/src/mage/cards/v/Valor.java | 3 +- .../src/mage/cards/v/VampireCharmseeker.java | 7 +-- .../src/mage/cards/v/VedalkenCertarch.java | 7 +-- .../src/mage/cards/v/VedalkenOrrery.java | 3 +- .../src/mage/cards/v/VensersDiffusion.java | 3 +- .../src/mage/cards/v/VerduranEnchantress.java | 3 +- Mage.Sets/src/mage/cards/v/VernalEquinox.java | 3 +- .../src/mage/cards/v/VesselOfNascency.java | 11 ++-- Mage.Sets/src/mage/cards/v/Vesuva.java | 3 +- .../src/mage/cards/v/VexingScuttler.java | 5 +- .../mage/cards/v/VictoriousDestruction.java | 5 +- Mage.Sets/src/mage/cards/v/VileRequiem.java | 3 +- Mage.Sets/src/mage/cards/v/ViolentImpact.java | 5 +- .../src/mage/cards/v/ViridianShaman.java | 3 +- Mage.Sets/src/mage/cards/v/VisceridDrone.java | 3 +- Mage.Sets/src/mage/cards/v/VitalSplicer.java | 3 +- .../cards/v/VivienChampionOfTheWilds.java | 3 +- Mage.Sets/src/mage/cards/v/VivienReid.java | 11 ++-- .../src/mage/cards/v/VizierOfTheAnointed.java | 3 +- Mage.Sets/src/mage/cards/v/Void.java | 3 +- .../src/mage/cards/v/VolcanicSubmersion.java | 5 +- Mage.Sets/src/mage/cards/v/VolcanicWind.java | 3 +- .../src/mage/cards/v/VolrathsStronghold.java | 3 +- .../src/mage/cards/v/VoltaicConstruct.java | 3 +- Mage.Sets/src/mage/cards/v/VoltaicKey.java | 3 +- .../src/mage/cards/v/VoraciousReader.java | 5 +- .../src/mage/cards/v/VorelOfTheHullClade.java | 7 +-- .../src/mage/cards/v/VraskasConquistador.java | 3 +- Mage.Sets/src/mage/cards/w/WalkThePlank.java | 3 +- .../src/mage/cards/w/WardenOfEvosIsle.java | 3 +- .../src/mage/cards/w/WardenOfTheEye.java | 5 +- Mage.Sets/src/mage/cards/w/WarpingWail.java | 3 +- .../src/mage/cards/w/WarrenWeirding.java | 4 +- .../src/mage/cards/w/WasitoraNekoruQueen.java | 3 +- .../src/mage/cards/w/WaspOfTheBitterEnd.java | 3 +- .../src/mage/cards/w/WaveOfReckoning.java | 3 +- Mage.Sets/src/mage/cards/w/WaveOfVitriol.java | 7 +-- .../src/mage/cards/w/WeldfastEngineer.java | 3 +- Mage.Sets/src/mage/cards/w/Whipflare.java | 3 +- Mage.Sets/src/mage/cards/w/WhirlerRogue.java | 3 +- Mage.Sets/src/mage/cards/w/WildMammoth.java | 3 +- Mage.Sets/src/mage/cards/w/WildResearch.java | 5 +- Mage.Sets/src/mage/cards/w/WildRicochet.java | 5 +- Mage.Sets/src/mage/cards/w/WildSwing.java | 3 +- Mage.Sets/src/mage/cards/w/WillKenrith.java | 7 +-- .../src/mage/cards/w/WindwrightMage.java | 3 +- Mage.Sets/src/mage/cards/w/WingSplicer.java | 3 +- Mage.Sets/src/mage/cards/w/Wonder.java | 3 +- .../src/mage/cards/w/WoodfallPrimus.java | 3 +- .../src/mage/cards/w/WoodlandBellower.java | 3 +- .../src/mage/cards/w/WoollyMammoths.java | 3 +- .../src/mage/cards/w/WorkshopElders.java | 3 +- .../src/mage/cards/w/WorldBottlingKit.java | 3 +- Mage.Sets/src/mage/cards/w/WorldBreaker.java | 7 +-- Mage.Sets/src/mage/cards/w/WorldQueller.java | 7 +-- Mage.Sets/src/mage/cards/w/WreakHavoc.java | 5 +- Mage.Sets/src/mage/cards/w/WreckingBall.java | 3 +- .../src/mage/cards/w/WrexialTheRisenDeep.java | 5 +- .../src/mage/cards/x/XenagosTheReveler.java | 5 +- .../src/mage/cards/x/XenicPoltergeist.java | 5 +- .../src/mage/cards/y/YavimayaEnchantress.java | 3 +- .../mage/cards/y/YawgmothsVileOffering.java | 5 +- .../mage/cards/y/YisanTheWandererBard.java | 3 +- Mage.Sets/src/mage/cards/z/ZealotsEnDal.java | 3 +- Mage.Sets/src/mage/cards/z/ZephyrScribe.java | 3 +- Mage.Sets/src/mage/cards/z/ZombieMob.java | 3 +- .../src/mage/cards/z/ZurTheEnchanter.java | 3 +- .../common/FetchLandActivatedAbility.java | 3 +- .../common/LegendarySpellAbility.java | 5 +- .../condition/common/MetalcraftCondition.java | 3 +- .../common/SpellMasteryCondition.java | 3 +- .../abilities/keyword/ChampionAbility.java | 3 +- .../abilities/keyword/ConspireAbility.java | 3 +- .../abilities/keyword/ModularAbility.java | 5 +- .../abilities/keyword/ProwessAbility.java | 3 +- .../main/java/mage/filter/StaticFilters.java | 61 +++++++++---------- .../filter/common/FilterArtifactCard.java | 3 +- .../FilterArtifactCreaturePermanent.java | 3 +- .../FilterArtifactOrEnchantmentCard.java | 3 +- .../FilterArtifactOrEnchantmentPermanent.java | 3 +- .../common/FilterArtifactPermanent.java | 4 +- .../filter/common/FilterArtifactSpell.java | 3 +- .../filter/common/FilterBasicLandCard.java | 3 +- .../FilterControlledArtifactPermanent.java | 3 +- .../FilterControlledCreaturePermanent.java | 4 +- .../FilterControlledEnchantmentPermanent.java | 3 +- .../common/FilterControlledLandPermanent.java | 3 +- ...FilterControlledPlaneswalkerPermanent.java | 5 +- .../filter/common/FilterCreatureCard.java | 3 +- ...FilterCreatureOrPlaneswalkerPermanent.java | 5 +- .../common/FilterCreaturePermanent.java | 5 +- .../filter/common/FilterCreatureSpell.java | 3 +- .../filter/common/FilterEnchantmentCard.java | 3 +- .../common/FilterEnchantmentPermanent.java | 3 +- .../common/FilterInstantOrSorceryCard.java | 3 +- .../common/FilterInstantOrSorcerySpell.java | 3 +- .../mage/filter/common/FilterLandCard.java | 3 +- .../filter/common/FilterLandPermanent.java | 5 +- .../filter/common/FilterNoncreatureCard.java | 3 +- .../mage/filter/common/FilterNonlandCard.java | 3 +- .../filter/common/FilterNonlandPermanent.java | 4 +- .../filter/common/FilterPermanentCard.java | 11 ++-- .../filter/common/FilterPlaneswalkerCard.java | 3 +- .../common/FilterPlaneswalkerPermanent.java | 3 +- .../emblems/ElspethKnightErrantEmblem.java | 9 ++- .../mage/game/command/planes/AkoumPlane.java | 3 +- .../planes/TrailOfTheMageRingsPlane.java | 5 +- .../game/command/planes/TurriIslandPlane.java | 4 +- .../command/planes/UndercityReachesPlane.java | 3 +- .../permanent/token/BelzenlokDemonToken.java | 4 +- .../permanent/token/KarnConstructToken.java | 3 +- .../target/common/TargetAnyTargetAmount.java | 3 +- .../target/common/TargetBasicLandCard.java | 3 +- .../common/TargetCreatureOrPlayerAmount.java | 3 +- 1069 files changed, 1619 insertions(+), 2732 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java b/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java index 1385d61686..ab7c601c4b 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/CardSelector.java @@ -24,7 +24,6 @@ import mage.constants.Rarity; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.ColorlessPredicate; import mage.filter.predicate.other.CardTextPredicate; @@ -253,25 +252,25 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene predicates.clear(); if (this.tbLand.isSelected()) { - predicates.add(new CardTypePredicate(CardType.LAND)); + predicates.add(CardType.LAND.getPredicate()); } if (this.tbArifiacts.isSelected()) { - predicates.add(new CardTypePredicate(CardType.ARTIFACT)); + predicates.add(CardType.ARTIFACT.getPredicate()); } if (this.tbCreatures.isSelected()) { - predicates.add(new CardTypePredicate(CardType.CREATURE)); + predicates.add(CardType.CREATURE.getPredicate()); } if (this.tbEnchantments.isSelected()) { - predicates.add(new CardTypePredicate(CardType.ENCHANTMENT)); + predicates.add(CardType.ENCHANTMENT.getPredicate()); } if (this.tbInstants.isSelected()) { - predicates.add(new CardTypePredicate(CardType.INSTANT)); + predicates.add(CardType.INSTANT.getPredicate()); } if (this.tbSorceries.isSelected()) { - predicates.add(new CardTypePredicate(CardType.SORCERY)); + predicates.add(CardType.SORCERY.getPredicate()); } if (this.tbPlaneswalkers.isSelected()) { - predicates.add(new CardTypePredicate(CardType.PLANESWALKER)); + predicates.add(CardType.PLANESWALKER.getPredicate()); } filter.add(Predicates.or(predicates)); diff --git a/Mage.Sets/src/mage/cards/a/AbandonedSarcophagus.java b/Mage.Sets/src/mage/cards/a/AbandonedSarcophagus.java index adec61566e..38925586f8 100644 --- a/Mage.Sets/src/mage/cards/a/AbandonedSarcophagus.java +++ b/Mage.Sets/src/mage/cards/a/AbandonedSarcophagus.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.ZoneChangeEvent; @@ -31,7 +30,7 @@ public final class AbandonedSarcophagus extends CardImpl { // You may cast nonland cards with cycling from your graveyard. FilterCard filter = new FilterCard("nonland cards with cycling"); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(new AbilityPredicate(CyclingAbility.class)); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayFromNotOwnHandZoneAllEffect(filter, diff --git a/Mage.Sets/src/mage/cards/a/AbunaAcolyte.java b/Mage.Sets/src/mage/cards/a/AbunaAcolyte.java index 187ee463f8..fafd25e009 100644 --- a/Mage.Sets/src/mage/cards/a/AbunaAcolyte.java +++ b/Mage.Sets/src/mage/cards/a/AbunaAcolyte.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetAnyTarget; import mage.target.common.TargetCreaturePermanent; @@ -27,7 +26,7 @@ public final class AbunaAcolyte extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AbunaAcolyte(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Abundance.java b/Mage.Sets/src/mage/cards/a/Abundance.java index 1812ac45a2..c2eb8e07ab 100644 --- a/Mage.Sets/src/mage/cards/a/Abundance.java +++ b/Mage.Sets/src/mage/cards/a/Abundance.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.players.Player; @@ -71,10 +70,10 @@ class AbundanceReplacementEffect extends ReplacementEffectImpl { if (controller.chooseUse(Outcome.Detriment, "Choose card type:", source.getSourceObject(game).getLogName(), "land", "nonland", source, game)) { game.informPlayers(controller.getLogName() + "chooses land."); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } else { game.informPlayers(controller.getLogName() + "chooses nonland."); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } Cards toReveal = new CardsImpl(); Card selectedCard = null; diff --git a/Mage.Sets/src/mage/cards/a/AbzanBattlePriest.java b/Mage.Sets/src/mage/cards/a/AbzanBattlePriest.java index 878fb3b4d6..1e89dd0627 100644 --- a/Mage.Sets/src/mage/cards/a/AbzanBattlePriest.java +++ b/Mage.Sets/src/mage/cards/a/AbzanBattlePriest.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -26,7 +25,7 @@ public final class AbzanBattlePriest extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/a/AbzanFalconer.java b/Mage.Sets/src/mage/cards/a/AbzanFalconer.java index 1f2c72adf8..40fb3f1a2a 100644 --- a/Mage.Sets/src/mage/cards/a/AbzanFalconer.java +++ b/Mage.Sets/src/mage/cards/a/AbzanFalconer.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -25,7 +24,7 @@ public final class AbzanFalconer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java index 59ebda2d7e..6a1b5383fd 100644 --- a/Mage.Sets/src/mage/cards/a/AcclaimedContender.java +++ b/Mage.Sets/src/mage/cards/a/AcclaimedContender.java @@ -17,7 +17,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; @@ -41,7 +40,7 @@ public final class AcclaimedContender extends CardImpl { new SubtypePredicate(SubType.EQUIPMENT), Predicates.and( new SupertypePredicate(SuperType.LEGENDARY), - new CardTypePredicate(CardType.ARTIFACT) + CardType.ARTIFACT.getPredicate() ) )); } diff --git a/Mage.Sets/src/mage/cards/a/AcidicSlime.java b/Mage.Sets/src/mage/cards/a/AcidicSlime.java index 4aca095902..ac3f4ba6a4 100644 --- a/Mage.Sets/src/mage/cards/a/AcidicSlime.java +++ b/Mage.Sets/src/mage/cards/a/AcidicSlime.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -28,9 +27,9 @@ public final class AcidicSlime extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public AcidicSlime(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Acquire.java b/Mage.Sets/src/mage/cards/a/Acquire.java index 53895e0758..1c74977673 100644 --- a/Mage.Sets/src/mage/cards/a/Acquire.java +++ b/Mage.Sets/src/mage/cards/a/Acquire.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -45,7 +44,7 @@ class AcquireEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("an artifact card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AcquireEffect() { diff --git a/Mage.Sets/src/mage/cards/a/AdmonitionAngel.java b/Mage.Sets/src/mage/cards/a/AdmonitionAngel.java index 2490d280e4..a69035e724 100644 --- a/Mage.Sets/src/mage/cards/a/AdmonitionAngel.java +++ b/Mage.Sets/src/mage/cards/a/AdmonitionAngel.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.TargetPermanent; @@ -31,7 +30,7 @@ public final class AdmonitionAngel extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public AdmonitionAngel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java b/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java index bcc789c74d..a97d890fd2 100644 --- a/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java +++ b/Mage.Sets/src/mage/cards/a/AdventurousImpulse.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class AdventurousImpulse extends CardImpl { private static final FilterCard filter = new FilterCard("a creature or land card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public AdventurousImpulse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AerialModification.java b/Mage.Sets/src/mage/cards/a/AerialModification.java index 3d3321eef0..7deba1505c 100644 --- a/Mage.Sets/src/mage/cards/a/AerialModification.java +++ b/Mage.Sets/src/mage/cards/a/AerialModification.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -29,7 +28,7 @@ public final class AerialModification extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or vehicle"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE))); } diff --git a/Mage.Sets/src/mage/cards/a/AetherMeltdown.java b/Mage.Sets/src/mage/cards/a/AetherMeltdown.java index 999dfe2ab6..2f92a98e98 100644 --- a/Mage.Sets/src/mage/cards/a/AetherMeltdown.java +++ b/Mage.Sets/src/mage/cards/a/AetherMeltdown.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -29,7 +28,7 @@ public final class AetherMeltdown extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or vehicle"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new SubtypePredicate(SubType.VEHICLE))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE))); } public AetherMeltdown(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AethershieldArtificer.java b/Mage.Sets/src/mage/cards/a/AethershieldArtificer.java index c2f5378979..9f059d3cab 100644 --- a/Mage.Sets/src/mage/cards/a/AethershieldArtificer.java +++ b/Mage.Sets/src/mage/cards/a/AethershieldArtificer.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -27,7 +26,7 @@ public final class AethershieldArtificer extends CardImpl { = new FilterControlledCreaturePermanent("artifact creature you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AethershieldArtificer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Aftershock.java b/Mage.Sets/src/mage/cards/a/Aftershock.java index 040f4640c4..96a9b01b97 100644 --- a/Mage.Sets/src/mage/cards/a/Aftershock.java +++ b/Mage.Sets/src/mage/cards/a/Aftershock.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,9 +21,9 @@ public final class Aftershock extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Aftershock(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AgadeemOccultist.java b/Mage.Sets/src/mage/cards/a/AgadeemOccultist.java index 0a96f6262c..5f0b20db6c 100644 --- a/Mage.Sets/src/mage/cards/a/AgadeemOccultist.java +++ b/Mage.Sets/src/mage/cards/a/AgadeemOccultist.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -78,7 +77,7 @@ class AgadeemOccultistEffect extends OneShotEffect { } } FilterCard filter = new FilterCard("creature card in an opponent's graveyard"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInOpponentsGraveyard target = new TargetCardInOpponentsGraveyard(1, 1, filter); if (controller != null) { diff --git a/Mage.Sets/src/mage/cards/a/AinokBondKin.java b/Mage.Sets/src/mage/cards/a/AinokBondKin.java index c474b25245..39000ec5c5 100644 --- a/Mage.Sets/src/mage/cards/a/AinokBondKin.java +++ b/Mage.Sets/src/mage/cards/a/AinokBondKin.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -26,7 +25,7 @@ public final class AinokBondKin extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/a/AjaniMentorOfHeroes.java b/Mage.Sets/src/mage/cards/a/AjaniMentorOfHeroes.java index d60264cb68..d7231fce44 100644 --- a/Mage.Sets/src/mage/cards/a/AjaniMentorOfHeroes.java +++ b/Mage.Sets/src/mage/cards/a/AjaniMentorOfHeroes.java @@ -19,7 +19,6 @@ import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanentAmount; @@ -37,8 +36,8 @@ public final class AjaniMentorOfHeroes extends CardImpl { filter.add(new ControllerPredicate(TargetController.YOU)); filterCard.add(Predicates.or( new SubtypePredicate(SubType.AURA), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public AjaniMentorOfHeroes(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AjaniStrengthOfThePride.java b/Mage.Sets/src/mage/cards/a/AjaniStrengthOfThePride.java index aa8df094e4..15fd24f5f6 100644 --- a/Mage.Sets/src/mage/cards/a/AjaniStrengthOfThePride.java +++ b/Mage.Sets/src/mage/cards/a/AjaniStrengthOfThePride.java @@ -16,7 +16,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.token.AjanisPridemateToken; @@ -91,8 +90,8 @@ class AjaniStrengthOfThePrideEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/a/AjaniUnyielding.java b/Mage.Sets/src/mage/cards/a/AjaniUnyielding.java index ab5289a028..8e27ead78d 100644 --- a/Mage.Sets/src/mage/cards/a/AjaniUnyielding.java +++ b/Mage.Sets/src/mage/cards/a/AjaniUnyielding.java @@ -19,7 +19,6 @@ import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterPermanentCard; import mage.filter.common.FilterPlaneswalkerPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -33,7 +32,7 @@ public final class AjaniUnyielding extends CardImpl { private static final FilterPlaneswalkerPermanent planeswalkerFilter = new FilterPlaneswalkerPermanent("other planeswalker you control"); static { - nonlandPermanentFilter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + nonlandPermanentFilter.add(Predicates.not(CardType.LAND.getPredicate())); planeswalkerFilter.add(new ControllerPredicate(TargetController.YOU)); planeswalkerFilter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/a/AjaniVengeant.java b/Mage.Sets/src/mage/cards/a/AjaniVengeant.java index b6d4b3b48a..83a9ed421a 100644 --- a/Mage.Sets/src/mage/cards/a/AjaniVengeant.java +++ b/Mage.Sets/src/mage/cards/a/AjaniVengeant.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.TargetPlayer; import mage.target.common.TargetAnyTarget; @@ -29,7 +28,7 @@ public final class AjaniVengeant extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("lands"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public AjaniVengeant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AjanisComrade.java b/Mage.Sets/src/mage/cards/a/AjanisComrade.java index bb26d2ac24..af206b862f 100644 --- a/Mage.Sets/src/mage/cards/a/AjanisComrade.java +++ b/Mage.Sets/src/mage/cards/a/AjanisComrade.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -27,7 +26,7 @@ public final class AjanisComrade extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.AJANI)); } diff --git a/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java b/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java index ef937537b2..5cd997b7e0 100644 --- a/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java +++ b/Mage.Sets/src/mage/cards/a/AkiriLineSlinger.java @@ -15,7 +15,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class AkiriLineSlinger extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AkiriLineSlinger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AkromasVengeance.java b/Mage.Sets/src/mage/cards/a/AkromasVengeance.java index dcf2ee58f9..bc19df0dc6 100644 --- a/Mage.Sets/src/mage/cards/a/AkromasVengeance.java +++ b/Mage.Sets/src/mage/cards/a/AkromasVengeance.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,9 +21,9 @@ public final class AkromasVengeance extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public AkromasVengeance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AkronLegionnaire.java b/Mage.Sets/src/mage/cards/a/AkronLegionnaire.java index 34eecbfc9d..a9311332ed 100644 --- a/Mage.Sets/src/mage/cards/a/AkronLegionnaire.java +++ b/Mage.Sets/src/mage/cards/a/AkronLegionnaire.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -26,7 +25,7 @@ public final class AkronLegionnaire extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(Predicates.not(new NamePredicate("Akron Legionnaire"))); - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public AkronLegionnaire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlchemistsRefuge.java b/Mage.Sets/src/mage/cards/a/AlchemistsRefuge.java index 8e2dabedea..153bd21636 100644 --- a/Mage.Sets/src/mage/cards/a/AlchemistsRefuge.java +++ b/Mage.Sets/src/mage/cards/a/AlchemistsRefuge.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,7 +27,7 @@ public final class AlchemistsRefuge extends CardImpl { private static final FilterCard filter = new FilterCard("spells"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public AlchemistsRefuge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlelaArtfulProvocateur.java b/Mage.Sets/src/mage/cards/a/AlelaArtfulProvocateur.java index eb7db509d7..b583f26392 100644 --- a/Mage.Sets/src/mage/cards/a/AlelaArtfulProvocateur.java +++ b/Mage.Sets/src/mage/cards/a/AlelaArtfulProvocateur.java @@ -15,7 +15,6 @@ import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.permanent.token.FaerieToken; @@ -34,8 +33,8 @@ public final class AlelaArtfulProvocateur extends CardImpl { filter.add(new AbilityPredicate(FlyingAbility.class)); filter.add(new ControllerPredicate(TargetController.YOU)); filter2.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/a/AmberPrison.java b/Mage.Sets/src/mage/cards/a/AmberPrison.java index ec13b5134a..f72860acd1 100644 --- a/Mage.Sets/src/mage/cards/a/AmberPrison.java +++ b/Mage.Sets/src/mage/cards/a/AmberPrison.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -28,9 +27,9 @@ public final class AmberPrison extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public AmberPrison(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AmrouSeekers.java b/Mage.Sets/src/mage/cards/a/AmrouSeekers.java index e9f0358e37..d2cc30373e 100644 --- a/Mage.Sets/src/mage/cards/a/AmrouSeekers.java +++ b/Mage.Sets/src/mage/cards/a/AmrouSeekers.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -27,7 +26,7 @@ public final class AmrouSeekers extends CardImpl { static { notArtificatOrWhite.add(Predicates.not( Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new ColorPredicate(ObjectColor.WHITE) ) )); diff --git a/Mage.Sets/src/mage/cards/a/AmuletOfUnmaking.java b/Mage.Sets/src/mage/cards/a/AmuletOfUnmaking.java index 79decffc5d..c2800d518b 100644 --- a/Mage.Sets/src/mage/cards/a/AmuletOfUnmaking.java +++ b/Mage.Sets/src/mage/cards/a/AmuletOfUnmaking.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -27,9 +26,9 @@ public final class AmuletOfUnmaking extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/a/Anarchist.java b/Mage.Sets/src/mage/cards/a/Anarchist.java index 9f62fa9182..6bf7b491a9 100644 --- a/Mage.Sets/src/mage/cards/a/Anarchist.java +++ b/Mage.Sets/src/mage/cards/a/Anarchist.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -22,7 +21,7 @@ public final class Anarchist extends CardImpl { private static final FilterCard filter = new FilterCard("sorcery card"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Anarchist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AncestralStatue.java b/Mage.Sets/src/mage/cards/a/AncestralStatue.java index 3129850495..608555765e 100644 --- a/Mage.Sets/src/mage/cards/a/AncestralStatue.java +++ b/Mage.Sets/src/mage/cards/a/AncestralStatue.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class AncestralStatue extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanent you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public AncestralStatue(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 527f9bec33..95319642de 100644 --- a/Mage.Sets/src/mage/cards/a/AncientHellkite.java +++ b/Mage.Sets/src/mage/cards/a/AncientHellkite.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; import mage.target.TargetPermanent; @@ -28,7 +27,7 @@ public final class AncientHellkite extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature defending player controls"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(DefendingPlayerControlsPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/a/AngelOfJubilation.java b/Mage.Sets/src/mage/cards/a/AngelOfJubilation.java index 85a34e8ae6..5328d6d5c3 100644 --- a/Mage.Sets/src/mage/cards/a/AngelOfJubilation.java +++ b/Mage.Sets/src/mage/cards/a/AngelOfJubilation.java @@ -18,7 +18,6 @@ import mage.constants.*; import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -105,7 +104,7 @@ class AngelOfJubilationSacrificeFilterEffect extends CostModificationEffectImpl if (cost instanceof SacrificeTargetCost) { SacrificeTargetCost sacrificeCost = (SacrificeTargetCost) cost; Filter filter = sacrificeCost.getTargets().get(0).getFilter(); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } } return true; diff --git a/Mage.Sets/src/mage/cards/a/AngelicEdict.java b/Mage.Sets/src/mage/cards/a/AngelicEdict.java index 1eb84b9db4..a45a558a25 100644 --- a/Mage.Sets/src/mage/cards/a/AngelicEdict.java +++ b/Mage.Sets/src/mage/cards/a/AngelicEdict.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -19,7 +18,7 @@ public final class AngelicEdict extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public AngelicEdict(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AngelicPurge.java b/Mage.Sets/src/mage/cards/a/AngelicPurge.java index 780997fdbe..68e69a870f 100644 --- a/Mage.Sets/src/mage/cards/a/AngelicPurge.java +++ b/Mage.Sets/src/mage/cards/a/AngelicPurge.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -23,9 +22,9 @@ public final class AngelicPurge extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact, creature, or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public AngelicPurge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AngelicVoices.java b/Mage.Sets/src/mage/cards/a/AngelicVoices.java index 4a3dc8e834..5134a1b842 100644 --- a/Mage.Sets/src/mage/cards/a/AngelicVoices.java +++ b/Mage.Sets/src/mage/cards/a/AngelicVoices.java @@ -15,7 +15,6 @@ import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -31,7 +30,7 @@ public final class AngelicVoices extends CardImpl { static { filter.add(Predicates.not( Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new ColorPredicate(ObjectColor.WHITE) ) )); diff --git a/Mage.Sets/src/mage/cards/a/Anger.java b/Mage.Sets/src/mage/cards/a/Anger.java index 4da0cafd4c..d03be49ecd 100644 --- a/Mage.Sets/src/mage/cards/a/Anger.java +++ b/Mage.Sets/src/mage/cards/a/Anger.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +30,7 @@ public final class Anger extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Mountain"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SubtypePredicate(SubType.MOUNTAIN)); } diff --git a/Mage.Sets/src/mage/cards/a/AngrathsAmbusher.java b/Mage.Sets/src/mage/cards/a/AngrathsAmbusher.java index 7cccf6d9b8..40efcfd7bc 100644 --- a/Mage.Sets/src/mage/cards/a/AngrathsAmbusher.java +++ b/Mage.Sets/src/mage/cards/a/AngrathsAmbusher.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -26,7 +25,7 @@ public final class AngrathsAmbusher extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.ANGRATH)); } diff --git a/Mage.Sets/src/mage/cards/a/AnimateArtifact.java b/Mage.Sets/src/mage/cards/a/AnimateArtifact.java index 0a05d0c105..1e8557cb7f 100644 --- a/Mage.Sets/src/mage/cards/a/AnimateArtifact.java +++ b/Mage.Sets/src/mage/cards/a/AnimateArtifact.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -28,7 +27,7 @@ public final class AnimateArtifact extends CardImpl { private static final FilterPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public AnimateArtifact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AnimatingFaerie.java b/Mage.Sets/src/mage/cards/a/AnimatingFaerie.java index 64f2f4ece3..cd22af0c0b 100644 --- a/Mage.Sets/src/mage/cards/a/AnimatingFaerie.java +++ b/Mage.Sets/src/mage/cards/a/AnimatingFaerie.java @@ -14,7 +14,6 @@ import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -28,7 +27,7 @@ public final class AnimatingFaerie extends AdventureCard { = new FilterControlledArtifactPermanent("noncreature artifact you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public AnimatingFaerie(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Annul.java b/Mage.Sets/src/mage/cards/a/Annul.java index 05b56093f6..028e8099aa 100644 --- a/Mage.Sets/src/mage/cards/a/Annul.java +++ b/Mage.Sets/src/mage/cards/a/Annul.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -21,8 +20,8 @@ public final class Annul extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public Annul(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AphettoAlchemist.java b/Mage.Sets/src/mage/cards/a/AphettoAlchemist.java index 2706f126a6..c67ea5e296 100644 --- a/Mage.Sets/src/mage/cards/a/AphettoAlchemist.java +++ b/Mage.Sets/src/mage/cards/a/AphettoAlchemist.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -29,8 +28,8 @@ public final class AphettoAlchemist extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public AphettoAlchemist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ApostlesBlessing.java b/Mage.Sets/src/mage/cards/a/ApostlesBlessing.java index c3229051a5..0c35dc3721 100644 --- a/Mage.Sets/src/mage/cards/a/ApostlesBlessing.java +++ b/Mage.Sets/src/mage/cards/a/ApostlesBlessing.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -31,8 +30,8 @@ public final class ApostlesBlessing extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public ApostlesBlessing(UUID ownerId, CardSetInfo setInfo) { @@ -79,7 +78,7 @@ class ApostlesBlessingEffect extends OneShotEffect { if (controller.choose(outcome, choice, game)) { FilterCard protectionFilter = new FilterCard(); if (choice.isArtifactSelected()) { - protectionFilter.add(new CardTypePredicate(CardType.ARTIFACT)); + protectionFilter.add(CardType.ARTIFACT.getPredicate()); } else { protectionFilter.add(new ColorPredicate(choice.getColor())); } diff --git a/Mage.Sets/src/mage/cards/a/ArbiterOfTheIdeal.java b/Mage.Sets/src/mage/cards/a/ArbiterOfTheIdeal.java index 7fedb5c542..f1756013da 100644 --- a/Mage.Sets/src/mage/cards/a/ArbiterOfTheIdeal.java +++ b/Mage.Sets/src/mage/cards/a/ArbiterOfTheIdeal.java @@ -15,7 +15,6 @@ import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -57,9 +56,9 @@ class ArbiterOfTheIdealEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public ArbiterOfTheIdealEffect() { diff --git a/Mage.Sets/src/mage/cards/a/ArcboundRavager.java b/Mage.Sets/src/mage/cards/a/ArcboundRavager.java index 42c9fb1b1e..a4682b11e7 100644 --- a/Mage.Sets/src/mage/cards/a/ArcboundRavager.java +++ b/Mage.Sets/src/mage/cards/a/ArcboundRavager.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class ArcboundRavager extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ArcboundRavager(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArcumDagsson.java b/Mage.Sets/src/mage/cards/a/ArcumDagsson.java index c86c8389d4..7605f75ac0 100644 --- a/Mage.Sets/src/mage/cards/a/ArcumDagsson.java +++ b/Mage.Sets/src/mage/cards/a/ArcumDagsson.java @@ -16,7 +16,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterArtifactCard; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -32,7 +31,7 @@ public final class ArcumDagsson extends CardImpl { private static final FilterPermanent filter = new FilterArtifactPermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public ArcumDagsson(UUID ownerId, CardSetInfo setInfo) { @@ -64,7 +63,7 @@ class ArcumDagssonEffect extends OneShotEffect { private static final FilterCard filter = new FilterArtifactCard("noncreature artifact card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } ArcumDagssonEffect() { diff --git a/Mage.Sets/src/mage/cards/a/ArensonsAura.java b/Mage.Sets/src/mage/cards/a/ArensonsAura.java index c05cf90651..eb92c0c9e0 100644 --- a/Mage.Sets/src/mage/cards/a/ArensonsAura.java +++ b/Mage.Sets/src/mage/cards/a/ArensonsAura.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetEnchantmentPermanent; @@ -30,8 +29,8 @@ public final class ArensonsAura extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter2.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); + filter2.add(CardType.ENCHANTMENT.getPredicate()); } public ArensonsAura(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArgivianBlacksmith.java b/Mage.Sets/src/mage/cards/a/ArgivianBlacksmith.java index 49ec7370bb..74fb7f7b90 100644 --- a/Mage.Sets/src/mage/cards/a/ArgivianBlacksmith.java +++ b/Mage.Sets/src/mage/cards/a/ArgivianBlacksmith.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,8 +25,8 @@ public final class ArgivianBlacksmith extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); } public ArgivianBlacksmith(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArgivianFind.java b/Mage.Sets/src/mage/cards/a/ArgivianFind.java index 855c596ca5..62599a94b9 100644 --- a/Mage.Sets/src/mage/cards/a/ArgivianFind.java +++ b/Mage.Sets/src/mage/cards/a/ArgivianFind.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -19,7 +18,7 @@ public final class ArgivianFind extends CardImpl { private static final FilterCard filter = new FilterCard("artifact or enchantment card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public ArgivianFind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArgothianEnchantress.java b/Mage.Sets/src/mage/cards/a/ArgothianEnchantress.java index f6e8dd769a..7255f2c08b 100644 --- a/Mage.Sets/src/mage/cards/a/ArgothianEnchantress.java +++ b/Mage.Sets/src/mage/cards/a/ArgothianEnchantress.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -21,7 +20,7 @@ public final class ArgothianEnchantress extends CardImpl { private static final FilterSpell filter = new FilterSpell("an Enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public ArgothianEnchantress(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArgothianPixies.java b/Mage.Sets/src/mage/cards/a/ArgothianPixies.java index f649fe160f..9cf92a53d5 100644 --- a/Mage.Sets/src/mage/cards/a/ArgothianPixies.java +++ b/Mage.Sets/src/mage/cards/a/ArgothianPixies.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -28,7 +27,7 @@ public final class ArgothianPixies extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ArgothianPixies(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArmamentOfNyx.java b/Mage.Sets/src/mage/cards/a/ArmamentOfNyx.java index 9973cb9577..6734596b8e 100644 --- a/Mage.Sets/src/mage/cards/a/ArmamentOfNyx.java +++ b/Mage.Sets/src/mage/cards/a/ArmamentOfNyx.java @@ -19,7 +19,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -32,7 +31,7 @@ public final class ArmamentOfNyx extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public ArmamentOfNyx(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArmedProtocolDroid.java b/Mage.Sets/src/mage/cards/a/ArmedProtocolDroid.java index b2dc562cb1..a511730f90 100644 --- a/Mage.Sets/src/mage/cards/a/ArmedProtocolDroid.java +++ b/Mage.Sets/src/mage/cards/a/ArmedProtocolDroid.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -26,7 +25,7 @@ public final class ArmedProtocolDroid extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public ArmedProtocolDroid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java b/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java index 0e232c54c7..be6c97836c 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.ComparisonType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class ArtificersEpiphany extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control no artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ArtificersEpiphany(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArtificersHex.java b/Mage.Sets/src/mage/cards/a/ArtificersHex.java index fb84c723f7..43de56ba69 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersHex.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersHex.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -25,7 +24,7 @@ public final class ArtificersHex extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Equipment"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/a/Artillerize.java b/Mage.Sets/src/mage/cards/a/Artillerize.java index c8491f74f8..b6041b31b6 100644 --- a/Mage.Sets/src/mage/cards/a/Artillerize.java +++ b/Mage.Sets/src/mage/cards/a/Artillerize.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -23,8 +22,8 @@ public final class Artillerize extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public Artillerize(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AshesToAshes.java b/Mage.Sets/src/mage/cards/a/AshesToAshes.java index debc8797f7..a2caa3ab79 100644 --- a/Mage.Sets/src/mage/cards/a/AshesToAshes.java +++ b/Mage.Sets/src/mage/cards/a/AshesToAshes.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -25,7 +24,7 @@ public final class AshesToAshes extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public AshesToAshes(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AshnodsTransmogrant.java b/Mage.Sets/src/mage/cards/a/AshnodsTransmogrant.java index 87194eafc5..c92604f752 100644 --- a/Mage.Sets/src/mage/cards/a/AshnodsTransmogrant.java +++ b/Mage.Sets/src/mage/cards/a/AshnodsTransmogrant.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -30,7 +29,7 @@ public final class AshnodsTransmogrant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public AshnodsTransmogrant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Atog.java b/Mage.Sets/src/mage/cards/a/Atog.java index e192d2f1e1..317a12eb63 100644 --- a/Mage.Sets/src/mage/cards/a/Atog.java +++ b/Mage.Sets/src/mage/cards/a/Atog.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class Atog extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Atog(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AttendantOfVraska.java b/Mage.Sets/src/mage/cards/a/AttendantOfVraska.java index 78c6d325bb..fec4d35646 100644 --- a/Mage.Sets/src/mage/cards/a/AttendantOfVraska.java +++ b/Mage.Sets/src/mage/cards/a/AttendantOfVraska.java @@ -2,7 +2,6 @@ package mage.cards.a; import java.util.UUID; import mage.MageInt; -import mage.abilities.Ability; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility; @@ -14,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -28,7 +26,7 @@ public final class AttendantOfVraska extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.VRASKA)); } diff --git a/Mage.Sets/src/mage/cards/a/AugurOfBolas.java b/Mage.Sets/src/mage/cards/a/AugurOfBolas.java index 01a210e859..085a7db097 100644 --- a/Mage.Sets/src/mage/cards/a/AugurOfBolas.java +++ b/Mage.Sets/src/mage/cards/a/AugurOfBolas.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -29,7 +28,7 @@ public final class AugurOfBolas extends CardImpl { private static final FilterCard filter = new FilterCard("an instant or sorcery card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public AugurOfBolas(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AuraBarbs.java b/Mage.Sets/src/mage/cards/a/AuraBarbs.java index e10f64e301..648fab56ee 100644 --- a/Mage.Sets/src/mage/cards/a/AuraBarbs.java +++ b/Mage.Sets/src/mage/cards/a/AuraBarbs.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -55,7 +54,7 @@ public final class AuraBarbs extends CardImpl { public boolean apply(Game game, Ability source) { FilterPermanent filterEnchantments = new FilterPermanent(); - filterEnchantments.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterEnchantments.add(CardType.ENCHANTMENT.getPredicate()); for (Permanent permanent : game.getBattlefield().getActivePermanents(filterEnchantments, source.getControllerId(), source.getSourceId(), game)) { Player controller = game.getPlayer(permanent.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/a/Auramancer.java b/Mage.Sets/src/mage/cards/a/Auramancer.java index faede23465..1bcc44d9a9 100644 --- a/Mage.Sets/src/mage/cards/a/Auramancer.java +++ b/Mage.Sets/src/mage/cards/a/Auramancer.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -23,7 +22,7 @@ public final class Auramancer extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public Auramancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/Auratog.java b/Mage.Sets/src/mage/cards/a/Auratog.java index b72e921b6c..8c67f22007 100644 --- a/Mage.Sets/src/mage/cards/a/Auratog.java +++ b/Mage.Sets/src/mage/cards/a/Auratog.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class Auratog extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public Auratog(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AuriokSiegeSled.java b/Mage.Sets/src/mage/cards/a/AuriokSiegeSled.java index 4f14a80e95..570f8f567c 100644 --- a/Mage.Sets/src/mage/cards/a/AuriokSiegeSled.java +++ b/Mage.Sets/src/mage/cards/a/AuriokSiegeSled.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -27,7 +26,7 @@ public final class AuriokSiegeSled extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AuriokSiegeSled(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AuriokTransfixer.java b/Mage.Sets/src/mage/cards/a/AuriokTransfixer.java index b96ddd06ba..f8c0cbd6b5 100644 --- a/Mage.Sets/src/mage/cards/a/AuriokTransfixer.java +++ b/Mage.Sets/src/mage/cards/a/AuriokTransfixer.java @@ -15,7 +15,6 @@ import mage.constants.ColoredManaSymbol; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,7 +25,7 @@ public final class AuriokTransfixer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public AuriokTransfixer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AvidReclaimer.java b/Mage.Sets/src/mage/cards/a/AvidReclaimer.java index 264808fd6c..2839ebfefb 100644 --- a/Mage.Sets/src/mage/cards/a/AvidReclaimer.java +++ b/Mage.Sets/src/mage/cards/a/AvidReclaimer.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -26,7 +25,7 @@ public final class AvidReclaimer extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.NISSA)); } diff --git a/Mage.Sets/src/mage/cards/a/AvoidFate.java b/Mage.Sets/src/mage/cards/a/AvoidFate.java index 2e8bd46831..19408aad75 100644 --- a/Mage.Sets/src/mage/cards/a/AvoidFate.java +++ b/Mage.Sets/src/mage/cards/a/AvoidFate.java @@ -9,7 +9,6 @@ import mage.constants.SubType; import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.TargetsPermanentPredicate; import mage.target.TargetSpell; @@ -25,7 +24,7 @@ public final class AvoidFate extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant or Aura spell that targets a permanent you control"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new SubtypePredicate(SubType.AURA))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), new SubtypePredicate(SubType.AURA))); filter.add(new TargetsPermanentPredicate(StaticFilters.FILTER_CONTROLLED_PERMANENT)); } diff --git a/Mage.Sets/src/mage/cards/a/Awakening.java b/Mage.Sets/src/mage/cards/a/Awakening.java index a8b1e2402c..c05fc895ca 100644 --- a/Mage.Sets/src/mage/cards/a/Awakening.java +++ b/Mage.Sets/src/mage/cards/a/Awakening.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,8 +21,8 @@ public final class Awakening extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java b/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java index ac9524d8de..c93cc1474e 100644 --- a/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java +++ b/Mage.Sets/src/mage/cards/a/AzcantaTheSunkenRuin.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,8 +26,8 @@ public final class AzcantaTheSunkenRuin extends CardImpl { private static final FilterCard filter = new FilterCard("noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public AzcantaTheSunkenRuin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BaneOfProgress.java b/Mage.Sets/src/mage/cards/b/BaneOfProgress.java index 139737658c..c6700c74c2 100644 --- a/Mage.Sets/src/mage/cards/b/BaneOfProgress.java +++ b/Mage.Sets/src/mage/cards/b/BaneOfProgress.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -51,8 +50,8 @@ class BaneOfProgressEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public BaneOfProgressEffect() { super(Outcome.DestroyPermanent); diff --git a/Mage.Sets/src/mage/cards/b/BanishingStroke.java b/Mage.Sets/src/mage/cards/b/BanishingStroke.java index 0516bc1a08..51cc066c88 100644 --- a/Mage.Sets/src/mage/cards/b/BanishingStroke.java +++ b/Mage.Sets/src/mage/cards/b/BanishingStroke.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,9 +22,9 @@ public final class BanishingStroke extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public BanishingStroke(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BanishmentDecree.java b/Mage.Sets/src/mage/cards/b/BanishmentDecree.java index 758ca2d66b..e8cdf32070 100644 --- a/Mage.Sets/src/mage/cards/b/BanishmentDecree.java +++ b/Mage.Sets/src/mage/cards/b/BanishmentDecree.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class BanishmentDecree extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public BanishmentDecree (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BantCharm.java b/Mage.Sets/src/mage/cards/b/BantCharm.java index 5948547aa9..f91b7e0865 100644 --- a/Mage.Sets/src/mage/cards/b/BantCharm.java +++ b/Mage.Sets/src/mage/cards/b/BantCharm.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetArtifactPermanent; import mage.target.common.TargetCreaturePermanent; @@ -24,7 +23,7 @@ public final class BantCharm extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public BantCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BantPanorama.java b/Mage.Sets/src/mage/cards/b/BantPanorama.java index 48782ef4a2..de6f85c665 100644 --- a/Mage.Sets/src/mage/cards/b/BantPanorama.java +++ b/Mage.Sets/src/mage/cards/b/BantPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -27,7 +26,7 @@ public final class BantPanorama extends CardImpl { private static final FilterCard filter = new FilterCard("a basic Forest, Plains, or Island card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate(SubType.FOREST), diff --git a/Mage.Sets/src/mage/cards/b/BaralChiefOfCompliance.java b/Mage.Sets/src/mage/cards/b/BaralChiefOfCompliance.java index be53859f1a..caa3333c54 100644 --- a/Mage.Sets/src/mage/cards/b/BaralChiefOfCompliance.java +++ b/Mage.Sets/src/mage/cards/b/BaralChiefOfCompliance.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -28,8 +27,8 @@ public final class BaralChiefOfCompliance extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/b/BaralsExpertise.java b/Mage.Sets/src/mage/cards/b/BaralsExpertise.java index e1df8014b9..8e875526a1 100644 --- a/Mage.Sets/src/mage/cards/b/BaralsExpertise.java +++ b/Mage.Sets/src/mage/cards/b/BaralsExpertise.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,8 +20,8 @@ public final class BaralsExpertise extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts and/or creatures"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public BaralsExpertise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BarrageOgre.java b/Mage.Sets/src/mage/cards/b/BarrageOgre.java index 6e8c295a00..69e058e6d8 100644 --- a/Mage.Sets/src/mage/cards/b/BarrageOgre.java +++ b/Mage.Sets/src/mage/cards/b/BarrageOgre.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -28,7 +27,7 @@ public final class BarrageOgre extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public BarrageOgre (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BarterInBlood.java b/Mage.Sets/src/mage/cards/b/BarterInBlood.java index 13bd00dc58..78dd07714c 100644 --- a/Mage.Sets/src/mage/cards/b/BarterInBlood.java +++ b/Mage.Sets/src/mage/cards/b/BarterInBlood.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public final class BarterInBlood extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public BarterInBlood(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BazaarTrader.java b/Mage.Sets/src/mage/cards/b/BazaarTrader.java index 11f36aef5e..4a36535f58 100644 --- a/Mage.Sets/src/mage/cards/b/BazaarTrader.java +++ b/Mage.Sets/src/mage/cards/b/BazaarTrader.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -30,9 +29,9 @@ public final class BazaarTrader extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public BazaarTrader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BeaconOfUnrest.java b/Mage.Sets/src/mage/cards/b/BeaconOfUnrest.java index b8b075fd4f..061072d60e 100644 --- a/Mage.Sets/src/mage/cards/b/BeaconOfUnrest.java +++ b/Mage.Sets/src/mage/cards/b/BeaconOfUnrest.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.common.TargetCardInGraveyard; @@ -22,8 +21,8 @@ public final class BeaconOfUnrest extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public BeaconOfUnrest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Bedevil.java b/Mage.Sets/src/mage/cards/b/Bedevil.java index 83e9390810..aa22d23914 100644 --- a/Mage.Sets/src/mage/cards/b/Bedevil.java +++ b/Mage.Sets/src/mage/cards/b/Bedevil.java @@ -6,7 +6,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -20,9 +19,9 @@ public final class Bedevil extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/b/Befoul.java b/Mage.Sets/src/mage/cards/b/Befoul.java index 2825bd82bf..6da47503dd 100644 --- a/Mage.Sets/src/mage/cards/b/Befoul.java +++ b/Mage.Sets/src/mage/cards/b/Befoul.java @@ -37,7 +37,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPermanent; @@ -51,10 +50,10 @@ public final class Befoul extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), Predicates.and( Predicates.not(new ColorPredicate(ObjectColor.BLACK)), - new CardTypePredicate(CardType.CREATURE)))); + CardType.CREATURE.getPredicate()))); } public Befoul (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{B}{B}"); diff --git a/Mage.Sets/src/mage/cards/b/BellowingTanglewurm.java b/Mage.Sets/src/mage/cards/b/BellowingTanglewurm.java index a800c02a9e..e17114251c 100644 --- a/Mage.Sets/src/mage/cards/b/BellowingTanglewurm.java +++ b/Mage.Sets/src/mage/cards/b/BellowingTanglewurm.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -26,7 +25,7 @@ public final class BellowingTanglewurm extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("green creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ColorPredicate(ObjectColor.GREEN)); } diff --git a/Mage.Sets/src/mage/cards/b/BelovedChaplain.java b/Mage.Sets/src/mage/cards/b/BelovedChaplain.java index 44b0929a0d..0c7e11c447 100644 --- a/Mage.Sets/src/mage/cards/b/BelovedChaplain.java +++ b/Mage.Sets/src/mage/cards/b/BelovedChaplain.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class BelovedChaplain extends CardImpl { static final FilterCard filter = new FilterCard("creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public BelovedChaplain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BirthingPod.java b/Mage.Sets/src/mage/cards/b/BirthingPod.java index 76a8df1d7d..3038b345fa 100644 --- a/Mage.Sets/src/mage/cards/b/BirthingPod.java +++ b/Mage.Sets/src/mage/cards/b/BirthingPod.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -89,7 +88,7 @@ class BirthingPodEffect extends OneShotEffect { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 1; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/b/BishopOfRebirth.java b/Mage.Sets/src/mage/cards/b/BishopOfRebirth.java index 4d56af49f4..bb6edd051b 100644 --- a/Mage.Sets/src/mage/cards/b/BishopOfRebirth.java +++ b/Mage.Sets/src/mage/cards/b/BishopOfRebirth.java @@ -14,7 +14,6 @@ import mage.constants.ComparisonType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -28,7 +27,7 @@ public final class BishopOfRebirth extends CardImpl { static { filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public BishopOfRebirth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BladeSplicer.java b/Mage.Sets/src/mage/cards/b/BladeSplicer.java index 9d1b4ae502..0e64d95264 100644 --- a/Mage.Sets/src/mage/cards/b/BladeSplicer.java +++ b/Mage.Sets/src/mage/cards/b/BladeSplicer.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.permanent.token.GolemToken; @@ -28,7 +27,7 @@ public final class BladeSplicer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Golem creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.GOLEM)); } diff --git a/Mage.Sets/src/mage/cards/b/BlessedLight.java b/Mage.Sets/src/mage/cards/b/BlessedLight.java index d1492f6aa2..9a50b01ef6 100644 --- a/Mage.Sets/src/mage/cards/b/BlessedLight.java +++ b/Mage.Sets/src/mage/cards/b/BlessedLight.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,7 +19,7 @@ public final class BlessedLight extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public BlessedLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BlessedSpirits.java b/Mage.Sets/src/mage/cards/b/BlessedSpirits.java index 63a4567a50..356f4b808a 100644 --- a/Mage.Sets/src/mage/cards/b/BlessedSpirits.java +++ b/Mage.Sets/src/mage/cards/b/BlessedSpirits.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class BlessedSpirits extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public BlessedSpirits(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Blightcaster.java b/Mage.Sets/src/mage/cards/b/Blightcaster.java index 499d3298e3..589a868ef1 100644 --- a/Mage.Sets/src/mage/cards/b/Blightcaster.java +++ b/Mage.Sets/src/mage/cards/b/Blightcaster.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -24,7 +23,7 @@ public final class Blightcaster extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public Blightcaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BlinkmothWell.java b/Mage.Sets/src/mage/cards/b/BlinkmothWell.java index 11d3ddfc36..9ef98c9af4 100644 --- a/Mage.Sets/src/mage/cards/b/BlinkmothWell.java +++ b/Mage.Sets/src/mage/cards/b/BlinkmothWell.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,7 +25,7 @@ public final class BlinkmothWell extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public BlinkmothWell(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodAspirant.java b/Mage.Sets/src/mage/cards/b/BloodAspirant.java index 7656ea802e..e28a881353 100644 --- a/Mage.Sets/src/mage/cards/b/BloodAspirant.java +++ b/Mage.Sets/src/mage/cards/b/BloodAspirant.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.target.common.TargetControlledPermanent; @@ -35,8 +34,8 @@ public final class BloodAspirant extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/b/BloodFunnel.java b/Mage.Sets/src/mage/cards/b/BloodFunnel.java index 870bba1ef9..ace0e4857e 100644 --- a/Mage.Sets/src/mage/cards/b/BloodFunnel.java +++ b/Mage.Sets/src/mage/cards/b/BloodFunnel.java @@ -16,7 +16,6 @@ import mage.filter.FilterCard; import mage.filter.FilterSpell; import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -29,8 +28,8 @@ public final class BloodFunnel extends CardImpl { private static final FilterSpell filterNoncreature = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filterNoncreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filterNoncreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public BloodFunnel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodlordOfVaasgoth.java b/Mage.Sets/src/mage/cards/b/BloodlordOfVaasgoth.java index 5e951498c3..5b53953570 100644 --- a/Mage.Sets/src/mage/cards/b/BloodlordOfVaasgoth.java +++ b/Mage.Sets/src/mage/cards/b/BloodlordOfVaasgoth.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -27,7 +26,7 @@ public final class BloodlordOfVaasgoth extends CardImpl { private static final FilterSpell filter = new FilterSpell("a Vampire creature spell"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.VAMPIRE)); } diff --git a/Mage.Sets/src/mage/cards/b/BloodwaterEntity.java b/Mage.Sets/src/mage/cards/b/BloodwaterEntity.java index 5f7df86e8d..417d75dc1b 100644 --- a/Mage.Sets/src/mage/cards/b/BloodwaterEntity.java +++ b/Mage.Sets/src/mage/cards/b/BloodwaterEntity.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; import java.util.UUID; @@ -29,8 +28,8 @@ public final class BloodwaterEntity extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public BloodwaterEntity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BludgeonBrawl.java b/Mage.Sets/src/mage/cards/b/BludgeonBrawl.java index 5bc965bbcc..c5ded3194b 100644 --- a/Mage.Sets/src/mage/cards/b/BludgeonBrawl.java +++ b/Mage.Sets/src/mage/cards/b/BludgeonBrawl.java @@ -17,7 +17,6 @@ import mage.cards.CardsImpl; import mage.constants.*; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -80,7 +79,7 @@ class BludgeonBrawlAddSubtypeEffect extends ContinuousEffectImpl { @Override public boolean apply(Game game, Ability source) { FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature, non-Equipment artifact"); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); filter.add(Predicates.not(new SubtypePredicate(SubType.EQUIPMENT))); Cards affectedPermanents = new CardsImpl(); diff --git a/Mage.Sets/src/mage/cards/b/BolassCitadel.java b/Mage.Sets/src/mage/cards/b/BolassCitadel.java index f7b9fa3b54..bf220306ba 100644 --- a/Mage.Sets/src/mage/cards/b/BolassCitadel.java +++ b/Mage.Sets/src/mage/cards/b/BolassCitadel.java @@ -18,7 +18,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetControlledPermanent; @@ -34,7 +33,7 @@ public final class BolassCitadel extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanents"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public BolassCitadel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BoneMiser.java b/Mage.Sets/src/mage/cards/b/BoneMiser.java index 3ff1558dd4..28d2110d49 100644 --- a/Mage.Sets/src/mage/cards/b/BoneMiser.java +++ b/Mage.Sets/src/mage/cards/b/BoneMiser.java @@ -14,7 +14,6 @@ import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ZombieToken; import java.util.UUID; @@ -27,7 +26,7 @@ public final class BoneMiser extends CardImpl { private static final FilterCard filter = new FilterNonlandCard("a noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public BoneMiser(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BoneShredder.java b/Mage.Sets/src/mage/cards/b/BoneShredder.java index 9cd0d3944d..6249a8b1ce 100644 --- a/Mage.Sets/src/mage/cards/b/BoneShredder.java +++ b/Mage.Sets/src/mage/cards/b/BoneShredder.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.Target; import mage.target.common.TargetCreaturePermanent; @@ -29,7 +28,7 @@ public final class BoneShredder extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/b/BontusMonument.java b/Mage.Sets/src/mage/cards/b/BontusMonument.java index 0f0d86d81b..1b369493c7 100644 --- a/Mage.Sets/src/mage/cards/b/BontusMonument.java +++ b/Mage.Sets/src/mage/cards/b/BontusMonument.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import static mage.filter.StaticFilters.FILTER_SPELL_A_CREATURE; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -30,7 +29,7 @@ public final class BontusMonument extends CardImpl { private static final FilterCard filter = new FilterCard("black creature spells"); static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.BLACK), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(new ColorPredicate(ObjectColor.BLACK), CardType.CREATURE.getPredicate())); } public BontusMonument(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java b/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java index 944c751ba4..d678837fa9 100644 --- a/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java +++ b/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -76,7 +75,7 @@ class BoonweaverGiantEffect extends OneShotEffect { } FilterCard filter = new FilterCard("Aura card"); - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new SubtypePredicate(SubType.AURA)); Card card = null; diff --git a/Mage.Sets/src/mage/cards/b/BountyAgent.java b/Mage.Sets/src/mage/cards/b/BountyAgent.java index 515c793040..28df060c84 100644 --- a/Mage.Sets/src/mage/cards/b/BountyAgent.java +++ b/Mage.Sets/src/mage/cards/b/BountyAgent.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; @@ -31,9 +30,9 @@ public final class BountyAgent extends CardImpl { static { filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/b/BragoKingEternal.java b/Mage.Sets/src/mage/cards/b/BragoKingEternal.java index ce1353d4d0..d8038393f9 100644 --- a/Mage.Sets/src/mage/cards/b/BragoKingEternal.java +++ b/Mage.Sets/src/mage/cards/b/BragoKingEternal.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import java.util.UUID; @@ -40,7 +39,7 @@ public final class BragoKingEternal extends CardImpl { effect.setText("exile any number of target nonland permanents you control"); Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(effect, false); FilterControlledPermanent filterControlledNonlandPermanent = new FilterControlledPermanent(); - filterControlledNonlandPermanent.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterControlledNonlandPermanent.add(Predicates.not(CardType.LAND.getPredicate())); ability.addTarget(new TargetControlledPermanent(0, Integer.MAX_VALUE, filterControlledNonlandPermanent, false)); ability.addEffect(new ReturnFromExileEffect(this.getId(), Zone.BATTLEFIELD, ", then return those cards to the battlefield under their owner's control")); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/b/BraidsCabalMinion.java b/Mage.Sets/src/mage/cards/b/BraidsCabalMinion.java index 271de1ce81..ba19f526c9 100644 --- a/Mage.Sets/src/mage/cards/b/BraidsCabalMinion.java +++ b/Mage.Sets/src/mage/cards/b/BraidsCabalMinion.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -22,9 +21,9 @@ public final class BraidsCabalMinion extends CardImpl { static final FilterPermanent filter = new FilterPermanent("an artifact, creature, or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public BraidsCabalMinion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BraidsConjurerAdept.java b/Mage.Sets/src/mage/cards/b/BraidsConjurerAdept.java index a9ea93a1bb..d0417bf6b9 100644 --- a/Mage.Sets/src/mage/cards/b/BraidsConjurerAdept.java +++ b/Mage.Sets/src/mage/cards/b/BraidsConjurerAdept.java @@ -13,7 +13,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,9 +24,9 @@ public final class BraidsConjurerAdept extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public BraidsConjurerAdept(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Bramblecrush.java b/Mage.Sets/src/mage/cards/b/Bramblecrush.java index 97cf952639..fa91894855 100644 --- a/Mage.Sets/src/mage/cards/b/Bramblecrush.java +++ b/Mage.Sets/src/mage/cards/b/Bramblecrush.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,7 +19,7 @@ public final class Bramblecrush extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Bramblecrush(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Brawn.java b/Mage.Sets/src/mage/cards/b/Brawn.java index 6dbc1ba887..fd9124748d 100644 --- a/Mage.Sets/src/mage/cards/b/Brawn.java +++ b/Mage.Sets/src/mage/cards/b/Brawn.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +30,7 @@ public final class Brawn extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Forest"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SubtypePredicate(SubType.FOREST)); } diff --git a/Mage.Sets/src/mage/cards/b/Brightflame.java b/Mage.Sets/src/mage/cards/b/Brightflame.java index 54f8ab2edf..2e4af587d9 100644 --- a/Mage.Sets/src/mage/cards/b/Brightflame.java +++ b/Mage.Sets/src/mage/cards/b/Brightflame.java @@ -13,7 +13,6 @@ import mage.constants.AbilityWord; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -50,7 +49,7 @@ class BrightflameEffect extends OneShotEffect { protected DynamicValue amount; static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } BrightflameEffect(DynamicValue amount) { diff --git a/Mage.Sets/src/mage/cards/b/BrineGiant.java b/Mage.Sets/src/mage/cards/b/BrineGiant.java index 93cb910b15..09942e2ab3 100644 --- a/Mage.Sets/src/mage/cards/b/BrineGiant.java +++ b/Mage.Sets/src/mage/cards/b/BrineGiant.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.util.CardUtil; @@ -53,7 +52,7 @@ class BrineGiantCostReductionEffect extends CostModificationEffectImpl { static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } BrineGiantCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/b/BringToLight.java b/Mage.Sets/src/mage/cards/b/BringToLight.java index de4435c5e6..a27b620e44 100644 --- a/Mage.Sets/src/mage/cards/b/BringToLight.java +++ b/Mage.Sets/src/mage/cards/b/BringToLight.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -70,8 +69,8 @@ class BringToLightEffect extends OneShotEffect { if (controller != null) { int numberColors = ColorsOfManaSpentToCastCount.getInstance().calculate(game, source, this); FilterCard filter = new FilterCard(); - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, numberColors + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); controller.searchLibrary(target, source, game); diff --git a/Mage.Sets/src/mage/cards/b/BrinkOfDisaster.java b/Mage.Sets/src/mage/cards/b/BrinkOfDisaster.java index 877ecd7669..557992e4de 100644 --- a/Mage.Sets/src/mage/cards/b/BrinkOfDisaster.java +++ b/Mage.Sets/src/mage/cards/b/BrinkOfDisaster.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -27,8 +26,8 @@ public final class BrinkOfDisaster extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public BrinkOfDisaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BrokenVisage.java b/Mage.Sets/src/mage/cards/b/BrokenVisage.java index 495b05ec36..3505018f22 100644 --- a/Mage.Sets/src/mage/cards/b/BrokenVisage.java +++ b/Mage.Sets/src/mage/cards/b/BrokenVisage.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AttackingPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -30,7 +29,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(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(AttackingPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/b/Broodstar.java b/Mage.Sets/src/mage/cards/b/Broodstar.java index 139daa6efc..3e723360c3 100644 --- a/Mage.Sets/src/mage/cards/b/Broodstar.java +++ b/Mage.Sets/src/mage/cards/b/Broodstar.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,7 +24,7 @@ public final class Broodstar extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Broodstar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BrunaLightOfAlabaster.java b/Mage.Sets/src/mage/cards/b/BrunaLightOfAlabaster.java index 09cb8438e2..59e9d0f8fc 100644 --- a/Mage.Sets/src/mage/cards/b/BrunaLightOfAlabaster.java +++ b/Mage.Sets/src/mage/cards/b/BrunaLightOfAlabaster.java @@ -18,7 +18,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardIdPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.AuraCardCanAttachToPermanentId; import mage.filter.predicate.other.AuraPermanentCanAttachToPermanentId; @@ -83,10 +82,10 @@ class BrunaLightOfAlabasterEffect extends OneShotEffect { FilterPermanent filterAura = new FilterPermanent("Aura"); FilterCard filterAuraCard = new FilterCard("Aura card"); - filterAura.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAura.add(CardType.ENCHANTMENT.getPredicate()); filterAura.add(new SubtypePredicate(SubType.AURA)); filterAura.add(new AuraPermanentCanAttachToPermanentId(bruna)); - filterAuraCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAuraCard.add(CardType.ENCHANTMENT.getPredicate()); filterAuraCard.add(new SubtypePredicate(SubType.AURA)); filterAuraCard.add(new AuraCardCanAttachToPermanentId(bruna)); diff --git a/Mage.Sets/src/mage/cards/b/BrunaTheFadingLight.java b/Mage.Sets/src/mage/cards/b/BrunaTheFadingLight.java index 20aeab56d2..81415d2ede 100644 --- a/Mage.Sets/src/mage/cards/b/BrunaTheFadingLight.java +++ b/Mage.Sets/src/mage/cards/b/BrunaTheFadingLight.java @@ -19,7 +19,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -32,7 +31,7 @@ public final class BrunaTheFadingLight extends CardImpl { private static final FilterCard filter = new FilterCard("Angel or Human creature card"); static { - filter.add(Predicates.and(new CardTypePredicate(CardType.CREATURE), + filter.add(Predicates.and(CardType.CREATURE.getPredicate(), (Predicates.or(new SubtypePredicate(SubType.HUMAN), (new SubtypePredicate(SubType.ANGEL)))))); } diff --git a/Mage.Sets/src/mage/cards/b/BrutalSuppression.java b/Mage.Sets/src/mage/cards/b/BrutalSuppression.java index 0d33236877..28b668cfad 100644 --- a/Mage.Sets/src/mage/cards/b/BrutalSuppression.java +++ b/Mage.Sets/src/mage/cards/b/BrutalSuppression.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.TokenPredicate; import mage.game.Game; @@ -52,7 +51,7 @@ class BrutalSuppressionAdditionalCostEffect extends CostModificationEffectImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a land"); static{ - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } private static final FilterPermanent filter2 = new FilterPermanent("nontoken Rebels"); diff --git a/Mage.Sets/src/mage/cards/b/BrutalizerExarch.java b/Mage.Sets/src/mage/cards/b/BrutalizerExarch.java index 39e2f957b2..de15f1581d 100644 --- a/Mage.Sets/src/mage/cards/b/BrutalizerExarch.java +++ b/Mage.Sets/src/mage/cards/b/BrutalizerExarch.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -33,7 +32,7 @@ public final class BrutalizerExarch extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public BrutalizerExarch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BurningWish.java b/Mage.Sets/src/mage/cards/b/BurningWish.java index 2567fcfc38..cd869777ba 100644 --- a/Mage.Sets/src/mage/cards/b/BurningWish.java +++ b/Mage.Sets/src/mage/cards/b/BurningWish.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class BurningWish extends CardImpl { private static final FilterCard filter = new FilterCard("a sorcery card"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public BurningWish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Burnout.java b/Mage.Sets/src/mage/cards/b/Burnout.java index e063680040..8b39366d12 100644 --- a/Mage.Sets/src/mage/cards/b/Burnout.java +++ b/Mage.Sets/src/mage/cards/b/Burnout.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.Spell; import mage.target.TargetSpell; @@ -28,7 +27,7 @@ public final class Burnout extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public Burnout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BygoneBishop.java b/Mage.Sets/src/mage/cards/b/BygoneBishop.java index 923e17ddc8..caf297b46a 100644 --- a/Mage.Sets/src/mage/cards/b/BygoneBishop.java +++ b/Mage.Sets/src/mage/cards/b/BygoneBishop.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; /** @@ -24,7 +23,7 @@ public final class BygoneBishop extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("a creature spell with converted mana cost 3 or less"); static { - filterSpell.add(new CardTypePredicate(CardType.CREATURE)); + filterSpell.add(CardType.CREATURE.getPredicate()); filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/c/CalmingVerse.java b/Mage.Sets/src/mage/cards/c/CalmingVerse.java index 08a66a28ef..3c74e14024 100644 --- a/Mage.Sets/src/mage/cards/c/CalmingVerse.java +++ b/Mage.Sets/src/mage/cards/c/CalmingVerse.java @@ -13,7 +13,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledEnchantmentPermanent; import mage.filter.common.FilterEnchantmentPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; @@ -49,7 +48,7 @@ class CalmingVerseEffect extends OneShotEffect { private static final FilterPermanent untappedLandFilter = new FilterPermanent("If you control an untapped land"); static { - untappedLandFilter.add(new CardTypePredicate(CardType.LAND)); + untappedLandFilter.add(CardType.LAND.getPredicate()); untappedLandFilter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/c/CantinaBand.java b/Mage.Sets/src/mage/cards/c/CantinaBand.java index fb70df4f96..398c9ce5ee 100644 --- a/Mage.Sets/src/mage/cards/c/CantinaBand.java +++ b/Mage.Sets/src/mage/cards/c/CantinaBand.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -27,7 +26,7 @@ public final class CantinaBand extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public CantinaBand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Cantivore.java b/Mage.Sets/src/mage/cards/c/Cantivore.java index 6fcceed428..22fae9fd5f 100644 --- a/Mage.Sets/src/mage/cards/c/Cantivore.java +++ b/Mage.Sets/src/mage/cards/c/Cantivore.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class Cantivore extends CardImpl { static final FilterCard filter = new FilterCard("enchantment cards"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public Cantivore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CarpetOfFlowers.java b/Mage.Sets/src/mage/cards/c/CarpetOfFlowers.java index 7ded0c7a72..08544531f0 100644 --- a/Mage.Sets/src/mage/cards/c/CarpetOfFlowers.java +++ b/Mage.Sets/src/mage/cards/c/CarpetOfFlowers.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -117,7 +116,7 @@ class CarpetOfFlowersEffect extends ManaEffect { static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } CarpetOfFlowersEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CastThroughTime.java b/Mage.Sets/src/mage/cards/c/CastThroughTime.java index 57ed244204..1693ae89d5 100644 --- a/Mage.Sets/src/mage/cards/c/CastThroughTime.java +++ b/Mage.Sets/src/mage/cards/c/CastThroughTime.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.Spell; @@ -27,7 +26,7 @@ public final class CastThroughTime extends CardImpl { protected static final FilterCard filter = new FilterCard("Instant and sorcery spells you control"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public CastThroughTime(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CataclysmicGearhulk.java b/Mage.Sets/src/mage/cards/c/CataclysmicGearhulk.java index 0a1669bf3d..2c76cf9d58 100644 --- a/Mage.Sets/src/mage/cards/c/CataclysmicGearhulk.java +++ b/Mage.Sets/src/mage/cards/c/CataclysmicGearhulk.java @@ -20,7 +20,6 @@ import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledEnchantmentPermanent; import mage.filter.common.FilterControlledPlaneswalkerPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -66,17 +65,17 @@ class CataclysmicGearhulkEffect extends OneShotEffect { static { filterArtifact.add(Predicates.and( - new CardTypePredicate(CardType.ARTIFACT), - Predicates.not(new CardTypePredicate(CardType.LAND)))); + CardType.ARTIFACT.getPredicate(), + Predicates.not(CardType.LAND.getPredicate()))); filterCreature.add(Predicates.and( - new CardTypePredicate(CardType.CREATURE), - Predicates.not(new CardTypePredicate(CardType.LAND)))); + CardType.CREATURE.getPredicate(), + Predicates.not(CardType.LAND.getPredicate()))); filterEnchantment.add(Predicates.and( - new CardTypePredicate(CardType.ENCHANTMENT), - Predicates.not(new CardTypePredicate(CardType.LAND)))); + CardType.ENCHANTMENT.getPredicate(), + Predicates.not(CardType.LAND.getPredicate()))); filterPlaneswalker.add(Predicates.and( - new CardTypePredicate(CardType.PLANESWALKER), - Predicates.not(new CardTypePredicate(CardType.LAND)))); + CardType.PLANESWALKER.getPredicate(), + Predicates.not(CardType.LAND.getPredicate()))); } public CataclysmicGearhulkEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CatacombDragon.java b/Mage.Sets/src/mage/cards/c/CatacombDragon.java index c76e5deda0..df2ca191d1 100644 --- a/Mage.Sets/src/mage/cards/c/CatacombDragon.java +++ b/Mage.Sets/src/mage/cards/c/CatacombDragon.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -29,7 +28,7 @@ public final class CatacombDragon extends CardImpl { = new FilterCreaturePermanent("a nonartifact, non-Dragon creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new SubtypePredicate(SubType.DRAGON))); } diff --git a/Mage.Sets/src/mage/cards/c/CatharsCompanion.java b/Mage.Sets/src/mage/cards/c/CatharsCompanion.java index e123d5473f..d26614f24f 100644 --- a/Mage.Sets/src/mage/cards/c/CatharsCompanion.java +++ b/Mage.Sets/src/mage/cards/c/CatharsCompanion.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class CatharsCompanion extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public CatharsCompanion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CausticWasps.java b/Mage.Sets/src/mage/cards/c/CausticWasps.java index 13d43f4340..2792391cf6 100644 --- a/Mage.Sets/src/mage/cards/c/CausticWasps.java +++ b/Mage.Sets/src/mage/cards/c/CausticWasps.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -76,7 +75,7 @@ class CausticWaspsTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getTargetId()); if (player != null) { FilterPermanent filter = new FilterPermanent("an artifact controlled by " + player.getLogName()); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ControllerIdPredicate(event.getTargetId())); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/c/CelestialAncient.java b/Mage.Sets/src/mage/cards/c/CelestialAncient.java index d45d41fc98..69ed31174b 100644 --- a/Mage.Sets/src/mage/cards/c/CelestialAncient.java +++ b/Mage.Sets/src/mage/cards/c/CelestialAncient.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class CelestialAncient extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public CelestialAncient(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W}{W}"); diff --git a/Mage.Sets/src/mage/cards/c/CentaurOmenreader.java b/Mage.Sets/src/mage/cards/c/CentaurOmenreader.java index 3d818cfa08..35de3d2a46 100644 --- a/Mage.Sets/src/mage/cards/c/CentaurOmenreader.java +++ b/Mage.Sets/src/mage/cards/c/CentaurOmenreader.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -26,7 +25,7 @@ public final class CentaurOmenreader extends CardImpl { private static final FilterCard filter = new FilterCard("creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public CentaurOmenreader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChainOfAcid.java b/Mage.Sets/src/mage/cards/c/ChainOfAcid.java index af4475fbb7..79a201612a 100644 --- a/Mage.Sets/src/mage/cards/c/ChainOfAcid.java +++ b/Mage.Sets/src/mage/cards/c/ChainOfAcid.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.Spell; @@ -29,7 +28,7 @@ public final class ChainOfAcid extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ChainOfAcid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChancellorOfTheSpires.java b/Mage.Sets/src/mage/cards/c/ChancellorOfTheSpires.java index 822afb1257..689fd0bf19 100644 --- a/Mage.Sets/src/mage/cards/c/ChancellorOfTheSpires.java +++ b/Mage.Sets/src/mage/cards/c/ChancellorOfTheSpires.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -37,8 +36,8 @@ public final class ChancellorOfTheSpires extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public ChancellorOfTheSpires(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Chandler.java b/Mage.Sets/src/mage/cards/c/Chandler.java index 4ffd1b5775..b8f0a0566e 100644 --- a/Mage.Sets/src/mage/cards/c/Chandler.java +++ b/Mage.Sets/src/mage/cards/c/Chandler.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -27,7 +26,7 @@ public final class Chandler extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Chandler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChandraAblaze.java b/Mage.Sets/src/mage/cards/c/ChandraAblaze.java index e2cefa5d39..f669cc5ef6 100644 --- a/Mage.Sets/src/mage/cards/c/ChandraAblaze.java +++ b/Mage.Sets/src/mage/cards/c/ChandraAblaze.java @@ -21,7 +21,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -162,8 +161,8 @@ class ChandraAblazeEffect5 extends OneShotEffect { FilterCard filter = new FilterCard("red instant or sorcery card from your graveyard to play"); filter.add(new ColorPredicate(ObjectColor.RED)); filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); String message = "Play red instant or sorcery card from your graveyard without paying its mana cost?"; Set cards = player.getGraveyard().getCards(filter, game); diff --git a/Mage.Sets/src/mage/cards/c/ChandrasDefeat.java b/Mage.Sets/src/mage/cards/c/ChandrasDefeat.java index 0da144b19c..047d6d5565 100644 --- a/Mage.Sets/src/mage/cards/c/ChandrasDefeat.java +++ b/Mage.Sets/src/mage/cards/c/ChandrasDefeat.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; @@ -30,7 +29,7 @@ public final class ChandrasDefeat extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.RED)); - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.PLANESWALKER))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.PLANESWALKER.getPredicate())); } public ChandrasDefeat(UUID ownerId, CardSetInfo setInfo) { @@ -56,7 +55,7 @@ class ChandrasDefeatEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.CHANDRA)); } diff --git a/Mage.Sets/src/mage/cards/c/CharmbreakerDevils.java b/Mage.Sets/src/mage/cards/c/CharmbreakerDevils.java index 2158bd95f8..4526461475 100644 --- a/Mage.Sets/src/mage/cards/c/CharmbreakerDevils.java +++ b/Mage.Sets/src/mage/cards/c/CharmbreakerDevils.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent.EventType; import mage.players.Player; @@ -35,8 +34,8 @@ public final class CharmbreakerDevils extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public CharmbreakerDevils(UUID ownerId, CardSetInfo setInfo) { @@ -84,8 +83,8 @@ class CharmbreakerDevilsEffect extends OneShotEffect { if (player != null) { FilterCard filter = new FilterCard("instant or sorcery card"); filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); Card[] cards = player.getGraveyard().getCards(filter, game).toArray(new Card[0]); if (cards.length > 0) { Card card = cards[RandomUtil.nextInt(cards.length)]; diff --git a/Mage.Sets/src/mage/cards/c/ChiefOfTheFoundry.java b/Mage.Sets/src/mage/cards/c/ChiefOfTheFoundry.java index 2c896ec266..b51bc2f910 100644 --- a/Mage.Sets/src/mage/cards/c/ChiefOfTheFoundry.java +++ b/Mage.Sets/src/mage/cards/c/ChiefOfTheFoundry.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -25,7 +24,7 @@ public final class ChiefOfTheFoundry extends CardImpl { private static final FilterCreaturePermanent filterBoosted = new FilterCreaturePermanent("Other artifact creatures you control"); static { - filterBoosted.add(new CardTypePredicate(CardType.ARTIFACT)); + filterBoosted.add(CardType.ARTIFACT.getPredicate()); filterBoosted.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/c/ChimericEgg.java b/Mage.Sets/src/mage/cards/c/ChimericEgg.java index 5508713638..fe5ef8f669 100644 --- a/Mage.Sets/src/mage/cards/c/ChimericEgg.java +++ b/Mage.Sets/src/mage/cards/c/ChimericEgg.java @@ -3,7 +3,6 @@ package mage.cards.c; import java.util.UUID; -import mage.MageInt; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SpellCastOpponentTriggeredAbility; import mage.abilities.costs.common.RemoveCountersSourceCost; @@ -20,9 +19,6 @@ import mage.counters.Counter; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; -import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; import mage.game.permanent.token.custom.CreatureToken; @@ -34,7 +30,7 @@ public final class ChimericEgg extends CardImpl { private static final FilterSpell nonArtifactFilter = new FilterSpell("a nonartifact spell"); static { - nonArtifactFilter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + nonArtifactFilter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public ChimericEgg(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChromeMox.java b/Mage.Sets/src/mage/cards/c/ChromeMox.java index fb7f3befef..fd98e01171 100644 --- a/Mage.Sets/src/mage/cards/c/ChromeMox.java +++ b/Mage.Sets/src/mage/cards/c/ChromeMox.java @@ -19,7 +19,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -60,7 +59,7 @@ class ChromeMoxEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("nonartifact, nonland card"); static { - filter.add(Predicates.not(Predicates.or(new CardTypePredicate(CardType.LAND), new CardTypePredicate(CardType.ARTIFACT)))); + filter.add(Predicates.not(Predicates.or(CardType.LAND.getPredicate(), CardType.ARTIFACT.getPredicate()))); } public ChromeMoxEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CircleOfProtectionArtifacts.java b/Mage.Sets/src/mage/cards/c/CircleOfProtectionArtifacts.java index 80015b9cda..3531ab8870 100644 --- a/Mage.Sets/src/mage/cards/c/CircleOfProtectionArtifacts.java +++ b/Mage.Sets/src/mage/cards/c/CircleOfProtectionArtifacts.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterObject; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class CircleOfProtectionArtifacts extends CardImpl { private static final FilterObject filter = new FilterObject("artifact source"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public CircleOfProtectionArtifacts(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CircuitousRoute.java b/Mage.Sets/src/mage/cards/c/CircuitousRoute.java index 0b77d6b659..e7003d1818 100644 --- a/Mage.Sets/src/mage/cards/c/CircuitousRoute.java +++ b/Mage.Sets/src/mage/cards/c/CircuitousRoute.java @@ -9,7 +9,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -26,7 +25,7 @@ public final class CircuitousRoute extends CardImpl { static { filter.add(Predicates.or( Predicates.and( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC) ), new SubtypePredicate(SubType.GATE) )); diff --git a/Mage.Sets/src/mage/cards/c/CitanulFlute.java b/Mage.Sets/src/mage/cards/c/CitanulFlute.java index de2556d10b..36adc7ba2e 100644 --- a/Mage.Sets/src/mage/cards/c/CitanulFlute.java +++ b/Mage.Sets/src/mage/cards/c/CitanulFlute.java @@ -13,7 +13,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -69,7 +68,7 @@ class CitanulFluteSearchEffect extends OneShotEffect { } FilterCard filter = new FilterCard("creature card with converted mana cost X or less"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); //Set the mana cost one higher to 'emulate' a less than or equal to comparison. filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); diff --git a/Mage.Sets/src/mage/cards/c/CitanulHierophants.java b/Mage.Sets/src/mage/cards/c/CitanulHierophants.java index 94a1eb6a7f..97a06e07d2 100644 --- a/Mage.Sets/src/mage/cards/c/CitanulHierophants.java +++ b/Mage.Sets/src/mage/cards/c/CitanulHierophants.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class CitanulHierophants extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public CitanulHierophants(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ClackbridgeTroll.java b/Mage.Sets/src/mage/cards/c/ClackbridgeTroll.java index b8be5017bc..840d9513d0 100644 --- a/Mage.Sets/src/mage/cards/c/ClackbridgeTroll.java +++ b/Mage.Sets/src/mage/cards/c/ClackbridgeTroll.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -96,7 +95,7 @@ class ClackbridgeTrollEffect extends OneShotEffect { continue; } FilterControlledPermanent filter = new FilterControlledPermanent("creature to sacrifice"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); TargetControlledPermanent target = new TargetControlledPermanent(filter); target.setNotTarget(true); diff --git a/Mage.Sets/src/mage/cards/c/Clambassadors.java b/Mage.Sets/src/mage/cards/c/Clambassadors.java index 20bd836355..be70dc4f5e 100644 --- a/Mage.Sets/src/mage/cards/c/Clambassadors.java +++ b/Mage.Sets/src/mage/cards/c/Clambassadors.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -54,13 +53,13 @@ class ClambassadorsEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public ClambassadorsEffect() { diff --git a/Mage.Sets/src/mage/cards/c/CleansingBeam.java b/Mage.Sets/src/mage/cards/c/CleansingBeam.java index e5ab27f27f..03f23c7b8f 100644 --- a/Mage.Sets/src/mage/cards/c/CleansingBeam.java +++ b/Mage.Sets/src/mage/cards/c/CleansingBeam.java @@ -11,7 +11,6 @@ import mage.constants.AbilityWord; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; @@ -46,7 +45,7 @@ class CleansingBeamEffect extends OneShotEffect { static final FilterPermanent filter = new FilterPermanent("creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } CleansingBeamEffect() { diff --git a/Mage.Sets/src/mage/cards/c/ClockOfOmens.java b/Mage.Sets/src/mage/cards/c/ClockOfOmens.java index 9b85270125..e62bc403ba 100644 --- a/Mage.Sets/src/mage/cards/c/ClockOfOmens.java +++ b/Mage.Sets/src/mage/cards/c/ClockOfOmens.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetArtifactPermanent; import mage.target.common.TargetControlledPermanent; @@ -25,7 +24,7 @@ public final class ClockOfOmens extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/c/ClockworkGnomes.java b/Mage.Sets/src/mage/cards/c/ClockworkGnomes.java index 8df66a66f0..b7134604a8 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkGnomes.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkGnomes.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -26,7 +25,7 @@ public final class ClockworkGnomes extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ClockworkGnomes(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ClockworkSteed.java b/Mage.Sets/src/mage/cards/c/ClockworkSteed.java index c2975f53d2..3c0562a23b 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkSteed.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkSteed.java @@ -29,7 +29,6 @@ import mage.counters.Counter; import mage.counters.CounterType; import mage.counters.Counters; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.watchers.common.AttackedOrBlockedThisCombatWatcher; @@ -42,7 +41,7 @@ public final class ClockworkSteed extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ClockworkSteed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CloudstoneCurio.java b/Mage.Sets/src/mage/cards/c/CloudstoneCurio.java index a00acf8efe..d05f6ab05e 100644 --- a/Mage.Sets/src/mage/cards/c/CloudstoneCurio.java +++ b/Mage.Sets/src/mage/cards/c/CloudstoneCurio.java @@ -1,9 +1,6 @@ package mage.cards.c; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -12,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.PermanentIdPredicate; import mage.game.Game; @@ -21,8 +17,10 @@ import mage.players.Player; import mage.target.TargetPermanent; import mage.target.targetpointer.FixedTarget; +import java.util.UUID; +import java.util.stream.Collectors; + /** - * * @author LevelX2 */ public final class CloudstoneCurio extends CardImpl { @@ -30,7 +28,7 @@ public final class CloudstoneCurio extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("a nonartifact permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } @@ -80,13 +78,14 @@ class CloudstoneCurioEffect extends OneShotEffect { FilterPermanent filter = new FilterPermanent("another permanent you control that shares a permanent type with " + triggeringCreature.getName()); filter.add(Predicates.not(new PermanentIdPredicate(triggeringCreature.getId()))); filter.add(new ControllerPredicate(TargetController.YOU)); - Set cardTypes = new HashSet<>(); - for (CardType cardType : triggeringCreature.getCardType()) { - if (cardType.isPermanentType()) { - cardTypes.add(new CardTypePredicate(cardType)); - } - } - filter.add(Predicates.or(cardTypes)); + filter.add(Predicates.or( + triggeringCreature + .getCardType() + .stream() + .filter(CardType::isPermanentType) + .map(CardType::getPredicate) + .collect(Collectors.toSet()) + )); TargetPermanent target = new TargetPermanent(1, 1, filter, true); if (target.canChoose(controller.getId(), game) && controller.chooseTarget(outcome, target, source, game)) { diff --git a/Mage.Sets/src/mage/cards/c/ClovenCasting.java b/Mage.Sets/src/mage/cards/c/ClovenCasting.java index 389fc161c1..947ffef89d 100644 --- a/Mage.Sets/src/mage/cards/c/ClovenCasting.java +++ b/Mage.Sets/src/mage/cards/c/ClovenCasting.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.MulticoloredPredicate; /** @@ -25,8 +24,8 @@ public final class ClovenCasting extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(MulticoloredPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/c/CodeSlice.java b/Mage.Sets/src/mage/cards/c/CodeSlice.java index ca8ae2fa83..225d19a1c1 100644 --- a/Mage.Sets/src/mage/cards/c/CodeSlice.java +++ b/Mage.Sets/src/mage/cards/c/CodeSlice.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.counters.CounterType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.CounterPredicate; import mage.target.common.TargetCreaturePermanent; @@ -23,7 +22,7 @@ public final class CodeSlice extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Artifact creatures with bounty counters on them"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new CounterPredicate(CounterType.BOUNTY)); } diff --git a/Mage.Sets/src/mage/cards/c/Cognivore.java b/Mage.Sets/src/mage/cards/c/Cognivore.java index 6252e1f754..78d888763e 100644 --- a/Mage.Sets/src/mage/cards/c/Cognivore.java +++ b/Mage.Sets/src/mage/cards/c/Cognivore.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author cbt33 @@ -25,7 +24,7 @@ public final class Cognivore extends CardImpl { static final FilterCard filter = new FilterCard("instant cards"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public Cognivore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectedCompany.java b/Mage.Sets/src/mage/cards/c/CollectedCompany.java index 898fa0a1e9..7d780d4150 100644 --- a/Mage.Sets/src/mage/cards/c/CollectedCompany.java +++ b/Mage.Sets/src/mage/cards/c/CollectedCompany.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; /** @@ -21,7 +20,7 @@ public final class CollectedCompany extends CardImpl { private static final FilterCard filter = new FilterCard("up to two creature cards with converted mana cost 3 or less"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/c/CollectedConjuring.java b/Mage.Sets/src/mage/cards/c/CollectedConjuring.java index 709d46dfa3..883a57f6f8 100644 --- a/Mage.Sets/src/mage/cards/c/CollectedConjuring.java +++ b/Mage.Sets/src/mage/cards/c/CollectedConjuring.java @@ -10,7 +10,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -49,7 +48,7 @@ class CollectedConjuringEffect extends OneShotEffect { "sorcery cards with converted mana cost 3 or less"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/c/CollectiveBrutality.java b/Mage.Sets/src/mage/cards/c/CollectiveBrutality.java index 09f2b669a0..a89585c75c 100644 --- a/Mage.Sets/src/mage/cards/c/CollectiveBrutality.java +++ b/Mage.Sets/src/mage/cards/c/CollectiveBrutality.java @@ -18,7 +18,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPlayer; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.PlayerPredicate; import mage.target.TargetPlayer; import mage.target.common.TargetCreaturePermanent; @@ -36,8 +35,8 @@ public final class CollectiveBrutality extends CardImpl { private static final FilterPlayer filterLoseLife = new FilterPlayer("opponent to lose life"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filterDiscard.add(new PlayerPredicate(TargetController.OPPONENT)); filterLoseLife.add(new PlayerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/c/ComaVeil.java b/Mage.Sets/src/mage/cards/c/ComaVeil.java index 4e6fc6538d..06d43785ba 100644 --- a/Mage.Sets/src/mage/cards/c/ComaVeil.java +++ b/Mage.Sets/src/mage/cards/c/ComaVeil.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -27,8 +26,8 @@ public final class ComaVeil extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public ComaVeil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CommandTheDreadhorde.java b/Mage.Sets/src/mage/cards/c/CommandTheDreadhorde.java index 0858ff2698..e343191595 100644 --- a/Mage.Sets/src/mage/cards/c/CommandTheDreadhorde.java +++ b/Mage.Sets/src/mage/cards/c/CommandTheDreadhorde.java @@ -8,7 +8,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInGraveyard; @@ -24,8 +23,8 @@ public final class CommandTheDreadhorde extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.CREATURE) + CardType.PLANESWALKER.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/c/Commandeer.java b/Mage.Sets/src/mage/cards/c/Commandeer.java index f899179235..20420854fe 100644 --- a/Mage.Sets/src/mage/cards/c/Commandeer.java +++ b/Mage.Sets/src/mage/cards/c/Commandeer.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.stack.Spell; @@ -32,7 +31,7 @@ public final class Commandeer extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("noncreature spell"); static { filter.add(new ColorPredicate(ObjectColor.BLUE)); - filterSpell.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterSpell.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Commandeer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CommanderEesha.java b/Mage.Sets/src/mage/cards/c/CommanderEesha.java index 3418ddb2c7..84b6fbce27 100644 --- a/Mage.Sets/src/mage/cards/c/CommanderEesha.java +++ b/Mage.Sets/src/mage/cards/c/CommanderEesha.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class CommanderEesha extends CardImpl { static final FilterCard filter = new FilterCard("creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public CommanderEesha(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CommonCause.java b/Mage.Sets/src/mage/cards/c/CommonCause.java index bfcff613fe..fe8bfe7cb8 100644 --- a/Mage.Sets/src/mage/cards/c/CommonCause.java +++ b/Mage.Sets/src/mage/cards/c/CommonCause.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -27,7 +26,7 @@ public final class CommonCause extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Nonartifact creatures"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public CommonCause(UUID ownerId, CardSetInfo setInfo) { @@ -57,7 +56,7 @@ enum AllColorCondition implements Condition { @Override public boolean apply(Game game, Ability source) { FilterCreaturePermanent filter = new FilterCreaturePermanent("Nonartifact creatures"); - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); ObjectColor allColor = new ObjectColor("WUBRG"); for (Permanent thing : game.getBattlefield().getAllActivePermanents(filter, game)) { allColor = allColor.intersection(thing.getColor(game)); diff --git a/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java b/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java index 23786a5032..9a4eae5fdc 100644 --- a/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java +++ b/Mage.Sets/src/mage/cards/c/CommuneWithDinosaurs.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -23,7 +22,7 @@ public final class CommuneWithDinosaurs extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SubtypePredicate(SubType.DINOSAUR) )); } diff --git a/Mage.Sets/src/mage/cards/c/CommuneWithTheGods.java b/Mage.Sets/src/mage/cards/c/CommuneWithTheGods.java index 65a9839c9f..6fee75b903 100644 --- a/Mage.Sets/src/mage/cards/c/CommuneWithTheGods.java +++ b/Mage.Sets/src/mage/cards/c/CommuneWithTheGods.java @@ -10,7 +10,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -62,7 +61,7 @@ class CommuneWithTheGodsEffect extends OneShotEffect { Cards cards = new CardsImpl(controller.getLibrary().getTopCards(game, 5)); if (!cards.isEmpty()) { FilterCard filterPutInHand = new FilterCard("creature or enchantment card to put in hand"); - filterPutInHand.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filterPutInHand.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); controller.revealCards(source, cards, game); if (cards.count(filterPutInHand, source.getSourceId(), source.getControllerId(), game) > 0) { TargetCard target = new TargetCard(0, 1, Zone.LIBRARY, filterPutInHand); diff --git a/Mage.Sets/src/mage/cards/c/ConfiscationCoup.java b/Mage.Sets/src/mage/cards/c/ConfiscationCoup.java index 7d3d959125..c53ffa17e0 100644 --- a/Mage.Sets/src/mage/cards/c/ConfiscationCoup.java +++ b/Mage.Sets/src/mage/cards/c/ConfiscationCoup.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -32,7 +31,7 @@ public final class ConfiscationCoup extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or artifact"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ARTIFACT.getPredicate())); } public ConfiscationCoup(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ConfusionInTheRanks.java b/Mage.Sets/src/mage/cards/c/ConfusionInTheRanks.java index fe65023e65..14d8b0081a 100644 --- a/Mage.Sets/src/mage/cards/c/ConfusionInTheRanks.java +++ b/Mage.Sets/src/mage/cards/c/ConfusionInTheRanks.java @@ -13,7 +13,6 @@ import mage.constants.SetTargetPointer; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -34,9 +33,9 @@ public final class ConfusionInTheRanks extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } @@ -89,9 +88,9 @@ enum ConfusionInTheRanksAdjuster implements TargetAdjuster { FilterPermanent filterTarget = new FilterPermanent(); String message = ""; filterTarget.add(Predicates.not(new ControllerIdPredicate(enteringPermanent.getControllerId()))); - Set cardTypesPredicates = new HashSet<>(1); + Set cardTypesPredicates = new HashSet<>(1); for (CardType cardTypeEntering : enteringPermanent.getCardType()) { - cardTypesPredicates.add(new CardTypePredicate(cardTypeEntering)); + cardTypesPredicates.add(cardTypeEntering.getPredicate()); if (!message.isEmpty()) { message += "or "; } diff --git a/Mage.Sets/src/mage/cards/c/ConsignToDust.java b/Mage.Sets/src/mage/cards/c/ConsignToDust.java index 013b4f0f4c..8703edfe45 100644 --- a/Mage.Sets/src/mage/cards/c/ConsignToDust.java +++ b/Mage.Sets/src/mage/cards/c/ConsignToDust.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -23,7 +22,7 @@ public final class ConsignToDust extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts and/or enchantments"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public ConsignToDust(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ConsumingBonfire.java b/Mage.Sets/src/mage/cards/c/ConsumingBonfire.java index 9546725a19..d85c4b9d3b 100644 --- a/Mage.Sets/src/mage/cards/c/ConsumingBonfire.java +++ b/Mage.Sets/src/mage/cards/c/ConsumingBonfire.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -25,9 +24,9 @@ public final class ConsumingBonfire extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent("Treefolk creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new SubtypePredicate(SubType.ELEMENTAL))); - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); filter2.add(new SubtypePredicate(SubType.TREEFOLK)); } diff --git a/Mage.Sets/src/mage/cards/c/ConsumingSinkhole.java b/Mage.Sets/src/mage/cards/c/ConsumingSinkhole.java index 116a5ac642..b3b1311aa8 100644 --- a/Mage.Sets/src/mage/cards/c/ConsumingSinkhole.java +++ b/Mage.Sets/src/mage/cards/c/ConsumingSinkhole.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetPlayerOrPlaneswalker; @@ -24,7 +23,7 @@ public final class ConsumingSinkhole extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("land creature"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public ConsumingSinkhole(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ConsumingVapors.java b/Mage.Sets/src/mage/cards/c/ConsumingVapors.java index adbf64bb32..e443ca63cd 100644 --- a/Mage.Sets/src/mage/cards/c/ConsumingVapors.java +++ b/Mage.Sets/src/mage/cards/c/ConsumingVapors.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -66,7 +65,7 @@ class ConsumingVaporsEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); FilterControlledPermanent filter = new FilterControlledPermanent("creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); diff --git a/Mage.Sets/src/mage/cards/c/Coretapper.java b/Mage.Sets/src/mage/cards/c/Coretapper.java index 4993bb7a1e..b2a9404f1e 100644 --- a/Mage.Sets/src/mage/cards/c/Coretapper.java +++ b/Mage.Sets/src/mage/cards/c/Coretapper.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -27,7 +26,7 @@ public final class Coretapper extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Coretapper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CorpseHauler.java b/Mage.Sets/src/mage/cards/c/CorpseHauler.java index 0b46472a09..bfca607e30 100644 --- a/Mage.Sets/src/mage/cards/c/CorpseHauler.java +++ b/Mage.Sets/src/mage/cards/c/CorpseHauler.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.AnotherCardPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,7 +25,7 @@ public final class CorpseHauler extends CardImpl { private static final FilterCard filter = new FilterCard("another target creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new AnotherCardPredicate()); } diff --git a/Mage.Sets/src/mage/cards/c/CorridorMonitor.java b/Mage.Sets/src/mage/cards/c/CorridorMonitor.java index 9a277adc54..8cd7f1eeaf 100644 --- a/Mage.Sets/src/mage/cards/c/CorridorMonitor.java +++ b/Mage.Sets/src/mage/cards/c/CorridorMonitor.java @@ -11,7 +11,6 @@ import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -26,8 +25,8 @@ public final class CorridorMonitor extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/c/CorrosiveMentor.java b/Mage.Sets/src/mage/cards/c/CorrosiveMentor.java index b5beb2e097..73771cb053 100644 --- a/Mage.Sets/src/mage/cards/c/CorrosiveMentor.java +++ b/Mage.Sets/src/mage/cards/c/CorrosiveMentor.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -27,7 +26,7 @@ public final class CorrosiveMentor extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.BLACK)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public CorrosiveMentor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CostlyPlunder.java b/Mage.Sets/src/mage/cards/c/CostlyPlunder.java index 799c64300d..f00777b250 100644 --- a/Mage.Sets/src/mage/cards/c/CostlyPlunder.java +++ b/Mage.Sets/src/mage/cards/c/CostlyPlunder.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -22,8 +21,8 @@ public final class CostlyPlunder extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/c/Counterlash.java b/Mage.Sets/src/mage/cards/c/Counterlash.java index 385c7b127b..b6c350b5ac 100644 --- a/Mage.Sets/src/mage/cards/c/Counterlash.java +++ b/Mage.Sets/src/mage/cards/c/Counterlash.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.StackObject; import mage.players.Player; @@ -78,7 +77,7 @@ class CounterlashEffect extends OneShotEffect { List> types = new ArrayList<>(); for (CardType type : stackObject.getCardType()) { if (type != CardType.LAND) { - types.add(new CardTypePredicate(type)); + types.add(type.getPredicate()); } } filter.add(Predicates.or(types)); diff --git a/Mage.Sets/src/mage/cards/c/Countersquall.java b/Mage.Sets/src/mage/cards/c/Countersquall.java index 0947278952..6dfc45bf38 100644 --- a/Mage.Sets/src/mage/cards/c/Countersquall.java +++ b/Mage.Sets/src/mage/cards/c/Countersquall.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -21,7 +20,7 @@ public final class Countersquall extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Countersquall(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CranialPlating.java b/Mage.Sets/src/mage/cards/c/CranialPlating.java index 79f4fccfac..4ff75ee085 100644 --- a/Mage.Sets/src/mage/cards/c/CranialPlating.java +++ b/Mage.Sets/src/mage/cards/c/CranialPlating.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -30,7 +29,7 @@ public final class CranialPlating extends CardImpl { private static final FilterControlledPermanent filterCounted = new FilterControlledPermanent("artifacts you control"); static { - filterCounted.add(new CardTypePredicate(CardType.ARTIFACT)); + filterCounted.add(CardType.ARTIFACT.getPredicate()); } public CranialPlating(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Crash.java b/Mage.Sets/src/mage/cards/c/Crash.java index 45418a460b..9620766a4c 100644 --- a/Mage.Sets/src/mage/cards/c/Crash.java +++ b/Mage.Sets/src/mage/cards/c/Crash.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -27,7 +26,7 @@ public final class Crash extends CardImpl { private static final FilterControlledPermanent alternativeCostFilter = new FilterControlledLandPermanent("a Mountain"); static { - effectFilter.add(new CardTypePredicate(CardType.ARTIFACT)); + effectFilter.add(CardType.ARTIFACT.getPredicate()); alternativeCostFilter.add(new SubtypePredicate(SubType.MOUNTAIN)); } diff --git a/Mage.Sets/src/mage/cards/c/CreepingMold.java b/Mage.Sets/src/mage/cards/c/CreepingMold.java index a3e0f4ebbd..918f6c2bae 100644 --- a/Mage.Sets/src/mage/cards/c/CreepingMold.java +++ b/Mage.Sets/src/mage/cards/c/CreepingMold.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class CreepingMold extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public CreepingMold(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CrimePunishment.java b/Mage.Sets/src/mage/cards/c/CrimePunishment.java index 34504ea426..c6e3cf2fc0 100644 --- a/Mage.Sets/src/mage/cards/c/CrimePunishment.java +++ b/Mage.Sets/src/mage/cards/c/CrimePunishment.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SpellAbilityType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCardInOpponentsGraveyard; @@ -22,8 +21,8 @@ public final class CrimePunishment extends SplitCard { private static final FilterCard filter = new FilterCard("creature or enchantment card from an opponent's graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public CrimePunishment(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CropSigil.java b/Mage.Sets/src/mage/cards/c/CropSigil.java index 4c95be8935..ecaf670d5e 100644 --- a/Mage.Sets/src/mage/cards/c/CropSigil.java +++ b/Mage.Sets/src/mage/cards/c/CropSigil.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.events.GameEvent; import mage.target.common.TargetCardInYourGraveyard; @@ -29,8 +28,8 @@ public final class CropSigil extends CardImpl { private static final FilterCard filterLand = new FilterCard("land card in a graveyard"); static { - filterCreature.add(new CardTypePredicate(CardType.CREATURE)); - filterLand.add(new CardTypePredicate(CardType.LAND)); + filterCreature.add(CardType.CREATURE.getPredicate()); + filterLand.add(CardType.LAND.getPredicate()); } public CropSigil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CruelReality.java b/Mage.Sets/src/mage/cards/c/CruelReality.java index c4c1d62e3c..67f52e94db 100644 --- a/Mage.Sets/src/mage/cards/c/CruelReality.java +++ b/Mage.Sets/src/mage/cards/c/CruelReality.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -123,8 +122,8 @@ class CruelRealityEffect extends OneShotEffect { && controller != null) { FilterControlledPermanent filter = new FilterControlledPermanent("creature or planeswalker"); filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); TargetPermanent target = new TargetPermanent(filter); if (cursedPlayer.choose(Outcome.Sacrifice, target, source.getId(), game)) { Permanent objectToBeSacrificed = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/c/CruelRevival.java b/Mage.Sets/src/mage/cards/c/CruelRevival.java index 47a862248d..34670b3e90 100644 --- a/Mage.Sets/src/mage/cards/c/CruelRevival.java +++ b/Mage.Sets/src/mage/cards/c/CruelRevival.java @@ -12,7 +12,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -30,7 +29,7 @@ public final class CruelRevival extends CardImpl { private static final FilterCard filter2 = new FilterCard("Zombie card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new SubtypePredicate(SubType.ZOMBIE))); filter2.add(new SubtypePredicate(SubType.ZOMBIE)); } diff --git a/Mage.Sets/src/mage/cards/c/CrueltyOfTheSith.java b/Mage.Sets/src/mage/cards/c/CrueltyOfTheSith.java index 178cef7c56..6deec3a781 100644 --- a/Mage.Sets/src/mage/cards/c/CrueltyOfTheSith.java +++ b/Mage.Sets/src/mage/cards/c/CrueltyOfTheSith.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPlayer; import mage.target.TargetSpell; @@ -26,7 +25,7 @@ public final class CrueltyOfTheSith extends CardImpl { private static final FilterSpell filterNoncreature = new FilterSpell("noncreature spell"); static { - filterNoncreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNoncreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public CrueltyOfTheSith(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Crush.java b/Mage.Sets/src/mage/cards/c/Crush.java index f76364706a..17d031485b 100644 --- a/Mage.Sets/src/mage/cards/c/Crush.java +++ b/Mage.Sets/src/mage/cards/c/Crush.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetArtifactPermanent; /** @@ -20,7 +19,7 @@ public final class Crush extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Crush(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/Crypsis.java b/Mage.Sets/src/mage/cards/c/Crypsis.java index 199880252f..bafe13a113 100644 --- a/Mage.Sets/src/mage/cards/c/Crypsis.java +++ b/Mage.Sets/src/mage/cards/c/Crypsis.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetControlledCreaturePermanent; @@ -25,7 +24,7 @@ public final class Crypsis extends CardImpl { static final FilterCard filter = new FilterCard("creatures your opponents control"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/c/CunningBreezedancer.java b/Mage.Sets/src/mage/cards/c/CunningBreezedancer.java index 456b9eabde..9632a685e4 100644 --- a/Mage.Sets/src/mage/cards/c/CunningBreezedancer.java +++ b/Mage.Sets/src/mage/cards/c/CunningBreezedancer.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class CunningBreezedancer extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public CunningBreezedancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CunningWish.java b/Mage.Sets/src/mage/cards/c/CunningWish.java index bf6f0b4093..03d34ca4a0 100644 --- a/Mage.Sets/src/mage/cards/c/CunningWish.java +++ b/Mage.Sets/src/mage/cards/c/CunningWish.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class CunningWish extends CardImpl { private static final FilterCard filter = new FilterCard("an instant card"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public CunningWish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CurseOfEchoes.java b/Mage.Sets/src/mage/cards/c/CurseOfEchoes.java index dac64b90fa..d8775dd767 100644 --- a/Mage.Sets/src/mage/cards/c/CurseOfEchoes.java +++ b/Mage.Sets/src/mage/cards/c/CurseOfEchoes.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -61,8 +60,8 @@ class CurseOfEchoesCopyTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public CurseOfEchoesCopyTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/c/CustodiSoulcaller.java b/Mage.Sets/src/mage/cards/c/CustodiSoulcaller.java index be2e69ad38..1defb822fb 100644 --- a/Mage.Sets/src/mage/cards/c/CustodiSoulcaller.java +++ b/Mage.Sets/src/mage/cards/c/CustodiSoulcaller.java @@ -15,7 +15,6 @@ import mage.constants.WatcherScope; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -71,7 +70,7 @@ enum CustodiSoulcallerAdjuster implements TargetAdjuster { if (watcher != null) { int xValue = watcher.getNumberOfAttackedPlayers(sourcePermanent.getControllerId()); FilterCard filter = new FilterCard("creature card with converted mana cost " + xValue + " or less"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.or(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue), new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue))); ability.getTargets().add(new TargetCardInYourGraveyard(filter)); } diff --git a/Mage.Sets/src/mage/cards/c/CustodiSquire.java b/Mage.Sets/src/mage/cards/c/CustodiSquire.java index 6c6cf0226e..f0640cf0e9 100644 --- a/Mage.Sets/src/mage/cards/c/CustodiSquire.java +++ b/Mage.Sets/src/mage/cards/c/CustodiSquire.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -56,9 +55,9 @@ class CustodiSquireVoteEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("artifact, creature, or enchantment card from your graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } CustodiSquireVoteEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DampingMatrix.java b/Mage.Sets/src/mage/cards/d/DampingMatrix.java index ae21bff84e..32d153a156 100644 --- a/Mage.Sets/src/mage/cards/d/DampingMatrix.java +++ b/Mage.Sets/src/mage/cards/d/DampingMatrix.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -50,8 +49,8 @@ class DampingMatrixEffect extends ReplacementEffectImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts and creatures"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public DampingMatrixEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DanceOfTheManse.java b/Mage.Sets/src/mage/cards/d/DanceOfTheManse.java index b46a38d00c..b3d90d1e4c 100644 --- a/Mage.Sets/src/mage/cards/d/DanceOfTheManse.java +++ b/Mage.Sets/src/mage/cards/d/DanceOfTheManse.java @@ -12,7 +12,6 @@ import mage.cards.CardsImpl; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; @@ -59,9 +58,9 @@ enum DanceOfTheManseAdjuster implements TargetAdjuster { FilterCard filter = new FilterCard("artifact and/or non-Aura enchantment cards " + "each with converted mana cost " + xValue + " or less from your graveyard"); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), Predicates.and( - new CardTypePredicate(CardType.ENCHANTMENT), + CardType.ENCHANTMENT.getPredicate(), Predicates.not(new SubtypePredicate(SubType.AURA)) ) )); diff --git a/Mage.Sets/src/mage/cards/d/DarettiIngeniousIconoclast.java b/Mage.Sets/src/mage/cards/d/DarettiIngeniousIconoclast.java index 761505e9d4..21f49b8396 100644 --- a/Mage.Sets/src/mage/cards/d/DarettiIngeniousIconoclast.java +++ b/Mage.Sets/src/mage/cards/d/DarettiIngeniousIconoclast.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.DarettiConstructToken; import mage.target.TargetPermanent; import mage.target.common.TargetCardInGraveyardOrBattlefield; @@ -34,8 +33,8 @@ public final class DarettiIngeniousIconoclast extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/DaringDemolition.java b/Mage.Sets/src/mage/cards/d/DaringDemolition.java index 3bc03353c9..961160bbb5 100644 --- a/Mage.Sets/src/mage/cards/d/DaringDemolition.java +++ b/Mage.Sets/src/mage/cards/d/DaringDemolition.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -22,7 +21,7 @@ public final class DaringDemolition extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or Vehicle"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new SubtypePredicate(SubType.VEHICLE))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE))); } public DaringDemolition(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DaringThief.java b/Mage.Sets/src/mage/cards/d/DaringThief.java index f61519a5df..6ad173e81b 100644 --- a/Mage.Sets/src/mage/cards/d/DaringThief.java +++ b/Mage.Sets/src/mage/cards/d/DaringThief.java @@ -19,7 +19,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -63,7 +62,7 @@ class TargetControlledPermanentSharingOpponentPermanentCardType extends TargetCo public TargetControlledPermanentSharingOpponentPermanentCardType() { super(); this.filter = this.filter.copy(); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); setTargetName("nonland permanent you control"); } diff --git a/Mage.Sets/src/mage/cards/d/DarkIntimations.java b/Mage.Sets/src/mage/cards/d/DarkIntimations.java index fa4631214b..1e07ff2733 100644 --- a/Mage.Sets/src/mage/cards/d/DarkIntimations.java +++ b/Mage.Sets/src/mage/cards/d/DarkIntimations.java @@ -18,7 +18,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -40,7 +39,7 @@ public final class DarkIntimations extends CardImpl { private static final FilterSpell filter = new FilterSpell("a Bolas planeswalker spell"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.BOLAS)); } @@ -71,11 +70,11 @@ class DarkIntimationsEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); filterCard.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public DarkIntimationsEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DarksteelForge.java b/Mage.Sets/src/mage/cards/d/DarksteelForge.java index 756c80c357..2f2fb271a4 100644 --- a/Mage.Sets/src/mage/cards/d/DarksteelForge.java +++ b/Mage.Sets/src/mage/cards/d/DarksteelForge.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author Loki @@ -23,7 +22,7 @@ public final class DarksteelForge extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public DarksteelForge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DarksteelGarrison.java b/Mage.Sets/src/mage/cards/d/DarksteelGarrison.java index 78c63b2bfc..e7c3468aa0 100644 --- a/Mage.Sets/src/mage/cards/d/DarksteelGarrison.java +++ b/Mage.Sets/src/mage/cards/d/DarksteelGarrison.java @@ -3,13 +3,9 @@ package mage.cards.d; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.ActivatedAbilityImpl; import mage.abilities.common.BecomesTappedAttachedTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.costs.Cost; -import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.Effect; -import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.continuous.BoostTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect; import mage.abilities.keyword.FortifyAbility; @@ -19,16 +15,8 @@ import mage.cards.CardSetInfo; import mage.constants.AttachmentType; import mage.constants.CardType; import mage.constants.Duration; -import mage.constants.Outcome; import mage.constants.SubType; -import mage.constants.TimingRule; import mage.constants.Zone; -import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; -import mage.game.Game; -import mage.game.permanent.Permanent; -import mage.target.Target; -import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; /** diff --git a/Mage.Sets/src/mage/cards/d/DarthSidiousSithLord.java b/Mage.Sets/src/mage/cards/d/DarthSidiousSithLord.java index 59cc034dfa..7559729192 100644 --- a/Mage.Sets/src/mage/cards/d/DarthSidiousSithLord.java +++ b/Mage.Sets/src/mage/cards/d/DarthSidiousSithLord.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Duration; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.TargetPlayer; import mage.target.common.TargetCreaturePermanent; @@ -32,7 +31,7 @@ public final class DarthSidiousSithLord extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public DarthSidiousSithLord(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DawnToDusk.java b/Mage.Sets/src/mage/cards/d/DawnToDusk.java index beb9a5d6f3..b5d4ca3b31 100644 --- a/Mage.Sets/src/mage/cards/d/DawnToDusk.java +++ b/Mage.Sets/src/mage/cards/d/DawnToDusk.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetEnchantmentPermanent; @@ -21,7 +20,7 @@ public final class DawnToDusk extends CardImpl { private static final FilterCard filterCard = new FilterCard("enchantment card from your graveyard"); static { - filterCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterCard.add(CardType.ENCHANTMENT.getPredicate()); } public DawnToDusk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DaxosTheReturned.java b/Mage.Sets/src/mage/cards/d/DaxosTheReturned.java index fc4338b11d..cdbf0f2f98 100644 --- a/Mage.Sets/src/mage/cards/d/DaxosTheReturned.java +++ b/Mage.Sets/src/mage/cards/d/DaxosTheReturned.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.DaxosSpiritToken; /** @@ -27,7 +26,7 @@ public final class DaxosTheReturned extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public DaxosTheReturned(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DayOfTheDragons.java b/Mage.Sets/src/mage/cards/d/DayOfTheDragons.java index a5c45c43e3..d33d7e3271 100644 --- a/Mage.Sets/src/mage/cards/d/DayOfTheDragons.java +++ b/Mage.Sets/src/mage/cards/d/DayOfTheDragons.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.ExileZone; @@ -57,7 +56,7 @@ class DayOfTheDragonsEntersEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public DayOfTheDragonsEntersEffect() { diff --git a/Mage.Sets/src/mage/cards/d/Daze.java b/Mage.Sets/src/mage/cards/d/Daze.java index 81fb5231a2..6b9ac8291a 100644 --- a/Mage.Sets/src/mage/cards/d/Daze.java +++ b/Mage.Sets/src/mage/cards/d/Daze.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledPermanent; @@ -26,7 +25,7 @@ public final class Daze extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public Daze(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeadeyePlunderers.java b/Mage.Sets/src/mage/cards/d/DeadeyePlunderers.java index c6156049c7..0d1d72186a 100644 --- a/Mage.Sets/src/mage/cards/d/DeadeyePlunderers.java +++ b/Mage.Sets/src/mage/cards/d/DeadeyePlunderers.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.permanent.token.TreasureToken; @@ -30,7 +29,7 @@ public final class DeadeyePlunderers extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/d/DeathriteShaman.java b/Mage.Sets/src/mage/cards/d/DeathriteShaman.java index 5d2b2ab648..154c9a6c78 100644 --- a/Mage.Sets/src/mage/cards/d/DeathriteShaman.java +++ b/Mage.Sets/src/mage/cards/d/DeathriteShaman.java @@ -20,7 +20,6 @@ import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterLandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInGraveyard; /** @@ -33,8 +32,8 @@ public final class DeathriteShaman extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public DeathriteShaman(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Deconstruct.java b/Mage.Sets/src/mage/cards/d/Deconstruct.java index 849d4832b5..920f9c0827 100644 --- a/Mage.Sets/src/mage/cards/d/Deconstruct.java +++ b/Mage.Sets/src/mage/cards/d/Deconstruct.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,7 +20,7 @@ public final class Deconstruct extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Deconstruct(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DecreeOfAnnihilation.java b/Mage.Sets/src/mage/cards/d/DecreeOfAnnihilation.java index f36ccbfb62..16f133ac86 100644 --- a/Mage.Sets/src/mage/cards/d/DecreeOfAnnihilation.java +++ b/Mage.Sets/src/mage/cards/d/DecreeOfAnnihilation.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -57,9 +56,9 @@ class DecreeOfAnnihilationEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public DecreeOfAnnihilationEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DeepfireElemental.java b/Mage.Sets/src/mage/cards/d/DeepfireElemental.java index 59ec4f30aa..89da38b65e 100644 --- a/Mage.Sets/src/mage/cards/d/DeepfireElemental.java +++ b/Mage.Sets/src/mage/cards/d/DeepfireElemental.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XCMCPermanentAdjuster; @@ -27,8 +26,8 @@ public final class DeepfireElemental extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/DeeprootChampion.java b/Mage.Sets/src/mage/cards/d/DeeprootChampion.java index 4b3f1d7794..2aa434eed1 100644 --- a/Mage.Sets/src/mage/cards/d/DeeprootChampion.java +++ b/Mage.Sets/src/mage/cards/d/DeeprootChampion.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class DeeprootChampion extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public DeeprootChampion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DefiantSalvager.java b/Mage.Sets/src/mage/cards/d/DefiantSalvager.java index 7abc7ce334..6a21b49ba7 100644 --- a/Mage.Sets/src/mage/cards/d/DefiantSalvager.java +++ b/Mage.Sets/src/mage/cards/d/DefiantSalvager.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -27,7 +26,7 @@ public final class DefiantSalvager extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact or creature"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); } public DefiantSalvager(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DejaVu.java b/Mage.Sets/src/mage/cards/d/DejaVu.java index f7c475f5c5..210141e737 100644 --- a/Mage.Sets/src/mage/cards/d/DejaVu.java +++ b/Mage.Sets/src/mage/cards/d/DejaVu.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -19,7 +18,7 @@ public final class DejaVu extends CardImpl { static final FilterCard filter = new FilterCard("sorcery card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public DejaVu(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Demolish.java b/Mage.Sets/src/mage/cards/d/Demolish.java index 39b71a9331..a11fde5f6b 100644 --- a/Mage.Sets/src/mage/cards/d/Demolish.java +++ b/Mage.Sets/src/mage/cards/d/Demolish.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,8 +21,8 @@ public final class Demolish extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public Demolish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DeployTheGatewatch.java b/Mage.Sets/src/mage/cards/d/DeployTheGatewatch.java index bad6b4d91b..addf1f9900 100644 --- a/Mage.Sets/src/mage/cards/d/DeployTheGatewatch.java +++ b/Mage.Sets/src/mage/cards/d/DeployTheGatewatch.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -43,7 +42,7 @@ class DeployTheGatewatchEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("up to two planeswalker cards"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); } public DeployTheGatewatchEffect() { diff --git a/Mage.Sets/src/mage/cards/d/DesecrationDemon.java b/Mage.Sets/src/mage/cards/d/DesecrationDemon.java index 14e27b3d5a..36e0878301 100644 --- a/Mage.Sets/src/mage/cards/d/DesecrationDemon.java +++ b/Mage.Sets/src/mage/cards/d/DesecrationDemon.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -72,7 +71,7 @@ class DesecrationDemonEffect extends OneShotEffect { Player opponent = game.getPlayer(opponentId); if (opponent != null) { FilterControlledPermanent filter = new FilterControlledPermanent("creature to sacrifice"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, false); if (target.canChoose(opponent.getId(), game)) { diff --git a/Mage.Sets/src/mage/cards/d/DesecrationPlague.java b/Mage.Sets/src/mage/cards/d/DesecrationPlague.java index bbac5de6aa..f2736cb760 100644 --- a/Mage.Sets/src/mage/cards/d/DesecrationPlague.java +++ b/Mage.Sets/src/mage/cards/d/DesecrationPlague.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,7 +19,7 @@ public final class DesecrationPlague extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchantment or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ENCHANTMENT), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ENCHANTMENT.getPredicate(), CardType.LAND.getPredicate())); } public DesecrationPlague(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Desolation.java b/Mage.Sets/src/mage/cards/d/Desolation.java index 532dd4f9c3..75e0f0dbb7 100644 --- a/Mage.Sets/src/mage/cards/d/Desolation.java +++ b/Mage.Sets/src/mage/cards/d/Desolation.java @@ -16,7 +16,6 @@ import mage.constants.TargetController; import mage.constants.WatcherScope; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; @@ -75,7 +74,7 @@ class DesolationEffect extends OneShotEffect { Player player = game.getPlayer(playerId); if (player != null) { FilterControlledPermanent filter = new FilterControlledPermanent("land"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new ControllerIdPredicate(playerId)); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); if (target.canChoose(player.getId(), game)) { diff --git a/Mage.Sets/src/mage/cards/d/Despise.java b/Mage.Sets/src/mage/cards/d/Despise.java index 8e1afc3b0a..bb501f3918 100644 --- a/Mage.Sets/src/mage/cards/d/Despise.java +++ b/Mage.Sets/src/mage/cards/d/Despise.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetOpponent; /** @@ -20,8 +19,8 @@ public final class Despise extends CardImpl { private static final FilterCard filter = new FilterCard("a creature or planeswalker card"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public Despise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DestructiveDigger.java b/Mage.Sets/src/mage/cards/d/DestructiveDigger.java index 12f1e9bdbf..6e8a29e194 100644 --- a/Mage.Sets/src/mage/cards/d/DestructiveDigger.java +++ b/Mage.Sets/src/mage/cards/d/DestructiveDigger.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import java.util.UUID; @@ -27,8 +26,8 @@ public final class DestructiveDigger extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/DestructorDragon.java b/Mage.Sets/src/mage/cards/d/DestructorDragon.java index cd791017f6..cb37ba3c4b 100644 --- a/Mage.Sets/src/mage/cards/d/DestructorDragon.java +++ b/Mage.Sets/src/mage/cards/d/DestructorDragon.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,7 +23,7 @@ public final class DestructorDragon extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public DestructorDragon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Detritivore.java b/Mage.Sets/src/mage/cards/d/Detritivore.java index aa9b7ddbe4..37655a7a31 100644 --- a/Mage.Sets/src/mage/cards/d/Detritivore.java +++ b/Mage.Sets/src/mage/cards/d/Detritivore.java @@ -22,7 +22,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -102,7 +101,7 @@ class NonBasicLandsInOpponentsGraveyards implements DynamicValue { private static final FilterCard filter = new FilterCard("nonbasic land card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); } diff --git a/Mage.Sets/src/mage/cards/d/Devastation.java b/Mage.Sets/src/mage/cards/d/Devastation.java index 9b5f5b48c4..dfe55da9a3 100644 --- a/Mage.Sets/src/mage/cards/d/Devastation.java +++ b/Mage.Sets/src/mage/cards/d/Devastation.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class Devastation extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creatures and lands"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public Devastation(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{5}{R}{R}"); diff --git a/Mage.Sets/src/mage/cards/d/DevotedCaretaker.java b/Mage.Sets/src/mage/cards/d/DevotedCaretaker.java index d379bdc67f..fc8776f0fb 100644 --- a/Mage.Sets/src/mage/cards/d/DevotedCaretaker.java +++ b/Mage.Sets/src/mage/cards/d/DevotedCaretaker.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.common.TargetControlledPermanent; @@ -30,7 +29,7 @@ public final class DevotedCaretaker extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spells and sorcery spells"); static{ - filter.add(Predicates.or(new CardTypePredicate(CardType.SORCERY), new CardTypePredicate(CardType.INSTANT))); + filter.add(Predicates.or(CardType.SORCERY.getPredicate(), CardType.INSTANT.getPredicate())); } public DevotedCaretaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DevouringHellion.java b/Mage.Sets/src/mage/cards/d/DevouringHellion.java index 293a1f6616..3cd85e186d 100644 --- a/Mage.Sets/src/mage/cards/d/DevouringHellion.java +++ b/Mage.Sets/src/mage/cards/d/DevouringHellion.java @@ -14,7 +14,6 @@ import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -55,8 +54,8 @@ class DevouringHellionEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/DiluvianPrimordial.java b/Mage.Sets/src/mage/cards/d/DiluvianPrimordial.java index 5ebaeb3e53..78f0f576fd 100644 --- a/Mage.Sets/src/mage/cards/d/DiluvianPrimordial.java +++ b/Mage.Sets/src/mage/cards/d/DiluvianPrimordial.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerIdPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -76,7 +75,7 @@ enum DiluvianPrimordialAdjuster implements TargetAdjuster { FilterCard filter = new FilterCard("instant or sorcery card from " + opponent.getLogName() + "'s graveyard"); filter.add(new OwnerIdPredicate(opponentId)); - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); TargetCardInOpponentsGraveyard target = new TargetCardInOpponentsGraveyard(0, 1, filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/d/DimirCharm.java b/Mage.Sets/src/mage/cards/d/DimirCharm.java index 16d827dd03..78d6c4c624 100644 --- a/Mage.Sets/src/mage/cards/d/DimirCharm.java +++ b/Mage.Sets/src/mage/cards/d/DimirCharm.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.players.Player; @@ -35,7 +34,7 @@ public final class DimirCharm extends CardImpl { static { filterCreature.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterSorcery.add(CardType.SORCERY.getPredicate()); } public DimirCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DireFleetDaredevil.java b/Mage.Sets/src/mage/cards/d/DireFleetDaredevil.java index 0b068cb21a..eee9cd1434 100644 --- a/Mage.Sets/src/mage/cards/d/DireFleetDaredevil.java +++ b/Mage.Sets/src/mage/cards/d/DireFleetDaredevil.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -35,8 +34,8 @@ public final class DireFleetDaredevil extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public DireFleetDaredevil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DirectorKrennic.java b/Mage.Sets/src/mage/cards/d/DirectorKrennic.java index 2a528a3d21..6602f49e98 100644 --- a/Mage.Sets/src/mage/cards/d/DirectorKrennic.java +++ b/Mage.Sets/src/mage/cards/d/DirectorKrennic.java @@ -13,7 +13,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.permanent.token.TrooperToken2; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class DirectorKrennic extends CardImpl { private static final FilterPermanent filterLand = new FilterPermanent("basic land"); static { - filterLand.add(new CardTypePredicate(CardType.LAND)); + filterLand.add(CardType.LAND.getPredicate()); filterLand.add(new SupertypePredicate(SuperType.BASIC)); } diff --git a/Mage.Sets/src/mage/cards/d/DiscipleOfTheRing.java b/Mage.Sets/src/mage/cards/d/DiscipleOfTheRing.java index 8fabd46578..50bee691e1 100644 --- a/Mage.Sets/src/mage/cards/d/DiscipleOfTheRing.java +++ b/Mage.Sets/src/mage/cards/d/DiscipleOfTheRing.java @@ -21,7 +21,7 @@ import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.target.TargetSpell; import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetCreaturePermanent; @@ -35,7 +35,7 @@ public final class DiscipleOfTheRing extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("noncreature spell"); static { - filterSpell.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterSpell.add(Predicates.not(CardType.CREATURE.getPredicate())); } public DiscipleOfTheRing(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Dispel.java b/Mage.Sets/src/mage/cards/d/Dispel.java index c7af0cb0c0..8af2de2baa 100644 --- a/Mage.Sets/src/mage/cards/d/Dispel.java +++ b/Mage.Sets/src/mage/cards/d/Dispel.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -19,7 +18,7 @@ public final class Dispel extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public Dispel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DisplayOfDominance.java b/Mage.Sets/src/mage/cards/d/DisplayOfDominance.java index aa7fa1a6c1..982a15498d 100644 --- a/Mage.Sets/src/mage/cards/d/DisplayOfDominance.java +++ b/Mage.Sets/src/mage/cards/d/DisplayOfDominance.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -36,7 +35,7 @@ public final class DisplayOfDominance extends CardImpl { filter.add(Predicates.or( new ColorPredicate(ObjectColor.BLUE), new ColorPredicate(ObjectColor.BLACK))); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public DisplayOfDominance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DistendedMindbender.java b/Mage.Sets/src/mage/cards/d/DistendedMindbender.java index e05ecbd7b5..13500ac144 100644 --- a/Mage.Sets/src/mage/cards/d/DistendedMindbender.java +++ b/Mage.Sets/src/mage/cards/d/DistendedMindbender.java @@ -19,7 +19,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -67,7 +66,7 @@ class DistendedMindbenderEffect extends OneShotEffect { static { filterFourOrGreater.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 3)); filterThreeOrLess.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); - filterThreeOrLess.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterThreeOrLess.add(Predicates.not(CardType.LAND.getPredicate())); } public DistendedMindbenderEffect() { diff --git a/Mage.Sets/src/mage/cards/d/Distress.java b/Mage.Sets/src/mage/cards/d/Distress.java index 2ee0b37182..bdb95669d9 100644 --- a/Mage.Sets/src/mage/cards/d/Distress.java +++ b/Mage.Sets/src/mage/cards/d/Distress.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPlayer; /** @@ -20,7 +19,7 @@ public final class Distress extends CardImpl { private static final FilterCard filter = new FilterCard("nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public Distress(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DistrictGuide.java b/Mage.Sets/src/mage/cards/d/DistrictGuide.java index aea9713b75..d8a9c4dbcc 100644 --- a/Mage.Sets/src/mage/cards/d/DistrictGuide.java +++ b/Mage.Sets/src/mage/cards/d/DistrictGuide.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -28,7 +27,7 @@ public final class DistrictGuide extends CardImpl { static { filter.add(Predicates.or( Predicates.and( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC) ), new SubtypePredicate(SubType.GATE) )); diff --git a/Mage.Sets/src/mage/cards/d/Divest.java b/Mage.Sets/src/mage/cards/d/Divest.java index 1c4d95c49e..d5c64cf6af 100644 --- a/Mage.Sets/src/mage/cards/d/Divest.java +++ b/Mage.Sets/src/mage/cards/d/Divest.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.constants.TargetController; import mage.target.TargetPlayer; @@ -23,8 +22,8 @@ public final class Divest extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact or creature card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public Divest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DjeruWithEyesOpen.java b/Mage.Sets/src/mage/cards/d/DjeruWithEyesOpen.java index f29593b7e2..3e28d03f9a 100644 --- a/Mage.Sets/src/mage/cards/d/DjeruWithEyesOpen.java +++ b/Mage.Sets/src/mage/cards/d/DjeruWithEyesOpen.java @@ -18,7 +18,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -33,7 +32,7 @@ public final class DjeruWithEyesOpen extends CardImpl { private static final FilterCard filter = new FilterCard("planeswalker card"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); } public DjeruWithEyesOpen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DocentOfPerfection.java b/Mage.Sets/src/mage/cards/d/DocentOfPerfection.java index 46b698bb57..ad42f07062 100644 --- a/Mage.Sets/src/mage/cards/d/DocentOfPerfection.java +++ b/Mage.Sets/src/mage/cards/d/DocentOfPerfection.java @@ -21,7 +21,6 @@ import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -37,8 +36,8 @@ public final class DocentOfPerfection extends CardImpl { static { filterSpell.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public DocentOfPerfection(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Domineer.java b/Mage.Sets/src/mage/cards/d/Domineer.java index 95afadeb8d..d61b5971b1 100644 --- a/Mage.Sets/src/mage/cards/d/Domineer.java +++ b/Mage.Sets/src/mage/cards/d/Domineer.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -27,7 +26,7 @@ public final class Domineer extends CardImpl { static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Domineer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Dovescape.java b/Mage.Sets/src/mage/cards/d/Dovescape.java index dfdea9c74d..e3917d0af7 100644 --- a/Mage.Sets/src/mage/cards/d/Dovescape.java +++ b/Mage.Sets/src/mage/cards/d/Dovescape.java @@ -12,10 +12,8 @@ import mage.constants.Outcome; import mage.constants.SetTargetPointer; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.DovescapeToken; -import mage.game.permanent.token.TokenImpl; import mage.game.permanent.token.Token; import mage.game.stack.Spell; @@ -28,7 +26,7 @@ public final class Dovescape extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Dovescape(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DovinsAcuity.java b/Mage.Sets/src/mage/cards/d/DovinsAcuity.java index 96efb5f977..ea8560753e 100644 --- a/Mage.Sets/src/mage/cards/d/DovinsAcuity.java +++ b/Mage.Sets/src/mage/cards/d/DovinsAcuity.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TurnPhase; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import java.util.EnumSet; @@ -28,7 +27,7 @@ public final class DovinsAcuity extends CardImpl { private static final FilterSpell filter = new FilterSpell(); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public DovinsAcuity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DowsingShaman.java b/Mage.Sets/src/mage/cards/d/DowsingShaman.java index bf02e0053d..21a8d08beb 100644 --- a/Mage.Sets/src/mage/cards/d/DowsingShaman.java +++ b/Mage.Sets/src/mage/cards/d/DowsingShaman.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,7 +25,7 @@ public final class DowsingShaman extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public DowsingShaman(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DragonmasterOutcast.java b/Mage.Sets/src/mage/cards/d/DragonmasterOutcast.java index 9ae855120e..a969036fd0 100644 --- a/Mage.Sets/src/mage/cards/d/DragonmasterOutcast.java +++ b/Mage.Sets/src/mage/cards/d/DragonmasterOutcast.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.DragonToken2; /** @@ -27,7 +26,7 @@ public final class DragonmasterOutcast extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("land"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public DragonmasterOutcast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DralnuLichLord.java b/Mage.Sets/src/mage/cards/d/DralnuLichLord.java index ac2d30a61d..3e0f09fa9b 100644 --- a/Mage.Sets/src/mage/cards/d/DralnuLichLord.java +++ b/Mage.Sets/src/mage/cards/d/DralnuLichLord.java @@ -18,7 +18,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.DamageCreatureEvent; import mage.game.events.GameEvent; @@ -33,8 +32,8 @@ public final class DralnuLichLord extends CardImpl { private static final FilterCard filter = new FilterCard("instant or sorcery card in your graveyard"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public DralnuLichLord(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/Dreadbore.java b/Mage.Sets/src/mage/cards/d/Dreadbore.java index b0acce28cd..7e44a8966b 100644 --- a/Mage.Sets/src/mage/cards/d/Dreadbore.java +++ b/Mage.Sets/src/mage/cards/d/Dreadbore.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,8 +19,8 @@ public final class Dreadbore extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/d/Dreadmalkin.java b/Mage.Sets/src/mage/cards/d/Dreadmalkin.java index f31c67f88e..8cc76d83a6 100644 --- a/Mage.Sets/src/mage/cards/d/Dreadmalkin.java +++ b/Mage.Sets/src/mage/cards/d/Dreadmalkin.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetControlledPermanent; @@ -30,8 +29,8 @@ public final class Dreadmalkin extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.CREATURE) + CardType.PLANESWALKER.getPredicate(), + CardType.CREATURE.getPredicate() )); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/d/Dredge.java b/Mage.Sets/src/mage/cards/d/Dredge.java index 39cce92665..10801f9c11 100644 --- a/Mage.Sets/src/mage/cards/d/Dredge.java +++ b/Mage.Sets/src/mage/cards/d/Dredge.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class Dredge extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public Dredge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java b/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java index baef227f5a..cb8eb550b9 100644 --- a/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java +++ b/Mage.Sets/src/mage/cards/d/DriftOfTheDead.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -30,7 +29,7 @@ public final class DriftOfTheDead extends CardImpl { static { filter.add(new SupertypePredicate(SuperType.SNOW)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/d/DrillSkimmer.java b/Mage.Sets/src/mage/cards/d/DrillSkimmer.java index d379e662a3..cae53d9630 100644 --- a/Mage.Sets/src/mage/cards/d/DrillSkimmer.java +++ b/Mage.Sets/src/mage/cards/d/DrillSkimmer.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import java.util.UUID; @@ -31,7 +30,7 @@ public final class DrillSkimmer extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public DrillSkimmer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DroidFactory.java b/Mage.Sets/src/mage/cards/d/DroidFactory.java index f09abd7e4f..93771bafff 100644 --- a/Mage.Sets/src/mage/cards/d/DroidFactory.java +++ b/Mage.Sets/src/mage/cards/d/DroidFactory.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -59,7 +58,7 @@ public final class DroidFactory extends CardImpl { addCost(new TapSourceCost()); addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard("basic Plains, Island or Swamp"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); subtypePredicates.add(new SubtypePredicate(SubType.SWAMP)); subtypePredicates.add(new SubtypePredicate(SubType.PLAINS)); diff --git a/Mage.Sets/src/mage/cards/d/DroidUprising.java b/Mage.Sets/src/mage/cards/d/DroidUprising.java index 3657276640..160e371519 100644 --- a/Mage.Sets/src/mage/cards/d/DroidUprising.java +++ b/Mage.Sets/src/mage/cards/d/DroidUprising.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.DroidToken; /** @@ -21,7 +20,7 @@ public final class DroidUprising extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creatures"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public DroidUprising(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DrossScorpion.java b/Mage.Sets/src/mage/cards/d/DrossScorpion.java index 475da499bd..5dd5c0f1d1 100644 --- a/Mage.Sets/src/mage/cards/d/DrossScorpion.java +++ b/Mage.Sets/src/mage/cards/d/DrossScorpion.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetArtifactPermanent; /** @@ -23,7 +22,7 @@ public final class DrossScorpion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public DrossScorpion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DualCasting.java b/Mage.Sets/src/mage/cards/d/DualCasting.java index c2e42fd3c2..e9c0b7cdcb 100644 --- a/Mage.Sets/src/mage/cards/d/DualCasting.java +++ b/Mage.Sets/src/mage/cards/d/DualCasting.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetPermanent; import mage.target.TargetSpell; @@ -31,8 +30,8 @@ public final class DualCasting extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/d/Duress.java b/Mage.Sets/src/mage/cards/d/Duress.java index 584668ad52..5d352f8c4d 100644 --- a/Mage.Sets/src/mage/cards/d/Duress.java +++ b/Mage.Sets/src/mage/cards/d/Duress.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetOpponent; /** @@ -20,8 +19,8 @@ public final class Duress extends CardImpl { private static final FilterCard filter = new FilterCard("a noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public Duress(UUID ownerId, CardSetInfo setInfo){ diff --git a/Mage.Sets/src/mage/cards/e/EarthSurge.java b/Mage.Sets/src/mage/cards/e/EarthSurge.java index 6992e2695a..cd45ccbbc0 100644 --- a/Mage.Sets/src/mage/cards/e/EarthSurge.java +++ b/Mage.Sets/src/mage/cards/e/EarthSurge.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class EarthSurge extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("land creatures"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public EarthSurge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Earthcraft.java b/Mage.Sets/src/mage/cards/e/Earthcraft.java index 9db0d2926b..af9a8424b8 100644 --- a/Mage.Sets/src/mage/cards/e/Earthcraft.java +++ b/Mage.Sets/src/mage/cards/e/Earthcraft.java @@ -14,7 +14,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; @@ -30,7 +29,7 @@ public final class Earthcraft extends CardImpl { static { filterCreature.add(Predicates.not(TappedPredicate.instance)); - filterLand.add(new CardTypePredicate(CardType.LAND)); + filterLand.add(CardType.LAND.getPredicate()); 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 2a511fba60..17d018f4bd 100644 --- a/Mage.Sets/src/mage/cards/e/Earthlore.java +++ b/Mage.Sets/src/mage/cards/e/Earthlore.java @@ -5,7 +5,6 @@ import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.AttachedToMatchesFilterCondition; -import mage.abilities.condition.common.MyTurnCondition; import mage.abilities.costs.Cost; import mage.abilities.costs.common.TapAttachedCost; import mage.abilities.effects.common.AttachEffect; @@ -22,7 +21,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterBlockingCreature; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -37,7 +35,7 @@ public final class Earthlore extends CardImpl { private static final FilterControlledPermanent filterLand = new FilterControlledPermanent("land you control"); static { - filterLand.add(new CardTypePredicate(CardType.LAND)); + filterLand.add(CardType.LAND.getPredicate()); } private static final FilterPermanent filterUntapped = new FilterPermanent("enchanted land is untapped"); diff --git a/Mage.Sets/src/mage/cards/e/EchoingRuin.java b/Mage.Sets/src/mage/cards/e/EchoingRuin.java index 738dba3ba8..c740314fb5 100644 --- a/Mage.Sets/src/mage/cards/e/EchoingRuin.java +++ b/Mage.Sets/src/mage/cards/e/EchoingRuin.java @@ -7,7 +7,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -24,7 +23,7 @@ public final class EchoingRuin extends CardImpl { static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public EchoingRuin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EidolonOfCountlessBattles.java b/Mage.Sets/src/mage/cards/e/EidolonOfCountlessBattles.java index 6a09d92276..ba78ff842c 100644 --- a/Mage.Sets/src/mage/cards/e/EidolonOfCountlessBattles.java +++ b/Mage.Sets/src/mage/cards/e/EidolonOfCountlessBattles.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -30,7 +29,7 @@ public final class EidolonOfCountlessBattles extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.AURA))); } diff --git a/Mage.Sets/src/mage/cards/e/EladamrisCall.java b/Mage.Sets/src/mage/cards/e/EladamrisCall.java index 37209a51b2..4bf450a0c5 100644 --- a/Mage.Sets/src/mage/cards/e/EladamrisCall.java +++ b/Mage.Sets/src/mage/cards/e/EladamrisCall.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -19,7 +18,7 @@ public final class EladamrisCall extends CardImpl { private static final FilterCard filter = new FilterCard("creature card"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public EladamrisCall(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ElderDruid.java b/Mage.Sets/src/mage/cards/e/ElderDruid.java index 6be651a2bf..f1eaa03381 100644 --- a/Mage.Sets/src/mage/cards/e/ElderDruid.java +++ b/Mage.Sets/src/mage/cards/e/ElderDruid.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -28,9 +27,9 @@ public final class ElderDruid extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public ElderDruid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EldritchEvolution.java b/Mage.Sets/src/mage/cards/e/EldritchEvolution.java index 4ea99a5191..9a46e46b89 100644 --- a/Mage.Sets/src/mage/cards/e/EldritchEvolution.java +++ b/Mage.Sets/src/mage/cards/e/EldritchEvolution.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -81,7 +80,7 @@ class EldritchEvolutionEffect extends OneShotEffect { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 2; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost + " or less"); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, newConvertedCost+1)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/e/ElectrostaticBolt.java b/Mage.Sets/src/mage/cards/e/ElectrostaticBolt.java index b0f405a1cd..f1a161c2d6 100644 --- a/Mage.Sets/src/mage/cards/e/ElectrostaticBolt.java +++ b/Mage.Sets/src/mage/cards/e/ElectrostaticBolt.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; @@ -46,7 +45,7 @@ class ElectrostaticBoltDamageValue implements DynamicValue { static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } @Override diff --git a/Mage.Sets/src/mage/cards/e/EliteArcanist.java b/Mage.Sets/src/mage/cards/e/EliteArcanist.java index 37f39b971d..9034df372c 100644 --- a/Mage.Sets/src/mage/cards/e/EliteArcanist.java +++ b/Mage.Sets/src/mage/cards/e/EliteArcanist.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -87,7 +86,7 @@ class EliteArcanistImprintEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("instant card from your hand"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public EliteArcanistImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/e/ElshaOfTheInfinite.java b/Mage.Sets/src/mage/cards/e/ElshaOfTheInfinite.java index 3dfdc703be..91b80c7af8 100644 --- a/Mage.Sets/src/mage/cards/e/ElshaOfTheInfinite.java +++ b/Mage.Sets/src/mage/cards/e/ElshaOfTheInfinite.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -28,7 +27,7 @@ public final class ElshaOfTheInfinite extends CardImpl { private static final FilterCard filter = new FilterNonlandCard(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ElshaOfTheInfinite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ElusiveSpellfist.java b/Mage.Sets/src/mage/cards/e/ElusiveSpellfist.java index d4325312b8..b2e1cbdb2b 100644 --- a/Mage.Sets/src/mage/cards/e/ElusiveSpellfist.java +++ b/Mage.Sets/src/mage/cards/e/ElusiveSpellfist.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class ElusiveSpellfist extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ElusiveSpellfist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmberGale.java b/Mage.Sets/src/mage/cards/e/EmberGale.java index 306b3887fe..7bf5fe1b94 100644 --- a/Mage.Sets/src/mage/cards/e/EmberGale.java +++ b/Mage.Sets/src/mage/cards/e/EmberGale.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; @@ -77,7 +76,7 @@ class EmberGaleEffect extends OneShotEffect { filter2.add(new ControllerIdPredicate(targetPlayer.getId())); filter2.add(Predicates.or(new ColorPredicate(ObjectColor.WHITE), new ColorPredicate(ObjectColor.BLUE))); - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); for (Permanent creature : game.getBattlefield().getAllActivePermanents(filter2, targetPlayer.getId(), game)) { creature.damage(1, source.getSourceId(), game, false, true); } diff --git a/Mage.Sets/src/mage/cards/e/EmbodimentOfFury.java b/Mage.Sets/src/mage/cards/e/EmbodimentOfFury.java index 517ec3fcfb..e5e7c81b30 100644 --- a/Mage.Sets/src/mage/cards/e/EmbodimentOfFury.java +++ b/Mage.Sets/src/mage/cards/e/EmbodimentOfFury.java @@ -18,9 +18,7 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; import mage.target.TargetPermanent; /** @@ -32,8 +30,8 @@ public final class EmbodimentOfFury extends CardImpl { private static final FilterPermanent filterLandCreatures = new FilterPermanent("Land creatures"); static { - filterLandCreatures.add(new CardTypePredicate(CardType.LAND)); - filterLandCreatures.add(new CardTypePredicate(CardType.CREATURE)); + filterLandCreatures.add(CardType.LAND.getPredicate()); + filterLandCreatures.add(CardType.CREATURE.getPredicate()); } public EmbodimentOfFury(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmbodimentOfInsight.java b/Mage.Sets/src/mage/cards/e/EmbodimentOfInsight.java index 2f002a4bda..56ff24f7a6 100644 --- a/Mage.Sets/src/mage/cards/e/EmbodimentOfInsight.java +++ b/Mage.Sets/src/mage/cards/e/EmbodimentOfInsight.java @@ -18,9 +18,7 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; import mage.target.TargetPermanent; /** @@ -32,8 +30,8 @@ public final class EmbodimentOfInsight extends CardImpl { private static final FilterPermanent filterLandCreatures = new FilterPermanent("Land creatures"); static { - filterLandCreatures.add(new CardTypePredicate(CardType.LAND)); - filterLandCreatures.add(new CardTypePredicate(CardType.CREATURE)); + filterLandCreatures.add(CardType.LAND.getPredicate()); + filterLandCreatures.add(CardType.CREATURE.getPredicate()); } public EmbodimentOfInsight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmeriaShepherd.java b/Mage.Sets/src/mage/cards/e/EmeriaShepherd.java index 584e48dd4f..08a1884c36 100644 --- a/Mage.Sets/src/mage/cards/e/EmeriaShepherd.java +++ b/Mage.Sets/src/mage/cards/e/EmeriaShepherd.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -32,7 +31,7 @@ public final class EmeriaShepherd extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("nonland permanent card from your graveyard"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public EmeriaShepherd(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmissaryOfHope.java b/Mage.Sets/src/mage/cards/e/EmissaryOfHope.java index 04331e591a..a7866a6f6e 100644 --- a/Mage.Sets/src/mage/cards/e/EmissaryOfHope.java +++ b/Mage.Sets/src/mage/cards/e/EmissaryOfHope.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.players.Player; @@ -51,7 +50,7 @@ class EmissaryOfHopeEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/e/EmrakulThePromisedEnd.java b/Mage.Sets/src/mage/cards/e/EmrakulThePromisedEnd.java index 726ec3f847..28af8e6a1e 100644 --- a/Mage.Sets/src/mage/cards/e/EmrakulThePromisedEnd.java +++ b/Mage.Sets/src/mage/cards/e/EmrakulThePromisedEnd.java @@ -19,7 +19,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.turn.TurnMod; import mage.players.Player; @@ -35,7 +34,7 @@ public final class EmrakulThePromisedEnd extends CardImpl { private static final FilterCard filter = new FilterCard("instants"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public EmrakulThePromisedEnd(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EnchantresssPresence.java b/Mage.Sets/src/mage/cards/e/EnchantresssPresence.java index e0a855ec58..f455a8dc4c 100644 --- a/Mage.Sets/src/mage/cards/e/EnchantresssPresence.java +++ b/Mage.Sets/src/mage/cards/e/EnchantresssPresence.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class EnchantresssPresence extends CardImpl { private static final FilterSpell filter = new FilterSpell("an Enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/e/Encroach.java b/Mage.Sets/src/mage/cards/e/Encroach.java index 84fd18dbe6..ee97c6745b 100644 --- a/Mage.Sets/src/mage/cards/e/Encroach.java +++ b/Mage.Sets/src/mage/cards/e/Encroach.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetOpponent; @@ -23,7 +22,7 @@ public final class Encroach extends CardImpl { static { filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public Encroach(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Encrust.java b/Mage.Sets/src/mage/cards/e/Encrust.java index fd2cf1f6d7..628dbdb2b0 100644 --- a/Mage.Sets/src/mage/cards/e/Encrust.java +++ b/Mage.Sets/src/mage/cards/e/Encrust.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -30,8 +29,8 @@ public final class Encrust extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ARTIFACT))); + CardType.CREATURE.getPredicate(), + CardType.ARTIFACT.getPredicate())); } public Encrust(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EnergyChamber.java b/Mage.Sets/src/mage/cards/e/EnergyChamber.java index bd906d312c..15fc7fc053 100644 --- a/Mage.Sets/src/mage/cards/e/EnergyChamber.java +++ b/Mage.Sets/src/mage/cards/e/EnergyChamber.java @@ -15,7 +15,7 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.target.TargetPermanent; /** @@ -28,10 +28,10 @@ public final class EnergyChamber extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent("noncreature artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); - filter2.add(new CardTypePredicate(CardType.ARTIFACT)); - filter2.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); + filter2.add(CardType.ARTIFACT.getPredicate()); + filter2.add(Predicates.not(CardType.CREATURE.getPredicate())); } public EnergyChamber(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Enervate.java b/Mage.Sets/src/mage/cards/e/Enervate.java index 2c3df57d06..b32b09ded8 100644 --- a/Mage.Sets/src/mage/cards/e/Enervate.java +++ b/Mage.Sets/src/mage/cards/e/Enervate.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,9 +23,9 @@ public final class Enervate extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Enervate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EnlightenedTutor.java b/Mage.Sets/src/mage/cards/e/EnlightenedTutor.java index f76fc0e70b..1ba46ff956 100644 --- a/Mage.Sets/src/mage/cards/e/EnlightenedTutor.java +++ b/Mage.Sets/src/mage/cards/e/EnlightenedTutor.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -20,8 +19,8 @@ public final class EnlightenedTutor extends CardImpl { private static final FilterCard filter = new FilterCard("artifact or enchantment card"); static{ filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public EnlightenedTutor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Envelop.java b/Mage.Sets/src/mage/cards/e/Envelop.java index e246e4dfab..71ef804f62 100644 --- a/Mage.Sets/src/mage/cards/e/Envelop.java +++ b/Mage.Sets/src/mage/cards/e/Envelop.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -19,7 +18,7 @@ public final class Envelop extends CardImpl { private static final FilterSpell filter = new FilterSpell("sorcery spell"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Envelop(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Equipoise.java b/Mage.Sets/src/mage/cards/e/Equipoise.java index 08163dde81..4f0a72880e 100644 --- a/Mage.Sets/src/mage/cards/e/Equipoise.java +++ b/Mage.Sets/src/mage/cards/e/Equipoise.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.players.Player; @@ -81,14 +80,14 @@ class EquipoiseEffect extends OneShotEffect { private void phaseOutCardType(Player controller, Player targetPlayer, CardType cardType, Ability source, Game game) { FilterPermanent filter = new FilterControlledPermanent(); - filter.add(new CardTypePredicate(cardType)); + filter.add(cardType.getPredicate()); int numberController = game.getBattlefield().count(filter, source.getSourceId(), controller.getId(), game); int numberTargetPlayer = game.getBattlefield().count(filter, source.getSourceId(), targetPlayer.getId(), game); int excess = numberTargetPlayer - numberController; if (excess > 0) { FilterPermanent filterChoose = new FilterPermanent(cardType.toString().toLowerCase(Locale.ENGLISH) + (excess > 1 ? "s" : "") + " of target player"); filterChoose.add(new ControllerIdPredicate(targetPlayer.getId())); - filterChoose.add(new CardTypePredicate(cardType)); + filterChoose.add(cardType.getPredicate()); Target target = new TargetPermanent(excess, excess, filterChoose, true); controller.chooseTarget(outcome, target, source, game); new PhaseOutAllEffect(target.getTargets()).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/e/EraOfInnovation.java b/Mage.Sets/src/mage/cards/e/EraOfInnovation.java index 58b789c059..6c59092513 100644 --- a/Mage.Sets/src/mage/cards/e/EraOfInnovation.java +++ b/Mage.Sets/src/mage/cards/e/EraOfInnovation.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +30,7 @@ public final class EraOfInnovation extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact or Artificer"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), new SubtypePredicate(SubType.ARTIFICER))); } diff --git a/Mage.Sets/src/mage/cards/e/ErtaiTheCorrupted.java b/Mage.Sets/src/mage/cards/e/ErtaiTheCorrupted.java index 7cfef3111b..f03a9c10e1 100644 --- a/Mage.Sets/src/mage/cards/e/ErtaiTheCorrupted.java +++ b/Mage.Sets/src/mage/cards/e/ErtaiTheCorrupted.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledPermanent; @@ -30,7 +29,7 @@ public final class ErtaiTheCorrupted extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public ErtaiTheCorrupted(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EsperPanorama.java b/Mage.Sets/src/mage/cards/e/EsperPanorama.java index 02ddbb217c..e51e305c6b 100644 --- a/Mage.Sets/src/mage/cards/e/EsperPanorama.java +++ b/Mage.Sets/src/mage/cards/e/EsperPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -28,7 +27,7 @@ public final class EsperPanorama extends CardImpl { private static final FilterCard filter = new FilterCard("a basic Plains, Island, or Swamp"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate(SubType.PLAINS), diff --git a/Mage.Sets/src/mage/cards/e/EtaliPrimalStorm.java b/Mage.Sets/src/mage/cards/e/EtaliPrimalStorm.java index f75fb918ce..06724c9067 100644 --- a/Mage.Sets/src/mage/cards/e/EtaliPrimalStorm.java +++ b/Mage.Sets/src/mage/cards/e/EtaliPrimalStorm.java @@ -21,8 +21,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; -import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; diff --git a/Mage.Sets/src/mage/cards/e/EternalDominion.java b/Mage.Sets/src/mage/cards/e/EternalDominion.java index ebaa4377f1..66f6ed7551 100644 --- a/Mage.Sets/src/mage/cards/e/EternalDominion.java +++ b/Mage.Sets/src/mage/cards/e/EternalDominion.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -55,10 +54,10 @@ class EternalDominionEffect extends OneShotEffect { private static final FilterCard FILTER = new FilterCard("an artifact, creature, enchantment, or land card"); static { - FILTER.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + FILTER.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public EternalDominionEffect() { diff --git a/Mage.Sets/src/mage/cards/e/EtheriumAstrolabe.java b/Mage.Sets/src/mage/cards/e/EtheriumAstrolabe.java index 0cd511809a..0cb2e0f979 100644 --- a/Mage.Sets/src/mage/cards/e/EtheriumAstrolabe.java +++ b/Mage.Sets/src/mage/cards/e/EtheriumAstrolabe.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class EtheriumAstrolabe extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static{ - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public EtheriumAstrolabe(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EtheriumSculptor.java b/Mage.Sets/src/mage/cards/e/EtheriumSculptor.java index bb923a40f5..00582aeb77 100644 --- a/Mage.Sets/src/mage/cards/e/EtheriumSculptor.java +++ b/Mage.Sets/src/mage/cards/e/EtheriumSculptor.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ import mage.filter.predicate.mageobject.CardTypePredicate; public final class EtheriumSculptor extends CardImpl { private static final FilterCard filter = new FilterCard("Artifact spells"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public EtheriumSculptor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EtherswornAdjudicator.java b/Mage.Sets/src/mage/cards/e/EtherswornAdjudicator.java index b89ded5d6f..a07e0920ce 100644 --- a/Mage.Sets/src/mage/cards/e/EtherswornAdjudicator.java +++ b/Mage.Sets/src/mage/cards/e/EtherswornAdjudicator.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -31,8 +30,8 @@ public final class EtherswornAdjudicator extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public EtherswornAdjudicator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EtherswornShieldmage.java b/Mage.Sets/src/mage/cards/e/EtherswornShieldmage.java index 467e8a3e8d..1c46ad8bbb 100644 --- a/Mage.Sets/src/mage/cards/e/EtherswornShieldmage.java +++ b/Mage.Sets/src/mage/cards/e/EtherswornShieldmage.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class EtherswornShieldmage extends CardImpl { final private static FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public EtherswornShieldmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Evershrike.java b/Mage.Sets/src/mage/cards/e/Evershrike.java index 55d2989693..0e404bf232 100644 --- a/Mage.Sets/src/mage/cards/e/Evershrike.java +++ b/Mage.Sets/src/mage/cards/e/Evershrike.java @@ -16,7 +16,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.AuraCardCanAttachToPermanentId; @@ -84,7 +83,7 @@ class EvershrikeEffect extends OneShotEffect { } boolean exileSource = true; FilterCard filterAuraCard = new FilterCard("Aura card with converted mana cost X or less from your hand"); - filterAuraCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAuraCard.add(CardType.ENCHANTMENT.getPredicate()); filterAuraCard.add(new SubtypePredicate(SubType.AURA)); filterAuraCard.add(new AuraCardCanAttachToPermanentId(evershrikePermanent.getId())); filterAuraCard.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xAmount)); diff --git a/Mage.Sets/src/mage/cards/e/ExavaRakdosBloodWitch.java b/Mage.Sets/src/mage/cards/e/ExavaRakdosBloodWitch.java index 89feff7739..cd330ce4b5 100644 --- a/Mage.Sets/src/mage/cards/e/ExavaRakdosBloodWitch.java +++ b/Mage.Sets/src/mage/cards/e/ExavaRakdosBloodWitch.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -26,7 +25,7 @@ public final class ExavaRakdosBloodWitch extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); filter.add(AnotherPredicate.instance); diff --git a/Mage.Sets/src/mage/cards/e/ExclusionRitual.java b/Mage.Sets/src/mage/cards/e/ExclusionRitual.java index 08311b02f2..240d9bb650 100644 --- a/Mage.Sets/src/mage/cards/e/ExclusionRitual.java +++ b/Mage.Sets/src/mage/cards/e/ExclusionRitual.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -31,7 +30,7 @@ public final class ExclusionRitual extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public ExclusionRitual(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Exhaustion.java b/Mage.Sets/src/mage/cards/e/Exhaustion.java index b4f8f6cd53..c47dd20b2c 100644 --- a/Mage.Sets/src/mage/cards/e/Exhaustion.java +++ b/Mage.Sets/src/mage/cards/e/Exhaustion.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetOpponent; @@ -47,7 +46,7 @@ class ExhaustionEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } ExhaustionEffect() { diff --git a/Mage.Sets/src/mage/cards/e/Expunge.java b/Mage.Sets/src/mage/cards/e/Expunge.java index 16e2a2e4ea..1229c464a0 100644 --- a/Mage.Sets/src/mage/cards/e/Expunge.java +++ b/Mage.Sets/src/mage/cards/e/Expunge.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCreaturePermanent; @@ -24,7 +23,7 @@ public final class Expunge extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/e/Extinguish.java b/Mage.Sets/src/mage/cards/e/Extinguish.java index 4e3f82c21f..1eaeb9c0b3 100644 --- a/Mage.Sets/src/mage/cards/e/Extinguish.java +++ b/Mage.Sets/src/mage/cards/e/Extinguish.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -19,7 +18,7 @@ public final class Extinguish extends CardImpl { private static final FilterSpell filter = new FilterSpell("sorcery spell"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Extinguish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ExtinguishAllHope.java b/Mage.Sets/src/mage/cards/e/ExtinguishAllHope.java index 2ff8dd0537..f9a511567c 100644 --- a/Mage.Sets/src/mage/cards/e/ExtinguishAllHope.java +++ b/Mage.Sets/src/mage/cards/e/ExtinguishAllHope.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,8 +18,8 @@ public final class ExtinguishAllHope extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonenchantment creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(Predicates.not(new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(CardType.CREATURE.getPredicate()); + filter.add(Predicates.not(CardType.ENCHANTMENT.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/e/Extirpate.java b/Mage.Sets/src/mage/cards/e/Extirpate.java index 1c74ffd1df..f18fa00bb0 100644 --- a/Mage.Sets/src/mage/cards/e/Extirpate.java +++ b/Mage.Sets/src/mage/cards/e/Extirpate.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -35,7 +34,7 @@ public final class Extirpate extends CardImpl { private static final FilterCard filter = new FilterCard("card in a graveyard other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); } public Extirpate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Extruder.java b/Mage.Sets/src/mage/cards/e/Extruder.java index d13b63f946..2e9afc2294 100644 --- a/Mage.Sets/src/mage/cards/e/Extruder.java +++ b/Mage.Sets/src/mage/cards/e/Extruder.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; @@ -28,7 +27,7 @@ public final class Extruder extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Extruder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EyesOfTheWatcher.java b/Mage.Sets/src/mage/cards/e/EyesOfTheWatcher.java index cc00e75b55..6575e0a6c3 100644 --- a/Mage.Sets/src/mage/cards/e/EyesOfTheWatcher.java +++ b/Mage.Sets/src/mage/cards/e/EyesOfTheWatcher.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class EyesOfTheWatcher extends CardImpl { private static final FilterSpell filter = new FilterSpell("an instant or sorcery spell"); static{ - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public EyesOfTheWatcher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Fabricate.java b/Mage.Sets/src/mage/cards/f/Fabricate.java index 426b498545..0c1035ad95 100644 --- a/Mage.Sets/src/mage/cards/f/Fabricate.java +++ b/Mage.Sets/src/mage/cards/f/Fabricate.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -19,7 +18,7 @@ public final class Fabricate extends CardImpl { private static final FilterCard filter = new FilterCard("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Fabricate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FaerieMechanist.java b/Mage.Sets/src/mage/cards/f/FaerieMechanist.java index b3255885a5..b510cf2065 100644 --- a/Mage.Sets/src/mage/cards/f/FaerieMechanist.java +++ b/Mage.Sets/src/mage/cards/f/FaerieMechanist.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class FaerieMechanist extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FaerieMechanist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FalseOrders.java b/Mage.Sets/src/mage/cards/f/FalseOrders.java index 7a3279720b..28d324d5f9 100644 --- a/Mage.Sets/src/mage/cards/f/FalseOrders.java +++ b/Mage.Sets/src/mage/cards/f/FalseOrders.java @@ -19,7 +19,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterAttackingCreature; import mage.filter.predicate.ObjectPlayer; import mage.filter.predicate.ObjectPlayerPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.PermanentInListPredicate; import mage.game.Controllable; import mage.game.Game; @@ -40,7 +39,7 @@ public final class FalseOrders extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature defending player controls"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new FalseOrdersDefendingPlayerControlsPredicate()); } diff --git a/Mage.Sets/src/mage/cards/f/FatedRetribution.java b/Mage.Sets/src/mage/cards/f/FatedRetribution.java index 9956c2abaf..13b602a5a2 100644 --- a/Mage.Sets/src/mage/cards/f/FatedRetribution.java +++ b/Mage.Sets/src/mage/cards/f/FatedRetribution.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,8 +21,8 @@ public final class FatedRetribution extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creatures and planeswalkers"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public FatedRetribution(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{4}{W}{W}{W}"); diff --git a/Mage.Sets/src/mage/cards/f/FeastOfDreams.java b/Mage.Sets/src/mage/cards/f/FeastOfDreams.java index b42e154268..e356a2037c 100644 --- a/Mage.Sets/src/mage/cards/f/FeastOfDreams.java +++ b/Mage.Sets/src/mage/cards/f/FeastOfDreams.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.EnchantedPredicate; import mage.target.common.TargetCreaturePermanent; @@ -23,7 +22,7 @@ public final class FeastOfDreams extends CardImpl { static { filter.add(Predicates.or( EnchantedPredicate.instance, - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/f/FeastOrFamine.java b/Mage.Sets/src/mage/cards/f/FeastOrFamine.java index f0ac477274..5166155216 100644 --- a/Mage.Sets/src/mage/cards/f/FeastOrFamine.java +++ b/Mage.Sets/src/mage/cards/f/FeastOrFamine.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.permanent.token.ZombieToken; import mage.target.common.TargetCreaturePermanent; @@ -25,7 +24,7 @@ public final class FeastOrFamine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/f/FenHauler.java b/Mage.Sets/src/mage/cards/f/FenHauler.java index 7a558eeed6..a118fd1f48 100644 --- a/Mage.Sets/src/mage/cards/f/FenHauler.java +++ b/Mage.Sets/src/mage/cards/f/FenHauler.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class FenHauler extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FenHauler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Ferrovore.java b/Mage.Sets/src/mage/cards/f/Ferrovore.java index 78ae866ec0..fe985d0960 100644 --- a/Mage.Sets/src/mage/cards/f/Ferrovore.java +++ b/Mage.Sets/src/mage/cards/f/Ferrovore.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -27,7 +26,7 @@ public final class Ferrovore extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Ferrovore (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FiligreeAngel.java b/Mage.Sets/src/mage/cards/f/FiligreeAngel.java index ced894d9df..638f78ff10 100644 --- a/Mage.Sets/src/mage/cards/f/FiligreeAngel.java +++ b/Mage.Sets/src/mage/cards/f/FiligreeAngel.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -55,7 +54,7 @@ class FiligreeAngelEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FiligreeAngelEffect() { diff --git a/Mage.Sets/src/mage/cards/f/FiligreeSages.java b/Mage.Sets/src/mage/cards/f/FiligreeSages.java index a6390948d6..8a4626cfa0 100644 --- a/Mage.Sets/src/mage/cards/f/FiligreeSages.java +++ b/Mage.Sets/src/mage/cards/f/FiligreeSages.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class FiligreeSages extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FiligreeSages (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Filth.java b/Mage.Sets/src/mage/cards/f/Filth.java index 95db452bde..e8b25598f5 100644 --- a/Mage.Sets/src/mage/cards/f/Filth.java +++ b/Mage.Sets/src/mage/cards/f/Filth.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -30,7 +29,7 @@ public final class Filth extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Swamp"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SubtypePredicate(SubType.SWAMP)); } diff --git a/Mage.Sets/src/mage/cards/f/FinalIteration.java b/Mage.Sets/src/mage/cards/f/FinalIteration.java index 0b0d38c973..274ff435bb 100644 --- a/Mage.Sets/src/mage/cards/f/FinalIteration.java +++ b/Mage.Sets/src/mage/cards/f/FinalIteration.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.permanent.token.HumanWizardToken; @@ -35,8 +34,8 @@ public final class FinalIteration extends CardImpl { filter.add(new SubtypePredicate(SubType.WIZARD)); filter.add(new ControllerPredicate(TargetController.YOU)); filterSpell.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public FinalIteration(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FinalPayment.java b/Mage.Sets/src/mage/cards/f/FinalPayment.java index 22486309c3..bb636c2dd0 100644 --- a/Mage.Sets/src/mage/cards/f/FinalPayment.java +++ b/Mage.Sets/src/mage/cards/f/FinalPayment.java @@ -2,26 +2,18 @@ package mage.cards.f; import java.util.UUID; -import mage.abilities.costs.AlternativeCostSourceAbility; import mage.abilities.costs.Cost; -import mage.abilities.costs.OptionalAdditionalCost; import mage.abilities.costs.OrCost; import mage.abilities.costs.common.PayLifeCost; import mage.abilities.costs.common.SacrificeTargetCost; -import mage.abilities.dynamicvalue.common.SacrificeCostCreaturesToughness; import mage.abilities.effects.common.DestroyTargetEffect; -import mage.abilities.effects.common.GainLifeEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; -import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; -import mage.target.common.TargetOpponentsCreaturePermanent; /** * @@ -31,7 +23,7 @@ public final class FinalPayment extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public FinalPayment(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FinaleOfDevastation.java b/Mage.Sets/src/mage/cards/f/FinaleOfDevastation.java index 7afc58140a..7e49ab9f07 100644 --- a/Mage.Sets/src/mage/cards/f/FinaleOfDevastation.java +++ b/Mage.Sets/src/mage/cards/f/FinaleOfDevastation.java @@ -10,7 +10,6 @@ import mage.game.Game; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; import mage.constants.CardType; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.abilities.effects.common.search.SearchLibraryGraveyardWithLessCMCPutIntoPlay; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -29,7 +28,7 @@ public final class FinaleOfDevastation extends CardImpl { private static final FilterCard filter = new FilterCard("creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public FinaleOfDevastation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FinaleOfPromise.java b/Mage.Sets/src/mage/cards/f/FinaleOfPromise.java index 21183ceab3..9ebf263dde 100644 --- a/Mage.Sets/src/mage/cards/f/FinaleOfPromise.java +++ b/Mage.Sets/src/mage/cards/f/FinaleOfPromise.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -36,8 +35,8 @@ public final class FinaleOfPromise extends CardImpl { static final FilterCard filterSorcery = new FilterCard("sorcery card from your graveyard"); static { - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterInstant.add(CardType.INSTANT.getPredicate()); + filterSorcery.add(CardType.SORCERY.getPredicate()); } public FinaleOfPromise(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 6408b55ac2..aee02c573a 100644 --- a/Mage.Sets/src/mage/cards/f/Finn.java +++ b/Mage.Sets/src/mage/cards/f/Finn.java @@ -2,21 +2,16 @@ package mage.cards.f; import java.util.UUID; import mage.MageInt; -import mage.abilities.Ability; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; import mage.abilities.effects.common.GainLifeEffect; import mage.constants.*; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.StaticFilters; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; -import mage.filter.predicate.mageobject.NamePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.TokenPredicate; -import mage.target.common.TargetCreaturePermanent; /** * diff --git a/Mage.Sets/src/mage/cards/f/FirebrandArcher.java b/Mage.Sets/src/mage/cards/f/FirebrandArcher.java index d0af2ca070..060974091d 100644 --- a/Mage.Sets/src/mage/cards/f/FirebrandArcher.java +++ b/Mage.Sets/src/mage/cards/f/FirebrandArcher.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class FirebrandArcher extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public FirebrandArcher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FirefrightMage.java b/Mage.Sets/src/mage/cards/f/FirefrightMage.java index 56a20aca3b..05bd9ff5ce 100644 --- a/Mage.Sets/src/mage/cards/f/FirefrightMage.java +++ b/Mage.Sets/src/mage/cards/f/FirefrightMage.java @@ -18,7 +18,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCreaturePermanent; @@ -33,8 +32,8 @@ public final class FirefrightMage extends CardImpl { static { filter.add(Predicates.not( Predicates.or( - Predicates.and(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE)), - Predicates.and(new CardTypePredicate(CardType.CREATURE), new ColorPredicate(ObjectColor.RED) + Predicates.and(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate()), + Predicates.and(CardType.CREATURE.getPredicate(), new ColorPredicate(ObjectColor.RED) )))); } diff --git a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java index 05b4376308..c3cfd5d640 100644 --- a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java +++ b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java @@ -10,7 +10,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -72,7 +71,7 @@ class FiremindsForesightSearchEffect extends OneShotEffect { for (int cmc=3; cmc > 0; cmc--) { FilterCard filter = new FilterCard("instant card with converted mana cost " + cmc); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); diff --git a/Mage.Sets/src/mage/cards/f/FiresongAndSunspeaker.java b/Mage.Sets/src/mage/cards/f/FiresongAndSunspeaker.java index 3d396bc564..af59786f63 100644 --- a/Mage.Sets/src/mage/cards/f/FiresongAndSunspeaker.java +++ b/Mage.Sets/src/mage/cards/f/FiresongAndSunspeaker.java @@ -17,7 +17,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.filter.FilterObject; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -33,7 +32,7 @@ public final class FiresongAndSunspeaker extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.RED)); - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public FiresongAndSunspeaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Fissure.java b/Mage.Sets/src/mage/cards/f/Fissure.java index 8dd76642e7..4d0537f914 100644 --- a/Mage.Sets/src/mage/cards/f/Fissure.java +++ b/Mage.Sets/src/mage/cards/f/Fissure.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -19,7 +18,7 @@ import mage.target.TargetPermanent; public final class Fissure extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public Fissure(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Flamewright.java b/Mage.Sets/src/mage/cards/f/Flamewright.java index 2735092087..f9bd381c6f 100644 --- a/Mage.Sets/src/mage/cards/f/Flamewright.java +++ b/Mage.Sets/src/mage/cards/f/Flamewright.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ConstructToken; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -32,7 +31,7 @@ public final class Flamewright extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("creature with defender"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new AbilityPredicate(DefenderAbility.class)); } diff --git a/Mage.Sets/src/mage/cards/f/FlashCounter.java b/Mage.Sets/src/mage/cards/f/FlashCounter.java index e22ea45bf0..53df3e4ac2 100644 --- a/Mage.Sets/src/mage/cards/f/FlashCounter.java +++ b/Mage.Sets/src/mage/cards/f/FlashCounter.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -19,7 +18,7 @@ public final class FlashCounter extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public FlashCounter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Flickerform.java b/Mage.Sets/src/mage/cards/f/Flickerform.java index 0f0ef9da3e..c3db832f67 100644 --- a/Mage.Sets/src/mage/cards/f/Flickerform.java +++ b/Mage.Sets/src/mage/cards/f/Flickerform.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterEnchantmentPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.ExileZone; import mage.game.Game; @@ -123,7 +122,7 @@ class FlickerformReturnEffect extends OneShotEffect { private static final FilterCard filterAura = new FilterCard(); static { - filterAura.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAura.add(CardType.ENCHANTMENT.getPredicate()); filterAura.add(new SubtypePredicate(SubType.AURA)); } diff --git a/Mage.Sets/src/mage/cards/f/FloodtideSerpent.java b/Mage.Sets/src/mage/cards/f/FloodtideSerpent.java index 5e8d11a959..3b4fd07b86 100644 --- a/Mage.Sets/src/mage/cards/f/FloodtideSerpent.java +++ b/Mage.Sets/src/mage/cards/f/FloodtideSerpent.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class FloodtideSerpent extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an enchantment you control"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public FloodtideSerpent(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 8fde7de47c..137e154879 100644 --- a/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java +++ b/Mage.Sets/src/mage/cards/f/FloralSpuzzem.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; import mage.target.TargetPermanent; @@ -26,7 +25,7 @@ public final class FloralSpuzzem extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact defending player controls"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(DefendingPlayerControlsPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/f/ForceStasis.java b/Mage.Sets/src/mage/cards/f/ForceStasis.java index bca7faa324..847b6f0fea 100644 --- a/Mage.Sets/src/mage/cards/f/ForceStasis.java +++ b/Mage.Sets/src/mage/cards/f/ForceStasis.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; @@ -26,8 +25,8 @@ public final class ForceStasis extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.NOT_YOU)); - filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.INSTANT.getPredicate()); + filter.add(CardType.SORCERY.getPredicate()); } public ForceStasis(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FoulEmissary.java b/Mage.Sets/src/mage/cards/f/FoulEmissary.java index cca047343a..69e88b3ba2 100644 --- a/Mage.Sets/src/mage/cards/f/FoulEmissary.java +++ b/Mage.Sets/src/mage/cards/f/FoulEmissary.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.token.EldraziHorrorToken; @@ -30,7 +29,7 @@ public final class FoulEmissary extends CardImpl { private static final FilterCard filter = new FilterCard("a creature card"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public FoulEmissary(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FoundryInspector.java b/Mage.Sets/src/mage/cards/f/FoundryInspector.java index 2e893fbc07..e3a265a30d 100644 --- a/Mage.Sets/src/mage/cards/f/FoundryInspector.java +++ b/Mage.Sets/src/mage/cards/f/FoundryInspector.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class FoundryInspector extends CardImpl { private static final FilterCard filter = new FilterCard("Artifact spells"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FoundryInspector(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FountainWatch.java b/Mage.Sets/src/mage/cards/f/FountainWatch.java index 0fed5c34ee..a12ca5bd36 100644 --- a/Mage.Sets/src/mage/cards/f/FountainWatch.java +++ b/Mage.Sets/src/mage/cards/f/FountainWatch.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,8 +25,8 @@ public final class FountainWatch extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public FountainWatch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FracturingGust.java b/Mage.Sets/src/mage/cards/f/FracturingGust.java index d41b7da009..c54bb8b1f1 100644 --- a/Mage.Sets/src/mage/cards/f/FracturingGust.java +++ b/Mage.Sets/src/mage/cards/f/FracturingGust.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -41,8 +40,8 @@ class FracturingGustDestroyEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public FracturingGustDestroyEffect() { super(Outcome.DestroyPermanent); diff --git a/Mage.Sets/src/mage/cards/f/FurnaceDragon.java b/Mage.Sets/src/mage/cards/f/FurnaceDragon.java index 22303f5a72..8f508a93bb 100644 --- a/Mage.Sets/src/mage/cards/f/FurnaceDragon.java +++ b/Mage.Sets/src/mage/cards/f/FurnaceDragon.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.watchers.common.CastFromHandWatcher; /** @@ -26,7 +25,7 @@ public final class FurnaceDragon extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public FurnaceDragon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GalvanicKey.java b/Mage.Sets/src/mage/cards/g/GalvanicKey.java index 48f80ea3f8..1fbced85ae 100644 --- a/Mage.Sets/src/mage/cards/g/GalvanicKey.java +++ b/Mage.Sets/src/mage/cards/g/GalvanicKey.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class GalvanicKey extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public GalvanicKey(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GarrukApexPredator.java b/Mage.Sets/src/mage/cards/g/GarrukApexPredator.java index c3675b9676..80a0d2e4c5 100644 --- a/Mage.Sets/src/mage/cards/g/GarrukApexPredator.java +++ b/Mage.Sets/src/mage/cards/g/GarrukApexPredator.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.command.emblems.GarrukApexPredatorEmblem; @@ -36,7 +35,7 @@ public final class GarrukApexPredator extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("another target planeswalker"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GatecreeperVine.java b/Mage.Sets/src/mage/cards/g/GatecreeperVine.java index ed5359b9dd..68cdee8f37 100644 --- a/Mage.Sets/src/mage/cards/g/GatecreeperVine.java +++ b/Mage.Sets/src/mage/cards/g/GatecreeperVine.java @@ -12,7 +12,7 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -30,7 +30,7 @@ public final class GatecreeperVine extends CardImpl { filter.add( Predicates.or( Predicates.and( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)), new SubtypePredicate(SubType.GATE))); } diff --git a/Mage.Sets/src/mage/cards/g/GatekeeperOfMalakir.java b/Mage.Sets/src/mage/cards/g/GatekeeperOfMalakir.java index 37c6769aa9..d6ada87a21 100644 --- a/Mage.Sets/src/mage/cards/g/GatekeeperOfMalakir.java +++ b/Mage.Sets/src/mage/cards/g/GatekeeperOfMalakir.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPlayer; /** @@ -27,7 +26,7 @@ public final class GatekeeperOfMalakir extends CardImpl { static { filter = new FilterControlledPermanent("creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GatekeeperOfMalakir(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GauntletsOfChaos.java b/Mage.Sets/src/mage/cards/g/GauntletsOfChaos.java index a466ce4acd..1dcbacc695 100644 --- a/Mage.Sets/src/mage/cards/g/GauntletsOfChaos.java +++ b/Mage.Sets/src/mage/cards/g/GauntletsOfChaos.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -60,9 +59,9 @@ class GauntletsOfChaosFirstTarget extends TargetControlledPermanent { super(); this.filter = this.filter.copy(); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); setTargetName("artifact, creature, or land you control"); } diff --git a/Mage.Sets/src/mage/cards/g/GearseekerSerpent.java b/Mage.Sets/src/mage/cards/g/GearseekerSerpent.java index 1bc10b186e..f4fffd3401 100644 --- a/Mage.Sets/src/mage/cards/g/GearseekerSerpent.java +++ b/Mage.Sets/src/mage/cards/g/GearseekerSerpent.java @@ -13,7 +13,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.util.CardUtil; @@ -53,7 +52,7 @@ class GearseekerSerpentCostReductionEffect extends CostModificationEffectImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public GearseekerSerpentCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GeistFueledScarecrow.java b/Mage.Sets/src/mage/cards/g/GeistFueledScarecrow.java index 99cbcf7227..2393e2b07b 100644 --- a/Mage.Sets/src/mage/cards/g/GeistFueledScarecrow.java +++ b/Mage.Sets/src/mage/cards/g/GeistFueledScarecrow.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class GeistFueledScarecrow extends CardImpl { private static final FilterCard filter = new FilterCard("Creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GeistFueledScarecrow(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Geistblast.java b/Mage.Sets/src/mage/cards/g/Geistblast.java index 39324ed47d..c1c754d416 100644 --- a/Mage.Sets/src/mage/cards/g/Geistblast.java +++ b/Mage.Sets/src/mage/cards/g/Geistblast.java @@ -15,7 +15,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; import mage.target.common.TargetAnyTarget; @@ -30,8 +29,8 @@ public final class Geistblast extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/g/GenesisHydra.java b/Mage.Sets/src/mage/cards/g/GenesisHydra.java index be84c1942d..c76127f8f2 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisHydra.java +++ b/Mage.Sets/src/mage/cards/g/GenesisHydra.java @@ -19,7 +19,6 @@ import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -77,7 +76,7 @@ class GenesisHydraPutOntoBattlefieldEffect extends OneShotEffect { Cards cards = new CardsImpl(controller.getLibrary().getTopCards(game, count)); controller.revealCards(source, cards, game); FilterCard filter = new FilterPermanentCard("a nonland permanent card with converted mana cost " + count + " or less to put onto the battlefield"); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, count + 1)); TargetCard target1 = new TargetCard(Zone.LIBRARY, filter); target1.setRequired(false); diff --git a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java index ce931358a9..a8fd1e165a 100644 --- a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java +++ b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java @@ -18,7 +18,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.game.Game; import mage.players.Player; @@ -35,8 +34,8 @@ public final class GethLordOfTheVault extends CardImpl { static { filter.add(new OwnerPredicate(TargetController.OPPONENT)); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public GethLordOfTheVault(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GhaltaPrimalHunger.java b/Mage.Sets/src/mage/cards/g/GhaltaPrimalHunger.java index 3b6329fb36..e60680a5b6 100644 --- a/Mage.Sets/src/mage/cards/g/GhaltaPrimalHunger.java +++ b/Mage.Sets/src/mage/cards/g/GhaltaPrimalHunger.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.util.CardUtil; @@ -62,7 +61,7 @@ class GhaltaPrimalHungerCostReductionEffect extends CostModificationEffectImpl { private static final FilterPermanent filter = new FilterControlledArtifactPermanent("noncreature artifacts you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } GhaltaPrimalHungerCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java b/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java index aa6f6beadc..23311e848d 100644 --- a/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java +++ b/Mage.Sets/src/mage/cards/g/GhirapurAetherGrid.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -25,7 +24,7 @@ public final class GhirapurAetherGrid extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(Predicates.not(TappedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/g/GhostlyFlicker.java b/Mage.Sets/src/mage/cards/g/GhostlyFlicker.java index 96e22c4594..e69fb17a01 100644 --- a/Mage.Sets/src/mage/cards/g/GhostlyFlicker.java +++ b/Mage.Sets/src/mage/cards/g/GhostlyFlicker.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -30,9 +29,9 @@ public final class GhostlyFlicker extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.ARTIFACT))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate(), + CardType.ARTIFACT.getPredicate())); } public GhostlyFlicker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Ghostway.java b/Mage.Sets/src/mage/cards/g/Ghostway.java index 957731373b..17ea244f3f 100644 --- a/Mage.Sets/src/mage/cards/g/Ghostway.java +++ b/Mage.Sets/src/mage/cards/g/Ghostway.java @@ -15,10 +15,8 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; -import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.targetpointer.FixedTargets; import mage.util.CardUtil; @@ -51,7 +49,7 @@ class GhostwayEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("each creature you control"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/g/GideonsSacrifice.java b/Mage.Sets/src/mage/cards/g/GideonsSacrifice.java index 4bdccaf0aa..e3757be28c 100644 --- a/Mage.Sets/src/mage/cards/g/GideonsSacrifice.java +++ b/Mage.Sets/src/mage/cards/g/GideonsSacrifice.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.DamageEvent; import mage.game.events.GameEvent; @@ -52,8 +51,8 @@ class GideonsSacrificeEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.CREATURE) + CardType.PLANESWALKER.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java b/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java index 8683602db5..2b37c69e8f 100644 --- a/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java +++ b/Mage.Sets/src/mage/cards/g/GlareOfSubdual.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledCreaturePermanent; @@ -30,8 +29,8 @@ public final class GlareOfSubdual extends CardImpl { static { filterCost.add(Predicates.not(TappedPredicate.instance)); filterTarget.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public GlareOfSubdual(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlenElendraArchmage.java b/Mage.Sets/src/mage/cards/g/GlenElendraArchmage.java index e2d1c69d1d..cc19637473 100644 --- a/Mage.Sets/src/mage/cards/g/GlenElendraArchmage.java +++ b/Mage.Sets/src/mage/cards/g/GlenElendraArchmage.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -29,7 +28,7 @@ public final class GlenElendraArchmage extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public GlenElendraArchmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlintHawk.java b/Mage.Sets/src/mage/cards/g/GlintHawk.java index bb1e89d38b..49d835033c 100644 --- a/Mage.Sets/src/mage/cards/g/GlintHawk.java +++ b/Mage.Sets/src/mage/cards/g/GlintHawk.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -57,7 +56,7 @@ class GlintHawkEffect extends OneShotEffect { static { filter = new FilterControlledPermanent(); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } GlintHawkEffect ( ) { diff --git a/Mage.Sets/src/mage/cards/g/GlissaTheTraitor.java b/Mage.Sets/src/mage/cards/g/GlissaTheTraitor.java index 04337ad939..b8dbbbc696 100644 --- a/Mage.Sets/src/mage/cards/g/GlissaTheTraitor.java +++ b/Mage.Sets/src/mage/cards/g/GlissaTheTraitor.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -60,7 +59,7 @@ class GlissaTheTraitorTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCard filter = new FilterCard("artifact card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } GlissaTheTraitorTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/g/GluttonousTroll.java b/Mage.Sets/src/mage/cards/g/GluttonousTroll.java index 1e5ca339cd..6e9825b010 100644 --- a/Mage.Sets/src/mage/cards/g/GluttonousTroll.java +++ b/Mage.Sets/src/mage/cards/g/GluttonousTroll.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.permanent.token.FoodToken; import mage.target.common.TargetControlledPermanent; @@ -33,7 +32,7 @@ public final class GluttonousTroll extends CardImpl { = new FilterControlledPermanent("another nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GnatMiser.java b/Mage.Sets/src/mage/cards/g/GnatMiser.java index 6a1a4d6344..dd4d5070e6 100644 --- a/Mage.Sets/src/mage/cards/g/GnatMiser.java +++ b/Mage.Sets/src/mage/cards/g/GnatMiser.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,7 +24,7 @@ public final class GnatMiser extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("blue creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public GnatMiser(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Gnathosaur.java b/Mage.Sets/src/mage/cards/g/Gnathosaur.java index 79c9652305..b9b533f64c 100644 --- a/Mage.Sets/src/mage/cards/g/Gnathosaur.java +++ b/Mage.Sets/src/mage/cards/g/Gnathosaur.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class Gnathosaur extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Gnathosaur(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoForTheThroat.java b/Mage.Sets/src/mage/cards/g/GoForTheThroat.java index 6e2d20020e..f16244774b 100644 --- a/Mage.Sets/src/mage/cards/g/GoForTheThroat.java +++ b/Mage.Sets/src/mage/cards/g/GoForTheThroat.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.common.TargetCreaturePermanent; @@ -21,7 +20,7 @@ public final class GoForTheThroat extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public GoForTheThroat(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinBarrage.java b/Mage.Sets/src/mage/cards/g/GoblinBarrage.java index 57f2fef6e7..37342d5329 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinBarrage.java +++ b/Mage.Sets/src/mage/cards/g/GoblinBarrage.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.target.common.TargetControlledPermanent; @@ -31,7 +30,7 @@ public final class GoblinBarrage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new SubtypePredicate(SubType.GOBLIN) )); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinChainwhirler.java b/Mage.Sets/src/mage/cards/g/GoblinChainwhirler.java index 9444c59451..1422181977 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinChainwhirler.java +++ b/Mage.Sets/src/mage/cards/g/GoblinChainwhirler.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -28,8 +27,8 @@ public final class GoblinChainwhirler extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinElectromancer.java b/Mage.Sets/src/mage/cards/g/GoblinElectromancer.java index 4c3fd068e2..42a1b3cd1b 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinElectromancer.java +++ b/Mage.Sets/src/mage/cards/g/GoblinElectromancer.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,8 +22,8 @@ public final class GoblinElectromancer extends CardImpl { private static final FilterCard filter = new FilterCard("Instant and sorcery spells"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinReplica.java b/Mage.Sets/src/mage/cards/g/GoblinReplica.java index 8a26130250..77dd5da79f 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinReplica.java +++ b/Mage.Sets/src/mage/cards/g/GoblinReplica.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,7 +25,7 @@ public final class GoblinReplica extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public GoblinReplica(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Goblinslide.java b/Mage.Sets/src/mage/cards/g/Goblinslide.java index a9fd1f9cd9..e07f3ccfed 100644 --- a/Mage.Sets/src/mage/cards/g/Goblinslide.java +++ b/Mage.Sets/src/mage/cards/g/Goblinslide.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.GoblinToken; /** @@ -23,7 +22,7 @@ public final class Goblinslide extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Goblinslide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GodheadOfAwe.java b/Mage.Sets/src/mage/cards/g/GodheadOfAwe.java index 44a6fde8fd..0f7f7d1e9f 100644 --- a/Mage.Sets/src/mage/cards/g/GodheadOfAwe.java +++ b/Mage.Sets/src/mage/cards/g/GodheadOfAwe.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; /** @@ -26,7 +25,7 @@ public final class GodheadOfAwe extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Other creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java b/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java index b3b5bd14ec..add3b28330 100644 --- a/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java +++ b/Mage.Sets/src/mage/cards/g/GodhunterOctopus.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.EnchantedPredicate; /** @@ -25,7 +24,7 @@ public final class GodhunterOctopus extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ENCHANTMENT), + CardType.ENCHANTMENT.getPredicate(), EnchantedPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/g/GoldenWish.java b/Mage.Sets/src/mage/cards/g/GoldenWish.java index e401a9c10c..fb2cb8684b 100644 --- a/Mage.Sets/src/mage/cards/g/GoldenWish.java +++ b/Mage.Sets/src/mage/cards/g/GoldenWish.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,8 +20,8 @@ public final class GoldenWish extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public GoldenWish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GolgariThug.java b/Mage.Sets/src/mage/cards/g/GolgariThug.java index e0b9837783..98b5759fed 100644 --- a/Mage.Sets/src/mage/cards/g/GolgariThug.java +++ b/Mage.Sets/src/mage/cards/g/GolgariThug.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,7 +23,7 @@ public final class GolgariThug extends CardImpl { private static final FilterCard filter = new FilterCard("creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GolgariThug(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GorillaShaman.java b/Mage.Sets/src/mage/cards/g/GorillaShaman.java index f99db1acd9..c6c4eb6910 100644 --- a/Mage.Sets/src/mage/cards/g/GorillaShaman.java +++ b/Mage.Sets/src/mage/cards/g/GorillaShaman.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XCMCPermanentAdjuster; @@ -26,8 +25,8 @@ public final class GorillaShaman extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature artifact with converted mana cost X"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public GorillaShaman(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 3c9631b869..8907f8e8dc 100644 --- a/Mage.Sets/src/mage/cards/g/GrandArchitect.java +++ b/Mage.Sets/src/mage/cards/g/GrandArchitect.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; @@ -37,7 +36,7 @@ public final class GrandArchitect extends CardImpl { static { boostFilter.add(new ColorPredicate(ObjectColor.BLUE)); - targetFilter.add(new CardTypePredicate(CardType.ARTIFACT)); + targetFilter.add(CardType.ARTIFACT.getPredicate()); } public GrandArchitect(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/Granulate.java b/Mage.Sets/src/mage/cards/g/Granulate.java index 6c9fdc9297..f99ed94035 100644 --- a/Mage.Sets/src/mage/cards/g/Granulate.java +++ b/Mage.Sets/src/mage/cards/g/Granulate.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.ComparisonType; import mage.filter.common.FilterNonlandPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; /** @@ -19,7 +18,7 @@ public final class Granulate extends CardImpl { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland artifact with converted mana cost 4 or less"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Granulate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrappleWithThePast.java b/Mage.Sets/src/mage/cards/g/GrappleWithThePast.java index f5de7725b4..aca9ed8af6 100644 --- a/Mage.Sets/src/mage/cards/g/GrappleWithThePast.java +++ b/Mage.Sets/src/mage/cards/g/GrappleWithThePast.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; @@ -47,8 +46,8 @@ class GrappleWithThePastEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("creature or land card from your graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public GrappleWithThePastEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GraspOfFate.java b/Mage.Sets/src/mage/cards/g/GraspOfFate.java index 3fbb816904..3ca8d9a54c 100644 --- a/Mage.Sets/src/mage/cards/g/GraspOfFate.java +++ b/Mage.Sets/src/mage/cards/g/GraspOfFate.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -65,7 +64,7 @@ enum GraspOfFateAdjuster implements TargetAdjuster { } FilterPermanent filter = new FilterPermanent("nonland permanent from opponent " + opponent.getLogName()); filter.add(new ControllerIdPredicate(opponentId)); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); TargetPermanent target = new TargetPermanent(0, 1, filter, false); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/g/GravitySphere.java b/Mage.Sets/src/mage/cards/g/GravitySphere.java index e0fa620fd1..2c7f6ec7ec 100644 --- a/Mage.Sets/src/mage/cards/g/GravitySphere.java +++ b/Mage.Sets/src/mage/cards/g/GravitySphere.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class GravitySphere extends CardImpl { static final private FilterPermanent filter = new FilterPermanent("All creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GravitySphere(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 76c8afdeb8..d982c17337 100644 --- a/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java +++ b/Mage.Sets/src/mage/cards/g/GreaterAuramancy.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.EnchantedPredicate; @@ -28,9 +27,9 @@ public final class GreaterAuramancy extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter2.add(new ControllerPredicate(TargetController.YOU)); - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); filter2.add(EnchantedPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/g/GreaterGargadon.java b/Mage.Sets/src/mage/cards/g/GreaterGargadon.java index 388cc5055f..bc0a672a23 100644 --- a/Mage.Sets/src/mage/cards/g/GreaterGargadon.java +++ b/Mage.Sets/src/mage/cards/g/GreaterGargadon.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.target.common.TargetControlledPermanent; @@ -55,7 +54,7 @@ class GreaterGargadonAbility extends ActivatedAbilityImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact, creature, or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public GreaterGargadonAbility() { diff --git a/Mage.Sets/src/mage/cards/g/GreaterHarvester.java b/Mage.Sets/src/mage/cards/g/GreaterHarvester.java index b6c14a22ef..64f1e7c197 100644 --- a/Mage.Sets/src/mage/cards/g/GreaterHarvester.java +++ b/Mage.Sets/src/mage/cards/g/GreaterHarvester.java @@ -19,7 +19,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; import mage.game.events.GameEvent; @@ -35,11 +34,11 @@ public final class GreaterHarvester extends CardImpl { static final FilterPermanent filter = new FilterPermanent("a permanent"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.PLANESWALKER.getPredicate(), + CardType.LAND.getPredicate())); } public GreaterHarvester(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GreenSunsZenith.java b/Mage.Sets/src/mage/cards/g/GreenSunsZenith.java index 392d21cd81..adcd6e2dd7 100644 --- a/Mage.Sets/src/mage/cards/g/GreenSunsZenith.java +++ b/Mage.Sets/src/mage/cards/g/GreenSunsZenith.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -21,7 +20,7 @@ public final class GreenSunsZenith extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GreenSunsZenith(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GremlinMine.java b/Mage.Sets/src/mage/cards/g/GremlinMine.java index 4ad4cc2b3c..5c804ff841 100644 --- a/Mage.Sets/src/mage/cards/g/GremlinMine.java +++ b/Mage.Sets/src/mage/cards/g/GremlinMine.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -35,8 +34,8 @@ public final class GremlinMine extends CardImpl { private static final FilterArtifactPermanent filterNonCreature = new FilterArtifactPermanent("noncreature artifact"); static { - filterCreature.add(new CardTypePredicate(CardType.CREATURE)); - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterCreature.add(CardType.CREATURE.getPredicate()); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public GremlinMine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GriffinDreamfinder.java b/Mage.Sets/src/mage/cards/g/GriffinDreamfinder.java index ba90807c21..da154e87d2 100644 --- a/Mage.Sets/src/mage/cards/g/GriffinDreamfinder.java +++ b/Mage.Sets/src/mage/cards/g/GriffinDreamfinder.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,7 +23,7 @@ public final class GriffinDreamfinder extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public GriffinDreamfinder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrindingStation.java b/Mage.Sets/src/mage/cards/g/GrindingStation.java index 48c995e778..7cb6588d18 100644 --- a/Mage.Sets/src/mage/cards/g/GrindingStation.java +++ b/Mage.Sets/src/mage/cards/g/GrindingStation.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPlayer; import mage.target.common.TargetControlledPermanent; @@ -27,7 +26,7 @@ public final class GrindingStation extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public GrindingStation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GripOfPhyresis.java b/Mage.Sets/src/mage/cards/g/GripOfPhyresis.java index 3ae1eaaddb..1010d34a5b 100644 --- a/Mage.Sets/src/mage/cards/g/GripOfPhyresis.java +++ b/Mage.Sets/src/mage/cards/g/GripOfPhyresis.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -29,7 +28,7 @@ public final class GripOfPhyresis extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Equipment"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/g/GrislySalvage.java b/Mage.Sets/src/mage/cards/g/GrislySalvage.java index 53414b3cfa..0af3a942f6 100644 --- a/Mage.Sets/src/mage/cards/g/GrislySalvage.java +++ b/Mage.Sets/src/mage/cards/g/GrislySalvage.java @@ -10,7 +10,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -43,7 +42,7 @@ class GrislySalvageEffect extends OneShotEffect { private static final FilterCard filterPutInHand = new FilterCard("creature or land card to put in hand"); static { - filterPutInHand.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filterPutInHand.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public GrislySalvageEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GrislySpectacle.java b/Mage.Sets/src/mage/cards/g/GrislySpectacle.java index a42e2ac796..074d37f0f3 100644 --- a/Mage.Sets/src/mage/cards/g/GrislySpectacle.java +++ b/Mage.Sets/src/mage/cards/g/GrislySpectacle.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -29,7 +28,7 @@ public final class GrislySpectacle extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public GrislySpectacle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java index de7ba12e09..6e94bdea17 100644 --- a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java +++ b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -28,7 +27,7 @@ public final class GrixisPanorama extends CardImpl { private static final FilterCard filter = new FilterCard("a basic Island, Swamp, or Mountain card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate(SubType.ISLAND), diff --git a/Mage.Sets/src/mage/cards/g/GrowingRitesOfItlimoc.java b/Mage.Sets/src/mage/cards/g/GrowingRitesOfItlimoc.java index 40544baff5..62dff25797 100644 --- a/Mage.Sets/src/mage/cards/g/GrowingRitesOfItlimoc.java +++ b/Mage.Sets/src/mage/cards/g/GrowingRitesOfItlimoc.java @@ -19,7 +19,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author JRHerlehy @@ -29,7 +28,7 @@ public final class GrowingRitesOfItlimoc extends CardImpl { private static final FilterCard filter = new FilterCard("a creature card"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public GrowingRitesOfItlimoc(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuardianBeast.java b/Mage.Sets/src/mage/cards/g/GuardianBeast.java index 32885e4098..4011ce5f26 100644 --- a/Mage.Sets/src/mage/cards/g/GuardianBeast.java +++ b/Mage.Sets/src/mage/cards/g/GuardianBeast.java @@ -20,7 +20,6 @@ import mage.filter.FilterStackObject; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -38,9 +37,9 @@ public final class GuardianBeast extends CardImpl { private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("Noncreature artifacts"); static { - filterAura.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAura.add(CardType.ENCHANTMENT.getPredicate()); filterAura.add(new SubtypePredicate(SubType.AURA)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public GuardianBeast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GuardianOfTheAges.java b/Mage.Sets/src/mage/cards/g/GuardianOfTheAges.java index ff842b27f6..90038a630b 100644 --- a/Mage.Sets/src/mage/cards/g/GuardianOfTheAges.java +++ b/Mage.Sets/src/mage/cards/g/GuardianOfTheAges.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -52,7 +51,7 @@ class GuardianOfTheAgesTriggerAbility extends TriggeredAbilityImpl { private static final FilterCard filter = new FilterCard("creature"); static{ - filter.add(Predicates.and(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(CardType.CREATURE.getPredicate())); } public GuardianOfTheAgesTriggerAbility(){ super(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance())); diff --git a/Mage.Sets/src/mage/cards/g/GuardianOfTheGreatConduit.java b/Mage.Sets/src/mage/cards/g/GuardianOfTheGreatConduit.java index 0b7081a359..8cb789c084 100644 --- a/Mage.Sets/src/mage/cards/g/GuardianOfTheGreatConduit.java +++ b/Mage.Sets/src/mage/cards/g/GuardianOfTheGreatConduit.java @@ -18,7 +18,7 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +31,7 @@ public final class GuardianOfTheGreatConduit extends CardImpl { private static final String rule = "As long as you control a Nissa planeswalker, {this} gets +2/+0"; static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.NISSA)); } diff --git a/Mage.Sets/src/mage/cards/g/GuidedPassage.java b/Mage.Sets/src/mage/cards/g/GuidedPassage.java index e5b4f41263..b884b8f0c6 100644 --- a/Mage.Sets/src/mage/cards/g/GuidedPassage.java +++ b/Mage.Sets/src/mage/cards/g/GuidedPassage.java @@ -16,7 +16,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.Target; @@ -51,8 +50,8 @@ class GuidedPassageEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } GuidedPassageEffect() { diff --git a/Mage.Sets/src/mage/cards/g/Guttersnipe.java b/Mage.Sets/src/mage/cards/g/Guttersnipe.java index 22f448fed1..64d3618072 100644 --- a/Mage.Sets/src/mage/cards/g/Guttersnipe.java +++ b/Mage.Sets/src/mage/cards/g/Guttersnipe.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,8 +24,8 @@ public final class Guttersnipe extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public Guttersnipe (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GutturalResponse.java b/Mage.Sets/src/mage/cards/g/GutturalResponse.java index 9fc394ee64..6e2417dac9 100644 --- a/Mage.Sets/src/mage/cards/g/GutturalResponse.java +++ b/Mage.Sets/src/mage/cards/g/GutturalResponse.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetSpell; @@ -21,7 +20,7 @@ public final class GutturalResponse extends CardImpl { private static final FilterSpell filter = new FilterSpell("blue instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); filter.add(new ColorPredicate(ObjectColor.BLUE)); } diff --git a/Mage.Sets/src/mage/cards/h/HakimLoreweaver.java b/Mage.Sets/src/mage/cards/h/HakimLoreweaver.java index ef9f925de7..e428635974 100644 --- a/Mage.Sets/src/mage/cards/h/HakimLoreweaver.java +++ b/Mage.Sets/src/mage/cards/h/HakimLoreweaver.java @@ -18,7 +18,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.mageobject.CardIdPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.AuraCardCanAttachToPermanentId; import mage.filter.predicate.other.OwnerPredicate; @@ -40,7 +39,7 @@ public final class HakimLoreweaver extends CardImpl { private static final FilterCard filter = new FilterCard("target Aura card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new SubtypePredicate(SubType.AURA)); filter.add(new OwnerPredicate(TargetController.YOU)); } @@ -68,7 +67,7 @@ public final class HakimLoreweaver extends CardImpl { // {U}{U}, {tap}: Destroy all Auras attached to Hakim. FilterPermanent filterAurasOnHakim = new FilterPermanent("Auras attached to Hakim"); - filterAurasOnHakim.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAurasOnHakim.add(CardType.ENCHANTMENT.getPredicate()); filterAurasOnHakim.add(new SubtypePredicate(SubType.AURA)); FilterPermanent filterSourceId = new FilterPermanent(); filterSourceId.add(new CardIdPredicate(this.getId())); @@ -131,7 +130,7 @@ class HakimLoreweaverCondition implements Condition { static private final FilterPermanent auras = new FilterPermanent(); static { - auras.add(new CardTypePredicate(CardType.ENCHANTMENT)); + auras.add(CardType.ENCHANTMENT.getPredicate()); } @Override diff --git a/Mage.Sets/src/mage/cards/h/HalimarTidecaller.java b/Mage.Sets/src/mage/cards/h/HalimarTidecaller.java index f1cc7edf92..8931cff0ad 100644 --- a/Mage.Sets/src/mage/cards/h/HalimarTidecaller.java +++ b/Mage.Sets/src/mage/cards/h/HalimarTidecaller.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -32,8 +31,8 @@ public final class HalimarTidecaller extends CardImpl { private static final FilterCard filterCard = new FilterCard("card with awaken from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.LAND.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); filterCard.add(new AbilityPredicate(AwakenAbility.class)); } diff --git a/Mage.Sets/src/mage/cards/h/HandOfThePraetors.java b/Mage.Sets/src/mage/cards/h/HandOfThePraetors.java index 1d21ea7fa6..4d7f7854bb 100644 --- a/Mage.Sets/src/mage/cards/h/HandOfThePraetors.java +++ b/Mage.Sets/src/mage/cards/h/HandOfThePraetors.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPlayer; /** @@ -33,7 +32,7 @@ public final class HandOfThePraetors extends CardImpl { static { filter.add(new AbilityPredicate(InfectAbility.class)); filterSpell.add(new AbilityPredicate(InfectAbility.class)); - filterSpell.add(new CardTypePredicate(CardType.CREATURE)); + filterSpell.add(CardType.CREATURE.getPredicate()); } public HandOfThePraetors (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HannaShipsNavigator.java b/Mage.Sets/src/mage/cards/h/HannaShipsNavigator.java index 5e8318ecb0..c12a3118ff 100644 --- a/Mage.Sets/src/mage/cards/h/HannaShipsNavigator.java +++ b/Mage.Sets/src/mage/cards/h/HannaShipsNavigator.java @@ -17,7 +17,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -30,7 +29,7 @@ public final class HannaShipsNavigator extends CardImpl { private static final FilterCard filter = new FilterCard("artifact or enchantment card from your graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); filter.add(new OwnerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/h/HannasCustody.java b/Mage.Sets/src/mage/cards/h/HannasCustody.java index 6a3f0afb93..dbeff1d0d3 100644 --- a/Mage.Sets/src/mage/cards/h/HannasCustody.java +++ b/Mage.Sets/src/mage/cards/h/HannasCustody.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class HannasCustody extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public HannasCustody(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HaphazardBombardment.java b/Mage.Sets/src/mage/cards/h/HaphazardBombardment.java index f41fd10dbe..d755d2abfe 100644 --- a/Mage.Sets/src/mage/cards/h/HaphazardBombardment.java +++ b/Mage.Sets/src/mage/cards/h/HaphazardBombardment.java @@ -19,7 +19,6 @@ import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; import mage.game.Game; @@ -80,7 +79,7 @@ class HaphazardBombardmentEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterPermanent filter = new FilterPermanent("nonenchantment permanents you don't control"); - filter.add(Predicates.not(new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.not(CardType.ENCHANTMENT.getPredicate())); filter.add(new ControllerPredicate(TargetController.OPPONENT)); List permanents = game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game); if (permanents.size() > 4) { diff --git a/Mage.Sets/src/mage/cards/h/HarvesterTroll.java b/Mage.Sets/src/mage/cards/h/HarvesterTroll.java index 706c9e7896..66da41971a 100644 --- a/Mage.Sets/src/mage/cards/h/HarvesterTroll.java +++ b/Mage.Sets/src/mage/cards/h/HarvesterTroll.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class HarvesterTroll extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public HarvesterTroll(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HazoretsMonument.java b/Mage.Sets/src/mage/cards/h/HazoretsMonument.java index 4f56a1970f..7f3e0bd8bd 100644 --- a/Mage.Sets/src/mage/cards/h/HazoretsMonument.java +++ b/Mage.Sets/src/mage/cards/h/HazoretsMonument.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -30,10 +29,10 @@ public final class HazoretsMonument extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("a creature spell"); static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.RED), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(new ColorPredicate(ObjectColor.RED), CardType.CREATURE.getPredicate())); } static { - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); } public HazoretsMonument(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HazoretsUndyingFury.java b/Mage.Sets/src/mage/cards/h/HazoretsUndyingFury.java index 21f2fd8efb..0a287da854 100644 --- a/Mage.Sets/src/mage/cards/h/HazoretsUndyingFury.java +++ b/Mage.Sets/src/mage/cards/h/HazoretsUndyingFury.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.ExileZone; import mage.game.Game; @@ -64,7 +63,7 @@ class HazoretsUndyingFuryEffect extends OneShotEffect { "nonland cards with converted mana cost 5 or less"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 6)); } diff --git a/Mage.Sets/src/mage/cards/h/Heartfire.java b/Mage.Sets/src/mage/cards/h/Heartfire.java index c264508af1..d377f9a7a8 100644 --- a/Mage.Sets/src/mage/cards/h/Heartfire.java +++ b/Mage.Sets/src/mage/cards/h/Heartfire.java @@ -7,7 +7,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetAnyTarget; import mage.target.common.TargetControlledPermanent; @@ -23,8 +22,8 @@ public final class Heartfire extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.CREATURE) + CardType.PLANESWALKER.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/h/HearthCharm.java b/Mage.Sets/src/mage/cards/h/HearthCharm.java index af7d92eea0..33c945f37a 100644 --- a/Mage.Sets/src/mage/cards/h/HearthCharm.java +++ b/Mage.Sets/src/mage/cards/h/HearthCharm.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.AttackingPredicate; import mage.target.common.TargetCreaturePermanent; @@ -27,7 +26,7 @@ public final class HearthCharm extends CardImpl { private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("attacking creatures"); private static final FilterCreaturePermanent filter3 = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter1.add(new CardTypePredicate(CardType.ARTIFACT)); + filter1.add(CardType.ARTIFACT.getPredicate()); filter2.add(AttackingPredicate.instance); filter3.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } diff --git a/Mage.Sets/src/mage/cards/h/HearthKami.java b/Mage.Sets/src/mage/cards/h/HearthKami.java index 0d09cdf93d..6002e5c492 100644 --- a/Mage.Sets/src/mage/cards/h/HearthKami.java +++ b/Mage.Sets/src/mage/cards/h/HearthKami.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XCMCPermanentAdjuster; @@ -25,7 +24,7 @@ public final class HearthKami extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact with converted mana cost X"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public HearthKami(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeliodSunCrowned.java b/Mage.Sets/src/mage/cards/h/HeliodSunCrowned.java index fd775a6079..10a2e80d5c 100644 --- a/Mage.Sets/src/mage/cards/h/HeliodSunCrowned.java +++ b/Mage.Sets/src/mage/cards/h/HeliodSunCrowned.java @@ -23,7 +23,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.TargetPermanent; @@ -39,8 +38,8 @@ public final class HeliodSunCrowned extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); filter2.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/h/HeliodsPilgrim.java b/Mage.Sets/src/mage/cards/h/HeliodsPilgrim.java index 0ee18ea79e..62b826c961 100644 --- a/Mage.Sets/src/mage/cards/h/HeliodsPilgrim.java +++ b/Mage.Sets/src/mage/cards/h/HeliodsPilgrim.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -23,7 +22,7 @@ public final class HeliodsPilgrim extends CardImpl { private static final FilterCard filter = new FilterCard("Aura card"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new SubtypePredicate(SubType.AURA)); } diff --git a/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java b/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java index 902555e718..a007c74c17 100644 --- a/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java +++ b/Mage.Sets/src/mage/cards/h/HellkiteWhelp.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; import mage.target.TargetPermanent; @@ -24,7 +23,7 @@ public final class HellkiteWhelp extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature defending player controls"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(DefendingPlayerControlsPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/h/HeraldOfDromoka.java b/Mage.Sets/src/mage/cards/h/HeraldOfDromoka.java index 8e2fe33826..27602965f4 100644 --- a/Mage.Sets/src/mage/cards/h/HeraldOfDromoka.java +++ b/Mage.Sets/src/mage/cards/h/HeraldOfDromoka.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; @@ -26,7 +25,7 @@ public final class HeraldOfDromoka extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("other Warrior creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.WARRIOR)); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/h/HeraldOfThePantheon.java b/Mage.Sets/src/mage/cards/h/HeraldOfThePantheon.java index 407a6075ee..652e603577 100644 --- a/Mage.Sets/src/mage/cards/h/HeraldOfThePantheon.java +++ b/Mage.Sets/src/mage/cards/h/HeraldOfThePantheon.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,8 +25,8 @@ public final class HeraldOfThePantheon extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter2.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); + filter2.add(CardType.ENCHANTMENT.getPredicate()); } public HeraldOfThePantheon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/Hexdrinker.java b/Mage.Sets/src/mage/cards/h/Hexdrinker.java index 9cc50eb781..7641d116cb 100644 --- a/Mage.Sets/src/mage/cards/h/Hexdrinker.java +++ b/Mage.Sets/src/mage/cards/h/Hexdrinker.java @@ -12,7 +12,6 @@ import mage.cards.LevelerCard; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import java.util.UUID; @@ -25,7 +24,7 @@ public final class Hexdrinker extends LevelerCard { private static final FilterCard filter = new FilterCard("instants"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public Hexdrinker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java index 81d4148c53..949924d394 100644 --- a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java +++ b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java @@ -15,7 +15,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -104,7 +103,7 @@ class HibernationsEndEffect extends OneShotEffect { int newConvertedCost = sourcePermanent.getCounters(game).getCount("age"); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); return new SearchLibraryPutInPlayEffect(target).apply(game, source); } diff --git a/Mage.Sets/src/mage/cards/h/HiddenAncients.java b/Mage.Sets/src/mage/cards/h/HiddenAncients.java index 63b9ac7d8f..5c2d7aa631 100644 --- a/Mage.Sets/src/mage/cards/h/HiddenAncients.java +++ b/Mage.Sets/src/mage/cards/h/HiddenAncients.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; import java.util.UUID; @@ -29,7 +28,7 @@ public final class HiddenAncients extends CardImpl { private static final FilterSpell filter = new FilterSpell("enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public HiddenAncients(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HiddenGibbons.java b/Mage.Sets/src/mage/cards/h/HiddenGibbons.java index d65cb33853..e43f4496a9 100644 --- a/Mage.Sets/src/mage/cards/h/HiddenGibbons.java +++ b/Mage.Sets/src/mage/cards/h/HiddenGibbons.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; import java.util.UUID; @@ -29,7 +28,7 @@ public final class HiddenGibbons extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public HiddenGibbons(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HitRun.java b/Mage.Sets/src/mage/cards/h/HitRun.java index f01585194a..2bf1acd2cd 100644 --- a/Mage.Sets/src/mage/cards/h/HitRun.java +++ b/Mage.Sets/src/mage/cards/h/HitRun.java @@ -15,7 +15,6 @@ import mage.constants.SpellAbilityType; import mage.filter.common.FilterAttackingCreature; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -75,8 +74,8 @@ class HitEffect extends OneShotEffect { if (targetPlayer != null) { FilterControlledPermanent filter = new FilterControlledPermanent("artifact or creature"); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); if (target.canChoose(targetPlayer.getId(), game)) { diff --git a/Mage.Sets/src/mage/cards/h/HoardSmelterDragon.java b/Mage.Sets/src/mage/cards/h/HoardSmelterDragon.java index e208bd77b0..cb6a49e055 100644 --- a/Mage.Sets/src/mage/cards/h/HoardSmelterDragon.java +++ b/Mage.Sets/src/mage/cards/h/HoardSmelterDragon.java @@ -15,7 +15,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -28,7 +27,7 @@ public final class HoardSmelterDragon extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public HoardSmelterDragon (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/Hoodwink.java b/Mage.Sets/src/mage/cards/h/Hoodwink.java index 8c20e380b9..f9b93c2b05 100644 --- a/Mage.Sets/src/mage/cards/h/Hoodwink.java +++ b/Mage.Sets/src/mage/cards/h/Hoodwink.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class Hoodwink extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public Hoodwink(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{U}"); diff --git a/Mage.Sets/src/mage/cards/h/HostageTaker.java b/Mage.Sets/src/mage/cards/h/HostageTaker.java index 3ef3f60d88..f91fdf13b3 100644 --- a/Mage.Sets/src/mage/cards/h/HostageTaker.java +++ b/Mage.Sets/src/mage/cards/h/HostageTaker.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.ExileZone; import mage.game.Game; @@ -38,8 +37,8 @@ public final class HostageTaker extends CardImpl { static { filter.add(AnotherPredicate.instance); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/h/HourOfDevastation.java b/Mage.Sets/src/mage/cards/h/HourOfDevastation.java index af396c02ce..836e74b73a 100644 --- a/Mage.Sets/src/mage/cards/h/HourOfDevastation.java +++ b/Mage.Sets/src/mage/cards/h/HourOfDevastation.java @@ -13,7 +13,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -26,9 +25,9 @@ public final class HourOfDevastation extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), Predicates.and( - new CardTypePredicate(CardType.PLANESWALKER), + CardType.PLANESWALKER.getPredicate(), Predicates.not(new SubtypePredicate(SubType.BOLAS))))); } diff --git a/Mage.Sets/src/mage/cards/h/HuatlisSpurring.java b/Mage.Sets/src/mage/cards/h/HuatlisSpurring.java index 783f348b34..3332dcca36 100644 --- a/Mage.Sets/src/mage/cards/h/HuatlisSpurring.java +++ b/Mage.Sets/src/mage/cards/h/HuatlisSpurring.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -27,7 +26,7 @@ public final class HuatlisSpurring extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.HUATLI)); } diff --git a/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java b/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java index 203988cf0d..657891ee47 100644 --- a/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java +++ b/Mage.Sets/src/mage/cards/h/HungerOfTheNim.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -23,7 +22,7 @@ public final class HungerOfTheNim extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public HungerOfTheNim(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/Hypergenesis.java b/Mage.Sets/src/mage/cards/h/Hypergenesis.java index 0274773424..f7e4bc574a 100644 --- a/Mage.Sets/src/mage/cards/h/Hypergenesis.java +++ b/Mage.Sets/src/mage/cards/h/Hypergenesis.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.players.PlayerList; @@ -54,7 +53,7 @@ class HypergenesisEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("an artifact, creature, enchantment, or land card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate(), CardType.LAND.getPredicate())); } HypergenesisEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HypersonicDragon.java b/Mage.Sets/src/mage/cards/h/HypersonicDragon.java index 2858e1f88a..c9b27556dc 100644 --- a/Mage.Sets/src/mage/cards/h/HypersonicDragon.java +++ b/Mage.Sets/src/mage/cards/h/HypersonicDragon.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author magenoxx_at_gmail.com @@ -24,7 +23,7 @@ public final class HypersonicDragon extends CardImpl { private static final FilterCard filter = new FilterCard("sorcery spells"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public HypersonicDragon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IceCauldron.java b/Mage.Sets/src/mage/cards/i/IceCauldron.java index 9cdc8b351a..f6cd8a2e6b 100644 --- a/Mage.Sets/src/mage/cards/i/IceCauldron.java +++ b/Mage.Sets/src/mage/cards/i/IceCauldron.java @@ -24,7 +24,6 @@ import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -71,7 +70,7 @@ class IceCauldronExileEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public IceCauldronExileEffect() { diff --git a/Mage.Sets/src/mage/cards/i/Icefall.java b/Mage.Sets/src/mage/cards/i/Icefall.java index c9f075bdb2..ed310c3274 100644 --- a/Mage.Sets/src/mage/cards/i/Icefall.java +++ b/Mage.Sets/src/mage/cards/i/Icefall.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,8 +22,8 @@ public final class Icefall extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public Icefall(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IcyManipulator.java b/Mage.Sets/src/mage/cards/i/IcyManipulator.java index 10b212d65b..d9a888222f 100644 --- a/Mage.Sets/src/mage/cards/i/IcyManipulator.java +++ b/Mage.Sets/src/mage/cards/i/IcyManipulator.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,9 +25,9 @@ public final class IcyManipulator extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public IcyManipulator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IdyllicTutor.java b/Mage.Sets/src/mage/cards/i/IdyllicTutor.java index 58319b906d..c25b4c96e3 100644 --- a/Mage.Sets/src/mage/cards/i/IdyllicTutor.java +++ b/Mage.Sets/src/mage/cards/i/IdyllicTutor.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -18,7 +17,7 @@ public final class IdyllicTutor extends CardImpl { private static final FilterCard filter = new FilterCard("an enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public IdyllicTutor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/Illumination.java b/Mage.Sets/src/mage/cards/i/Illumination.java index 5886a5a4b1..a1233741aa 100644 --- a/Mage.Sets/src/mage/cards/i/Illumination.java +++ b/Mage.Sets/src/mage/cards/i/Illumination.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.Spell; import mage.players.Player; @@ -27,8 +26,8 @@ public final class Illumination extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public Illumination(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImprisonedInTheMoon.java b/Mage.Sets/src/mage/cards/i/ImprisonedInTheMoon.java index 1df48d031c..d98798bfa3 100644 --- a/Mage.Sets/src/mage/cards/i/ImprisonedInTheMoon.java +++ b/Mage.Sets/src/mage/cards/i/ImprisonedInTheMoon.java @@ -18,7 +18,6 @@ import mage.constants.SubLayer; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -32,9 +31,9 @@ public final class ImprisonedInTheMoon extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature, land, or planeswalker"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public ImprisonedInTheMoon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImpromptuRaid.java b/Mage.Sets/src/mage/cards/i/ImpromptuRaid.java index 07f90385a1..52bc9accaf 100644 --- a/Mage.Sets/src/mage/cards/i/ImpromptuRaid.java +++ b/Mage.Sets/src/mage/cards/i/ImpromptuRaid.java @@ -24,7 +24,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -59,7 +58,7 @@ class ImpromptuRaidEffect extends OneShotEffect { private static final FilterCard filterPutInGraveyard = new FilterCard("noncreature card to put into your graveyard"); static { - filterPutInGraveyard.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterPutInGraveyard.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ImpromptuRaidEffect() { diff --git a/Mage.Sets/src/mage/cards/i/InTheEyeOfChaos.java b/Mage.Sets/src/mage/cards/i/InTheEyeOfChaos.java index 3f105ed362..a34160adbc 100644 --- a/Mage.Sets/src/mage/cards/i/InTheEyeOfChaos.java +++ b/Mage.Sets/src/mage/cards/i/InTheEyeOfChaos.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.StackObject; import mage.players.Player; @@ -24,7 +23,7 @@ public final class InTheEyeOfChaos extends CardImpl { private static final FilterSpell filter = new FilterSpell("an instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public InTheEyeOfChaos(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/Incoming.java b/Mage.Sets/src/mage/cards/i/Incoming.java index 49296f8deb..b1e4b4daf3 100644 --- a/Mage.Sets/src/mage/cards/i/Incoming.java +++ b/Mage.Sets/src/mage/cards/i/Incoming.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -46,10 +45,10 @@ class IncomingEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public IncomingEffect() { diff --git a/Mage.Sets/src/mage/cards/i/IncreasingVengeance.java b/Mage.Sets/src/mage/cards/i/IncreasingVengeance.java index 34392a641b..2e2915fcdd 100644 --- a/Mage.Sets/src/mage/cards/i/IncreasingVengeance.java +++ b/Mage.Sets/src/mage/cards/i/IncreasingVengeance.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.stack.Spell; @@ -30,8 +29,8 @@ public final class IncreasingVengeance extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/i/IndomitableArchangel.java b/Mage.Sets/src/mage/cards/i/IndomitableArchangel.java index 2a1e889e73..f0282360f9 100644 --- a/Mage.Sets/src/mage/cards/i/IndomitableArchangel.java +++ b/Mage.Sets/src/mage/cards/i/IndomitableArchangel.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author nantuko @@ -30,7 +29,7 @@ public final class IndomitableArchangel extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public IndomitableArchangel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IndomitableCreativity.java b/Mage.Sets/src/mage/cards/i/IndomitableCreativity.java index dd20946857..f35e446d98 100644 --- a/Mage.Sets/src/mage/cards/i/IndomitableCreativity.java +++ b/Mage.Sets/src/mage/cards/i/IndomitableCreativity.java @@ -9,7 +9,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Library; @@ -51,8 +50,8 @@ enum IndomitableCreativityAdjuster implements TargetAdjuster { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/i/Infuse.java b/Mage.Sets/src/mage/cards/i/Infuse.java index 64a32b13cc..eabd7eb4b4 100644 --- a/Mage.Sets/src/mage/cards/i/Infuse.java +++ b/Mage.Sets/src/mage/cards/i/Infuse.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,9 +23,9 @@ public final class Infuse extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Infuse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InitiatesCompanion.java b/Mage.Sets/src/mage/cards/i/InitiatesCompanion.java index 8abcd0d39d..3f609f2e83 100644 --- a/Mage.Sets/src/mage/cards/i/InitiatesCompanion.java +++ b/Mage.Sets/src/mage/cards/i/InitiatesCompanion.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,8 +23,8 @@ public final class InitiatesCompanion extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public InitiatesCompanion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InkEyesServantOfOni.java b/Mage.Sets/src/mage/cards/i/InkEyesServantOfOni.java index 3628872503..c651857c81 100644 --- a/Mage.Sets/src/mage/cards/i/InkEyesServantOfOni.java +++ b/Mage.Sets/src/mage/cards/i/InkEyesServantOfOni.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -88,7 +87,7 @@ class InkEyesServantOfOniTriggeredAbility extends TriggeredAbilityImpl { return false; } FilterCard filter = new FilterCard("creature in " + damagedPlayer.getName() + "'s graveyard"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new OwnerIdPredicate(damagedPlayer.getId())); TargetCardInGraveyard target = new TargetCardInGraveyard(filter); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java index cc42da6f47..1b16718de5 100644 --- a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java +++ b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java @@ -11,7 +11,6 @@ import mage.constants.ComparisonType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPlayer; @@ -24,7 +23,7 @@ public final class InquisitionOfKozilek extends CardImpl { private static final FilterCard filter = new FilterCard("nonland card with converted mana cost 3 or less"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/i/InspiringStatuary.java b/Mage.Sets/src/mage/cards/i/InspiringStatuary.java index 26d8f5795c..104c79b3b6 100644 --- a/Mage.Sets/src/mage/cards/i/InspiringStatuary.java +++ b/Mage.Sets/src/mage/cards/i/InspiringStatuary.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class InspiringStatuary extends CardImpl { private static final FilterSpell filter = new FilterSpell("non-artifact spells you cast"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public InspiringStatuary(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InterplanarBeacon.java b/Mage.Sets/src/mage/cards/i/InterplanarBeacon.java index 7c4b9483b4..7b7d1e3fee 100644 --- a/Mage.Sets/src/mage/cards/i/InterplanarBeacon.java +++ b/Mage.Sets/src/mage/cards/i/InterplanarBeacon.java @@ -16,7 +16,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.Spell; @@ -30,7 +29,7 @@ public final class InterplanarBeacon extends CardImpl { private static final FilterSpell filter = new FilterSpell("a planeswalker spell"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); } public InterplanarBeacon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InvasiveSurgery.java b/Mage.Sets/src/mage/cards/i/InvasiveSurgery.java index f071d97989..5c2db995f5 100644 --- a/Mage.Sets/src/mage/cards/i/InvasiveSurgery.java +++ b/Mage.Sets/src/mage/cards/i/InvasiveSurgery.java @@ -13,7 +13,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.StackObject; import mage.players.Player; @@ -27,7 +26,7 @@ public final class InvasiveSurgery extends CardImpl { private static final FilterSpell filter = new FilterSpell("sorcery spell"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public InvasiveSurgery(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InventorsFair.java b/Mage.Sets/src/mage/cards/i/InventorsFair.java index f6fed6387f..f604e54046 100644 --- a/Mage.Sets/src/mage/cards/i/InventorsFair.java +++ b/Mage.Sets/src/mage/cards/i/InventorsFair.java @@ -19,7 +19,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterArtifactPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -34,7 +33,7 @@ public final class InventorsFair extends CardImpl { private static final FilterCard filter = new FilterCard("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public InventorsFair(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InvertInvent.java b/Mage.Sets/src/mage/cards/i/InvertInvent.java index 787a79d070..a1fe52ddc6 100644 --- a/Mage.Sets/src/mage/cards/i/InvertInvent.java +++ b/Mage.Sets/src/mage/cards/i/InvertInvent.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.SpellAbilityType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -86,8 +85,8 @@ class InventEffect extends OneShotEffect { private static final FilterCard filter2 = new FilterCard("sorcery card"); static { - filter1.add(new CardTypePredicate(CardType.INSTANT)); - filter2.add(new CardTypePredicate(CardType.SORCERY)); + filter1.add(CardType.INSTANT.getPredicate()); + filter2.add(CardType.SORCERY.getPredicate()); } public InventEffect() { diff --git a/Mage.Sets/src/mage/cards/i/InvertTheSkies.java b/Mage.Sets/src/mage/cards/i/InvertTheSkies.java index 23ef03b4eb..b0c758b04e 100644 --- a/Mage.Sets/src/mage/cards/i/InvertTheSkies.java +++ b/Mage.Sets/src/mage/cards/i/InvertTheSkies.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.watchers.common.ManaSpentToCastWatcher; @@ -33,7 +32,7 @@ public final class InvertTheSkies extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); filter.add(new AbilityPredicate(FlyingAbility.class)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public InvertTheSkies(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IonasJudgment.java b/Mage.Sets/src/mage/cards/i/IonasJudgment.java index 256bb8284d..ba93bb8fc8 100644 --- a/Mage.Sets/src/mage/cards/i/IonasJudgment.java +++ b/Mage.Sets/src/mage/cards/i/IonasJudgment.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,8 +20,8 @@ public final class IonasJudgment extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public IonasJudgment (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IsochronScepter.java b/Mage.Sets/src/mage/cards/i/IsochronScepter.java index 0079f3c737..42af1d5e34 100644 --- a/Mage.Sets/src/mage/cards/i/IsochronScepter.java +++ b/Mage.Sets/src/mage/cards/i/IsochronScepter.java @@ -16,7 +16,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -64,7 +63,7 @@ class IsochronScepterImprintEffect extends OneShotEffect { + "converted mana cost 2 or less from your hand"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } diff --git a/Mage.Sets/src/mage/cards/i/IsolationZone.java b/Mage.Sets/src/mage/cards/i/IsolationZone.java index 3ae0ee0781..f8c15a2f06 100644 --- a/Mage.Sets/src/mage/cards/i/IsolationZone.java +++ b/Mage.Sets/src/mage/cards/i/IsolationZone.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -31,8 +30,8 @@ public final class IsolationZone extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or enchantment an opponent controls"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/i/IsperiaTheInscrutable.java b/Mage.Sets/src/mage/cards/i/IsperiaTheInscrutable.java index d9b11cca21..7a6a663c2d 100644 --- a/Mage.Sets/src/mage/cards/i/IsperiaTheInscrutable.java +++ b/Mage.Sets/src/mage/cards/i/IsperiaTheInscrutable.java @@ -19,7 +19,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -64,7 +63,7 @@ class IsperiaTheInscrutableEffect extends OneShotEffect { static { filter.add(new AbilityPredicate(FlyingAbility.class)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public IsperiaTheInscrutableEffect() { diff --git a/Mage.Sets/src/mage/cards/i/ItlimocCradleOfTheSun.java b/Mage.Sets/src/mage/cards/i/ItlimocCradleOfTheSun.java index b7ab2b0a63..c318a52021 100644 --- a/Mage.Sets/src/mage/cards/i/ItlimocCradleOfTheSun.java +++ b/Mage.Sets/src/mage/cards/i/ItlimocCradleOfTheSun.java @@ -12,8 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.StaticFilters; -import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * diff --git a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java index aafee957d6..60aee16735 100644 --- a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java +++ b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.players.Player; @@ -58,7 +57,7 @@ class IwamoriOfTheOpenFistEffect extends OneShotEffect { static { filter.add(new SupertypePredicate(SuperType.LEGENDARY)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public IwamoriOfTheOpenFistEffect() { diff --git a/Mage.Sets/src/mage/cards/i/IzzetCharm.java b/Mage.Sets/src/mage/cards/i/IzzetCharm.java index 92f255d6c8..6db3d525f0 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetCharm.java +++ b/Mage.Sets/src/mage/cards/i/IzzetCharm.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; @@ -24,7 +23,7 @@ public final class IzzetCharm extends CardImpl { static private final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public IzzetCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IzzetChemister.java b/Mage.Sets/src/mage/cards/i/IzzetChemister.java index 201edddb6f..1fe9657348 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetChemister.java +++ b/Mage.Sets/src/mage/cards/i/IzzetChemister.java @@ -23,7 +23,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterOwnedCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.ExileZone; import mage.game.Game; import mage.players.Player; @@ -40,8 +39,8 @@ public final class IzzetChemister extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY)) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate()) ); } diff --git a/Mage.Sets/src/mage/cards/i/IzzetChronarch.java b/Mage.Sets/src/mage/cards/i/IzzetChronarch.java index ff7065119b..64c7fb7930 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetChronarch.java +++ b/Mage.Sets/src/mage/cards/i/IzzetChronarch.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -25,8 +24,8 @@ public final class IzzetChronarch extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public IzzetChronarch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java index 85a19949fb..1bb82a47e6 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java +++ b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java @@ -15,7 +15,6 @@ import mage.constants.ComparisonType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; @@ -30,10 +29,10 @@ public final class IzzetGuildmage extends CardImpl { private static final FilterSpell filterSorcery = new FilterSpell("sorcery spell you control with converted mana cost 2 or less"); static { - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); + filterInstant.add(CardType.INSTANT.getPredicate()); filterInstant.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); filterInstant.add(new ControllerPredicate(TargetController.YOU)); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterSorcery.add(CardType.SORCERY.getPredicate()); filterSorcery.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); filterSorcery.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/j/JacesDefeat.java b/Mage.Sets/src/mage/cards/j/JacesDefeat.java index bb91ce1adb..1906baf912 100644 --- a/Mage.Sets/src/mage/cards/j/JacesDefeat.java +++ b/Mage.Sets/src/mage/cards/j/JacesDefeat.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; @@ -55,7 +54,7 @@ class JacesDefeatEffect extends OneShotEffect { private static final FilterSpell filter = new FilterSpell(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.JACE)); } diff --git a/Mage.Sets/src/mage/cards/j/JacesSanctum.java b/Mage.Sets/src/mage/cards/j/JacesSanctum.java index 4f08de895c..89eb9e4763 100644 --- a/Mage.Sets/src/mage/cards/j/JacesSanctum.java +++ b/Mage.Sets/src/mage/cards/j/JacesSanctum.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,11 +26,11 @@ public final class JacesSanctum extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("an instant or sorcery spell"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } static { - filter2.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter2.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public JacesSanctum(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JacesSentinel.java b/Mage.Sets/src/mage/cards/j/JacesSentinel.java index da20a95e49..a2a70e354a 100644 --- a/Mage.Sets/src/mage/cards/j/JacesSentinel.java +++ b/Mage.Sets/src/mage/cards/j/JacesSentinel.java @@ -12,7 +12,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -27,7 +26,7 @@ public final class JacesSentinel extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.JACE)); } diff --git a/Mage.Sets/src/mage/cards/j/JediEnclave.java b/Mage.Sets/src/mage/cards/j/JediEnclave.java index bfbb954906..a6ea99522f 100644 --- a/Mage.Sets/src/mage/cards/j/JediEnclave.java +++ b/Mage.Sets/src/mage/cards/j/JediEnclave.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -59,7 +58,7 @@ public final class JediEnclave extends CardImpl { addCost(new TapSourceCost()); addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard("basic Forest, Plains or Island"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); subtypePredicates.add(new SubtypePredicate(SubType.FOREST)); subtypePredicates.add(new SubtypePredicate(SubType.PLAINS)); diff --git a/Mage.Sets/src/mage/cards/j/JeskaiAscendancy.java b/Mage.Sets/src/mage/cards/j/JeskaiAscendancy.java index c545810059..2e293a2138 100644 --- a/Mage.Sets/src/mage/cards/j/JeskaiAscendancy.java +++ b/Mage.Sets/src/mage/cards/j/JeskaiAscendancy.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class JeskaiAscendancy extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public JeskaiAscendancy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JeweledSpirit.java b/Mage.Sets/src/mage/cards/j/JeweledSpirit.java index 0f0ada34c3..591674f6d0 100644 --- a/Mage.Sets/src/mage/cards/j/JeweledSpirit.java +++ b/Mage.Sets/src/mage/cards/j/JeweledSpirit.java @@ -21,7 +21,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledLandPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -80,7 +79,7 @@ class JeweledSpiritEffect extends OneShotEffect { if (controller != null && controller.choose(outcome, choice, game)) { FilterCard protectionFilter = new FilterCard(); if (choice.isArtifactSelected()) { - protectionFilter.add(new CardTypePredicate(CardType.ARTIFACT)); + protectionFilter.add(CardType.ARTIFACT.getPredicate()); } else { protectionFilter.add(new ColorPredicate(choice.getColor())); } diff --git a/Mage.Sets/src/mage/cards/j/JhoirasToolbox.java b/Mage.Sets/src/mage/cards/j/JhoirasToolbox.java index dfe6bcf773..632a5b1a23 100644 --- a/Mage.Sets/src/mage/cards/j/JhoirasToolbox.java +++ b/Mage.Sets/src/mage/cards/j/JhoirasToolbox.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -25,7 +24,7 @@ public final class JhoirasToolbox extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public JhoirasToolbox(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/Jokulhaups.java b/Mage.Sets/src/mage/cards/j/Jokulhaups.java index a2a931bb2e..4f51accb77 100644 --- a/Mage.Sets/src/mage/cards/j/Jokulhaups.java +++ b/Mage.Sets/src/mage/cards/j/Jokulhaups.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,9 +19,9 @@ public final class Jokulhaups extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Jokulhaups(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/Jolt.java b/Mage.Sets/src/mage/cards/j/Jolt.java index f9e61d8a35..ad7d197bb1 100644 --- a/Mage.Sets/src/mage/cards/j/Jolt.java +++ b/Mage.Sets/src/mage/cards/j/Jolt.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,9 +23,9 @@ public final class Jolt extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Jolt(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/Joven.java b/Mage.Sets/src/mage/cards/j/Joven.java index 1f8e407a5d..afcb36a47b 100644 --- a/Mage.Sets/src/mage/cards/j/Joven.java +++ b/Mage.Sets/src/mage/cards/j/Joven.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** * @@ -27,7 +26,7 @@ public final class Joven extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Joven(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JundPanorama.java b/Mage.Sets/src/mage/cards/j/JundPanorama.java index b6eccec82c..bba12389dd 100644 --- a/Mage.Sets/src/mage/cards/j/JundPanorama.java +++ b/Mage.Sets/src/mage/cards/j/JundPanorama.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -29,7 +28,7 @@ public final class JundPanorama extends CardImpl { private static final FilterCard filter = new FilterCard("a basic Swamp, Mountain, or Forest card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate(SubType.SWAMP), diff --git a/Mage.Sets/src/mage/cards/j/JungleVillage.java b/Mage.Sets/src/mage/cards/j/JungleVillage.java index 287f5881a9..66fb45b060 100644 --- a/Mage.Sets/src/mage/cards/j/JungleVillage.java +++ b/Mage.Sets/src/mage/cards/j/JungleVillage.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -59,7 +58,7 @@ public final class JungleVillage extends CardImpl { addCost(new TapSourceCost()); addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard("basic Mountain, Forest or Plains"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); subtypePredicates.add(new SubtypePredicate(SubType.PLAINS)); subtypePredicates.add(new SubtypePredicate(SubType.MOUNTAIN)); diff --git a/Mage.Sets/src/mage/cards/j/JwariShapeshifter.java b/Mage.Sets/src/mage/cards/j/JwariShapeshifter.java index 7eb7db49eb..f008bb922b 100644 --- a/Mage.Sets/src/mage/cards/j/JwariShapeshifter.java +++ b/Mage.Sets/src/mage/cards/j/JwariShapeshifter.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; @@ -24,7 +23,7 @@ public final class JwariShapeshifter extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ALLY)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(AnotherPredicate.instance); // needed because during enters_the_battlefield event the creature is already targetable although it shouldn't } diff --git a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java index 432b0f8d1c..290b015c42 100644 --- a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java +++ b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -68,7 +67,7 @@ class KahoMinamoHistorianEffect extends SearchEffect { private static final FilterCard filter = new FilterCard("up to three instant cards"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public KahoMinamoHistorianEffect() { diff --git a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java index 8f7860be0d..9347025f80 100644 --- a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java +++ b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java @@ -22,7 +22,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; @@ -36,7 +35,7 @@ public final class KalemneDiscipleOfIroas extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("a creature spell with converted mana cost 5 or greater"); static { - filterSpell.add(new CardTypePredicate(CardType.CREATURE)); + filterSpell.add(CardType.CREATURE.getPredicate()); filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/k/KalemnesCaptain.java b/Mage.Sets/src/mage/cards/k/KalemnesCaptain.java index fc48dd80ab..fe45cc0186 100644 --- a/Mage.Sets/src/mage/cards/k/KalemnesCaptain.java +++ b/Mage.Sets/src/mage/cards/k/KalemnesCaptain.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,8 +24,8 @@ public final class KalemnesCaptain extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public KalemnesCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java b/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java index 727a4263a8..bf86fd296e 100644 --- a/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java +++ b/Mage.Sets/src/mage/cards/k/KamahlsDruidicVow.java @@ -16,7 +16,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -77,7 +76,7 @@ class KamahlsDruidicVowEffect extends OneShotEffect { filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); filter.add( Predicates.or( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.LEGENDARY) )); TargetCard target1 = new TargetCard(0, Integer.MAX_VALUE, Zone.LIBRARY, filter); diff --git a/Mage.Sets/src/mage/cards/k/KambalConsulOfAllocation.java b/Mage.Sets/src/mage/cards/k/KambalConsulOfAllocation.java index 01b606bab1..9e5528014a 100644 --- a/Mage.Sets/src/mage/cards/k/KambalConsulOfAllocation.java +++ b/Mage.Sets/src/mage/cards/k/KambalConsulOfAllocation.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,7 +26,7 @@ public final class KambalConsulOfAllocation extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public KambalConsulOfAllocation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KariZevsExpertise.java b/Mage.Sets/src/mage/cards/k/KariZevsExpertise.java index ed3949281e..1cf77e1913 100644 --- a/Mage.Sets/src/mage/cards/k/KariZevsExpertise.java +++ b/Mage.Sets/src/mage/cards/k/KariZevsExpertise.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class KariZevsExpertise extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or Vehicle"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE))); } diff --git a/Mage.Sets/src/mage/cards/k/KarnSilverGolem.java b/Mage.Sets/src/mage/cards/k/KarnSilverGolem.java index 19bc5b6c1c..57e69f971b 100644 --- a/Mage.Sets/src/mage/cards/k/KarnSilverGolem.java +++ b/Mage.Sets/src/mage/cards/k/KarnSilverGolem.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -28,7 +27,7 @@ public final class KarnSilverGolem extends CardImpl { private static final FilterArtifactPermanent filterNonCreature = new FilterArtifactPermanent("noncreature artifact"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public KarnSilverGolem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KarnTheGreatCreator.java b/Mage.Sets/src/mage/cards/k/KarnTheGreatCreator.java index c4fdb5ccef..ed497824c0 100644 --- a/Mage.Sets/src/mage/cards/k/KarnTheGreatCreator.java +++ b/Mage.Sets/src/mage/cards/k/KarnTheGreatCreator.java @@ -14,7 +14,6 @@ import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -30,7 +29,7 @@ public final class KarnTheGreatCreator extends CardImpl { = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public KarnTheGreatCreator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KarnsTouch.java b/Mage.Sets/src/mage/cards/k/KarnsTouch.java index d9a9b8cea9..0055128959 100644 --- a/Mage.Sets/src/mage/cards/k/KarnsTouch.java +++ b/Mage.Sets/src/mage/cards/k/KarnsTouch.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.SubLayer; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class KarnsTouch extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public KarnsTouch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KatakiWarsWage.java b/Mage.Sets/src/mage/cards/k/KatakiWarsWage.java index 7024d31e64..6baba518f3 100644 --- a/Mage.Sets/src/mage/cards/k/KatakiWarsWage.java +++ b/Mage.Sets/src/mage/cards/k/KatakiWarsWage.java @@ -14,7 +14,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,7 +24,7 @@ public final class KatakiWarsWage extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public KatakiWarsWage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KeeperOfTheDead.java b/Mage.Sets/src/mage/cards/k/KeeperOfTheDead.java index a934d9a37d..3cd0cb9c9a 100644 --- a/Mage.Sets/src/mage/cards/k/KeeperOfTheDead.java +++ b/Mage.Sets/src/mage/cards/k/KeeperOfTheDead.java @@ -24,7 +24,6 @@ import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.ObjectSourcePlayer; import mage.filter.predicate.ObjectSourcePlayerPredicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -46,7 +45,7 @@ public final class KeeperOfTheDead extends CardImpl { static { filter.add(new KeeperOfDeadPredicate()); filter2.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); - filter3.add(new CardTypePredicate(CardType.CREATURE)); + filter3.add(CardType.CREATURE.getPredicate()); } public KeeperOfTheDead(UUID ownerId, CardSetInfo setInfo) { @@ -80,7 +79,7 @@ class KeeperOfDeadPredicate implements ObjectSourcePlayerPredicate 0 && controller.choose(Outcome.Exile, opponent.getHand(), target, game)) { Card card = opponent.getHand().get(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/k/KolaghansCommand.java b/Mage.Sets/src/mage/cards/k/KolaghansCommand.java index 9229d1a77f..639562b27d 100644 --- a/Mage.Sets/src/mage/cards/k/KolaghansCommand.java +++ b/Mage.Sets/src/mage/cards/k/KolaghansCommand.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.TargetPlayer; import mage.target.common.TargetCardInYourGraveyard; @@ -27,7 +26,7 @@ public final class KolaghansCommand extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public KolaghansCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KozileksReturn.java b/Mage.Sets/src/mage/cards/k/KozileksReturn.java index 97f7592b92..2491a19441 100644 --- a/Mage.Sets/src/mage/cards/k/KozileksReturn.java +++ b/Mage.Sets/src/mage/cards/k/KozileksReturn.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -29,7 +28,7 @@ public final class KozileksReturn extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ELDRAZI)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 6)); } diff --git a/Mage.Sets/src/mage/cards/k/KrallenhordeHowler.java b/Mage.Sets/src/mage/cards/k/KrallenhordeHowler.java index 9da97bde55..b505fcbf77 100644 --- a/Mage.Sets/src/mage/cards/k/KrallenhordeHowler.java +++ b/Mage.Sets/src/mage/cards/k/KrallenhordeHowler.java @@ -19,7 +19,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -30,7 +29,7 @@ public final class KrallenhordeHowler extends CardImpl { private static final FilterCard FILTER = new FilterCard("Creature spells"); static { - FILTER.add(Predicates.or(new CardTypePredicate(CardType.CREATURE))); + FILTER.add(Predicates.or(CardType.CREATURE.getPredicate())); } public KrallenhordeHowler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrarkClanGrunt.java b/Mage.Sets/src/mage/cards/k/KrarkClanGrunt.java index 23158dc144..efd35894a0 100644 --- a/Mage.Sets/src/mage/cards/k/KrarkClanGrunt.java +++ b/Mage.Sets/src/mage/cards/k/KrarkClanGrunt.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class KrarkClanGrunt extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public KrarkClanGrunt(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrarkClanShaman.java b/Mage.Sets/src/mage/cards/k/KrarkClanShaman.java index 2732eb4c84..e2a183bf60 100644 --- a/Mage.Sets/src/mage/cards/k/KrarkClanShaman.java +++ b/Mage.Sets/src/mage/cards/k/KrarkClanShaman.java @@ -16,7 +16,6 @@ import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -28,7 +27,7 @@ public final class KrarkClanShaman extends CardImpl { private static final FilterCreaturePermanent filterTargetedCreatures = new FilterCreaturePermanent("creature without flying"); static { - filterSacrificed.add(new CardTypePredicate(CardType.ARTIFACT)); + filterSacrificed.add(CardType.ARTIFACT.getPredicate()); filterTargetedCreatures.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/k/KrosanDrover.java b/Mage.Sets/src/mage/cards/k/KrosanDrover.java index 18ec5442c9..84ae5d99a2 100644 --- a/Mage.Sets/src/mage/cards/k/KrosanDrover.java +++ b/Mage.Sets/src/mage/cards/k/KrosanDrover.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; /** @@ -25,7 +24,7 @@ public final class KrosanDrover extends CardImpl { private static final FilterCard filter = new FilterCard("Creature spells with converted mana cost 6 or greater"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } diff --git a/Mage.Sets/src/mage/cards/k/KruphixsInsight.java b/Mage.Sets/src/mage/cards/k/KruphixsInsight.java index fa4071206c..e20e532a8e 100644 --- a/Mage.Sets/src/mage/cards/k/KruphixsInsight.java +++ b/Mage.Sets/src/mage/cards/k/KruphixsInsight.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class KruphixsInsight extends CardImpl { private static final FilterCard filter = new FilterCard("up to three enchantment cards"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public KruphixsInsight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KuldothaRebirth.java b/Mage.Sets/src/mage/cards/k/KuldothaRebirth.java index 7f115794d6..5245933a58 100644 --- a/Mage.Sets/src/mage/cards/k/KuldothaRebirth.java +++ b/Mage.Sets/src/mage/cards/k/KuldothaRebirth.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.GoblinToken; import mage.target.common.TargetControlledPermanent; @@ -21,7 +20,7 @@ public final class KuldothaRebirth extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public KuldothaRebirth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/Kurgadon.java b/Mage.Sets/src/mage/cards/k/Kurgadon.java index 43202031cd..e9214c487c 100644 --- a/Mage.Sets/src/mage/cards/k/Kurgadon.java +++ b/Mage.Sets/src/mage/cards/k/Kurgadon.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.ComparisonType; import mage.counters.CounterType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; /** @@ -24,7 +23,7 @@ public final class Kurgadon extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("a creature spell with converted mana cost 6 or greater"); static { - filterSpell.add(new CardTypePredicate(CardType.CREATURE)); + filterSpell.add(CardType.CREATURE.getPredicate()); filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } diff --git a/Mage.Sets/src/mage/cards/k/KynaiosAndTiroOfMeletis.java b/Mage.Sets/src/mage/cards/k/KynaiosAndTiroOfMeletis.java index 15327e9370..7fe353b16e 100644 --- a/Mage.Sets/src/mage/cards/k/KynaiosAndTiroOfMeletis.java +++ b/Mage.Sets/src/mage/cards/k/KynaiosAndTiroOfMeletis.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.players.PlayerList; @@ -55,7 +54,7 @@ class KynaiosAndTirosEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("a land card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public KynaiosAndTirosEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LairDelve.java b/Mage.Sets/src/mage/cards/l/LairDelve.java index db6c134928..50fb7fcdac 100644 --- a/Mage.Sets/src/mage/cards/l/LairDelve.java +++ b/Mage.Sets/src/mage/cards/l/LairDelve.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class LairDelve extends CardImpl { private static final FilterCard filter = new FilterCard("all creature and land cards"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.LAND), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.LAND.getPredicate(), CardType.CREATURE.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/l/LastRites.java b/Mage.Sets/src/mage/cards/l/LastRites.java index 4abccd4d7b..439c317da9 100644 --- a/Mage.Sets/src/mage/cards/l/LastRites.java +++ b/Mage.Sets/src/mage/cards/l/LastRites.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -82,7 +81,7 @@ class LastRitesEffect extends OneShotEffect { } } FilterCard filter = new FilterCard((discardCount > 1 ? "" : "a") + " nonland card" + (discardCount > 1 ? "s" : "")); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); StaticValue discardValue = StaticValue.get(discardCount); Effect effect = new DiscardCardYouChooseTargetEffect(discardValue, filter, TargetController.ANY); effect.setTargetPointer(new FixedTarget(targetPlayer.getId())); diff --git a/Mage.Sets/src/mage/cards/l/LatullasOrders.java b/Mage.Sets/src/mage/cards/l/LatullasOrders.java index c2077d9deb..067ca95899 100644 --- a/Mage.Sets/src/mage/cards/l/LatullasOrders.java +++ b/Mage.Sets/src/mage/cards/l/LatullasOrders.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -85,7 +84,7 @@ class LatullasOrdersTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getTargetId()); if (player != null) { FilterPermanent filter = new FilterPermanent("an artifact controlled by " + player.getLogName()); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ControllerIdPredicate(event.getTargetId())); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/l/LavaFlow.java b/Mage.Sets/src/mage/cards/l/LavaFlow.java index e33bacacf4..b6ec7016af 100644 --- a/Mage.Sets/src/mage/cards/l/LavaFlow.java +++ b/Mage.Sets/src/mage/cards/l/LavaFlow.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -19,7 +18,7 @@ import mage.target.TargetPermanent; public final class LavaFlow extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public LavaFlow(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/Lavalanche.java b/Mage.Sets/src/mage/cards/l/Lavalanche.java index c98e939619..79a410bd9f 100644 --- a/Mage.Sets/src/mage/cards/l/Lavalanche.java +++ b/Mage.Sets/src/mage/cards/l/Lavalanche.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -72,7 +71,7 @@ class LavalancheEffect extends OneShotEffect { } targetPlayer.damage(amount.calculate(game, source, this), source.getSourceId(), game, false, true); FilterPermanent filter = new FilterPermanent("and each creature that player or that planeswalker's controller controls"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerIdPredicate(targetPlayer.getId())); List permanents = game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game); for (Permanent permanent : permanents) { diff --git a/Mage.Sets/src/mage/cards/l/LaviniaAzoriusRenegade.java b/Mage.Sets/src/mage/cards/l/LaviniaAzoriusRenegade.java index 4276ebfd59..63bcd95311 100644 --- a/Mage.Sets/src/mage/cards/l/LaviniaAzoriusRenegade.java +++ b/Mage.Sets/src/mage/cards/l/LaviniaAzoriusRenegade.java @@ -16,7 +16,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -88,7 +87,7 @@ class LaviniaAzoriusRenegadeReplacementEffect extends ContinuousRuleModifyingEff public boolean applies(GameEvent event, Ability source, Game game) { if (game.getPlayer(source.getControllerId()).hasOpponent(event.getPlayerId(), game)) { FilterCard filter = new FilterCard(); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, getLandCount(source, event, game))); Card card = game.getCard(event.getSourceId()); diff --git a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java index c83f7ff417..a26b9e3144 100644 --- a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java +++ b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -30,7 +29,7 @@ public final class LaviniaOfTheTenth extends CardImpl { private static final FilterPermanent filterDetain = new FilterPermanent("each nonland permanent your opponents control with converted mana cost 4 or less"); static { filterDetain.add(new ControllerPredicate(TargetController.OPPONENT)); - filterDetain.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterDetain.add(Predicates.not(CardType.LAND.getPredicate())); filterDetain.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } diff --git a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java index 6563d73bb2..e6b967b392 100644 --- a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java +++ b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java @@ -10,7 +10,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPlayer; @@ -23,7 +22,7 @@ public final class LayBareTheHeart extends CardImpl { private static final FilterCard filter = new FilterCard("nonlegendary, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } diff --git a/Mage.Sets/src/mage/cards/l/LeadTheStampede.java b/Mage.Sets/src/mage/cards/l/LeadTheStampede.java index c4ffaaf746..6511e7f85f 100644 --- a/Mage.Sets/src/mage/cards/l/LeadTheStampede.java +++ b/Mage.Sets/src/mage/cards/l/LeadTheStampede.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -17,7 +16,7 @@ public final class LeadTheStampede extends CardImpl { private static final FilterCard filter = new FilterCard("any number of creature cards"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public LeadTheStampede(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LeaveNoTrace.java b/Mage.Sets/src/mage/cards/l/LeaveNoTrace.java index 8bac85d5e5..ae8ce756ab 100644 --- a/Mage.Sets/src/mage/cards/l/LeaveNoTrace.java +++ b/Mage.Sets/src/mage/cards/l/LeaveNoTrace.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetEnchantmentPermanent; @@ -22,7 +21,7 @@ public final class LeaveNoTrace extends CardImpl { static final FilterPermanent filter = new FilterPermanent("enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public LeaveNoTrace(UUID ownerId, CardSetInfo setInfo) { @@ -48,7 +47,7 @@ class LeaveNoTraceEffect extends OneShotEffect { static final FilterPermanent filter = new FilterPermanent("enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } LeaveNoTraceEffect() { diff --git a/Mage.Sets/src/mage/cards/l/Legerdemain.java b/Mage.Sets/src/mage/cards/l/Legerdemain.java index ee1bf4902d..437ec00905 100644 --- a/Mage.Sets/src/mage/cards/l/Legerdemain.java +++ b/Mage.Sets/src/mage/cards/l/Legerdemain.java @@ -13,7 +13,6 @@ import mage.filter.predicate.ObjectSourcePlayer; import mage.filter.predicate.ObjectSourcePlayerPredicate; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AnotherTargetPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.StackObject; @@ -28,7 +27,7 @@ public final class Legerdemain extends CardImpl { private static final FilterPermanent firstFilter = new FilterPermanent("artifact or creature"); private static final FilterPermanent secondFilter = new FilterPermanent("another permanent that shares the type of artifact or creature"); static { - firstFilter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + firstFilter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); secondFilter.add(new AnotherTargetPredicate(2)); secondFilter.add(new SharesTypePredicate()); } diff --git a/Mage.Sets/src/mage/cards/l/LegionsInitiative.java b/Mage.Sets/src/mage/cards/l/LegionsInitiative.java index 8f209d80b3..915038619c 100644 --- a/Mage.Sets/src/mage/cards/l/LegionsInitiative.java +++ b/Mage.Sets/src/mage/cards/l/LegionsInitiative.java @@ -18,7 +18,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.ExileZone; @@ -72,7 +71,7 @@ class LegionsInitiativeExileEffect extends OneShotEffect { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public LegionsInitiativeExileEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LeoninIconoclast.java b/Mage.Sets/src/mage/cards/l/LeoninIconoclast.java index 19492139ac..c89c4efde7 100644 --- a/Mage.Sets/src/mage/cards/l/LeoninIconoclast.java +++ b/Mage.Sets/src/mage/cards/l/LeoninIconoclast.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetPermanent; @@ -25,8 +24,8 @@ public final class LeoninIconoclast extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchantment creature an opponent controls"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ENCHANTMENT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/l/Levitation.java b/Mage.Sets/src/mage/cards/l/Levitation.java index bbc342a1c7..8e1069a443 100644 --- a/Mage.Sets/src/mage/cards/l/Levitation.java +++ b/Mage.Sets/src/mage/cards/l/Levitation.java @@ -11,9 +11,7 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.FilterPermanent; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * diff --git a/Mage.Sets/src/mage/cards/l/LeylineOfAnticipation.java b/Mage.Sets/src/mage/cards/l/LeylineOfAnticipation.java index f94ef7048a..ba52f5293d 100644 --- a/Mage.Sets/src/mage/cards/l/LeylineOfAnticipation.java +++ b/Mage.Sets/src/mage/cards/l/LeylineOfAnticipation.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class LeylineOfAnticipation extends CardImpl { private static final FilterCard filter = new FilterCard("spells"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public LeylineOfAnticipation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LilianaDreadhordeGeneral.java b/Mage.Sets/src/mage/cards/l/LilianaDreadhordeGeneral.java index ba46e4fa66..54b403baaa 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDreadhordeGeneral.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDreadhordeGeneral.java @@ -17,7 +17,6 @@ import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardIdPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -101,7 +100,7 @@ class LilianaDreadhordeGeneralEffect extends OneShotEffect { "a " + cardType.toString() + " you control " + "(everything you don't choose will be sacrificed)" ); - filter.add(new CardTypePredicate(cardType)); + filter.add(cardType.getPredicate()); Target target = new TargetControlledPermanent(filter); target.setNotTarget(true); if (opponent.choose(outcome, target, source.getSourceId(), game)) { diff --git a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java index d8cb268763..5c2858fd63 100644 --- a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java +++ b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -38,7 +37,7 @@ public final class LinessaZephyrMage extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature with converted mana cost X"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public LinessaZephyrMage(UUID ownerId, CardSetInfo setInfo) { @@ -107,7 +106,7 @@ class LinessaZephyrMageEffect extends OneShotEffect { // then repeats this process for an artifact, FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); target = new TargetControlledPermanent(filter); target.setNotTarget(true); if (target.choose(Outcome.ReturnToHand, targetPlayer.getId(), source.getSourceId(), game)) { @@ -119,7 +118,7 @@ class LinessaZephyrMageEffect extends OneShotEffect { // an enchantment, filter = new FilterControlledPermanent("enchantment you control"); - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); target = new TargetControlledPermanent(filter); target.setNotTarget(true); if (target.choose(Outcome.ReturnToHand, targetPlayer.getId(), source.getSourceId(), game)) { @@ -131,7 +130,7 @@ class LinessaZephyrMageEffect extends OneShotEffect { // and a land. filter = new FilterControlledPermanent("land you control"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); target = new TargetControlledPermanent(filter); target.setNotTarget(true); if (target.choose(Outcome.ReturnToHand, targetPlayer.getId(), source.getSourceId(), game)) { diff --git a/Mage.Sets/src/mage/cards/l/LivingTsunami.java b/Mage.Sets/src/mage/cards/l/LivingTsunami.java index 62de72993c..f52e019f51 100644 --- a/Mage.Sets/src/mage/cards/l/LivingTsunami.java +++ b/Mage.Sets/src/mage/cards/l/LivingTsunami.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class LivingTsunami extends CardImpl { static final private FilterControlledPermanent filter = new FilterControlledPermanent("a land"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public LivingTsunami(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LivingWish.java b/Mage.Sets/src/mage/cards/l/LivingWish.java index f24436eb70..9a5d8a3c5f 100644 --- a/Mage.Sets/src/mage/cards/l/LivingWish.java +++ b/Mage.Sets/src/mage/cards/l/LivingWish.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,8 +20,8 @@ public final class LivingWish extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public LivingWish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LlawanCephalidEmpress.java b/Mage.Sets/src/mage/cards/l/LlawanCephalidEmpress.java index 9821dd9e9c..8bb18a151d 100644 --- a/Mage.Sets/src/mage/cards/l/LlawanCephalidEmpress.java +++ b/Mage.Sets/src/mage/cards/l/LlawanCephalidEmpress.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -34,7 +33,7 @@ public final class LlawanCephalidEmpress extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.BLUE)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public LlawanCephalidEmpress(UUID ownerId, CardSetInfo setInfo) { @@ -69,7 +68,7 @@ class LlawanCephalidRuleModifyingEffect extends ContinuousRuleModifyingEffectImp static { filter.add(new ColorPredicate(ObjectColor.BLUE)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public LlawanCephalidRuleModifyingEffect() { diff --git a/Mage.Sets/src/mage/cards/l/Lobotomy.java b/Mage.Sets/src/mage/cards/l/Lobotomy.java index 784a5d4e14..771077fa4c 100644 --- a/Mage.Sets/src/mage/cards/l/Lobotomy.java +++ b/Mage.Sets/src/mage/cards/l/Lobotomy.java @@ -12,7 +12,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -50,7 +49,7 @@ class LobotomyEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("card other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); } public LobotomyEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LocustMiser.java b/Mage.Sets/src/mage/cards/l/LocustMiser.java index f4e26564e5..d8c31304f5 100644 --- a/Mage.Sets/src/mage/cards/l/LocustMiser.java +++ b/Mage.Sets/src/mage/cards/l/LocustMiser.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,7 +24,7 @@ public final class LocustMiser extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("blue creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public LocustMiser(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LongshotSquad.java b/Mage.Sets/src/mage/cards/l/LongshotSquad.java index 4e8a8ef6b2..0b93b7a84b 100644 --- a/Mage.Sets/src/mage/cards/l/LongshotSquad.java +++ b/Mage.Sets/src/mage/cards/l/LongshotSquad.java @@ -17,7 +17,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -30,7 +29,7 @@ public final class LongshotSquad extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/l/LoomingHoverguard.java b/Mage.Sets/src/mage/cards/l/LoomingHoverguard.java index 1fb3778a2a..71e24a0ec3 100644 --- a/Mage.Sets/src/mage/cards/l/LoomingHoverguard.java +++ b/Mage.Sets/src/mage/cards/l/LoomingHoverguard.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,7 +23,7 @@ public final class LoomingHoverguard extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public LoomingHoverguard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LotusEyeMystics.java b/Mage.Sets/src/mage/cards/l/LotusEyeMystics.java index fe3aa6c5d8..65b4522aaf 100644 --- a/Mage.Sets/src/mage/cards/l/LotusEyeMystics.java +++ b/Mage.Sets/src/mage/cards/l/LotusEyeMystics.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,7 +23,7 @@ public final class LotusEyeMystics extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public LotusEyeMystics(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LoxodonMender.java b/Mage.Sets/src/mage/cards/l/LoxodonMender.java index 07cdfcbf0b..2a1b71a21a 100644 --- a/Mage.Sets/src/mage/cards/l/LoxodonMender.java +++ b/Mage.Sets/src/mage/cards/l/LoxodonMender.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.ColoredManaSymbol; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,7 +25,7 @@ public final class LoxodonMender extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public LoxodonMender(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LukeSkywalkerTheLastJedi.java b/Mage.Sets/src/mage/cards/l/LukeSkywalkerTheLastJedi.java index c5bbb81d94..9bbf5601cb 100644 --- a/Mage.Sets/src/mage/cards/l/LukeSkywalkerTheLastJedi.java +++ b/Mage.Sets/src/mage/cards/l/LukeSkywalkerTheLastJedi.java @@ -17,7 +17,6 @@ import mage.constants.CardType; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.command.emblems.LukeSkywalkerEmblem; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -31,7 +30,7 @@ public final class LukeSkywalkerTheLastJedi extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public LukeSkywalkerTheLastJedi(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LunarMystic.java b/Mage.Sets/src/mage/cards/l/LunarMystic.java index cc49d3a335..abac91eb38 100644 --- a/Mage.Sets/src/mage/cards/l/LunarMystic.java +++ b/Mage.Sets/src/mage/cards/l/LunarMystic.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class LunarMystic extends CardImpl { private static final FilterSpell filter = new FilterSpell("an instant spell"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public LunarMystic(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Machinate.java b/Mage.Sets/src/mage/cards/m/Machinate.java index 2b6459a845..6cb501da93 100644 --- a/Mage.Sets/src/mage/cards/m/Machinate.java +++ b/Mage.Sets/src/mage/cards/m/Machinate.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class Machinate extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Machinate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MagetaTheLion.java b/Mage.Sets/src/mage/cards/m/MagetaTheLion.java index ac3636dcf5..f7ad910c4a 100644 --- a/Mage.Sets/src/mage/cards/m/MagetaTheLion.java +++ b/Mage.Sets/src/mage/cards/m/MagetaTheLion.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetCardInHand; @@ -30,7 +29,7 @@ public final class MagetaTheLion extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creatures except for {this}"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/m/MagmaVein.java b/Mage.Sets/src/mage/cards/m/MagmaVein.java index 99ab3c9f95..ea03aa421f 100644 --- a/Mage.Sets/src/mage/cards/m/MagmaVein.java +++ b/Mage.Sets/src/mage/cards/m/MagmaVein.java @@ -16,7 +16,6 @@ import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -30,7 +29,7 @@ public final class MagmaVein extends CardImpl { static { filter1.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); - filter2.add(new CardTypePredicate(CardType.LAND)); + filter2.add(CardType.LAND.getPredicate()); } public MagmaVein(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Magmaquake.java b/Mage.Sets/src/mage/cards/m/Magmaquake.java index 4522a2d70b..cbcdc0b981 100644 --- a/Mage.Sets/src/mage/cards/m/Magmaquake.java +++ b/Mage.Sets/src/mage/cards/m/Magmaquake.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,9 +23,9 @@ public final class Magmaquake extends CardImpl { static { filter.add(Predicates.or( Predicates.and( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), Predicates.not(new AbilityPredicate(FlyingAbility.class))), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.PLANESWALKER.getPredicate())); } public Magmaquake(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Magmaroth.java b/Mage.Sets/src/mage/cards/m/Magmaroth.java index 824712cfbc..77059e991e 100644 --- a/Mage.Sets/src/mage/cards/m/Magmaroth.java +++ b/Mage.Sets/src/mage/cards/m/Magmaroth.java @@ -14,14 +14,13 @@ import mage.constants.TargetController; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; public final class Magmaroth extends CardImpl{ private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Magmaroth(UUID ownerId, CardSetInfo cardSetInfo){ diff --git a/Mage.Sets/src/mage/cards/m/Magmaw.java b/Mage.Sets/src/mage/cards/m/Magmaw.java index a556033ac8..67fac798e0 100644 --- a/Mage.Sets/src/mage/cards/m/Magmaw.java +++ b/Mage.Sets/src/mage/cards/m/Magmaw.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -27,7 +26,7 @@ public final class Magmaw extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public Magmaw(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MagneticFlux.java b/Mage.Sets/src/mage/cards/m/MagneticFlux.java index 9c37410b09..c4e8d878fc 100644 --- a/Mage.Sets/src/mage/cards/m/MagneticFlux.java +++ b/Mage.Sets/src/mage/cards/m/MagneticFlux.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author Loki @@ -20,8 +19,8 @@ public final class MagneticFlux extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); } public MagneticFlux(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Magnivore.java b/Mage.Sets/src/mage/cards/m/Magnivore.java index f51a8a2d85..db081de1be 100644 --- a/Mage.Sets/src/mage/cards/m/Magnivore.java +++ b/Mage.Sets/src/mage/cards/m/Magnivore.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class Magnivore extends CardImpl { private static final FilterCard filter = new FilterCard("sorcery cards"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Magnivore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MagusOfTheAbyss.java b/Mage.Sets/src/mage/cards/m/MagusOfTheAbyss.java index 1b3e774103..3efe48918a 100644 --- a/Mage.Sets/src/mage/cards/m/MagusOfTheAbyss.java +++ b/Mage.Sets/src/mage/cards/m/MagusOfTheAbyss.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -72,7 +71,7 @@ class MagusOfTheAbyssTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getPlayerId()); if (player != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature you control"); - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(new ControllerIdPredicate(player.getId())); Target target = new TargetCreaturePermanent(filter); target.setAbilityController(getControllerId()); diff --git a/Mage.Sets/src/mage/cards/m/MagusOfTheDisk.java b/Mage.Sets/src/mage/cards/m/MagusOfTheDisk.java index e0d57248b1..ee395e307c 100644 --- a/Mage.Sets/src/mage/cards/m/MagusOfTheDisk.java +++ b/Mage.Sets/src/mage/cards/m/MagusOfTheDisk.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,9 +27,9 @@ public final class MagusOfTheDisk extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public MagusOfTheDisk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MairsilThePretender.java b/Mage.Sets/src/mage/cards/m/MairsilThePretender.java index c40f76db90..3a85125af0 100644 --- a/Mage.Sets/src/mage/cards/m/MairsilThePretender.java +++ b/Mage.Sets/src/mage/cards/m/MairsilThePretender.java @@ -23,7 +23,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.CounterCardPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -70,7 +69,7 @@ class MairsilThePretenderExileEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard(); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); } MairsilThePretenderExileEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java b/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java index f726a243dd..8c9a7c76ff 100644 --- a/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java +++ b/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java @@ -13,7 +13,7 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetControlledCreaturePermanent; @@ -26,7 +26,7 @@ public final class MalevolentAwakening extends CardImpl { private static final FilterCard filter = new FilterCard("creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public MalevolentAwakening(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Malfunction.java b/Mage.Sets/src/mage/cards/m/Malfunction.java index 2a0cbad94a..1cd0ce644a 100644 --- a/Mage.Sets/src/mage/cards/m/Malfunction.java +++ b/Mage.Sets/src/mage/cards/m/Malfunction.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -30,8 +29,8 @@ public final class Malfunction extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public Malfunction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MaliciousAdvice.java b/Mage.Sets/src/mage/cards/m/MaliciousAdvice.java index b75bb70a68..6949f32da7 100644 --- a/Mage.Sets/src/mage/cards/m/MaliciousAdvice.java +++ b/Mage.Sets/src/mage/cards/m/MaliciousAdvice.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.target.TargetPermanent; import mage.target.targetadjustment.TargetAdjuster; @@ -50,9 +49,9 @@ enum MaliciousAdviceAdjuster implements TargetAdjuster { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/m/ManaMatrix.java b/Mage.Sets/src/mage/cards/m/ManaMatrix.java index d5cc1c516c..dc51c215ed 100644 --- a/Mage.Sets/src/mage/cards/m/ManaMatrix.java +++ b/Mage.Sets/src/mage/cards/m/ManaMatrix.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,8 +21,8 @@ public final class ManaMatrix extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.INSTANT.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java b/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java index 9d560a6bb0..50427c8cf5 100644 --- a/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java +++ b/Mage.Sets/src/mage/cards/m/MaraxusOfKeld.java @@ -15,7 +15,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; /** @@ -29,9 +28,9 @@ public final class MaraxusOfKeld extends CardImpl { static { filter.add(Predicates.not(TappedPredicate.instance)); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public MaraxusOfKeld(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MarchOfTheMachines.java b/Mage.Sets/src/mage/cards/m/MarchOfTheMachines.java index 79585fbdce..63f0a86360 100644 --- a/Mage.Sets/src/mage/cards/m/MarchOfTheMachines.java +++ b/Mage.Sets/src/mage/cards/m/MarchOfTheMachines.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -44,7 +43,7 @@ class MarchOfTheMachinesEffect extends ContinuousEffectImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public MarchOfTheMachinesEffect() { diff --git a/Mage.Sets/src/mage/cards/m/MarduCharm.java b/Mage.Sets/src/mage/cards/m/MarduCharm.java index 9872d5acac..a30bbbb79d 100644 --- a/Mage.Sets/src/mage/cards/m/MarduCharm.java +++ b/Mage.Sets/src/mage/cards/m/MarduCharm.java @@ -18,7 +18,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.WarriorToken; @@ -36,8 +35,8 @@ public final class MarduCharm extends CardImpl { private static final FilterCard filter = new FilterCard("a noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public MarduCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MartyrsBond.java b/Mage.Sets/src/mage/cards/m/MartyrsBond.java index 930d3670c1..5461588c7b 100644 --- a/Mage.Sets/src/mage/cards/m/MartyrsBond.java +++ b/Mage.Sets/src/mage/cards/m/MartyrsBond.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -118,10 +117,10 @@ class MartyrsBondEffect extends OneShotEffect { String message = "permanent with type ("; boolean firstType = true; - List cardTypes = new ArrayList<>(); + List cardTypes = new ArrayList<>(); for (CardType type : saccedPermanent.getCardType()) { - cardTypes.add(new CardTypePredicate(type)); + cardTypes.add(type.getPredicate()); if (firstType) { message += type; firstType = false; diff --git a/Mage.Sets/src/mage/cards/m/MasterOfEtherium.java b/Mage.Sets/src/mage/cards/m/MasterOfEtherium.java index 62da2129d8..a0da161a7e 100644 --- a/Mage.Sets/src/mage/cards/m/MasterOfEtherium.java +++ b/Mage.Sets/src/mage/cards/m/MasterOfEtherium.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -25,8 +24,8 @@ public final class MasterOfEtherium extends CardImpl { private static final FilterCreaturePermanent filterBoosted = new FilterCreaturePermanent("artifact creatures"); static { - filterCounted.add(new CardTypePredicate(CardType.ARTIFACT)); - filterBoosted.add(new CardTypePredicate(CardType.ARTIFACT)); + filterCounted.add(CardType.ARTIFACT.getPredicate()); + filterBoosted.add(CardType.ARTIFACT.getPredicate()); filterBoosted.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/m/MasterworkOfIngenuity.java b/Mage.Sets/src/mage/cards/m/MasterworkOfIngenuity.java index c4c86daf20..cb1e31aa5b 100644 --- a/Mage.Sets/src/mage/cards/m/MasterworkOfIngenuity.java +++ b/Mage.Sets/src/mage/cards/m/MasterworkOfIngenuity.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -21,7 +20,7 @@ public final class MasterworkOfIngenuity extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("equipment"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/m/MaulSplicer.java b/Mage.Sets/src/mage/cards/m/MaulSplicer.java index 8b0dfba75d..fa66ead285 100644 --- a/Mage.Sets/src/mage/cards/m/MaulSplicer.java +++ b/Mage.Sets/src/mage/cards/m/MaulSplicer.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.permanent.token.GolemToken; @@ -28,7 +27,7 @@ public final class MaulSplicer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Golem creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.GOLEM)); } diff --git a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java index 3c979835eb..56dbd0c283 100644 --- a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java +++ b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java @@ -15,7 +15,6 @@ import mage.constants.ComparisonType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; /** @@ -26,7 +25,7 @@ public final class MayaelTheAnima extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with power 5 or greater"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/m/Megatog.java b/Mage.Sets/src/mage/cards/m/Megatog.java index 95586077d4..f6a540c99b 100644 --- a/Mage.Sets/src/mage/cards/m/Megatog.java +++ b/Mage.Sets/src/mage/cards/m/Megatog.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -27,7 +26,7 @@ public final class Megatog extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Megatog(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MelekIzzetParagon.java b/Mage.Sets/src/mage/cards/m/MelekIzzetParagon.java index 8d6dd6cd67..d6e8b40bf0 100644 --- a/Mage.Sets/src/mage/cards/m/MelekIzzetParagon.java +++ b/Mage.Sets/src/mage/cards/m/MelekIzzetParagon.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -35,8 +34,8 @@ public final class MelekIzzetParagon extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MelekIzzetParagon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MeletisAstronomer.java b/Mage.Sets/src/mage/cards/m/MeletisAstronomer.java index e456741390..d443f24f13 100644 --- a/Mage.Sets/src/mage/cards/m/MeletisAstronomer.java +++ b/Mage.Sets/src/mage/cards/m/MeletisAstronomer.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class MeletisAstronomer extends CardImpl { private static final FilterCard filter = new FilterCard("an enchantment card"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public MeletisAstronomer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MemoryPlunder.java b/Mage.Sets/src/mage/cards/m/MemoryPlunder.java index 266b26c7ae..8097b7f54b 100644 --- a/Mage.Sets/src/mage/cards/m/MemoryPlunder.java +++ b/Mage.Sets/src/mage/cards/m/MemoryPlunder.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInOpponentsGraveyard; @@ -27,8 +26,8 @@ public final class MemoryPlunder extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MemoryPlunder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MephiticOoze.java b/Mage.Sets/src/mage/cards/m/MephiticOoze.java index ff727fb266..a89562f39e 100644 --- a/Mage.Sets/src/mage/cards/m/MephiticOoze.java +++ b/Mage.Sets/src/mage/cards/m/MephiticOoze.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,7 +27,7 @@ public final class MephiticOoze extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public MephiticOoze(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MerEkNightblade.java b/Mage.Sets/src/mage/cards/m/MerEkNightblade.java index e6bc6c0ba7..3c48835cac 100644 --- a/Mage.Sets/src/mage/cards/m/MerEkNightblade.java +++ b/Mage.Sets/src/mage/cards/m/MerEkNightblade.java @@ -17,7 +17,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -29,7 +28,7 @@ public final class MerEkNightblade extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/m/MerchantScroll.java b/Mage.Sets/src/mage/cards/m/MerchantScroll.java index c199ea35af..9ee174061b 100644 --- a/Mage.Sets/src/mage/cards/m/MerchantScroll.java +++ b/Mage.Sets/src/mage/cards/m/MerchantScroll.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCardInLibrary; @@ -22,7 +21,7 @@ public final class MerchantScroll extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.BLUE)); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public MerchantScroll(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MercilessResolve.java b/Mage.Sets/src/mage/cards/m/MercilessResolve.java index 2026f13cea..3c877d1901 100644 --- a/Mage.Sets/src/mage/cards/m/MercilessResolve.java +++ b/Mage.Sets/src/mage/cards/m/MercilessResolve.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -21,7 +20,7 @@ public final class MercilessResolve extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public MercilessResolve(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MesaEnchantress.java b/Mage.Sets/src/mage/cards/m/MesaEnchantress.java index 62ba538c5d..f142f549ab 100644 --- a/Mage.Sets/src/mage/cards/m/MesaEnchantress.java +++ b/Mage.Sets/src/mage/cards/m/MesaEnchantress.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class MesaEnchantress extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public MesaEnchantress(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java index d8f931b42a..b97d349836 100644 --- a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java +++ b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java @@ -20,7 +20,6 @@ import mage.filter.FilterSpell; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.MetallurgicSummoningsConstructToken; import mage.game.stack.Spell; @@ -36,8 +35,8 @@ public final class MetallurgicSummonings extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MetallurgicSummonings(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MetalworkColossus.java b/Mage.Sets/src/mage/cards/m/MetalworkColossus.java index 2bcc5876bf..6052cf4bb7 100644 --- a/Mage.Sets/src/mage/cards/m/MetalworkColossus.java +++ b/Mage.Sets/src/mage/cards/m/MetalworkColossus.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetControlledPermanent; @@ -60,7 +59,7 @@ class MetalworkColossusCostReductionEffect extends CostModificationEffectImpl { private static final FilterPermanent filter = new FilterControlledArtifactPermanent("noncreature artifacts you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } MetalworkColossusCostReductionEffect() { diff --git a/Mage.Sets/src/mage/cards/m/Metamorphose.java b/Mage.Sets/src/mage/cards/m/Metamorphose.java index 3e252e68e3..1441c1fe1b 100644 --- a/Mage.Sets/src/mage/cards/m/Metamorphose.java +++ b/Mage.Sets/src/mage/cards/m/Metamorphose.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -60,10 +59,10 @@ class MetamorphoseEffect extends OneShotEffect { static{ filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java index c7d78e1397..2b0af11baf 100644 --- a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java +++ b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java @@ -16,7 +16,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; @@ -31,7 +30,7 @@ public final class MightOfTheWild extends CardImpl { static { filterMode1.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); - filterMode2.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filterMode2.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public MightOfTheWild(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java b/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java index d128a303bf..c5f7455d98 100644 --- a/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java +++ b/Mage.Sets/src/mage/cards/m/MilitantInquisitor.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -26,7 +25,7 @@ public final class MilitantInquisitor extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Equipment you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java index dc001957da..c2cdce9705 100644 --- a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java +++ b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.target.Target; @@ -31,7 +30,7 @@ public final class MinamoSightbender extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature with power X or less"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public MinamoSightbender(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MindGames.java b/Mage.Sets/src/mage/cards/m/MindGames.java index 4bb54d8e79..e7cf9b8f4c 100644 --- a/Mage.Sets/src/mage/cards/m/MindGames.java +++ b/Mage.Sets/src/mage/cards/m/MindGames.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,9 +21,9 @@ public final class MindGames extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public MindGames(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MindOverMatter.java b/Mage.Sets/src/mage/cards/m/MindOverMatter.java index d40350022e..51feb07656 100644 --- a/Mage.Sets/src/mage/cards/m/MindOverMatter.java +++ b/Mage.Sets/src/mage/cards/m/MindOverMatter.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,7 +22,7 @@ public final class MindOverMatter extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact, creature, or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public MindOverMatter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MindclawShaman.java b/Mage.Sets/src/mage/cards/m/MindclawShaman.java index 86fe026572..19681c2aa7 100644 --- a/Mage.Sets/src/mage/cards/m/MindclawShaman.java +++ b/Mage.Sets/src/mage/cards/m/MindclawShaman.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -60,8 +59,8 @@ class MindclawShamanEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MindclawShamanEffect() { diff --git a/Mage.Sets/src/mage/cards/m/Mindsparker.java b/Mage.Sets/src/mage/cards/m/Mindsparker.java index 02797d6554..4dd030386f 100644 --- a/Mage.Sets/src/mage/cards/m/Mindsparker.java +++ b/Mage.Sets/src/mage/cards/m/Mindsparker.java @@ -17,7 +17,6 @@ import mage.constants.SetTargetPointer; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -32,8 +31,8 @@ public final class Mindsparker extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(Predicates.or( new ColorPredicate(ObjectColor.WHITE), new ColorPredicate(ObjectColor.BLUE))); diff --git a/Mage.Sets/src/mage/cards/m/MineExcavation.java b/Mage.Sets/src/mage/cards/m/MineExcavation.java index 09eceb5636..f3a5584716 100644 --- a/Mage.Sets/src/mage/cards/m/MineExcavation.java +++ b/Mage.Sets/src/mage/cards/m/MineExcavation.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInGraveyard; /** @@ -21,8 +20,8 @@ public final class MineExcavation extends CardImpl { private static final FilterCard filter = new FilterCard("artifact or enchantment card in a graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public MineExcavation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MinionOfLeshrac.java b/Mage.Sets/src/mage/cards/m/MinionOfLeshrac.java index 154468baf3..a6130a8fb1 100644 --- a/Mage.Sets/src/mage/cards/m/MinionOfLeshrac.java +++ b/Mage.Sets/src/mage/cards/m/MinionOfLeshrac.java @@ -22,7 +22,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -39,7 +38,7 @@ public final class MinionOfLeshrac extends CardImpl { private static final FilterPermanent filterCreatureOrLand = new FilterPermanent("creature or land"); static { - filterCreatureOrLand.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filterCreatureOrLand.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public MinionOfLeshrac(UUID ownerId, CardSetInfo setInfo) { @@ -91,7 +90,7 @@ class MinionLeshracEffect extends OneShotEffect { if (controller != null && minionLeshrac != null) { FilterControlledPermanent filterCreature = new FilterControlledPermanent(); - filterCreature.add(new CardTypePredicate(CardType.CREATURE)); + filterCreature.add(CardType.CREATURE.getPredicate()); filterCreature.add(AnotherPredicate.instance); TargetControlledPermanent target = new TargetControlledPermanent(filterCreature); SacrificeTargetCost cost = new SacrificeTargetCost(target); diff --git a/Mage.Sets/src/mage/cards/m/Mirari.java b/Mage.Sets/src/mage/cards/m/Mirari.java index da05fc00c0..7a209fa01a 100644 --- a/Mage.Sets/src/mage/cards/m/Mirari.java +++ b/Mage.Sets/src/mage/cards/m/Mirari.java @@ -12,7 +12,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -51,8 +50,8 @@ class MirariTriggeredAbility extends TriggeredAbilityImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } MirariTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/m/MireInMisery.java b/Mage.Sets/src/mage/cards/m/MireInMisery.java index d0dee1d093..78d79df94c 100644 --- a/Mage.Sets/src/mage/cards/m/MireInMisery.java +++ b/Mage.Sets/src/mage/cards/m/MireInMisery.java @@ -6,7 +6,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -19,8 +18,8 @@ public final class MireInMisery extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/m/MirrorGolem.java b/Mage.Sets/src/mage/cards/m/MirrorGolem.java index c5e918fd2f..797939a0cc 100644 --- a/Mage.Sets/src/mage/cards/m/MirrorGolem.java +++ b/Mage.Sets/src/mage/cards/m/MirrorGolem.java @@ -13,7 +13,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.ExileZone; import mage.game.Game; import mage.game.permanent.Permanent; @@ -121,7 +120,7 @@ class MirrorGolemEffect extends ContinuousEffectImpl { } else { filterCard = new FilterCard(cardType.toString() + "s"); } - filterCard.add(new CardTypePredicate(cardType)); + filterCard.add(cardType.getPredicate()); sourceObject.addAbility(new ProtectionAbility(filterCard)); } } diff --git a/Mage.Sets/src/mage/cards/m/MirrorSheen.java b/Mage.Sets/src/mage/cards/m/MirrorSheen.java index d03748238f..2680cec60a 100644 --- a/Mage.Sets/src/mage/cards/m/MirrorSheen.java +++ b/Mage.Sets/src/mage/cards/m/MirrorSheen.java @@ -14,7 +14,6 @@ import mage.filter.FilterSpell; import mage.filter.predicate.ObjectPlayer; import mage.filter.predicate.ObjectPlayerPredicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.StackObject; import mage.target.Target; @@ -30,7 +29,7 @@ public final class MirrorSheen extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant or sorcery spell that targets you"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); filter.add(new TargetYouPredicate()); } diff --git a/Mage.Sets/src/mage/cards/m/Mirrorpool.java b/Mage.Sets/src/mage/cards/m/Mirrorpool.java index a9874b126c..a80322a94a 100644 --- a/Mage.Sets/src/mage/cards/m/Mirrorpool.java +++ b/Mage.Sets/src/mage/cards/m/Mirrorpool.java @@ -18,7 +18,7 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledCreaturePermanent; @@ -33,8 +33,8 @@ public final class Mirrorpool extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/m/MistfireAdept.java b/Mage.Sets/src/mage/cards/m/MistfireAdept.java index be7b16cf8b..62827fadb9 100644 --- a/Mage.Sets/src/mage/cards/m/MistfireAdept.java +++ b/Mage.Sets/src/mage/cards/m/MistfireAdept.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -26,7 +25,7 @@ public final class MistfireAdept extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public MistfireAdept(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MnemonicWall.java b/Mage.Sets/src/mage/cards/m/MnemonicWall.java index 65f127e209..0c956dcbe2 100644 --- a/Mage.Sets/src/mage/cards/m/MnemonicWall.java +++ b/Mage.Sets/src/mage/cards/m/MnemonicWall.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,8 +25,8 @@ public final class MnemonicWall extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MnemonicWall(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MobileGarrison.java b/Mage.Sets/src/mage/cards/m/MobileGarrison.java index 3ebd7811e8..8740ce3ba5 100644 --- a/Mage.Sets/src/mage/cards/m/MobileGarrison.java +++ b/Mage.Sets/src/mage/cards/m/MobileGarrison.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetControlledPermanent; @@ -29,8 +28,8 @@ public final class MobileGarrison extends CardImpl { static { filter.add(AnotherPredicate.instance); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/m/MoldShambler.java b/Mage.Sets/src/mage/cards/m/MoldShambler.java index 5c8bd2a2b0..8c8eefeacc 100644 --- a/Mage.Sets/src/mage/cards/m/MoldShambler.java +++ b/Mage.Sets/src/mage/cards/m/MoldShambler.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class MoldShambler extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public MoldShambler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MolderSlug.java b/Mage.Sets/src/mage/cards/m/MolderSlug.java index b057a901bf..e1d3b91022 100644 --- a/Mage.Sets/src/mage/cards/m/MolderSlug.java +++ b/Mage.Sets/src/mage/cards/m/MolderSlug.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author Loki @@ -22,7 +21,7 @@ public final class MolderSlug extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public MolderSlug(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoltenFrame.java b/Mage.Sets/src/mage/cards/m/MoltenFrame.java index 66a5af1c2a..a88fb4e0ca 100644 --- a/Mage.Sets/src/mage/cards/m/MoltenFrame.java +++ b/Mage.Sets/src/mage/cards/m/MoltenFrame.java @@ -10,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -22,7 +21,7 @@ public final class MoltenFrame extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public MoltenFrame(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MomirVigSimicVisionary.java b/Mage.Sets/src/mage/cards/m/MomirVigSimicVisionary.java index fca77d6cc5..e84aaba6a7 100644 --- a/Mage.Sets/src/mage/cards/m/MomirVigSimicVisionary.java +++ b/Mage.Sets/src/mage/cards/m/MomirVigSimicVisionary.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -36,9 +35,9 @@ public final class MomirVigSimicVisionary extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter2.add(new ColorPredicate(ObjectColor.BLUE)); - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); } public MomirVigSimicVisionary(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MonasteryLoremaster.java b/Mage.Sets/src/mage/cards/m/MonasteryLoremaster.java index 354329e3d1..2a01ae4bf7 100644 --- a/Mage.Sets/src/mage/cards/m/MonasteryLoremaster.java +++ b/Mage.Sets/src/mage/cards/m/MonasteryLoremaster.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,8 +25,8 @@ public final class MonasteryLoremaster extends CardImpl { private static final FilterCard filter = new FilterCard("noncreature, nonland card from your graveyard"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public MonasteryLoremaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MonasteryMentor.java b/Mage.Sets/src/mage/cards/m/MonasteryMentor.java index af4b055ed0..cc42e8548d 100644 --- a/Mage.Sets/src/mage/cards/m/MonasteryMentor.java +++ b/Mage.Sets/src/mage/cards/m/MonasteryMentor.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.MonasteryMentorToken; /** @@ -24,7 +23,7 @@ public final class MonasteryMentor extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public MonasteryMentor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MonkIdealist.java b/Mage.Sets/src/mage/cards/m/MonkIdealist.java index c33dde06d0..a3bc776665 100644 --- a/Mage.Sets/src/mage/cards/m/MonkIdealist.java +++ b/Mage.Sets/src/mage/cards/m/MonkIdealist.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -23,7 +22,7 @@ public final class MonkIdealist extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public MonkIdealist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoratoriumStone.java b/Mage.Sets/src/mage/cards/m/MoratoriumStone.java index 1b724745f0..29b48bbea1 100644 --- a/Mage.Sets/src/mage/cards/m/MoratoriumStone.java +++ b/Mage.Sets/src/mage/cards/m/MoratoriumStone.java @@ -20,7 +20,6 @@ import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.game.Game; import mage.target.common.TargetCardInGraveyard; @@ -34,7 +33,7 @@ public final class MoratoriumStone extends CardImpl { private static final FilterCard filter = new FilterCard("nonland card from a graveyard"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public MoratoriumStone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MorbidCuriosity.java b/Mage.Sets/src/mage/cards/m/MorbidCuriosity.java index 85a2ca79d3..107e5e54e7 100644 --- a/Mage.Sets/src/mage/cards/m/MorbidCuriosity.java +++ b/Mage.Sets/src/mage/cards/m/MorbidCuriosity.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -23,8 +22,8 @@ public final class MorbidCuriosity extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public MorbidCuriosity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoriokScavenger.java b/Mage.Sets/src/mage/cards/m/MoriokScavenger.java index a2ef0d4733..94ac1f0953 100644 --- a/Mage.Sets/src/mage/cards/m/MoriokScavenger.java +++ b/Mage.Sets/src/mage/cards/m/MoriokScavenger.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -23,7 +22,7 @@ public final class MoriokScavenger extends CardImpl { static final FilterCreatureCard filter = new FilterCreatureCard("artifact creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public MoriokScavenger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MorkrutNecropod.java b/Mage.Sets/src/mage/cards/m/MorkrutNecropod.java index 08a609f0ed..a34795d7a6 100644 --- a/Mage.Sets/src/mage/cards/m/MorkrutNecropod.java +++ b/Mage.Sets/src/mage/cards/m/MorkrutNecropod.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; /** @@ -25,8 +24,8 @@ public final class MorkrutNecropod extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/m/Mortify.java b/Mage.Sets/src/mage/cards/m/Mortify.java index 001b463ae5..a8f96922a3 100644 --- a/Mage.Sets/src/mage/cards/m/Mortify.java +++ b/Mage.Sets/src/mage/cards/m/Mortify.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,8 +19,8 @@ public final class Mortify extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public Mortify(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MoxAmber.java b/Mage.Sets/src/mage/cards/m/MoxAmber.java index 17aef36e1d..0ffa117ec0 100644 --- a/Mage.Sets/src/mage/cards/m/MoxAmber.java +++ b/Mage.Sets/src/mage/cards/m/MoxAmber.java @@ -10,7 +10,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; /** @@ -27,10 +26,10 @@ public final class MoxAmber extends CardImpl { FilterPermanent filter = new FilterPermanent("legendary creatures and planeswalkers"); filter.add(Predicates.or( Predicates.and( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), new SupertypePredicate(SuperType.LEGENDARY) ), - new CardTypePredicate(CardType.PLANESWALKER)) + CardType.PLANESWALKER.getPredicate()) ); this.addAbility(new AnyColorPermanentTypesManaAbility(TargetController.YOU, filter)); } diff --git a/Mage.Sets/src/mage/cards/m/MuddleTheMixture.java b/Mage.Sets/src/mage/cards/m/MuddleTheMixture.java index 226627057b..547060f94d 100644 --- a/Mage.Sets/src/mage/cards/m/MuddleTheMixture.java +++ b/Mage.Sets/src/mage/cards/m/MuddleTheMixture.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -21,8 +20,8 @@ public final class MuddleTheMixture extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MuddleTheMixture(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MwonvuliBeastTracker.java b/Mage.Sets/src/mage/cards/m/MwonvuliBeastTracker.java index e682c4a791..3d9b9507b0 100644 --- a/Mage.Sets/src/mage/cards/m/MwonvuliBeastTracker.java +++ b/Mage.Sets/src/mage/cards/m/MwonvuliBeastTracker.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -28,7 +27,7 @@ public final class MwonvuliBeastTracker extends CardImpl { private static final FilterCard filter = new FilterCard("creature card with deathtouch, hexproof, reach, or trample in your library"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.or( new AbilityPredicate(DeathtouchAbility.class), new AbilityPredicate(HexproofAbility.class), diff --git a/Mage.Sets/src/mage/cards/m/MycosynthGolem.java b/Mage.Sets/src/mage/cards/m/MycosynthGolem.java index db7eb3412c..d9b8d149ce 100644 --- a/Mage.Sets/src/mage/cards/m/MycosynthGolem.java +++ b/Mage.Sets/src/mage/cards/m/MycosynthGolem.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,8 +22,8 @@ public final class MycosynthGolem extends CardImpl { private static final FilterSpell filter = new FilterSpell("Artifact creature spells"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); } public MycosynthGolem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MyrIncubator.java b/Mage.Sets/src/mage/cards/m/MyrIncubator.java index a8996c7b95..74b412702a 100644 --- a/Mage.Sets/src/mage/cards/m/MyrIncubator.java +++ b/Mage.Sets/src/mage/cards/m/MyrIncubator.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.MyrToken; import mage.players.Player; @@ -54,7 +53,7 @@ class MyrIncubatorEffect extends SearchEffect { private static final FilterCard filter = new FilterCard(); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } int tokensToCreate = 0; diff --git a/Mage.Sets/src/mage/cards/m/MysticDenial.java b/Mage.Sets/src/mage/cards/m/MysticDenial.java index 1831835286..b75850919b 100644 --- a/Mage.Sets/src/mage/cards/m/MysticDenial.java +++ b/Mage.Sets/src/mage/cards/m/MysticDenial.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -20,7 +19,7 @@ public final class MysticDenial extends CardImpl { private static final FilterSpell filter = new FilterSpell("creature or sorcery spell"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.SORCERY.getPredicate())); } public MysticDenial(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MysticMeditation.java b/Mage.Sets/src/mage/cards/m/MysticMeditation.java index 0baaf14439..cd371a9707 100644 --- a/Mage.Sets/src/mage/cards/m/MysticMeditation.java +++ b/Mage.Sets/src/mage/cards/m/MysticMeditation.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInHand; @@ -62,7 +61,7 @@ class MysticMeditationEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); FilterCard filter = new FilterCard("creature card to discard"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); if (controller != null && controller.getHand().count(filter, game) > 0 && controller.chooseUse(Outcome.Discard, "Do you want to discard a creature card? If you don't, you must discard 2 cards", source, game)) { diff --git a/Mage.Sets/src/mage/cards/m/MysticRetrieval.java b/Mage.Sets/src/mage/cards/m/MysticRetrieval.java index 4f2b1d0cff..37875af8cd 100644 --- a/Mage.Sets/src/mage/cards/m/MysticRetrieval.java +++ b/Mage.Sets/src/mage/cards/m/MysticRetrieval.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.TimingRule; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -23,8 +22,8 @@ public final class MysticRetrieval extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MysticRetrieval(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MysticalTeachings.java b/Mage.Sets/src/mage/cards/m/MysticalTeachings.java index 381db20fcb..a4485b87c6 100644 --- a/Mage.Sets/src/mage/cards/m/MysticalTeachings.java +++ b/Mage.Sets/src/mage/cards/m/MysticalTeachings.java @@ -13,7 +13,6 @@ import mage.constants.TimingRule; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -27,7 +26,7 @@ public final class MysticalTeachings extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), + CardType.INSTANT.getPredicate(), new AbilityPredicate(FlashAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/m/MysticalTutor.java b/Mage.Sets/src/mage/cards/m/MysticalTutor.java index 1803e72bf8..ae258c4689 100644 --- a/Mage.Sets/src/mage/cards/m/MysticalTutor.java +++ b/Mage.Sets/src/mage/cards/m/MysticalTutor.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -20,8 +19,8 @@ public final class MysticalTutor extends CardImpl { private static final FilterCard filter = new FilterCard("instant or sorcery card"); static{ filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public MysticalTutor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MythRealized.java b/Mage.Sets/src/mage/cards/m/MythRealized.java index 5636ae3597..5595d6d2bf 100644 --- a/Mage.Sets/src/mage/cards/m/MythRealized.java +++ b/Mage.Sets/src/mage/cards/m/MythRealized.java @@ -24,11 +24,9 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; import mage.players.Player; /** @@ -40,7 +38,7 @@ public final class MythRealized extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public MythRealized(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java b/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java index 693c492a3c..659368cc10 100644 --- a/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java +++ b/Mage.Sets/src/mage/cards/n/NahiriTheHarbinger.java @@ -28,7 +28,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -46,10 +45,10 @@ public final class NahiriTheHarbinger extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchantment, tapped artifact, or tapped creature"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ENCHANTMENT), - (Predicates.and(new CardTypePredicate(CardType.ARTIFACT), + filter.add(Predicates.or(CardType.ENCHANTMENT.getPredicate(), + (Predicates.and(CardType.ARTIFACT.getPredicate(), TappedPredicate.instance)), - (Predicates.and(new CardTypePredicate(CardType.CREATURE), + (Predicates.and(CardType.CREATURE.getPredicate(), TappedPredicate.instance)))); } @@ -88,8 +87,8 @@ class NahiriTheHarbingerEffect extends SearchEffect { private static final FilterCard filterCard = new FilterCard("artifact or creature card"); static { - filterCard.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + filterCard.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } NahiriTheHarbingerEffect() { diff --git a/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java b/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java index b9d358dd4f..20996fe8a0 100644 --- a/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java +++ b/Mage.Sets/src/mage/cards/n/NarsetParterOfVeils.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.players.Player; @@ -28,8 +27,8 @@ public final class NarsetParterOfVeils extends CardImpl { private static final FilterCard filter = new FilterCard("noncreature, nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public NarsetParterOfVeils(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NaruMehaMasterWizard.java b/Mage.Sets/src/mage/cards/n/NaruMehaMasterWizard.java index 38e50a9695..f042edccae 100644 --- a/Mage.Sets/src/mage/cards/n/NaruMehaMasterWizard.java +++ b/Mage.Sets/src/mage/cards/n/NaruMehaMasterWizard.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; @@ -38,8 +37,8 @@ public final class NaruMehaMasterWizard extends CardImpl { wizardFilter.add(new ControllerPredicate(TargetController.YOU)); spellFilter.add(new ControllerPredicate(TargetController.YOU)); spellFilter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/n/NaturesChosen.java b/Mage.Sets/src/mage/cards/n/NaturesChosen.java index 6fb1055bef..744faaf1ec 100644 --- a/Mage.Sets/src/mage/cards/n/NaturesChosen.java +++ b/Mage.Sets/src/mage/cards/n/NaturesChosen.java @@ -23,9 +23,7 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; -import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledCreaturePermanent; @@ -40,9 +38,9 @@ public final class NaturesChosen extends CardImpl { static { filterPermanent.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } private static final FilterCreaturePermanent filterWhiteUntappedCreature = new FilterCreaturePermanent(" if enchanted creature is white and is untapped"); diff --git a/Mage.Sets/src/mage/cards/n/NayaPanorama.java b/Mage.Sets/src/mage/cards/n/NayaPanorama.java index 9fa67f3719..df2d342629 100644 --- a/Mage.Sets/src/mage/cards/n/NayaPanorama.java +++ b/Mage.Sets/src/mage/cards/n/NayaPanorama.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -29,7 +28,7 @@ public final class NayaPanorama extends CardImpl { private static final FilterCard filter = new FilterCard("a basic Mountain, Forest, or Plains card"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate(SubType.MOUNTAIN), diff --git a/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java b/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java index bd4511146b..bc48df33e5 100644 --- a/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java +++ b/Mage.Sets/src/mage/cards/n/NazahnReveredBladesmith.java @@ -17,7 +17,6 @@ import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -45,7 +44,7 @@ public final class NazahnReveredBladesmith extends CardImpl { private static final FilterCard filter = new FilterCard("Equipment card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/n/Nekrataal.java b/Mage.Sets/src/mage/cards/n/Nekrataal.java index 2b33ca4d12..04a6060fcb 100644 --- a/Mage.Sets/src/mage/cards/n/Nekrataal.java +++ b/Mage.Sets/src/mage/cards/n/Nekrataal.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCreaturePermanent; @@ -28,7 +27,7 @@ public final class Nekrataal extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/n/Neoform.java b/Mage.Sets/src/mage/cards/n/Neoform.java index 56cd8b5d21..8fcfcb7ee2 100644 --- a/Mage.Sets/src/mage/cards/n/Neoform.java +++ b/Mage.Sets/src/mage/cards/n/Neoform.java @@ -4,7 +4,6 @@ import mage.abilities.Ability; import mage.abilities.costs.Cost; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.ContinuousEffectImpl; -import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.ReplacementEffectImpl; import mage.cards.Card; @@ -14,7 +13,6 @@ import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.events.EntersTheBattlefieldEvent; @@ -87,7 +85,7 @@ class NeoformEffect extends OneShotEffect { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 1; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/n/NessianDemolok.java b/Mage.Sets/src/mage/cards/n/NessianDemolok.java index 2ecd67ab9a..e44816f6df 100644 --- a/Mage.Sets/src/mage/cards/n/NessianDemolok.java +++ b/Mage.Sets/src/mage/cards/n/NessianDemolok.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -27,7 +26,7 @@ public final class NessianDemolok extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public NessianDemolok(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NettlevineBlight.java b/Mage.Sets/src/mage/cards/n/NettlevineBlight.java index 446ee50799..e3cdb3f802 100644 --- a/Mage.Sets/src/mage/cards/n/NettlevineBlight.java +++ b/Mage.Sets/src/mage/cards/n/NettlevineBlight.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.CanBeEnchantedByPredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; @@ -33,8 +32,8 @@ public final class NettlevineBlight extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land permanent"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public NettlevineBlight(UUID ownerId, CardSetInfo setInfo) { @@ -94,8 +93,8 @@ class NettlevineBlightEffect extends OneShotEffect { } if (newController != null) { FilterPermanent filter = new FilterPermanent("creature or land permanent you control"); - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); filter.add(new ControllerIdPredicate(newController.getId())); filter.add(new CanBeEnchantedByPredicate(nettlevineBlight)); Target target = new TargetPermanent(filter); diff --git a/Mage.Sets/src/mage/cards/n/NeurokProdigy.java b/Mage.Sets/src/mage/cards/n/NeurokProdigy.java index 8522dfe6c3..2405251ded 100644 --- a/Mage.Sets/src/mage/cards/n/NeurokProdigy.java +++ b/Mage.Sets/src/mage/cards/n/NeurokProdigy.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInHand; /** @@ -25,7 +24,7 @@ public final class NeurokProdigy extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NeurokProdigy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NeurokTransmuter.java b/Mage.Sets/src/mage/cards/n/NeurokTransmuter.java index f7a8b2c227..c14a3e98ef 100644 --- a/Mage.Sets/src/mage/cards/n/NeurokTransmuter.java +++ b/Mage.Sets/src/mage/cards/n/NeurokTransmuter.java @@ -5,14 +5,11 @@ import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; -import mage.abilities.costs.common.TapSourceCost; -import mage.abilities.costs.mana.ColoredManaCost; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.AddCardTypeTargetEffect; import mage.abilities.effects.common.continuous.BecomesColorTargetEffect; import mage.abilities.effects.common.continuous.LoseArtifactTypeTargetEffect; -import mage.abilities.effects.common.continuous.LoseCreatureTypeSourceEffect; import mage.constants.Duration; import mage.constants.SubType; import mage.cards.CardImpl; @@ -20,9 +17,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; -import mage.target.TargetPermanent; -import mage.target.common.TargetArtifactPermanent; import mage.target.common.TargetCreaturePermanent; /** @@ -34,7 +28,7 @@ public final class NeurokTransmuter extends CardImpl { static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NeurokTransmuter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NevinyrralsDisk.java b/Mage.Sets/src/mage/cards/n/NevinyrralsDisk.java index 46bbd99d9d..970b63e43b 100644 --- a/Mage.Sets/src/mage/cards/n/NevinyrralsDisk.java +++ b/Mage.Sets/src/mage/cards/n/NevinyrralsDisk.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,9 +26,9 @@ public final class NevinyrralsDisk extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public NevinyrralsDisk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NezahalPrimalTide.java b/Mage.Sets/src/mage/cards/n/NezahalPrimalTide.java index ed2ae356ea..3a28e370c3 100644 --- a/Mage.Sets/src/mage/cards/n/NezahalPrimalTide.java +++ b/Mage.Sets/src/mage/cards/n/NezahalPrimalTide.java @@ -23,7 +23,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInHand; /** @@ -35,7 +34,7 @@ public final class NezahalPrimalTide extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public NezahalPrimalTide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NicolBolasPlaneswalker.java b/Mage.Sets/src/mage/cards/n/NicolBolasPlaneswalker.java index b9e0111c7d..06c327cd35 100644 --- a/Mage.Sets/src/mage/cards/n/NicolBolasPlaneswalker.java +++ b/Mage.Sets/src/mage/cards/n/NicolBolasPlaneswalker.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetPlayerOrPlaneswalker; @@ -31,7 +30,7 @@ public final class NicolBolasPlaneswalker extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public NicolBolasPlaneswalker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NicolBolasTheArisen.java b/Mage.Sets/src/mage/cards/n/NicolBolasTheArisen.java index 51ac41ea42..8b8d2f63f9 100644 --- a/Mage.Sets/src/mage/cards/n/NicolBolasTheArisen.java +++ b/Mage.Sets/src/mage/cards/n/NicolBolasTheArisen.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetPlayer; @@ -34,8 +33,8 @@ public final class NicolBolasTheArisen extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/n/NimDevourer.java b/Mage.Sets/src/mage/cards/n/NimDevourer.java index 3487c3f83d..d386661b5c 100644 --- a/Mage.Sets/src/mage/cards/n/NimDevourer.java +++ b/Mage.Sets/src/mage/cards/n/NimDevourer.java @@ -23,7 +23,6 @@ import mage.constants.PhaseStep; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -39,7 +38,7 @@ public final class NimDevourer extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NimDevourer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NimLasher.java b/Mage.Sets/src/mage/cards/n/NimLasher.java index 073663abf7..9c489975d0 100644 --- a/Mage.Sets/src/mage/cards/n/NimLasher.java +++ b/Mage.Sets/src/mage/cards/n/NimLasher.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author Loki @@ -24,7 +23,7 @@ public final class NimLasher extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NimLasher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NimShambler.java b/Mage.Sets/src/mage/cards/n/NimShambler.java index dff0c0e4ad..09a9d8dcdd 100644 --- a/Mage.Sets/src/mage/cards/n/NimShambler.java +++ b/Mage.Sets/src/mage/cards/n/NimShambler.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Zone; import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -29,7 +28,7 @@ public final class NimShambler extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NimShambler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NimShrieker.java b/Mage.Sets/src/mage/cards/n/NimShrieker.java index cfcac4f232..d6a90eef37 100644 --- a/Mage.Sets/src/mage/cards/n/NimShrieker.java +++ b/Mage.Sets/src/mage/cards/n/NimShrieker.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author Loki @@ -25,7 +24,7 @@ public final class NimShrieker extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public NimShrieker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java b/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java index ba4a695ce0..65b8923e45 100644 --- a/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java +++ b/Mage.Sets/src/mage/cards/n/NissaGenesisMage.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetLandPermanent; @@ -33,8 +32,8 @@ public final class NissaGenesisMage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/n/NissaStewardOfElements.java b/Mage.Sets/src/mage/cards/n/NissaStewardOfElements.java index 67a19ebd99..dc917ee849 100644 --- a/Mage.Sets/src/mage/cards/n/NissaStewardOfElements.java +++ b/Mage.Sets/src/mage/cards/n/NissaStewardOfElements.java @@ -21,7 +21,6 @@ import mage.counters.CounterType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.token.TokenImpl; @@ -96,8 +95,8 @@ class NissaStewardOfElementsEffect extends OneShotEffect { } int count = 1 + new CountersSourceCount(CounterType.LOYALTY).calculate(game, source, this); FilterPermanentCard filter = new FilterPermanentCard(); - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, count)); Card card = controller.getLibrary().getFromTop(game); if (card != null) { diff --git a/Mage.Sets/src/mage/cards/n/NissaWhoShakesTheWorld.java b/Mage.Sets/src/mage/cards/n/NissaWhoShakesTheWorld.java index 4156d5ea05..b97dfb2056 100644 --- a/Mage.Sets/src/mage/cards/n/NissaWhoShakesTheWorld.java +++ b/Mage.Sets/src/mage/cards/n/NissaWhoShakesTheWorld.java @@ -22,7 +22,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.command.emblems.NissaWhoShakesTheWorldEmblem; @@ -44,7 +43,7 @@ public final class NissaWhoShakesTheWorld extends CardImpl { private static final FilterCard filter2 = new FilterCard("Forest cards"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); filter2.add(new SubtypePredicate(SubType.FOREST)); } diff --git a/Mage.Sets/src/mage/cards/n/NissasDefeat.java b/Mage.Sets/src/mage/cards/n/NissasDefeat.java index 829cbcd1ed..cd23db9ded 100644 --- a/Mage.Sets/src/mage/cards/n/NissasDefeat.java +++ b/Mage.Sets/src/mage/cards/n/NissasDefeat.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; @@ -30,8 +29,8 @@ public final class NissasDefeat extends CardImpl { static { filter.add(Predicates.or(new SubtypePredicate(SubType.FOREST), - (Predicates.and(new ColorPredicate(ObjectColor.GREEN), new CardTypePredicate(CardType.ENCHANTMENT))), - (Predicates.and(new ColorPredicate(ObjectColor.GREEN), new CardTypePredicate(CardType.PLANESWALKER))))); + (Predicates.and(new ColorPredicate(ObjectColor.GREEN), CardType.ENCHANTMENT.getPredicate())), + (Predicates.and(new ColorPredicate(ObjectColor.GREEN), CardType.PLANESWALKER.getPredicate())))); } public NissasDefeat(UUID ownerId, CardSetInfo setInfo) { @@ -57,7 +56,7 @@ class NissasDefeatEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.NISSA)); } diff --git a/Mage.Sets/src/mage/cards/n/NivixGuildmage.java b/Mage.Sets/src/mage/cards/n/NivixGuildmage.java index a53248ada5..94845e9883 100644 --- a/Mage.Sets/src/mage/cards/n/NivixGuildmage.java +++ b/Mage.Sets/src/mage/cards/n/NivixGuildmage.java @@ -16,7 +16,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; @@ -30,8 +29,8 @@ public final class NivixGuildmage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NivmagusElemental.java b/Mage.Sets/src/mage/cards/n/NivmagusElemental.java index 76a8514998..a8a01f7326 100644 --- a/Mage.Sets/src/mage/cards/n/NivmagusElemental.java +++ b/Mage.Sets/src/mage/cards/n/NivmagusElemental.java @@ -16,7 +16,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; @@ -31,8 +30,8 @@ public final class NivmagusElemental extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public NivmagusElemental(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NoEscape.java b/Mage.Sets/src/mage/cards/n/NoEscape.java index c2a428a973..384d09ce1e 100644 --- a/Mage.Sets/src/mage/cards/n/NoEscape.java +++ b/Mage.Sets/src/mage/cards/n/NoEscape.java @@ -8,7 +8,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import java.util.UUID; @@ -22,8 +21,8 @@ public final class NoEscape extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/n/NomadMythmaker.java b/Mage.Sets/src/mage/cards/n/NomadMythmaker.java index 2a0b8cdc63..34a8f59dd8 100644 --- a/Mage.Sets/src/mage/cards/n/NomadMythmaker.java +++ b/Mage.Sets/src/mage/cards/n/NomadMythmaker.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -34,7 +33,7 @@ public final class NomadMythmaker extends CardImpl { private static final FilterCard FILTER = new FilterCard("Aura card from a graveyard"); static { - FILTER.add(new CardTypePredicate(CardType.ENCHANTMENT)); + FILTER.add(CardType.ENCHANTMENT.getPredicate()); FILTER.add(new SubtypePredicate(SubType.AURA)); } diff --git a/Mage.Sets/src/mage/cards/n/NovablastWurm.java b/Mage.Sets/src/mage/cards/n/NovablastWurm.java index e8c8fc9e02..47a93bd061 100644 --- a/Mage.Sets/src/mage/cards/n/NovablastWurm.java +++ b/Mage.Sets/src/mage/cards/n/NovablastWurm.java @@ -10,7 +10,7 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.permanent.AnotherPredicate; /** @@ -23,7 +23,7 @@ public final class NovablastWurm extends CardImpl { static { filter.add(AnotherPredicate.instance); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public NovablastWurm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NoxiousGhoul.java b/Mage.Sets/src/mage/cards/n/NoxiousGhoul.java index a789298444..bceb6def7c 100644 --- a/Mage.Sets/src/mage/cards/n/NoxiousGhoul.java +++ b/Mage.Sets/src/mage/cards/n/NoxiousGhoul.java @@ -14,7 +14,6 @@ import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.ObjectSourcePlayer; import mage.filter.predicate.ObjectSourcePlayerPredicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -30,7 +29,7 @@ public final class NoxiousGhoul extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new SubtypePredicate(SubType.ZOMBIE))); filter2.add(NoxiousGhoulPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/n/NoyanDarRoilShaper.java b/Mage.Sets/src/mage/cards/n/NoyanDarRoilShaper.java index 7eaf1dad61..d94eb12eee 100644 --- a/Mage.Sets/src/mage/cards/n/NoyanDarRoilShaper.java +++ b/Mage.Sets/src/mage/cards/n/NoyanDarRoilShaper.java @@ -22,10 +22,8 @@ import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; import mage.target.Target; import mage.target.common.TargetControlledPermanent; import mage.target.targetpointer.FixedTarget; @@ -40,8 +38,8 @@ public final class NoyanDarRoilShaper extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public NoyanDarRoilShaper(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/Nucklavee.java b/Mage.Sets/src/mage/cards/n/Nucklavee.java index 1ca6151aa1..adf8888f4a 100644 --- a/Mage.Sets/src/mage/cards/n/Nucklavee.java +++ b/Mage.Sets/src/mage/cards/n/Nucklavee.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -26,9 +25,9 @@ public final class Nucklavee extends CardImpl { static { filterRed.add(new ColorPredicate(ObjectColor.RED)); - filterRed.add(new CardTypePredicate(CardType.SORCERY)); + filterRed.add(CardType.SORCERY.getPredicate()); filterBlue.add(new ColorPredicate(ObjectColor.BLUE)); - filterBlue.add(new CardTypePredicate(CardType.INSTANT)); + filterBlue.add(CardType.INSTANT.getPredicate()); } public Nucklavee(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NullBrooch.java b/Mage.Sets/src/mage/cards/n/NullBrooch.java index ddc99be956..f96fea2f6c 100644 --- a/Mage.Sets/src/mage/cards/n/NullBrooch.java +++ b/Mage.Sets/src/mage/cards/n/NullBrooch.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -26,7 +25,7 @@ public final class NullBrooch extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public NullBrooch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/Nullify.java b/Mage.Sets/src/mage/cards/n/Nullify.java index 64c3afb384..4eb438d6c3 100644 --- a/Mage.Sets/src/mage/cards/n/Nullify.java +++ b/Mage.Sets/src/mage/cards/n/Nullify.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetSpell; @@ -23,7 +22,7 @@ public final class Nullify extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.AURA))); } diff --git a/Mage.Sets/src/mage/cards/n/NumbingDose.java b/Mage.Sets/src/mage/cards/n/NumbingDose.java index 939edbe932..aadcc8006b 100644 --- a/Mage.Sets/src/mage/cards/n/NumbingDose.java +++ b/Mage.Sets/src/mage/cards/n/NumbingDose.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -34,8 +33,8 @@ public final class NumbingDose extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public NumbingDose(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NyxInfusion.java b/Mage.Sets/src/mage/cards/n/NyxInfusion.java index 706e5f8a6f..4843260a8c 100644 --- a/Mage.Sets/src/mage/cards/n/NyxInfusion.java +++ b/Mage.Sets/src/mage/cards/n/NyxInfusion.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -30,7 +29,7 @@ public final class NyxInfusion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("enchantment"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public NyxInfusion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OathOfNissa.java b/Mage.Sets/src/mage/cards/o/OathOfNissa.java index 34f1e1b060..707f5da111 100644 --- a/Mage.Sets/src/mage/cards/o/OathOfNissa.java +++ b/Mage.Sets/src/mage/cards/o/OathOfNissa.java @@ -11,7 +11,6 @@ import mage.cards.*; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.ManaPoolItem; import mage.players.Player; @@ -51,9 +50,9 @@ class OathOfNissaEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("a creature, land, or planeswalker card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate(), + CardType.LAND.getPredicate())); } public OathOfNissaEffect() { diff --git a/Mage.Sets/src/mage/cards/o/Obliterate.java b/Mage.Sets/src/mage/cards/o/Obliterate.java index 23e02617ff..8cfd66e0b3 100644 --- a/Mage.Sets/src/mage/cards/o/Obliterate.java +++ b/Mage.Sets/src/mage/cards/o/Obliterate.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,9 +20,9 @@ public final class Obliterate extends CardImpl { static{ filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Obliterate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/ObzedatsAid.java b/Mage.Sets/src/mage/cards/o/ObzedatsAid.java index 418454f3ca..7a7ff79a5a 100644 --- a/Mage.Sets/src/mage/cards/o/ObzedatsAid.java +++ b/Mage.Sets/src/mage/cards/o/ObzedatsAid.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -21,11 +20,11 @@ public final class ObzedatsAid extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public ObzedatsAid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OdunosRiverTrawler.java b/Mage.Sets/src/mage/cards/o/OdunosRiverTrawler.java index 32b2badcf2..03fb54ecda 100644 --- a/Mage.Sets/src/mage/cards/o/OdunosRiverTrawler.java +++ b/Mage.Sets/src/mage/cards/o/OdunosRiverTrawler.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,8 +25,8 @@ public final class OdunosRiverTrawler extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ENCHANTMENT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); } public OdunosRiverTrawler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OgreGeargrabber.java b/Mage.Sets/src/mage/cards/o/OgreGeargrabber.java index 5478933ae8..95bed860cf 100644 --- a/Mage.Sets/src/mage/cards/o/OgreGeargrabber.java +++ b/Mage.Sets/src/mage/cards/o/OgreGeargrabber.java @@ -12,7 +12,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -30,7 +29,7 @@ public final class OgreGeargrabber extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Equipment an opponent controls"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/o/OjutaiExemplars.java b/Mage.Sets/src/mage/cards/o/OjutaiExemplars.java index c4fd7a5059..5ec5332980 100644 --- a/Mage.Sets/src/mage/cards/o/OjutaiExemplars.java +++ b/Mage.Sets/src/mage/cards/o/OjutaiExemplars.java @@ -22,7 +22,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; @@ -36,7 +35,7 @@ public final class OjutaiExemplars extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public OjutaiExemplars(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OketrasMonument.java b/Mage.Sets/src/mage/cards/o/OketrasMonument.java index e30a4796a0..c71f7ff230 100644 --- a/Mage.Sets/src/mage/cards/o/OketrasMonument.java +++ b/Mage.Sets/src/mage/cards/o/OketrasMonument.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.permanent.token.WarriorVigilantToken; @@ -29,10 +28,10 @@ public final class OketrasMonument extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("a creature spell"); static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.WHITE), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(new ColorPredicate(ObjectColor.WHITE), CardType.CREATURE.getPredicate())); } static { - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); } public OketrasMonument(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OnceUponATime.java b/Mage.Sets/src/mage/cards/o/OnceUponATime.java index ef52898979..db44847a9b 100644 --- a/Mage.Sets/src/mage/cards/o/OnceUponATime.java +++ b/Mage.Sets/src/mage/cards/o/OnceUponATime.java @@ -12,7 +12,6 @@ import mage.constants.WatcherScope; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.watchers.Watcher; @@ -30,8 +29,8 @@ public final class OnceUponATime extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/o/OneWithTheStars.java b/Mage.Sets/src/mage/cards/o/OneWithTheStars.java index 262efaa5ef..168757c057 100644 --- a/Mage.Sets/src/mage/cards/o/OneWithTheStars.java +++ b/Mage.Sets/src/mage/cards/o/OneWithTheStars.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -26,8 +25,8 @@ public final class OneWithTheStars extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/o/OpalAcrolith.java b/Mage.Sets/src/mage/cards/o/OpalAcrolith.java index 235bf3a362..1708c54e16 100644 --- a/Mage.Sets/src/mage/cards/o/OpalAcrolith.java +++ b/Mage.Sets/src/mage/cards/o/OpalAcrolith.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; /** @@ -30,7 +29,7 @@ public final class OpalAcrolith extends CardImpl { private static final FilterSpell filter = new FilterSpell("creature spell"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public OpalAcrolith(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OpalTitan.java b/Mage.Sets/src/mage/cards/o/OpalTitan.java index d75f1cd1e6..5784ded4cf 100644 --- a/Mage.Sets/src/mage/cards/o/OpalTitan.java +++ b/Mage.Sets/src/mage/cards/o/OpalTitan.java @@ -17,9 +17,6 @@ import mage.constants.CardType; import mage.constants.DependencyType; import mage.constants.Duration; import mage.constants.Layer; -import static mage.constants.Layer.AbilityAddingRemovingEffects_6; -import static mage.constants.Layer.PTChangingEffects_7; -import static mage.constants.Layer.TypeChangingEffects_4; import mage.constants.Outcome; import mage.constants.SetTargetPointer; import mage.constants.SubLayer; @@ -27,7 +24,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.Spell; @@ -41,7 +37,7 @@ public final class OpalTitan extends CardImpl { private static final FilterSpell filter = new FilterSpell("creature spell"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public OpalTitan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OpenTheGates.java b/Mage.Sets/src/mage/cards/o/OpenTheGates.java index 673655a821..91aa07c3e3 100644 --- a/Mage.Sets/src/mage/cards/o/OpenTheGates.java +++ b/Mage.Sets/src/mage/cards/o/OpenTheGates.java @@ -8,7 +8,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -26,7 +25,7 @@ public final class OpenTheGates extends CardImpl { filter.add(Predicates.or( Predicates.and( new SupertypePredicate(SuperType.BASIC), - new CardTypePredicate(CardType.LAND) + CardType.LAND.getPredicate() ), new SubtypePredicate(SubType.GATE) )); } diff --git a/Mage.Sets/src/mage/cards/o/OpportunisticDragon.java b/Mage.Sets/src/mage/cards/o/OpportunisticDragon.java index 60d557c262..3876c45e41 100644 --- a/Mage.Sets/src/mage/cards/o/OpportunisticDragon.java +++ b/Mage.Sets/src/mage/cards/o/OpportunisticDragon.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -32,7 +31,7 @@ public final class OpportunisticDragon extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new SubtypePredicate(SubType.HUMAN) )); filter.add(new ControllerPredicate(TargetController.OPPONENT)); diff --git a/Mage.Sets/src/mage/cards/o/Opposition.java b/Mage.Sets/src/mage/cards/o/Opposition.java index 30112bc8ee..3176295596 100644 --- a/Mage.Sets/src/mage/cards/o/Opposition.java +++ b/Mage.Sets/src/mage/cards/o/Opposition.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -28,9 +27,9 @@ public final class Opposition extends CardImpl { static { artifactcreatureorland.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } private static final FilterControlledCreaturePermanent untappedcreatureyoucontrol = new FilterControlledCreaturePermanent("untapped creature you control"); diff --git a/Mage.Sets/src/mage/cards/o/OranRiefTheVastwood.java b/Mage.Sets/src/mage/cards/o/OranRiefTheVastwood.java index 409f109a41..68a443cb45 100644 --- a/Mage.Sets/src/mage/cards/o/OranRiefTheVastwood.java +++ b/Mage.Sets/src/mage/cards/o/OranRiefTheVastwood.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -65,7 +64,7 @@ class OranRiefTheVastwoodEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { FilterPermanent filter = new FilterPermanent(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ColorPredicate(ObjectColor.GREEN)); for (Permanent permanent: game.getBattlefield().getActivePermanents(filter, source.getControllerId(), game)) { if (permanent.getTurnsOnBattlefield() == 0) { diff --git a/Mage.Sets/src/mage/cards/o/OrcishVandal.java b/Mage.Sets/src/mage/cards/o/OrcishVandal.java index 537a434849..383c5b6f88 100644 --- a/Mage.Sets/src/mage/cards/o/OrcishVandal.java +++ b/Mage.Sets/src/mage/cards/o/OrcishVandal.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -26,7 +25,7 @@ public final class OrcishVandal extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public OrcishVandal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OxiddaDaredevil.java b/Mage.Sets/src/mage/cards/o/OxiddaDaredevil.java index 2f74bc9735..1639238a00 100644 --- a/Mage.Sets/src/mage/cards/o/OxiddaDaredevil.java +++ b/Mage.Sets/src/mage/cards/o/OxiddaDaredevil.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -26,7 +25,7 @@ public final class OxiddaDaredevil extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public OxiddaDaredevil (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PacificationArray.java b/Mage.Sets/src/mage/cards/p/PacificationArray.java index 294b334f87..dbbfde8dc8 100644 --- a/Mage.Sets/src/mage/cards/p/PacificationArray.java +++ b/Mage.Sets/src/mage/cards/p/PacificationArray.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -24,8 +23,8 @@ public final class PacificationArray extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact or creature"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public PacificationArray(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java b/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java index 5580ac75a1..196052208e 100644 --- a/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java +++ b/Mage.Sets/src/mage/cards/p/ParadoxicalOutcome.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TokenPredicate; import mage.game.Game; import mage.players.Player; @@ -33,7 +32,7 @@ public final class ParadoxicalOutcome extends CardImpl { private static FilterControlledPermanent filter = new FilterControlledPermanent("any number of target nonland, nontoken permanents you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(Predicates.not(TokenPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/p/ParallelEvolution.java b/Mage.Sets/src/mage/cards/p/ParallelEvolution.java index 84af3037c4..22543370f2 100644 --- a/Mage.Sets/src/mage/cards/p/ParallelEvolution.java +++ b/Mage.Sets/src/mage/cards/p/ParallelEvolution.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TimingRule; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TokenPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -50,7 +49,7 @@ class ParallelEvolutionEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(TokenPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/p/PatronOfTheOrochi.java b/Mage.Sets/src/mage/cards/p/PatronOfTheOrochi.java index 819c291b8b..1d47d5a966 100644 --- a/Mage.Sets/src/mage/cards/p/PatronOfTheOrochi.java +++ b/Mage.Sets/src/mage/cards/p/PatronOfTheOrochi.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; @@ -58,7 +57,7 @@ class PatronOfTheOrochiEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { filter.add(Predicates.or( new SubtypePredicate(SubType.FOREST), - Predicates.and(new CardTypePredicate(CardType.CREATURE), + Predicates.and(CardType.CREATURE.getPredicate(), new ColorPredicate(ObjectColor.GREEN)) )); } diff --git a/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java b/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java index f9bee649d1..70f8278839 100644 --- a/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java +++ b/Mage.Sets/src/mage/cards/p/PeerThroughDepths.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -23,8 +22,8 @@ public final class PeerThroughDepths extends CardImpl { private static final FilterCard filter = new FilterCard("an instant or sorcery card"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.SORCERY), - new CardTypePredicate(CardType.INSTANT))); + CardType.SORCERY.getPredicate(), + CardType.INSTANT.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/p/PerilousPredicament.java b/Mage.Sets/src/mage/cards/p/PerilousPredicament.java index 1f4da9092d..0c13ea4f7f 100644 --- a/Mage.Sets/src/mage/cards/p/PerilousPredicament.java +++ b/Mage.Sets/src/mage/cards/p/PerilousPredicament.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.filter.common.FilterArtifactCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -68,7 +67,7 @@ class PerilousPredicamentSacrificeOpponentsEffect extends OneShotEffect { FilterArtifactCreaturePermanent filterArtifact = new FilterArtifactCreaturePermanent("an artifact creature"); filterArtifact.add(new ControllerIdPredicate(player.getId())); FilterCreaturePermanent filterNonArtifact = new FilterCreaturePermanent("a nonartifact creature"); - filterNonArtifact.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filterNonArtifact.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filterNonArtifact.add(new ControllerIdPredicate(player.getId())); if (game.getBattlefield().countAll(filterArtifact, player.getId(), game) > 0) { TargetPermanent target = new TargetPermanent(1, 1, filterArtifact, true); diff --git a/Mage.Sets/src/mage/cards/p/Perish.java b/Mage.Sets/src/mage/cards/p/Perish.java index f92b95dfd4..f107672c6d 100644 --- a/Mage.Sets/src/mage/cards/p/Perish.java +++ b/Mage.Sets/src/mage/cards/p/Perish.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -21,7 +20,7 @@ public final class Perish extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public Perish(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java index 0654ce7a44..9a965d344a 100644 --- a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java +++ b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java @@ -15,7 +15,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -65,9 +64,9 @@ class PerniciousDeedEffect extends OneShotEffect { FilterPermanent filter = new FilterPermanent("artifacts, creatures, and enchantments"); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); return new DestroyAllEffect(filter).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/p/PersonalTutor.java b/Mage.Sets/src/mage/cards/p/PersonalTutor.java index 8d4d3ddb3e..5bb6d90db1 100644 --- a/Mage.Sets/src/mage/cards/p/PersonalTutor.java +++ b/Mage.Sets/src/mage/cards/p/PersonalTutor.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -17,7 +16,7 @@ import mage.target.common.TargetCardInLibrary; public final class PersonalTutor extends CardImpl { private static final FilterCard filter = new FilterCard("Sorcery card"); static{ - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public PersonalTutor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PestilentSpirit.java b/Mage.Sets/src/mage/cards/p/PestilentSpirit.java index 56f1611be3..2edb9ec329 100644 --- a/Mage.Sets/src/mage/cards/p/PestilentSpirit.java +++ b/Mage.Sets/src/mage/cards/p/PestilentSpirit.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterObject; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -25,8 +24,8 @@ public final class PestilentSpirit extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/p/PetrifiedWoodKin.java b/Mage.Sets/src/mage/cards/p/PetrifiedWoodKin.java index 5ebe0cbb21..a42b819797 100644 --- a/Mage.Sets/src/mage/cards/p/PetrifiedWoodKin.java +++ b/Mage.Sets/src/mage/cards/p/PetrifiedWoodKin.java @@ -18,7 +18,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.counters.CounterType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -33,7 +32,7 @@ public final class PetrifiedWoodKin extends CardImpl { private static final FilterCard filter = new FilterCard("instants"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public PetrifiedWoodKin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PharikasMender.java b/Mage.Sets/src/mage/cards/p/PharikasMender.java index 25c8409623..92546fc6df 100644 --- a/Mage.Sets/src/mage/cards/p/PharikasMender.java +++ b/Mage.Sets/src/mage/cards/p/PharikasMender.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.common.TargetCardInYourGraveyard; @@ -25,8 +24,8 @@ public final class PharikasMender extends CardImpl { private static final FilterCard filter = new FilterCard("creature or enchantment card from your graveyard"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public PharikasMender(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PhylacteryLich.java b/Mage.Sets/src/mage/cards/p/PhylacteryLich.java index 3731d85f8b..a6de78d837 100644 --- a/Mage.Sets/src/mage/cards/p/PhylacteryLich.java +++ b/Mage.Sets/src/mage/cards/p/PhylacteryLich.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -95,7 +94,7 @@ class PhylacteryLichEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public PhylacteryLichEffect() { diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianMetamorph.java b/Mage.Sets/src/mage/cards/p/PhyrexianMetamorph.java index 688cded051..ddf5f6177b 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianMetamorph.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianMetamorph.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.util.functions.ApplyToPermanent; @@ -31,8 +30,8 @@ public final class PhyrexianMetamorph extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public PhyrexianMetamorph(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianScriptures.java b/Mage.Sets/src/mage/cards/p/PhyrexianScriptures.java index 91074ecc39..3e83ce4d96 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexianScriptures.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexianScriptures.java @@ -20,7 +20,6 @@ import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -34,7 +33,7 @@ public final class PhyrexianScriptures extends CardImpl { private static final FilterCard filter2 = new FilterCard("opponents' cards"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter2.add(new OwnerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/p/PhyrexiasCore.java b/Mage.Sets/src/mage/cards/p/PhyrexiasCore.java index 99777628ef..25b3397eab 100644 --- a/Mage.Sets/src/mage/cards/p/PhyrexiasCore.java +++ b/Mage.Sets/src/mage/cards/p/PhyrexiasCore.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class PhyrexiasCore extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public PhyrexiasCore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java b/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java index 9fb20172f3..745b517610 100644 --- a/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java +++ b/Mage.Sets/src/mage/cards/p/PiecesOfThePuzzle.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class PiecesOfThePuzzle extends CardImpl { private static final FilterCard FILTER = new FilterCard("up to two instant and/or sorcery cards"); static { - FILTER.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + FILTER.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public PiecesOfThePuzzle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PilgrimsEye.java b/Mage.Sets/src/mage/cards/p/PilgrimsEye.java index 29e2d461cf..d48e900f17 100644 --- a/Mage.Sets/src/mage/cards/p/PilgrimsEye.java +++ b/Mage.Sets/src/mage/cards/p/PilgrimsEye.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -28,7 +27,7 @@ public final class PilgrimsEye extends CardImpl { static { filter.add(new SupertypePredicate(SuperType.BASIC)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public PilgrimsEye (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Pillage.java b/Mage.Sets/src/mage/cards/p/Pillage.java index c28912fbb1..06e1b01e24 100644 --- a/Mage.Sets/src/mage/cards/p/Pillage.java +++ b/Mage.Sets/src/mage/cards/p/Pillage.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,8 +21,8 @@ public final class Pillage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public Pillage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PistonSledge.java b/Mage.Sets/src/mage/cards/p/PistonSledge.java index cf3dd53640..8121bd1707 100644 --- a/Mage.Sets/src/mage/cards/p/PistonSledge.java +++ b/Mage.Sets/src/mage/cards/p/PistonSledge.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetControlledPermanent; @@ -31,7 +30,7 @@ public final class PistonSledge extends CardImpl { private static FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public PistonSledge (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Plaguebearer.java b/Mage.Sets/src/mage/cards/p/Plaguebearer.java index a9dec0874b..c174bc53a1 100644 --- a/Mage.Sets/src/mage/cards/p/Plaguebearer.java +++ b/Mage.Sets/src/mage/cards/p/Plaguebearer.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XCMCPermanentAdjuster; @@ -28,7 +27,7 @@ public final class Plaguebearer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonblack creature with converted mana cost X"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/p/Plaguecrafter.java b/Mage.Sets/src/mage/cards/p/Plaguecrafter.java index 19830b5503..f176630b16 100644 --- a/Mage.Sets/src/mage/cards/p/Plaguecrafter.java +++ b/Mage.Sets/src/mage/cards/p/Plaguecrafter.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -87,8 +86,8 @@ class PlaguecrafterEffect extends OneShotEffect { } FilterControlledPermanent filter = new FilterControlledPermanent("creature or planeswalker"); filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); if (target.canChoose(player.getId(), game)) { diff --git a/Mage.Sets/src/mage/cards/p/PlanarOutburst.java b/Mage.Sets/src/mage/cards/p/PlanarOutburst.java index 0d7bfc485a..8e2dc8ccab 100644 --- a/Mage.Sets/src/mage/cards/p/PlanarOutburst.java +++ b/Mage.Sets/src/mage/cards/p/PlanarOutburst.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class PlanarOutburst extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonland creatures"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public PlanarOutburst(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PleaForGuidance.java b/Mage.Sets/src/mage/cards/p/PleaForGuidance.java index d2f22207f6..0ad836e6b0 100644 --- a/Mage.Sets/src/mage/cards/p/PleaForGuidance.java +++ b/Mage.Sets/src/mage/cards/p/PleaForGuidance.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -18,7 +17,7 @@ public final class PleaForGuidance extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment cards"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public PleaForGuidance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Plunder.java b/Mage.Sets/src/mage/cards/p/Plunder.java index b2292ea087..8465178441 100644 --- a/Mage.Sets/src/mage/cards/p/Plunder.java +++ b/Mage.Sets/src/mage/cards/p/Plunder.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,7 +21,7 @@ public final class Plunder extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.LAND.getPredicate())); } public Plunder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PolisCrusher.java b/Mage.Sets/src/mage/cards/p/PolisCrusher.java index 22c4d9118b..12fd94dcb2 100644 --- a/Mage.Sets/src/mage/cards/p/PolisCrusher.java +++ b/Mage.Sets/src/mage/cards/p/PolisCrusher.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -32,7 +31,7 @@ public final class PolisCrusher extends CardImpl { private static final FilterCard filter = new FilterCard("enchantments"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public PolisCrusher(UUID ownerId, CardSetInfo setInfo) { @@ -96,7 +95,7 @@ class PolisCrusherTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getTargetId()); if (player != null) { FilterPermanent filter = new FilterPermanent("an enchantment controlled by " + player.getLogName()); - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new ControllerIdPredicate(event.getTargetId())); this.getTargets().clear(); this.addTarget(new TargetPermanent(filter)); diff --git a/Mage.Sets/src/mage/cards/p/PossessedSkaab.java b/Mage.Sets/src/mage/cards/p/PossessedSkaab.java index adb7dea788..acd47e5fb0 100644 --- a/Mage.Sets/src/mage/cards/p/PossessedSkaab.java +++ b/Mage.Sets/src/mage/cards/p/PossessedSkaab.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -36,9 +35,9 @@ public final class PossessedSkaab extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY), - new CardTypePredicate(CardType.CREATURE))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate(), + CardType.CREATURE.getPredicate())); } public PossessedSkaab(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PowderKeg.java b/Mage.Sets/src/mage/cards/p/PowderKeg.java index cc5ca56812..d67ae2924a 100644 --- a/Mage.Sets/src/mage/cards/p/PowderKeg.java +++ b/Mage.Sets/src/mage/cards/p/PowderKeg.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -71,7 +70,7 @@ class PowderKegEffect extends OneShotEffect { } int count = sourcePermanent.getCounters(game).getCount(CounterType.FUSE); FilterPermanent filter = new FilterPermanent(); - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, count)); for (Permanent perm : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { perm.destroy(source.getSourceId(), game, false); diff --git a/Mage.Sets/src/mage/cards/p/PowerstoneShard.java b/Mage.Sets/src/mage/cards/p/PowerstoneShard.java index 5d7fea09c0..7862217f16 100644 --- a/Mage.Sets/src/mage/cards/p/PowerstoneShard.java +++ b/Mage.Sets/src/mage/cards/p/PowerstoneShard.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; /** @@ -22,7 +21,7 @@ public final class PowerstoneShard extends CardImpl { static { filter.add(new NamePredicate("Powerstone Shard")); - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public PowerstoneShard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PriceOfBetrayal.java b/Mage.Sets/src/mage/cards/p/PriceOfBetrayal.java index 25b2ce6cc7..79839d09aa 100644 --- a/Mage.Sets/src/mage/cards/p/PriceOfBetrayal.java +++ b/Mage.Sets/src/mage/cards/p/PriceOfBetrayal.java @@ -12,7 +12,6 @@ import mage.filter.FilterOpponent; import mage.filter.FilterPermanent; import mage.filter.common.FilterPermanentOrPlayer; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -29,9 +28,9 @@ public final class PriceOfBetrayal extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/p/PrimalAmulet.java b/Mage.Sets/src/mage/cards/p/PrimalAmulet.java index 2136cf03af..390e8f55ef 100644 --- a/Mage.Sets/src/mage/cards/p/PrimalAmulet.java +++ b/Mage.Sets/src/mage/cards/p/PrimalAmulet.java @@ -18,7 +18,6 @@ import mage.counters.CounterType; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorcerySpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -33,8 +32,8 @@ public final class PrimalAmulet extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/p/PrimalCommand.java b/Mage.Sets/src/mage/cards/p/PrimalCommand.java index 93ddcec52b..ef4df802f1 100644 --- a/Mage.Sets/src/mage/cards/p/PrimalCommand.java +++ b/Mage.Sets/src/mage/cards/p/PrimalCommand.java @@ -16,7 +16,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.Target; @@ -33,7 +32,7 @@ public final class PrimalCommand extends CardImpl { private static final FilterPermanent filterNonCreature = new FilterPermanent("noncreature permanent"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public PrimalCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PrimeSpeakerVannifar.java b/Mage.Sets/src/mage/cards/p/PrimeSpeakerVannifar.java index e0c0313c7e..887b3bbd48 100644 --- a/Mage.Sets/src/mage/cards/p/PrimeSpeakerVannifar.java +++ b/Mage.Sets/src/mage/cards/p/PrimeSpeakerVannifar.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -90,7 +89,7 @@ class PrimeSpeakerVannifarEffect extends OneShotEffect { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 1; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/p/PrimevalBounty.java b/Mage.Sets/src/mage/cards/p/PrimevalBounty.java index 26c79a89e8..f61d0018d0 100644 --- a/Mage.Sets/src/mage/cards/p/PrimevalBounty.java +++ b/Mage.Sets/src/mage/cards/p/PrimevalBounty.java @@ -17,7 +17,6 @@ import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.BeastToken; import mage.target.common.TargetControlledCreaturePermanent; @@ -30,7 +29,7 @@ public final class PrimevalBounty extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public PrimevalBounty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PristineAngel.java b/Mage.Sets/src/mage/cards/p/PristineAngel.java index 420df3423f..0a54a1a39f 100644 --- a/Mage.Sets/src/mage/cards/p/PristineAngel.java +++ b/Mage.Sets/src/mage/cards/p/PristineAngel.java @@ -21,7 +21,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; @@ -35,7 +34,7 @@ public final class PristineAngel extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new ColorPredicate(ObjectColor.BLACK), new ColorPredicate(ObjectColor.BLUE), new ColorPredicate(ObjectColor.GREEN), diff --git a/Mage.Sets/src/mage/cards/p/PristineSkywise.java b/Mage.Sets/src/mage/cards/p/PristineSkywise.java index 71d31cb03f..df19678125 100644 --- a/Mage.Sets/src/mage/cards/p/PristineSkywise.java +++ b/Mage.Sets/src/mage/cards/p/PristineSkywise.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class PristineSkywise extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public PristineSkywise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProfoundJourney.java b/Mage.Sets/src/mage/cards/p/ProfoundJourney.java index af2971e72a..7a1709650d 100644 --- a/Mage.Sets/src/mage/cards/p/ProfoundJourney.java +++ b/Mage.Sets/src/mage/cards/p/ProfoundJourney.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -22,11 +21,11 @@ public final class ProfoundJourney extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public ProfoundJourney(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProphetOfKruphix.java b/Mage.Sets/src/mage/cards/p/ProphetOfKruphix.java index b391014968..4feb4c5edc 100644 --- a/Mage.Sets/src/mage/cards/p/ProphetOfKruphix.java +++ b/Mage.Sets/src/mage/cards/p/ProphetOfKruphix.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,8 +26,8 @@ public final class ProphetOfKruphix extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public ProphetOfKruphix(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProwlingSerpopard.java b/Mage.Sets/src/mage/cards/p/ProwlingSerpopard.java index e84228b145..e676d6beb9 100644 --- a/Mage.Sets/src/mage/cards/p/ProwlingSerpopard.java +++ b/Mage.Sets/src/mage/cards/p/ProwlingSerpopard.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class ProwlingSerpopard extends CardImpl { private static final FilterSpell filterTarget = new FilterSpell("Creature spells you control"); static { - filterTarget.add(new CardTypePredicate(CardType.CREATURE)); + filterTarget.add(CardType.CREATURE.getPredicate()); } public ProwlingSerpopard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PsychicRebuttal.java b/Mage.Sets/src/mage/cards/p/PsychicRebuttal.java index 1e85aba50d..79509f9d38 100644 --- a/Mage.Sets/src/mage/cards/p/PsychicRebuttal.java +++ b/Mage.Sets/src/mage/cards/p/PsychicRebuttal.java @@ -14,7 +14,6 @@ import mage.filter.FilterSpell; import mage.filter.predicate.ObjectPlayer; import mage.filter.predicate.ObjectPlayerPredicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.stack.Spell; import mage.game.stack.StackObject; @@ -31,7 +30,7 @@ public final class PsychicRebuttal extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant or sorcery spell that targets you"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); filter.add(new PsychicRebuttalPredicate()); } diff --git a/Mage.Sets/src/mage/cards/p/PteronGhost.java b/Mage.Sets/src/mage/cards/p/PteronGhost.java index 29b7ef2071..2c4d7edeb1 100644 --- a/Mage.Sets/src/mage/cards/p/PteronGhost.java +++ b/Mage.Sets/src/mage/cards/p/PteronGhost.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class PteronGhost extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public PteronGhost(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PucasMischief.java b/Mage.Sets/src/mage/cards/p/PucasMischief.java index dcf0628b1b..87de7aab07 100644 --- a/Mage.Sets/src/mage/cards/p/PucasMischief.java +++ b/Mage.Sets/src/mage/cards/p/PucasMischief.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -56,7 +55,7 @@ class TargetControlledPermanentWithCMCGreaterOrLessThanOpponentPermanent extends public TargetControlledPermanentWithCMCGreaterOrLessThanOpponentPermanent() { super(); this.filter = this.filter.copy(); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); setTargetName("nonland permanent you control"); } @@ -92,7 +91,7 @@ class PucasMischiefSecondTarget extends TargetPermanent { super(); this.filter = this.filter.copy(); filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); setTargetName("permanent an opponent controls with an equal or lesser converted mana cost"); } diff --git a/Mage.Sets/src/mage/cards/p/PullFromTheDeep.java b/Mage.Sets/src/mage/cards/p/PullFromTheDeep.java index c040128106..d7ce7af7ee 100644 --- a/Mage.Sets/src/mage/cards/p/PullFromTheDeep.java +++ b/Mage.Sets/src/mage/cards/p/PullFromTheDeep.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.target.targetpointer.SecondTargetPointer; @@ -23,8 +22,8 @@ public final class PullFromTheDeep extends CardImpl { private static final FilterCard filterSorcery = new FilterCard("sorcery card from your graveyard"); static { - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterInstant.add(CardType.INSTANT.getPredicate()); + filterSorcery.add(CardType.SORCERY.getPredicate()); } public PullFromTheDeep(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PulseOfMurasa.java b/Mage.Sets/src/mage/cards/p/PulseOfMurasa.java index f1f541e993..6817ed7417 100644 --- a/Mage.Sets/src/mage/cards/p/PulseOfMurasa.java +++ b/Mage.Sets/src/mage/cards/p/PulseOfMurasa.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInGraveyard; /** @@ -22,8 +21,8 @@ public final class PulseOfMurasa extends CardImpl { static { FILTER.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public PulseOfMurasa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Purge.java b/Mage.Sets/src/mage/cards/p/Purge.java index 35262d6829..ca2e464ff4 100644 --- a/Mage.Sets/src/mage/cards/p/Purge.java +++ b/Mage.Sets/src/mage/cards/p/Purge.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCreaturePermanent; @@ -22,7 +21,7 @@ public final class Purge extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature or black creature"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), (new ColorPredicate(ObjectColor.BLACK)))); } diff --git a/Mage.Sets/src/mage/cards/p/Purify.java b/Mage.Sets/src/mage/cards/p/Purify.java index 91f568a184..bf01f26f71 100644 --- a/Mage.Sets/src/mage/cards/p/Purify.java +++ b/Mage.Sets/src/mage/cards/p/Purify.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,8 +19,8 @@ public final class Purify extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public Purify(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PurphorosBronzeBlooded.java b/Mage.Sets/src/mage/cards/p/PurphorosBronzeBlooded.java index 01534d5f4d..00e7cf2696 100644 --- a/Mage.Sets/src/mage/cards/p/PurphorosBronzeBlooded.java +++ b/Mage.Sets/src/mage/cards/p/PurphorosBronzeBlooded.java @@ -22,7 +22,6 @@ import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -81,7 +80,7 @@ class PurphurosBronzeBloodedEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), + CardType.ARTIFACT.getPredicate(), new ColorPredicate(ObjectColor.RED) )); } diff --git a/Mage.Sets/src/mage/cards/p/Putrefy.java b/Mage.Sets/src/mage/cards/p/Putrefy.java index 078558af33..b0b3c0f39b 100644 --- a/Mage.Sets/src/mage/cards/p/Putrefy.java +++ b/Mage.Sets/src/mage/cards/p/Putrefy.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,8 +20,8 @@ public final class Putrefy extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public Putrefy (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/q/QuietContemplation.java b/Mage.Sets/src/mage/cards/q/QuietContemplation.java index afefc55811..f777c0d658 100644 --- a/Mage.Sets/src/mage/cards/q/QuietContemplation.java +++ b/Mage.Sets/src/mage/cards/q/QuietContemplation.java @@ -16,7 +16,6 @@ import mage.constants.TargetController; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -30,7 +29,7 @@ public final class QuietContemplation extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/r/RadiantPurge.java b/Mage.Sets/src/mage/cards/r/RadiantPurge.java index f4a393fd22..6fd5551a3d 100644 --- a/Mage.Sets/src/mage/cards/r/RadiantPurge.java +++ b/Mage.Sets/src/mage/cards/r/RadiantPurge.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.MulticoloredPredicate; import mage.target.TargetPermanent; @@ -21,8 +20,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), MulticoloredPredicate.instance), - Predicates.and(new CardTypePredicate(CardType.ENCHANTMENT), MulticoloredPredicate.instance))); + Predicates.and(CardType.CREATURE.getPredicate(), MulticoloredPredicate.instance), + Predicates.and(CardType.ENCHANTMENT.getPredicate(), MulticoloredPredicate.instance))); } public RadiantPurge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Ragamuffyn.java b/Mage.Sets/src/mage/cards/r/Ragamuffyn.java index c5eb58d64e..57e98f0ae1 100644 --- a/Mage.Sets/src/mage/cards/r/Ragamuffyn.java +++ b/Mage.Sets/src/mage/cards/r/Ragamuffyn.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -29,7 +28,7 @@ public final class Ragamuffyn extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public Ragamuffyn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RakdosCharm.java b/Mage.Sets/src/mage/cards/r/RakdosCharm.java index ee46d6514b..4ebe2b7e22 100644 --- a/Mage.Sets/src/mage/cards/r/RakdosCharm.java +++ b/Mage.Sets/src/mage/cards/r/RakdosCharm.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -68,7 +67,7 @@ public final class RakdosCharm extends CardImpl { public boolean apply(Game game, Ability source) { FilterPermanent filter = new FilterPermanent(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { Player controller = game.getPlayer(permanent.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/r/RalsStaticaster.java b/Mage.Sets/src/mage/cards/r/RalsStaticaster.java index bab88d5831..4a7af07363 100644 --- a/Mage.Sets/src/mage/cards/r/RalsStaticaster.java +++ b/Mage.Sets/src/mage/cards/r/RalsStaticaster.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -30,7 +29,7 @@ public final class RalsStaticaster extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.RAL)); } diff --git a/Mage.Sets/src/mage/cards/r/RangerOfEos.java b/Mage.Sets/src/mage/cards/r/RangerOfEos.java index 7cc25ab121..6fa61340b6 100644 --- a/Mage.Sets/src/mage/cards/r/RangerOfEos.java +++ b/Mage.Sets/src/mage/cards/r/RangerOfEos.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.ComparisonType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -25,7 +24,7 @@ public final class RangerOfEos extends CardImpl { private static final FilterCard filter = new FilterCard("creature cards with converted mana cost 1 or less"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } diff --git a/Mage.Sets/src/mage/cards/r/RatsOfRath.java b/Mage.Sets/src/mage/cards/r/RatsOfRath.java index 95c828652e..1a574db11e 100644 --- a/Mage.Sets/src/mage/cards/r/RatsOfRath.java +++ b/Mage.Sets/src/mage/cards/r/RatsOfRath.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -30,9 +29,9 @@ public final class RatsOfRath extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public RatsOfRath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RavenousIntruder.java b/Mage.Sets/src/mage/cards/r/RavenousIntruder.java index 0167c74a96..976b94e039 100644 --- a/Mage.Sets/src/mage/cards/r/RavenousIntruder.java +++ b/Mage.Sets/src/mage/cards/r/RavenousIntruder.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class RavenousIntruder extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public RavenousIntruder(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RavenousVampire.java b/Mage.Sets/src/mage/cards/r/RavenousVampire.java index cb25de6a55..7361b69518 100644 --- a/Mage.Sets/src/mage/cards/r/RavenousVampire.java +++ b/Mage.Sets/src/mage/cards/r/RavenousVampire.java @@ -16,7 +16,6 @@ import mage.constants.TargetController; import mage.counters.CounterType; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -28,7 +27,7 @@ public final class RavenousVampire extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public RavenousVampire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RazorBarrier.java b/Mage.Sets/src/mage/cards/r/RazorBarrier.java index c5f502a51b..cf1e93039a 100644 --- a/Mage.Sets/src/mage/cards/r/RazorBarrier.java +++ b/Mage.Sets/src/mage/cards/r/RazorBarrier.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterObject; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetControlledPermanent; @@ -46,7 +45,7 @@ class RazorBarrierEffect extends OneShotEffect { private static final FilterObject filter = new FilterObject("colorless"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } RazorBarrierEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RealityRipple.java b/Mage.Sets/src/mage/cards/r/RealityRipple.java index 845278b41c..d1a801940d 100644 --- a/Mage.Sets/src/mage/cards/r/RealityRipple.java +++ b/Mage.Sets/src/mage/cards/r/RealityRipple.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class RealityRipple extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public RealityRipple(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReapIntellect.java b/Mage.Sets/src/mage/cards/r/ReapIntellect.java index 50e28670a3..eae5630c9a 100644 --- a/Mage.Sets/src/mage/cards/r/ReapIntellect.java +++ b/Mage.Sets/src/mage/cards/r/ReapIntellect.java @@ -10,7 +10,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.game.Game; import mage.players.Player; @@ -53,7 +52,7 @@ class ReapIntellectEffect extends OneShotEffect { private static final FilterCard filterNonLands = new FilterCard("up to X nonland cards"); static { - filterNonLands.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterNonLands.add(Predicates.not(CardType.LAND.getPredicate())); } public ReapIntellectEffect() { diff --git a/Mage.Sets/src/mage/cards/r/ReclaimingVines.java b/Mage.Sets/src/mage/cards/r/ReclaimingVines.java index 8f7dd26919..5233fde463 100644 --- a/Mage.Sets/src/mage/cards/r/ReclaimingVines.java +++ b/Mage.Sets/src/mage/cards/r/ReclaimingVines.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class ReclaimingVines extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public ReclaimingVines(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReclusiveArtificer.java b/Mage.Sets/src/mage/cards/r/ReclusiveArtificer.java index a3740bd2c6..056e4d8c6a 100644 --- a/Mage.Sets/src/mage/cards/r/ReclusiveArtificer.java +++ b/Mage.Sets/src/mage/cards/r/ReclusiveArtificer.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -25,7 +24,7 @@ public final class ReclusiveArtificer extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ReclusiveArtificer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReclusiveWight.java b/Mage.Sets/src/mage/cards/r/ReclusiveWight.java index 936f3a340a..1faa611123 100644 --- a/Mage.Sets/src/mage/cards/r/ReclusiveWight.java +++ b/Mage.Sets/src/mage/cards/r/ReclusiveWight.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; /** @@ -26,7 +25,7 @@ public final class ReclusiveWight extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/Recoup.java b/Mage.Sets/src/mage/cards/r/Recoup.java index 61ebbad0c6..8146358018 100644 --- a/Mage.Sets/src/mage/cards/r/Recoup.java +++ b/Mage.Sets/src/mage/cards/r/Recoup.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.SubLayer; import mage.constants.TimingRule; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; @@ -30,7 +29,7 @@ public final class Recoup extends CardImpl { private static final FilterCard filter = new FilterCard("sorcery card"); static{ - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Recoup(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Regression.java b/Mage.Sets/src/mage/cards/r/Regression.java index 158c9f29fd..bd4257d50b 100644 --- a/Mage.Sets/src/mage/cards/r/Regression.java +++ b/Mage.Sets/src/mage/cards/r/Regression.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -20,7 +19,7 @@ public final class Regression extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact or enchantment"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public Regression(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReiverDemon.java b/Mage.Sets/src/mage/cards/r/ReiverDemon.java index fa048d0f34..695f4151a0 100644 --- a/Mage.Sets/src/mage/cards/r/ReiverDemon.java +++ b/Mage.Sets/src/mage/cards/r/ReiverDemon.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.watchers.common.CastFromHandWatcher; @@ -28,7 +27,7 @@ public final class ReiverDemon extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creatures"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/r/Relearn.java b/Mage.Sets/src/mage/cards/r/Relearn.java index e432046bd0..adba96d97c 100644 --- a/Mage.Sets/src/mage/cards/r/Relearn.java +++ b/Mage.Sets/src/mage/cards/r/Relearn.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -21,8 +20,8 @@ public final class Relearn extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public Relearn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RelicSeeker.java b/Mage.Sets/src/mage/cards/r/RelicSeeker.java index 4cd4d765a1..14ec414583 100644 --- a/Mage.Sets/src/mage/cards/r/RelicSeeker.java +++ b/Mage.Sets/src/mage/cards/r/RelicSeeker.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -24,7 +23,7 @@ public final class RelicSeeker extends CardImpl { private static final FilterCard filter = new FilterCard("an Equipment card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/r/RemorselessPunishment.java b/Mage.Sets/src/mage/cards/r/RemorselessPunishment.java index 56387c6295..fdc9965703 100644 --- a/Mage.Sets/src/mage/cards/r/RemorselessPunishment.java +++ b/Mage.Sets/src/mage/cards/r/RemorselessPunishment.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -46,7 +45,7 @@ class RemorselessPunishmentEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("creature or planeswalker"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.PLANESWALKER))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.PLANESWALKER.getPredicate())); } public RemorselessPunishmentEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RenegadeFirebrand.java b/Mage.Sets/src/mage/cards/r/RenegadeFirebrand.java index 8f2dd1556e..55df96242d 100644 --- a/Mage.Sets/src/mage/cards/r/RenegadeFirebrand.java +++ b/Mage.Sets/src/mage/cards/r/RenegadeFirebrand.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -30,7 +29,7 @@ public final class RenegadeFirebrand extends CardImpl { private static final String rule = "As long as you control a Chandra planeswalker, {this} gets +1/+0"; static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.CHANDRA)); } diff --git a/Mage.Sets/src/mage/cards/r/Reprocess.java b/Mage.Sets/src/mage/cards/r/Reprocess.java index f43ce6c218..e25958e0f1 100644 --- a/Mage.Sets/src/mage/cards/r/Reprocess.java +++ b/Mage.Sets/src/mage/cards/r/Reprocess.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -45,8 +44,8 @@ class ReprocessEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts, creatures, and/or lands"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public ReprocessEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RescuerSphinx.java b/Mage.Sets/src/mage/cards/r/RescuerSphinx.java index 6987050ccd..caa6c5b79c 100644 --- a/Mage.Sets/src/mage/cards/r/RescuerSphinx.java +++ b/Mage.Sets/src/mage/cards/r/RescuerSphinx.java @@ -16,7 +16,6 @@ import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -60,7 +59,7 @@ class RescuerSphinxEffect extends OneShotEffect { = new FilterControlledPermanent("nonland permanent you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } RescuerSphinxEffect() { diff --git a/Mage.Sets/src/mage/cards/r/Retether.java b/Mage.Sets/src/mage/cards/r/Retether.java index 54e19e039f..0659f965ff 100644 --- a/Mage.Sets/src/mage/cards/r/Retether.java +++ b/Mage.Sets/src/mage/cards/r/Retether.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.CanBeEnchantedByPredicate; import mage.game.Game; @@ -53,7 +52,7 @@ class RetetherEffect extends OneShotEffect { private static final FilterCard filterAura = new FilterCard("Aura card from your graveyard"); static { - filterAura.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAura.add(CardType.ENCHANTMENT.getPredicate()); filterAura.add(new SubtypePredicate(SubType.AURA)); } @@ -101,7 +100,7 @@ class RetetherEffect extends OneShotEffect { } } if (target != null) { - target.getFilter().add(new CardTypePredicate(CardType.CREATURE)); + target.getFilter().add(CardType.CREATURE.getPredicate()); target.setNotTarget(true); if (target.canChoose(controller.getId(), game)) { target.setTargetName("creature to enchant (" + aura.getLogName() + ')'); diff --git a/Mage.Sets/src/mage/cards/r/ReturnToTheEarth.java b/Mage.Sets/src/mage/cards/r/ReturnToTheEarth.java index 7e8758b6a4..5c151e0752 100644 --- a/Mage.Sets/src/mage/cards/r/ReturnToTheEarth.java +++ b/Mage.Sets/src/mage/cards/r/ReturnToTheEarth.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,10 +22,10 @@ public final class ReturnToTheEarth extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), Predicates.and( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), new AbilityPredicate(FlyingAbility.class)) )); } diff --git a/Mage.Sets/src/mage/cards/r/Reverberate.java b/Mage.Sets/src/mage/cards/r/Reverberate.java index 0647a7d6a8..bb79cb28c6 100644 --- a/Mage.Sets/src/mage/cards/r/Reverberate.java +++ b/Mage.Sets/src/mage/cards/r/Reverberate.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -22,8 +21,8 @@ public final class Reverberate extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public Reverberate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reverberation.java b/Mage.Sets/src/mage/cards/r/Reverberation.java index 592fd5476f..1685d0e191 100644 --- a/Mage.Sets/src/mage/cards/r/Reverberation.java +++ b/Mage.Sets/src/mage/cards/r/Reverberation.java @@ -8,7 +8,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.DamageEvent; import mage.game.events.GameEvent; @@ -26,7 +25,7 @@ public final class Reverberation extends CardImpl { private static final FilterSpell filter = new FilterSpell("sorcery spell"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Reverberation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RevivingMelody.java b/Mage.Sets/src/mage/cards/r/RevivingMelody.java index b9e3573fa3..a973fc9a43 100644 --- a/Mage.Sets/src/mage/cards/r/RevivingMelody.java +++ b/Mage.Sets/src/mage/cards/r/RevivingMelody.java @@ -7,7 +7,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; import java.util.UUID; @@ -20,7 +19,7 @@ public final class RevivingMelody extends CardImpl { private static final FilterCard filterCard = new FilterCard("enchantment card from your graveyard"); static { - filterCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterCard.add(CardType.ENCHANTMENT.getPredicate()); } public RevivingMelody(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RevolutionaryRebuff.java b/Mage.Sets/src/mage/cards/r/RevolutionaryRebuff.java index 63f10b7864..24c4c8da94 100644 --- a/Mage.Sets/src/mage/cards/r/RevolutionaryRebuff.java +++ b/Mage.Sets/src/mage/cards/r/RevolutionaryRebuff.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -23,7 +22,7 @@ public final class RevolutionaryRebuff extends CardImpl { // Counter target nonartifact spell unless its controller pays 2. FilterSpell filter = new FilterSpell("nonartifact spell"); - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); this.getSpellAbility().addTarget(new TargetSpell(filter)); this.getSpellAbility().addEffect(new CounterUnlessPaysEffect(new GenericManaCost(2))); } diff --git a/Mage.Sets/src/mage/cards/r/RhonassMonument.java b/Mage.Sets/src/mage/cards/r/RhonassMonument.java index ea6dbd1012..f47db2b9d1 100644 --- a/Mage.Sets/src/mage/cards/r/RhonassMonument.java +++ b/Mage.Sets/src/mage/cards/r/RhonassMonument.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetControlledCreaturePermanent; @@ -34,11 +33,11 @@ public final class RhonassMonument extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("a creature spell"); static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.GREEN), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(new ColorPredicate(ObjectColor.GREEN), CardType.CREATURE.getPredicate())); } static { - filter2.add(new CardTypePredicate(CardType.CREATURE)); + filter2.add(CardType.CREATURE.getPredicate()); } public RhonassMonument(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 800680e4ef..90217b9f5f 100644 --- a/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java +++ b/Mage.Sets/src/mage/cards/r/RhysTheRedeemed.java @@ -18,7 +18,7 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.permanent.TokenPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -68,7 +68,7 @@ class RhysTheRedeemedEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(TokenPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/r/Riddleform.java b/Mage.Sets/src/mage/cards/r/Riddleform.java index 4e99549884..ab7e8076c5 100644 --- a/Mage.Sets/src/mage/cards/r/Riddleform.java +++ b/Mage.Sets/src/mage/cards/r/Riddleform.java @@ -19,9 +19,7 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.TokenImpl; -import mage.game.permanent.token.Token; /** * @@ -32,7 +30,7 @@ public final class Riddleform extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Riddleform(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java b/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java index 255c570ecf..ee9ec46a28 100644 --- a/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java +++ b/Mage.Sets/src/mage/cards/r/RikuOfTwoReflections.java @@ -14,7 +14,6 @@ import mage.constants.*; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.TokenPredicate; @@ -30,8 +29,8 @@ public final class RikuOfTwoReflections extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filterPermanent.add(Predicates.not(TokenPredicate.instance)); filterPermanent.add(AnotherPredicate.instance); diff --git a/Mage.Sets/src/mage/cards/r/RingOfGix.java b/Mage.Sets/src/mage/cards/r/RingOfGix.java index 829e52ea8d..1a0a80ff59 100644 --- a/Mage.Sets/src/mage/cards/r/RingOfGix.java +++ b/Mage.Sets/src/mage/cards/r/RingOfGix.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -27,9 +26,9 @@ public final class RingOfGix extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public RingOfGix(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RingOfImmortals.java b/Mage.Sets/src/mage/cards/r/RingOfImmortals.java index bca0f2387d..0e788e85c6 100644 --- a/Mage.Sets/src/mage/cards/r/RingOfImmortals.java +++ b/Mage.Sets/src/mage/cards/r/RingOfImmortals.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.TargetsPermanentPredicate; import mage.target.TargetSpell; @@ -29,7 +28,7 @@ public final class RingOfImmortals extends CardImpl { private static final FilterSpell filter = new FilterSpell("instant or Aura spell that targets a permanent you control"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new SubtypePredicate(SubType.AURA))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), new SubtypePredicate(SubType.AURA))); filter.add(new TargetsPermanentPredicate(new FilterControlledPermanent())); } diff --git a/Mage.Sets/src/mage/cards/r/RiptideChimera.java b/Mage.Sets/src/mage/cards/r/RiptideChimera.java index af49f2012a..58dbace8c2 100644 --- a/Mage.Sets/src/mage/cards/r/RiptideChimera.java +++ b/Mage.Sets/src/mage/cards/r/RiptideChimera.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class RiptideChimera extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an enchantment you control"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public RiptideChimera(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RiseOfTheHobgoblins.java b/Mage.Sets/src/mage/cards/r/RiseOfTheHobgoblins.java index ac9d8252af..b83c046b5f 100644 --- a/Mage.Sets/src/mage/cards/r/RiseOfTheHobgoblins.java +++ b/Mage.Sets/src/mage/cards/r/RiseOfTheHobgoblins.java @@ -22,12 +22,10 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.token.GoblinSoldierToken; -import mage.game.permanent.token.TokenImpl; import mage.game.permanent.token.Token; import mage.players.Player; @@ -42,7 +40,7 @@ public final class RiseOfTheHobgoblins extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.or( new ColorPredicate(ObjectColor.RED), new ColorPredicate(ObjectColor.WHITE))); diff --git a/Mage.Sets/src/mage/cards/r/RiteOfRuin.java b/Mage.Sets/src/mage/cards/r/RiteOfRuin.java index a170b2f725..62c2a1c1b5 100644 --- a/Mage.Sets/src/mage/cards/r/RiteOfRuin.java +++ b/Mage.Sets/src/mage/cards/r/RiteOfRuin.java @@ -11,7 +11,6 @@ import mage.choices.ChoiceImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -84,7 +83,7 @@ class RiteOfRuinEffect extends OneShotEffect { int count = 1; for (CardType cardType : order) { FilterControlledPermanent filter = new FilterControlledPermanent(cardType + " you control"); - filter.add(new CardTypePredicate(cardType)); + filter.add(cardType.getPredicate()); new SacrificeAllEffect(count, filter).apply(game, source); count++; } diff --git a/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java b/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java index f4a6f07e6a..08d6af5f83 100644 --- a/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java +++ b/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetCreaturePermanent; @@ -26,7 +25,7 @@ public final class RitualOfTheMachine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/r/RofellossGift.java b/Mage.Sets/src/mage/cards/r/RofellossGift.java index 0b89988c67..f44741f698 100644 --- a/Mage.Sets/src/mage/cards/r/RofellossGift.java +++ b/Mage.Sets/src/mage/cards/r/RofellossGift.java @@ -2,14 +2,12 @@ package mage.cards.r; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -47,7 +45,7 @@ class RofellossGiftEffect extends OneShotEffect { static { filter1.add(new ColorPredicate(ObjectColor.GREEN)); - filter2.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter2.add(CardType.ENCHANTMENT.getPredicate()); } public RofellossGiftEffect() { diff --git a/Mage.Sets/src/mage/cards/r/RooftopStorm.java b/Mage.Sets/src/mage/cards/r/RooftopStorm.java index e232c40622..23b6a210de 100644 --- a/Mage.Sets/src/mage/cards/r/RooftopStorm.java +++ b/Mage.Sets/src/mage/cards/r/RooftopStorm.java @@ -12,7 +12,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.players.Player; @@ -47,7 +46,7 @@ class RooftopStormRuleEffect extends ContinuousEffectImpl { static { filter.add(new SubtypePredicate(SubType.ZOMBIE)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } static AlternativeCostSourceAbility alternativeCastingCostAbility diff --git a/Mage.Sets/src/mage/cards/r/Rootgrapple.java b/Mage.Sets/src/mage/cards/r/Rootgrapple.java index 19052d3dad..023e9fe948 100644 --- a/Mage.Sets/src/mage/cards/r/Rootgrapple.java +++ b/Mage.Sets/src/mage/cards/r/Rootgrapple.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -27,7 +26,7 @@ public final class Rootgrapple extends CardImpl { private static final FilterPermanent filterTreefolk = new FilterPermanent("If you control a Treefolk,"); static { - filterNoncreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNoncreature.add(Predicates.not(CardType.CREATURE.getPredicate())); filterTreefolk.add(new SubtypePredicate(SubType.TREEFOLK)); } diff --git a/Mage.Sets/src/mage/cards/r/RumblingCrescendo.java b/Mage.Sets/src/mage/cards/r/RumblingCrescendo.java index 931f9b6538..8572dbe0ab 100644 --- a/Mage.Sets/src/mage/cards/r/RumblingCrescendo.java +++ b/Mage.Sets/src/mage/cards/r/RumblingCrescendo.java @@ -16,7 +16,7 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.target.TargetPermanent; import mage.target.targetadjustment.VerseCounterAdjuster; @@ -29,7 +29,7 @@ public final class RumblingCrescendo extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("up to X target lands, where X is the number of verse counters on {this}"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public RumblingCrescendo(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RuneOfProtectionArtifacts.java b/Mage.Sets/src/mage/cards/r/RuneOfProtectionArtifacts.java index 479ee00b07..2a71ba44eb 100644 --- a/Mage.Sets/src/mage/cards/r/RuneOfProtectionArtifacts.java +++ b/Mage.Sets/src/mage/cards/r/RuneOfProtectionArtifacts.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterObject; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class RuneOfProtectionArtifacts extends CardImpl { private static final FilterObject filter = new FilterObject("artifact source"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public RuneOfProtectionArtifacts(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RuneOfProtectionLands.java b/Mage.Sets/src/mage/cards/r/RuneOfProtectionLands.java index 3d7e637519..cc6d65e51a 100644 --- a/Mage.Sets/src/mage/cards/r/RuneOfProtectionLands.java +++ b/Mage.Sets/src/mage/cards/r/RuneOfProtectionLands.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterObject; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class RuneOfProtectionLands extends CardImpl { private static final FilterObject filter = new FilterObject("land source"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public RuneOfProtectionLands(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RunechantersPike.java b/Mage.Sets/src/mage/cards/r/RunechantersPike.java index 678cbe7a13..338d9317da 100644 --- a/Mage.Sets/src/mage/cards/r/RunechantersPike.java +++ b/Mage.Sets/src/mage/cards/r/RunechantersPike.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -29,8 +28,8 @@ public final class RunechantersPike extends CardImpl { static { filterCard.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public RunechantersPike(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RunedArch.java b/Mage.Sets/src/mage/cards/r/RunedArch.java index 0195c1977c..14d726e0ed 100644 --- a/Mage.Sets/src/mage/cards/r/RunedArch.java +++ b/Mage.Sets/src/mage/cards/r/RunedArch.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.Duration; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XTargetsAdjuster; @@ -28,7 +27,7 @@ public final class RunedArch extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creatures with power 2 or less"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } diff --git a/Mage.Sets/src/mage/cards/r/RustScarab.java b/Mage.Sets/src/mage/cards/r/RustScarab.java index 2a98ffc245..90446812a6 100644 --- a/Mage.Sets/src/mage/cards/r/RustScarab.java +++ b/Mage.Sets/src/mage/cards/r/RustScarab.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -74,7 +73,7 @@ class BecomesBlockedTriggeredAbility extends TriggeredAbilityImpl { if (defenderId != null) { this.getTargets().clear(); FilterPermanent filter = new FilterPermanent("artifact or enchantment defending player controls"); - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); filter.add(new ControllerIdPredicate(defenderId)); Target target = new TargetPermanent(filter); this.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/r/RustedSlasher.java b/Mage.Sets/src/mage/cards/r/RustedSlasher.java index 8c4fd36a6b..9e6e9010b4 100644 --- a/Mage.Sets/src/mage/cards/r/RustedSlasher.java +++ b/Mage.Sets/src/mage/cards/r/RustedSlasher.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -24,7 +23,7 @@ public final class RustedSlasher extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public RustedSlasher (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java b/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java index 78b2188a00..680f64625c 100644 --- a/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java +++ b/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -29,7 +28,7 @@ public final class SacredWhiteDeer extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.YANGGU)); } diff --git a/Mage.Sets/src/mage/cards/s/SageOfTheInwardEye.java b/Mage.Sets/src/mage/cards/s/SageOfTheInwardEye.java index 5fd5a65efe..94b261a3ce 100644 --- a/Mage.Sets/src/mage/cards/s/SageOfTheInwardEye.java +++ b/Mage.Sets/src/mage/cards/s/SageOfTheInwardEye.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class SageOfTheInwardEye extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SageOfTheInwardEye(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SagesKnowledge.java b/Mage.Sets/src/mage/cards/s/SagesKnowledge.java index 131c527e80..dab0d927f0 100644 --- a/Mage.Sets/src/mage/cards/s/SagesKnowledge.java +++ b/Mage.Sets/src/mage/cards/s/SagesKnowledge.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -19,7 +18,7 @@ public final class SagesKnowledge extends CardImpl { static final FilterCard filter = new FilterCard("sorcery card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public SagesKnowledge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SaheeliSublimeArtificer.java b/Mage.Sets/src/mage/cards/s/SaheeliSublimeArtificer.java index bb20999d03..34ea37a161 100644 --- a/Mage.Sets/src/mage/cards/s/SaheeliSublimeArtificer.java +++ b/Mage.Sets/src/mage/cards/s/SaheeliSublimeArtificer.java @@ -18,7 +18,6 @@ import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AnotherTargetPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.ServoToken; @@ -41,8 +40,8 @@ public final class SaheeliSublimeArtificer extends CardImpl { filter.add(new AnotherTargetPredicate(1)); filter2.add(new AnotherTargetPredicate(2)); filter2.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java b/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java index 2729425cf2..9539b9053e 100644 --- a/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java +++ b/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java @@ -17,7 +17,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledArtifactPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ThopterColorlessToken; import mage.target.common.TargetControlledPermanent; @@ -31,7 +30,7 @@ public final class SaiMasterThopterist extends CardImpl { private static final FilterControlledArtifactPermanent filter2 = new FilterControlledArtifactPermanent("artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public SaiMasterThopterist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SaiTok.java b/Mage.Sets/src/mage/cards/s/SaiTok.java index 2fea4bab8d..fb5387db8a 100644 --- a/Mage.Sets/src/mage/cards/s/SaiTok.java +++ b/Mage.Sets/src/mage/cards/s/SaiTok.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.ComparisonType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPermanent; @@ -21,8 +20,8 @@ public final class SaiTok extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or planeswalker if it has converted mana cost 4 or less"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.CREATURE.getPredicate()); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } diff --git a/Mage.Sets/src/mage/cards/s/SalvagingStation.java b/Mage.Sets/src/mage/cards/s/SalvagingStation.java index 87cdb06bb8..313864362b 100644 --- a/Mage.Sets/src/mage/cards/s/SalvagingStation.java +++ b/Mage.Sets/src/mage/cards/s/SalvagingStation.java @@ -15,7 +15,6 @@ import mage.constants.ComparisonType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -28,8 +27,8 @@ public final class SalvagingStation extends CardImpl { private static final FilterCard filter = new FilterCard("noncreature artifact card with converted mana cost 1 or less"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } diff --git a/Mage.Sets/src/mage/cards/s/SamutTheTested.java b/Mage.Sets/src/mage/cards/s/SamutTheTested.java index 4555381986..b113c76d80 100644 --- a/Mage.Sets/src/mage/cards/s/SamutTheTested.java +++ b/Mage.Sets/src/mage/cards/s/SamutTheTested.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetAnyTargetAmount; import mage.target.common.TargetCreaturePermanent; @@ -49,8 +48,8 @@ public final class SamutTheTested extends CardImpl { // -7: Search your library or up to two creature and/or planeswalkercards, put them onto the battlefield, then shuffle your library. FilterCard filterCard = new FilterCard("creature or planeswalker card"); filterCard.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); effect = new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 2, filterCard), false, true); ability = new LoyaltyAbility(effect, -7); diff --git a/Mage.Sets/src/mage/cards/s/SandsOfTime.java b/Mage.Sets/src/mage/cards/s/SandsOfTime.java index 0875eaa505..8284670d76 100644 --- a/Mage.Sets/src/mage/cards/s/SandsOfTime.java +++ b/Mage.Sets/src/mage/cards/s/SandsOfTime.java @@ -1,7 +1,6 @@ package mage.cards.s; -import java.util.List; import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; @@ -11,13 +10,11 @@ import mage.abilities.effects.common.SkipUntapStepEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -54,9 +51,9 @@ class SandsOfTimeEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public SandsOfTimeEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SapphireDrake.java b/Mage.Sets/src/mage/cards/s/SapphireDrake.java index 4502b7ceb4..4a23d23b85 100644 --- a/Mage.Sets/src/mage/cards/s/SapphireDrake.java +++ b/Mage.Sets/src/mage/cards/s/SapphireDrake.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -24,7 +23,7 @@ public final class SapphireDrake extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/s/SaprazzanBailiff.java b/Mage.Sets/src/mage/cards/s/SaprazzanBailiff.java index 3d935ac2dc..8b9c54db3d 100644 --- a/Mage.Sets/src/mage/cards/s/SaprazzanBailiff.java +++ b/Mage.Sets/src/mage/cards/s/SaprazzanBailiff.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -31,8 +30,8 @@ public final class SaprazzanBailiff extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public SaprazzanBailiff(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SarkhanTheMad.java b/Mage.Sets/src/mage/cards/s/SarkhanTheMad.java index 9fdeaddc8b..e22f89568b 100644 --- a/Mage.Sets/src/mage/cards/s/SarkhanTheMad.java +++ b/Mage.Sets/src/mage/cards/s/SarkhanTheMad.java @@ -18,7 +18,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -143,7 +142,7 @@ class SarkhanTheMadDragonDamageEffect extends OneShotEffect { static { filter = new FilterControlledPermanent(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.DRAGON)); } diff --git a/Mage.Sets/src/mage/cards/s/SarkhansUnsealing.java b/Mage.Sets/src/mage/cards/s/SarkhansUnsealing.java index 95f462deea..8e07a96e41 100644 --- a/Mage.Sets/src/mage/cards/s/SarkhansUnsealing.java +++ b/Mage.Sets/src/mage/cards/s/SarkhansUnsealing.java @@ -15,7 +15,6 @@ import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.common.FilterCreatureSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetAnyTarget; @@ -35,8 +34,8 @@ public final class SarkhansUnsealing extends CardImpl { filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 7)); filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 6)); filter3.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); filter3.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SatyrEnchanter.java b/Mage.Sets/src/mage/cards/s/SatyrEnchanter.java index a4890a89d8..2745ead857 100644 --- a/Mage.Sets/src/mage/cards/s/SatyrEnchanter.java +++ b/Mage.Sets/src/mage/cards/s/SatyrEnchanter.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class SatyrEnchanter extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public SatyrEnchanter(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 efb5f5926d..d0e9bb3c5d 100644 --- a/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java +++ b/Mage.Sets/src/mage/cards/s/ScaldingSalamander.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; /** @@ -25,7 +24,7 @@ public final class ScaldingSalamander extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature without flying defending player controls"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(DefendingPlayerControlsPredicate.instance); filter.add(Predicates.not(new AbilityPredicate(FlyingAbility.class))); } diff --git a/Mage.Sets/src/mage/cards/s/Scarecrone.java b/Mage.Sets/src/mage/cards/s/Scarecrone.java index c6ae621037..b9a4552847 100644 --- a/Mage.Sets/src/mage/cards/s/Scarecrone.java +++ b/Mage.Sets/src/mage/cards/s/Scarecrone.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetControlledCreaturePermanent; @@ -30,8 +29,8 @@ public final class Scarecrone extends CardImpl { private static final FilterCard filter = new FilterCard("artifact creature card from your graveyard"); private static final FilterControlledCreaturePermanent filterScarecrow = new FilterControlledCreaturePermanent("Scarecrow"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); filterScarecrow.add(new SubtypePredicate(SubType.SCARECROW)); } diff --git a/Mage.Sets/src/mage/cards/s/ScatterArc.java b/Mage.Sets/src/mage/cards/s/ScatterArc.java index a093ddc2b2..71e2a9963b 100644 --- a/Mage.Sets/src/mage/cards/s/ScatterArc.java +++ b/Mage.Sets/src/mage/cards/s/ScatterArc.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -21,7 +20,7 @@ public final class ScatterArc extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ScatterArc(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java b/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java index 0580b379d1..8f09e10eff 100644 --- a/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java +++ b/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -84,7 +83,7 @@ class ScionOfDarknessTriggeredAbility extends TriggeredAbilityImpl { return false; } FilterCard filter = new FilterCard("creature in " + damagedPlayer.getName() + "'s graveyard"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new OwnerIdPredicate(damagedPlayer.getId())); TargetCardInGraveyard target = new TargetCardInGraveyard(filter); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/s/Scourglass.java b/Mage.Sets/src/mage/cards/s/Scourglass.java index 534242eccb..3335408d88 100644 --- a/Mage.Sets/src/mage/cards/s/Scourglass.java +++ b/Mage.Sets/src/mage/cards/s/Scourglass.java @@ -15,7 +15,6 @@ import mage.constants.PhaseStep; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class Scourglass extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("permanents except for artifacts and lands"); static { - filter.add(Predicates.not(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.LAND)))); + filter.add(Predicates.not(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.LAND.getPredicate()))); } public Scourglass(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ScoutTheBorders.java b/Mage.Sets/src/mage/cards/s/ScoutTheBorders.java index 68f30a4a13..e6f6f533f9 100644 --- a/Mage.Sets/src/mage/cards/s/ScoutTheBorders.java +++ b/Mage.Sets/src/mage/cards/s/ScoutTheBorders.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -47,7 +46,7 @@ class ScoutTheBordersEffect extends OneShotEffect { private static final FilterCard filterPutInHand = new FilterCard("creature or land card to put in hand"); static { - filterPutInHand.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filterPutInHand.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public ScoutTheBordersEffect() { diff --git a/Mage.Sets/src/mage/cards/s/ScribeOfTheMindful.java b/Mage.Sets/src/mage/cards/s/ScribeOfTheMindful.java index 4b6f73553e..2e2b4c9bff 100644 --- a/Mage.Sets/src/mage/cards/s/ScribeOfTheMindful.java +++ b/Mage.Sets/src/mage/cards/s/ScribeOfTheMindful.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -30,8 +29,8 @@ public final class ScribeOfTheMindful extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public ScribeOfTheMindful(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Scrivener.java b/Mage.Sets/src/mage/cards/s/Scrivener.java index 9510e328b8..9540f3aaab 100644 --- a/Mage.Sets/src/mage/cards/s/Scrivener.java +++ b/Mage.Sets/src/mage/cards/s/Scrivener.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,7 +23,7 @@ public final class Scrivener extends CardImpl { private static final FilterCard filter = new FilterCard("instant card from your graveyard"); static{ - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public Scrivener(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java b/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java index d4e076f8ae..a7ebd264d5 100644 --- a/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java +++ b/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledCreaturePermanent; /** @@ -32,7 +31,7 @@ public final class ScrollOfTheMasters extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ScrollOfTheMasters(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SculptingSteel.java b/Mage.Sets/src/mage/cards/s/SculptingSteel.java index c0f53f0c22..c036b59a28 100644 --- a/Mage.Sets/src/mage/cards/s/SculptingSteel.java +++ b/Mage.Sets/src/mage/cards/s/SculptingSteel.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class SculptingSteel extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public SculptingSteel(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SeekTheWilds.java b/Mage.Sets/src/mage/cards/s/SeekTheWilds.java index 89b0aef0b9..5db58167d5 100644 --- a/Mage.Sets/src/mage/cards/s/SeekTheWilds.java +++ b/Mage.Sets/src/mage/cards/s/SeekTheWilds.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class SeekTheWilds extends CardImpl { private static final FilterCard filter = new FilterCard("a creature or land card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public SeekTheWilds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Seeker.java b/Mage.Sets/src/mage/cards/s/Seeker.java index b90758cde4..b909c439b6 100644 --- a/Mage.Sets/src/mage/cards/s/Seeker.java +++ b/Mage.Sets/src/mage/cards/s/Seeker.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -33,8 +32,8 @@ public final class Seeker extends CardImpl { static { filter.add(Predicates.not( Predicates.or( - Predicates.and(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE)), - Predicates.and(new CardTypePredicate(CardType.CREATURE), new ColorPredicate(ObjectColor.WHITE) + Predicates.and(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate()), + Predicates.and(CardType.CREATURE.getPredicate(), new ColorPredicate(ObjectColor.WHITE) )))); } diff --git a/Mage.Sets/src/mage/cards/s/SeekerOfTheWay.java b/Mage.Sets/src/mage/cards/s/SeekerOfTheWay.java index 16d5aa11f6..c551e6d2d3 100644 --- a/Mage.Sets/src/mage/cards/s/SeekerOfTheWay.java +++ b/Mage.Sets/src/mage/cards/s/SeekerOfTheWay.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class SeekerOfTheWay extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SeekerOfTheWay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SelfInflictedWound.java b/Mage.Sets/src/mage/cards/s/SelfInflictedWound.java index 52812cd5b7..dd6caca7c7 100644 --- a/Mage.Sets/src/mage/cards/s/SelfInflictedWound.java +++ b/Mage.Sets/src/mage/cards/s/SelfInflictedWound.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; @@ -70,7 +69,7 @@ class SelfInflictedWoundEffect extends OneShotEffect { return false; } FilterControlledPermanent filter = new FilterControlledPermanent("a green or white creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(Predicates.or(new ColorPredicate(ObjectColor.GREEN), new ColorPredicate(ObjectColor.WHITE))); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); diff --git a/Mage.Sets/src/mage/cards/s/SensorSplicer.java b/Mage.Sets/src/mage/cards/s/SensorSplicer.java index 210fd30a86..0a03448dab 100644 --- a/Mage.Sets/src/mage/cards/s/SensorSplicer.java +++ b/Mage.Sets/src/mage/cards/s/SensorSplicer.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.permanent.token.GolemToken; @@ -28,7 +27,7 @@ public final class SensorSplicer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Golem creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.GOLEM)); } diff --git a/Mage.Sets/src/mage/cards/s/Serenity.java b/Mage.Sets/src/mage/cards/s/Serenity.java index 0e19a07638..d8b92ae15e 100644 --- a/Mage.Sets/src/mage/cards/s/Serenity.java +++ b/Mage.Sets/src/mage/cards/s/Serenity.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.events.GameEvent.EventType; /** @@ -23,7 +22,7 @@ public final class Serenity extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts and enchantments"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public Serenity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java b/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java index 201092a0c1..eb0c62b625 100644 --- a/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java +++ b/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.VerseCounterAdjuster; @@ -31,8 +30,8 @@ public final class SerrasLiturgy extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SerrasSanctum.java b/Mage.Sets/src/mage/cards/s/SerrasSanctum.java index 46d74eabd5..7e02a9b718 100644 --- a/Mage.Sets/src/mage/cards/s/SerrasSanctum.java +++ b/Mage.Sets/src/mage/cards/s/SerrasSanctum.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class SerrasSanctum extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("enchantment you control"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public SerrasSanctum(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SettleTheScore.java b/Mage.Sets/src/mage/cards/s/SettleTheScore.java index a8ee415948..c8a29482c7 100644 --- a/Mage.Sets/src/mage/cards/s/SettleTheScore.java +++ b/Mage.Sets/src/mage/cards/s/SettleTheScore.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -48,7 +47,7 @@ class SettleTheScoreEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("planeswalker you control"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); } public SettleTheScoreEffect() { diff --git a/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java b/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java index 621daf3a92..ffe2967ace 100644 --- a/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java +++ b/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java @@ -22,9 +22,7 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.StaticFilters; -import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -35,7 +33,7 @@ public final class ShalaiVoiceOfPlenty extends CardImpl { private static final FilterControlledPermanent filter1 = new FilterControlledPermanent("planeswalkers you control"); static { - filter1.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter1.add(CardType.PLANESWALKER.getPredicate()); } public ShalaiVoiceOfPlenty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShardingSphinx.java b/Mage.Sets/src/mage/cards/s/ShardingSphinx.java index 122a5f41d4..647315378d 100644 --- a/Mage.Sets/src/mage/cards/s/ShardingSphinx.java +++ b/Mage.Sets/src/mage/cards/s/ShardingSphinx.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.SetTargetPointer; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ThopterToken; /** @@ -24,7 +23,7 @@ public final class ShardingSphinx extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an artifact creature you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ShardingSphinx(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShatteredDreams.java b/Mage.Sets/src/mage/cards/s/ShatteredDreams.java index 0c43682581..2cf1887dae 100644 --- a/Mage.Sets/src/mage/cards/s/ShatteredDreams.java +++ b/Mage.Sets/src/mage/cards/s/ShatteredDreams.java @@ -7,7 +7,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetOpponent; /** @@ -18,7 +17,7 @@ public final class ShatteredDreams extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card from it"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ShatteredDreams(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java index 2db55d0a3c..08665eb086 100644 --- a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java +++ b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -52,7 +51,7 @@ public final class ShattergangBrothers extends CardImpl { this.addAbility(ability); // {2}{G}, Sacrifice an enchantment: Each other player sacrifices an enchantment. filter = new FilterControlledPermanent("an enchantment"); - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(filter), new ManaCostsImpl("{2}{G}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, true))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java index 837667f040..e082e7038d 100644 --- a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java +++ b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -30,7 +29,7 @@ public final class ShefetMonitor extends CardImpl { filter.add( Predicates.or( Predicates.and( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)), new SubtypePredicate(SubType.DESERT))); } diff --git a/Mage.Sets/src/mage/cards/s/ShellOfTheLastKappa.java b/Mage.Sets/src/mage/cards/s/ShellOfTheLastKappa.java index 3f90c14649..ca9706cca5 100644 --- a/Mage.Sets/src/mage/cards/s/ShellOfTheLastKappa.java +++ b/Mage.Sets/src/mage/cards/s/ShellOfTheLastKappa.java @@ -20,7 +20,6 @@ import mage.filter.FilterSpell; import mage.filter.predicate.ObjectPlayer; import mage.filter.predicate.ObjectPlayerPredicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.Spell; @@ -42,8 +41,8 @@ public final class ShellOfTheLastKappa extends CardImpl { static { filter.add(new TargetYouPredicate()); - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public ShellOfTheLastKappa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShiftingSky.java b/Mage.Sets/src/mage/cards/s/ShiftingSky.java index 6930e2d389..33d7c11cf6 100644 --- a/Mage.Sets/src/mage/cards/s/ShiftingSky.java +++ b/Mage.Sets/src/mage/cards/s/ShiftingSky.java @@ -18,7 +18,6 @@ import mage.constants.SubLayer; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -54,7 +53,7 @@ class ShiftingSkyEffect extends ContinuousEffectImpl { private static final FilterPermanent filter = new FilterPermanent("All nonland permanents"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public ShiftingSkyEffect() { diff --git a/Mage.Sets/src/mage/cards/s/ShimianSpecter.java b/Mage.Sets/src/mage/cards/s/ShimianSpecter.java index 8ef4aa960c..a999fd6ac7 100644 --- a/Mage.Sets/src/mage/cards/s/ShimianSpecter.java +++ b/Mage.Sets/src/mage/cards/s/ShimianSpecter.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.game.Game; import mage.players.Player; @@ -61,7 +60,7 @@ class ShimianSpecterEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public ShimianSpecterEffect() { diff --git a/Mage.Sets/src/mage/cards/s/ShockmawDragon.java b/Mage.Sets/src/mage/cards/s/ShockmawDragon.java index 7945aa60f1..b3c6643bba 100644 --- a/Mage.Sets/src/mage/cards/s/ShockmawDragon.java +++ b/Mage.Sets/src/mage/cards/s/ShockmawDragon.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -74,7 +73,7 @@ class PolisCrusherTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getTargetId()); if (player != null) { FilterPermanent filter = new FilterPermanent("a creature controlled by " + player.getLogName()); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerIdPredicate(event.getTargetId())); this.getTargets().clear(); this.addTarget(new TargetPermanent(filter)); diff --git a/Mage.Sets/src/mage/cards/s/ShowAndTell.java b/Mage.Sets/src/mage/cards/s/ShowAndTell.java index 766d129c6c..1e00cb4756 100644 --- a/Mage.Sets/src/mage/cards/s/ShowAndTell.java +++ b/Mage.Sets/src/mage/cards/s/ShowAndTell.java @@ -1,11 +1,6 @@ package mage.cards.s; -import java.util.ArrayList; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -16,19 +11,21 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInHand; +import java.util.LinkedHashSet; +import java.util.Set; +import java.util.UUID; + /** - * * @author North */ public final class ShowAndTell extends CardImpl { public ShowAndTell(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{U}"); // Each player may put an artifact, creature, enchantment, or land card from their hand onto the battlefield. this.getSpellAbility().addEffect(new ShowAndTellEffect()); @@ -49,12 +46,12 @@ class ShowAndTellEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("artifact, creature, enchantment, or land card"); static { - List cardTypes = new ArrayList<>(); - cardTypes.add(new CardTypePredicate(CardType.ARTIFACT)); - cardTypes.add(new CardTypePredicate(CardType.CREATURE)); - cardTypes.add(new CardTypePredicate(CardType.ENCHANTMENT)); - cardTypes.add(new CardTypePredicate(CardType.LAND)); - filter.add(Predicates.or(cardTypes)); + filter.add(Predicates.or( + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate() + )); } public ShowAndTellEffect() { diff --git a/Mage.Sets/src/mage/cards/s/ShrapnelBlast.java b/Mage.Sets/src/mage/cards/s/ShrapnelBlast.java index 8dc39e717e..60bbb76100 100644 --- a/Mage.Sets/src/mage/cards/s/ShrapnelBlast.java +++ b/Mage.Sets/src/mage/cards/s/ShrapnelBlast.java @@ -8,7 +8,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterControlledArtifactPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetAnyTarget; @@ -20,7 +19,7 @@ public final class ShrapnelBlast extends CardImpl { private static final FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ShrapnelBlast(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShredsOfSanity.java b/Mage.Sets/src/mage/cards/s/ShredsOfSanity.java index 172af9fbd3..b9d2ae6bcf 100644 --- a/Mage.Sets/src/mage/cards/s/ShredsOfSanity.java +++ b/Mage.Sets/src/mage/cards/s/ShredsOfSanity.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -29,8 +28,8 @@ public final class ShredsOfSanity extends CardImpl { private static final FilterCard filterSorcery = new FilterCard("a sorcery card in your graveyard"); static { - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterInstant.add(CardType.INSTANT.getPredicate()); + filterSorcery.add(CardType.SORCERY.getPredicate()); } public ShredsOfSanity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShrewdNegotiation.java b/Mage.Sets/src/mage/cards/s/ShrewdNegotiation.java index a2f724c665..573fbde3f1 100644 --- a/Mage.Sets/src/mage/cards/s/ShrewdNegotiation.java +++ b/Mage.Sets/src/mage/cards/s/ShrewdNegotiation.java @@ -11,7 +11,6 @@ import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -28,8 +27,8 @@ public final class ShrewdNegotiation extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.NOT_YOU)); - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public ShrewdNegotiation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Shriekmaw.java b/Mage.Sets/src/mage/cards/s/Shriekmaw.java index 5340c5aca7..6fcb848647 100644 --- a/Mage.Sets/src/mage/cards/s/Shriekmaw.java +++ b/Mage.Sets/src/mage/cards/s/Shriekmaw.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.Target; import mage.target.common.TargetCreaturePermanent; @@ -29,7 +28,7 @@ public final class Shriekmaw extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java b/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java index 04c69561b6..4579a9c2b1 100644 --- a/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java +++ b/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java @@ -18,7 +18,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -30,7 +29,7 @@ public final class ShuYunTheSilentTempest extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ShuYunTheSilentTempest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SiegeModification.java b/Mage.Sets/src/mage/cards/s/SiegeModification.java index a089227029..e96784bece 100644 --- a/Mage.Sets/src/mage/cards/s/SiegeModification.java +++ b/Mage.Sets/src/mage/cards/s/SiegeModification.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -28,7 +27,7 @@ public final class SiegeModification extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or vehicle"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), new SubtypePredicate(SubType.VEHICLE))); } diff --git a/Mage.Sets/src/mage/cards/s/SigilOfTheEmptyThrone.java b/Mage.Sets/src/mage/cards/s/SigilOfTheEmptyThrone.java index 98fff5fcec..94575cfaed 100644 --- a/Mage.Sets/src/mage/cards/s/SigilOfTheEmptyThrone.java +++ b/Mage.Sets/src/mage/cards/s/SigilOfTheEmptyThrone.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.AngelToken; /** @@ -21,7 +20,7 @@ public final class SigilOfTheEmptyThrone extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public SigilOfTheEmptyThrone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SilentSentinel.java b/Mage.Sets/src/mage/cards/s/SilentSentinel.java index 1dcdc62905..220169da94 100644 --- a/Mage.Sets/src/mage/cards/s/SilentSentinel.java +++ b/Mage.Sets/src/mage/cards/s/SilentSentinel.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.target.common.TargetCardInGraveyard; @@ -25,7 +24,7 @@ public final class SilentSentinel extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new OwnerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java b/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java index 54e4a2e230..34d46a83ae 100644 --- a/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java +++ b/Mage.Sets/src/mage/cards/s/SilhanaWayfinder.java @@ -11,7 +11,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -25,8 +24,8 @@ public final class SilhanaWayfinder extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SilumgarsCommand.java b/Mage.Sets/src/mage/cards/s/SilumgarsCommand.java index b4c37bd9bc..966df4d0ad 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarsCommand.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarsCommand.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; @@ -29,8 +28,8 @@ public final class SilumgarsCommand extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent("planeswalker"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter2.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter2.add(CardType.PLANESWALKER.getPredicate()); } public SilumgarsCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SingleCombat.java b/Mage.Sets/src/mage/cards/s/SingleCombat.java index d4c235beb1..309fe92b2f 100644 --- a/Mage.Sets/src/mage/cards/s/SingleCombat.java +++ b/Mage.Sets/src/mage/cards/s/SingleCombat.java @@ -13,7 +13,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.PermanentIdPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -54,8 +53,8 @@ class SingleCombatEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SithRuins.java b/Mage.Sets/src/mage/cards/s/SithRuins.java index 1d29450108..3c88ffc766 100644 --- a/Mage.Sets/src/mage/cards/s/SithRuins.java +++ b/Mage.Sets/src/mage/cards/s/SithRuins.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -59,7 +58,7 @@ public final class SithRuins extends CardImpl { addCost(new TapSourceCost()); addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard("basic Island, Swamp or Mountain"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); subtypePredicates.add(new SubtypePredicate(SubType.SWAMP)); subtypePredicates.add(new SubtypePredicate(SubType.MOUNTAIN)); diff --git a/Mage.Sets/src/mage/cards/s/SkeletonShard.java b/Mage.Sets/src/mage/cards/s/SkeletonShard.java index 97eb30fb38..e0dfa75931 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletonShard.java +++ b/Mage.Sets/src/mage/cards/s/SkeletonShard.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.common.TargetCardInYourGraveyard; @@ -25,8 +24,8 @@ public final class SkeletonShard extends CardImpl { private static final FilterCard filter = new FilterCard("artifact creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); } public SkeletonShard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SkilledAnimator.java b/Mage.Sets/src/mage/cards/s/SkilledAnimator.java index 5366cf5e80..cf1a16f493 100644 --- a/Mage.Sets/src/mage/cards/s/SkilledAnimator.java +++ b/Mage.Sets/src/mage/cards/s/SkilledAnimator.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.Layer; import mage.constants.SubLayer; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.TokenImpl; @@ -29,7 +28,7 @@ public final class SkilledAnimator extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public SkilledAnimator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SkirkShaman.java b/Mage.Sets/src/mage/cards/s/SkirkShaman.java index 96c784ff61..c15dee4161 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkShaman.java +++ b/Mage.Sets/src/mage/cards/s/SkirkShaman.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -27,8 +26,8 @@ public final class SkirkShaman extends CardImpl { static { filter.add(Predicates.not( Predicates.or( - Predicates.and(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE)), - Predicates.and(new CardTypePredicate(CardType.CREATURE), new ColorPredicate(ObjectColor.RED) + Predicates.and(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate()), + Predicates.and(CardType.CREATURE.getPredicate(), new ColorPredicate(ObjectColor.RED) )))); } diff --git a/Mage.Sets/src/mage/cards/s/SkullOfOrm.java b/Mage.Sets/src/mage/cards/s/SkullOfOrm.java index 91951ee276..df1a8c8dcf 100644 --- a/Mage.Sets/src/mage/cards/s/SkullOfOrm.java +++ b/Mage.Sets/src/mage/cards/s/SkullOfOrm.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,7 +23,7 @@ public final class SkullOfOrm extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public SkullOfOrm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Skybind.java b/Mage.Sets/src/mage/cards/s/Skybind.java index d986194a02..8caa7cfb1b 100644 --- a/Mage.Sets/src/mage/cards/s/Skybind.java +++ b/Mage.Sets/src/mage/cards/s/Skybind.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -29,7 +28,7 @@ public final class Skybind extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonenchantment permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.not(CardType.ENCHANTMENT.getPredicate())); } public Skybind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SkyshipWeatherlight.java b/Mage.Sets/src/mage/cards/s/SkyshipWeatherlight.java index da4ce8dc16..817b025966 100644 --- a/Mage.Sets/src/mage/cards/s/SkyshipWeatherlight.java +++ b/Mage.Sets/src/mage/cards/s/SkyshipWeatherlight.java @@ -23,7 +23,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.ExileZone; import mage.game.Game; import mage.players.Player; @@ -66,8 +65,8 @@ class SkyshipWeatherlightEffect extends SearchEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public SkyshipWeatherlightEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java b/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java index 1503499b41..9f09b33c69 100644 --- a/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java +++ b/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.SkywiseTeachingsToken; /** @@ -23,7 +22,7 @@ public final class SkywiseTeachings extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SkywiseTeachings(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SlobadGoblinTinkerer.java b/Mage.Sets/src/mage/cards/s/SlobadGoblinTinkerer.java index ec0e5d0232..7b9b798d1c 100644 --- a/Mage.Sets/src/mage/cards/s/SlobadGoblinTinkerer.java +++ b/Mage.Sets/src/mage/cards/s/SlobadGoblinTinkerer.java @@ -19,7 +19,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -32,8 +31,8 @@ public final class SlobadGoblinTinkerer extends CardImpl { private static final FilterControlledPermanent filterControlled = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filterControlled.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); + filterControlled.add(CardType.ARTIFACT.getPredicate()); } public SlobadGoblinTinkerer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SnapcasterMage.java b/Mage.Sets/src/mage/cards/s/SnapcasterMage.java index fc18b483fc..c11202bbda 100644 --- a/Mage.Sets/src/mage/cards/s/SnapcasterMage.java +++ b/Mage.Sets/src/mage/cards/s/SnapcasterMage.java @@ -20,7 +20,6 @@ import mage.constants.SubLayer; import mage.constants.TimingRule; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.target.common.TargetCardInYourGraveyard; @@ -34,8 +33,8 @@ public final class SnapcasterMage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public SnapcasterMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoldeviAdnate.java b/Mage.Sets/src/mage/cards/s/SoldeviAdnate.java index 70f9d9a3d1..3800b3fac0 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviAdnate.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviAdnate.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetControlledPermanent; @@ -28,7 +27,7 @@ public final class SoldeviAdnate extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("black or artifact creature"); static { - filter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK), new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK), CardType.ARTIFACT.getPredicate())); } public SoldeviAdnate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Solemnity.java b/Mage.Sets/src/mage/cards/s/Solemnity.java index 858d9c85f2..a8ed98f39a 100644 --- a/Mage.Sets/src/mage/cards/s/Solemnity.java +++ b/Mage.Sets/src/mage/cards/s/Solemnity.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -85,10 +84,10 @@ class SolemnityEffect2 extends ReplacementEffectImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public SolemnityEffect2() { diff --git a/Mage.Sets/src/mage/cards/s/SorinLordOfInnistrad.java b/Mage.Sets/src/mage/cards/s/SorinLordOfInnistrad.java index 211cb1e381..7a89e3f455 100644 --- a/Mage.Sets/src/mage/cards/s/SorinLordOfInnistrad.java +++ b/Mage.Sets/src/mage/cards/s/SorinLordOfInnistrad.java @@ -20,7 +20,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.emblems.SorinLordOfInnistradEmblem; import mage.game.permanent.Permanent; @@ -38,8 +37,8 @@ public final class SorinLordOfInnistrad extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public SorinLordOfInnistrad(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoulDiviner.java b/Mage.Sets/src/mage/cards/s/SoulDiviner.java index 0b02ccf33d..50696f8242 100644 --- a/Mage.Sets/src/mage/cards/s/SoulDiviner.java +++ b/Mage.Sets/src/mage/cards/s/SoulDiviner.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -28,10 +27,10 @@ public final class SoulDiviner extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SoulFoundry.java b/Mage.Sets/src/mage/cards/s/SoulFoundry.java index 23f9c28c4f..8949dad6e9 100644 --- a/Mage.Sets/src/mage/cards/s/SoulFoundry.java +++ b/Mage.Sets/src/mage/cards/s/SoulFoundry.java @@ -19,7 +19,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -84,7 +83,7 @@ class SoulFoundryImprintEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("creature card from your hand"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public SoulFoundryImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SoulbladeDjinn.java b/Mage.Sets/src/mage/cards/s/SoulbladeDjinn.java index 1e0bdeb0e1..98bdbc96e1 100644 --- a/Mage.Sets/src/mage/cards/s/SoulbladeDjinn.java +++ b/Mage.Sets/src/mage/cards/s/SoulbladeDjinn.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -26,7 +25,7 @@ public final class SoulbladeDjinn extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SoulbladeDjinn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java b/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java index e567d41558..07ed9c44b8 100644 --- a/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java +++ b/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.FilterObject; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.ZoneChangeEvent; @@ -34,7 +33,7 @@ public final class SoulfireGrandMaster extends CardImpl { private static final FilterObject filter = new FilterObject("instant and sorcery spells you control"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public SoulfireGrandMaster(UUID ownerId, CardSetInfo setInfo) { @@ -72,7 +71,7 @@ class SoulfireGrandMasterCastFromHandReplacementEffect extends ReplacementEffect private static final FilterCard filter = new FilterCard(); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } private UUID spellId; diff --git a/Mage.Sets/src/mage/cards/s/Soulscour.java b/Mage.Sets/src/mage/cards/s/Soulscour.java index a4c3343265..f645e49143 100644 --- a/Mage.Sets/src/mage/cards/s/Soulscour.java +++ b/Mage.Sets/src/mage/cards/s/Soulscour.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class Soulscour extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonartifact permanents"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public Soulscour (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Soulshriek.java b/Mage.Sets/src/mage/cards/s/Soulshriek.java index bc5d1e9909..413ef752ce 100644 --- a/Mage.Sets/src/mage/cards/s/Soulshriek.java +++ b/Mage.Sets/src/mage/cards/s/Soulshriek.java @@ -18,7 +18,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetControlledCreaturePermanent; @@ -33,7 +32,7 @@ public class Soulshriek extends CardImpl { protected static final FilterCard filterCard = new FilterCard("creature cards"); static { - filterCard.add(new CardTypePredicate(CardType.CREATURE)); + filterCard.add(CardType.CREATURE.getPredicate()); } public Soulshriek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SparkDouble.java b/Mage.Sets/src/mage/cards/s/SparkDouble.java index 053d91f047..76447680eb 100644 --- a/Mage.Sets/src/mage/cards/s/SparkDouble.java +++ b/Mage.Sets/src/mage/cards/s/SparkDouble.java @@ -16,7 +16,6 @@ import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.util.functions.ApplyToPermanent; @@ -32,8 +31,8 @@ public final class SparkDouble extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public SparkDouble(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SparkReaper.java b/Mage.Sets/src/mage/cards/s/SparkReaper.java index da57ae0a3b..1a6ad093f0 100644 --- a/Mage.Sets/src/mage/cards/s/SparkReaper.java +++ b/Mage.Sets/src/mage/cards/s/SparkReaper.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import java.util.UUID; @@ -28,8 +27,8 @@ public final class SparkReaper extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/Spawnbroker.java b/Mage.Sets/src/mage/cards/s/Spawnbroker.java index 1d83a023cd..39bde3f330 100644 --- a/Mage.Sets/src/mage/cards/s/Spawnbroker.java +++ b/Mage.Sets/src/mage/cards/s/Spawnbroker.java @@ -16,7 +16,7 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.TargetController; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -61,7 +61,7 @@ class TargetControlledCreatureWithPowerGreaterOrLessThanOpponentPermanent extend public TargetControlledCreatureWithPowerGreaterOrLessThanOpponentPermanent() { super(); this.filter = this.filter.copy(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); setTargetName("creature you control"); } @@ -97,7 +97,7 @@ class SpawnbrokerSecondTarget extends TargetPermanent { super(); this.filter = this.filter.copy(); filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); setTargetName("creature with power less than or equal to that creature's power an opponent controls"); } diff --git a/Mage.Sets/src/mage/cards/s/SpectralGuardian.java b/Mage.Sets/src/mage/cards/s/SpectralGuardian.java index cf913843b2..01a2f7dcdd 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralGuardian.java +++ b/Mage.Sets/src/mage/cards/s/SpectralGuardian.java @@ -17,7 +17,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,7 +27,7 @@ public final class SpectralGuardian extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SpectralGuardian(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellPierce.java b/Mage.Sets/src/mage/cards/s/SpellPierce.java index 80ca4cc96c..216f789c2c 100644 --- a/Mage.Sets/src/mage/cards/s/SpellPierce.java +++ b/Mage.Sets/src/mage/cards/s/SpellPierce.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -23,7 +22,7 @@ public final class SpellPierce extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SpellPierce(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Spellbinder.java b/Mage.Sets/src/mage/cards/s/Spellbinder.java index 082b6098bc..a51bbc6c4e 100644 --- a/Mage.Sets/src/mage/cards/s/Spellbinder.java +++ b/Mage.Sets/src/mage/cards/s/Spellbinder.java @@ -16,7 +16,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; import mage.game.events.GameEvent; @@ -102,7 +101,7 @@ class SpellbinderImprintEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("instant card"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public SpellbinderImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java index d5a51f7985..e18bed3751 100644 --- a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java @@ -15,7 +15,6 @@ import mage.constants.ComparisonType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; @@ -28,7 +27,7 @@ public final class SpellbreakerBehemoth extends CardImpl { private static final FilterSpell filter = new FilterSpell("Creature spells you control with power 5 or greater"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/s/Spelltwine.java b/Mage.Sets/src/mage/cards/s/Spelltwine.java index 35eea48c86..604f170866 100644 --- a/Mage.Sets/src/mage/cards/s/Spelltwine.java +++ b/Mage.Sets/src/mage/cards/s/Spelltwine.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInOpponentsGraveyard; @@ -32,12 +31,12 @@ public final class Spelltwine extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); filter2.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public Spelltwine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellweaverHelix.java b/Mage.Sets/src/mage/cards/s/SpellweaverHelix.java index b098864189..25c5b0f25f 100644 --- a/Mage.Sets/src/mage/cards/s/SpellweaverHelix.java +++ b/Mage.Sets/src/mage/cards/s/SpellweaverHelix.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -33,7 +32,7 @@ public final class SpellweaverHelix extends CardImpl { private static final FilterCard filter = new FilterCard("sorcery cards from a single graveyard"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public SpellweaverHelix(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellweaverVolute.java b/Mage.Sets/src/mage/cards/s/SpellweaverVolute.java index 620654d390..971f423f3c 100644 --- a/Mage.Sets/src/mage/cards/s/SpellweaverVolute.java +++ b/Mage.Sets/src/mage/cards/s/SpellweaverVolute.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -35,7 +34,7 @@ public final class SpellweaverVolute extends CardImpl { // Enchant instant card in a graveyard FilterCard filter = new FilterCard("instant card in a graveyard"); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); TargetCardInGraveyard auraTarget = new TargetCardInGraveyard(filter); this.getSpellAbility().addTarget(auraTarget); this.getSpellAbility().addEffect(new AttachEffect(Outcome.Detriment)); @@ -47,7 +46,7 @@ public final class SpellweaverVolute extends CardImpl { // If you do, exile the enchanted card and attach Spellweaver Volute // to another instant card in a graveyard. FilterSpell filterSpell = new FilterSpell("a sorcery spell"); - filterSpell.add(new CardTypePredicate(CardType.SORCERY)); + filterSpell.add(CardType.SORCERY.getPredicate()); this.addAbility(new SpellCastControllerTriggeredAbility(new SpellweaverVoluteEffect(), filterSpell, false)); } @@ -102,7 +101,7 @@ class SpellweaverVoluteEffect extends OneShotEffect { } if (controller.moveCards(enchantedCard, Zone.EXILED, source, game)) { FilterCard filter = new FilterCard("instant card in a graveyard"); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); TargetCardInGraveyard auraTarget = new TargetCardInGraveyard(filter); if (auraTarget.canChoose(source.getSourceId(), controller.getId(), game)) { controller.choose(Outcome.Benefit, auraTarget, source.getSourceId(), game); diff --git a/Mage.Sets/src/mage/cards/s/SphinxBoneWand.java b/Mage.Sets/src/mage/cards/s/SphinxBoneWand.java index 3a8385ec61..867f0b7918 100644 --- a/Mage.Sets/src/mage/cards/s/SphinxBoneWand.java +++ b/Mage.Sets/src/mage/cards/s/SphinxBoneWand.java @@ -12,7 +12,6 @@ import mage.constants.Outcome; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -28,8 +27,8 @@ public final class SphinxBoneWand extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public SphinxBoneWand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SphinxOfTheFinalWord.java b/Mage.Sets/src/mage/cards/s/SphinxOfTheFinalWord.java index ac834db3c2..038b392885 100644 --- a/Mage.Sets/src/mage/cards/s/SphinxOfTheFinalWord.java +++ b/Mage.Sets/src/mage/cards/s/SphinxOfTheFinalWord.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,8 +26,8 @@ public final class SphinxOfTheFinalWord extends CardImpl { private static final FilterSpell filterTarget = new FilterSpell("Instant and sorcery spells you control"); static { - filterTarget.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), - (new CardTypePredicate(CardType.SORCERY)))); + filterTarget.add(Predicates.or(CardType.INSTANT.getPredicate(), + (CardType.SORCERY.getPredicate()))); } public SphinxOfTheFinalWord(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SphinxSummoner.java b/Mage.Sets/src/mage/cards/s/SphinxSummoner.java index 2615074c9f..09a9ddd302 100644 --- a/Mage.Sets/src/mage/cards/s/SphinxSummoner.java +++ b/Mage.Sets/src/mage/cards/s/SphinxSummoner.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; /** @@ -24,7 +23,7 @@ public final class SphinxSummoner extends CardImpl { private static final FilterCard filter = new FilterCard("artifact creature card"); static { - filter.add(Predicates.and(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.and(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); } public SphinxSummoner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpiritualAsylum.java b/Mage.Sets/src/mage/cards/s/SpiritualAsylum.java index 1cb9db65bb..031b592e8a 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritualAsylum.java +++ b/Mage.Sets/src/mage/cards/s/SpiritualAsylum.java @@ -15,7 +15,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -28,8 +27,8 @@ public final class SpiritualAsylum extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SpiteMalice.java b/Mage.Sets/src/mage/cards/s/SpiteMalice.java index 694abba6a7..fe33f02e1d 100644 --- a/Mage.Sets/src/mage/cards/s/SpiteMalice.java +++ b/Mage.Sets/src/mage/cards/s/SpiteMalice.java @@ -12,7 +12,6 @@ import mage.constants.SpellAbilityType; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; @@ -26,7 +25,7 @@ public final class SpiteMalice extends SplitCard { private static final FilterSpell filterNonCreatureSpell = new FilterSpell("noncreature spell"); static { - filterNonCreatureSpell.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreatureSpell.add(Predicates.not(CardType.CREATURE.getPredicate())); } private static final FilterCreaturePermanent filterNonBlackCreature = new FilterCreaturePermanent("nonblack creature"); diff --git a/Mage.Sets/src/mage/cards/s/SpoilsOfEvil.java b/Mage.Sets/src/mage/cards/s/SpoilsOfEvil.java index cac247e36e..fa0978832f 100644 --- a/Mage.Sets/src/mage/cards/s/SpoilsOfEvil.java +++ b/Mage.Sets/src/mage/cards/s/SpoilsOfEvil.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetOpponent; @@ -24,8 +23,8 @@ public final class SpoilsOfEvil extends CardImpl { private static final FilterCard filter = new FilterCard("artifact or creature card in target opponents graveyard"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public SpoilsOfEvil(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpreadingPlague.java b/Mage.Sets/src/mage/cards/s/SpreadingPlague.java index 2c36225ae5..fea0ae4948 100644 --- a/Mage.Sets/src/mage/cards/s/SpreadingPlague.java +++ b/Mage.Sets/src/mage/cards/s/SpreadingPlague.java @@ -15,7 +15,6 @@ import mage.constants.SetTargetPointer; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -50,7 +49,7 @@ class SpreadingPlagueEffect extends OneShotEffect { static final FilterPermanent FILTER = new FilterPermanent("creature"); static { - FILTER.add(new CardTypePredicate(CardType.CREATURE)); + FILTER.add(CardType.CREATURE.getPredicate()); } SpreadingPlagueEffect() { diff --git a/Mage.Sets/src/mage/cards/s/Squeeze.java b/Mage.Sets/src/mage/cards/s/Squeeze.java index 5e41800635..3dabaa83dc 100644 --- a/Mage.Sets/src/mage/cards/s/Squeeze.java +++ b/Mage.Sets/src/mage/cards/s/Squeeze.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class Squeeze extends CardImpl { private static final FilterCard filter = new FilterCard("Sorcery spells"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); } public Squeeze(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StarDestroyer.java b/Mage.Sets/src/mage/cards/s/StarDestroyer.java index ddf7396471..c2d124712e 100644 --- a/Mage.Sets/src/mage/cards/s/StarDestroyer.java +++ b/Mage.Sets/src/mage/cards/s/StarDestroyer.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.common.FilterCreatureOrPlayer; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.permanent.token.TIEFighterToken; import mage.target.common.TargetCreatureOrPlayer; @@ -34,7 +33,7 @@ public final class StarDestroyer extends CardImpl { private static final FilterCreatureOrPlayer filter3 = new FilterCreatureOrPlayer("non-Starship creature or player"); static { - filter1.add(new CardTypePredicate(CardType.ARTIFACT)); + filter1.add(CardType.ARTIFACT.getPredicate()); filter3.getCreatureFilter().add(Predicates.not(new SubtypePredicate(SubType.STARSHIP))); } diff --git a/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java b/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java index a842f4c5c8..6807e7cdd3 100644 --- a/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java +++ b/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java @@ -19,7 +19,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterEnchantmentPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.filter.predicate.permanent.AnotherPredicate; @@ -47,7 +46,7 @@ public final class StarfieldOfNyx extends CardImpl { } static { - filterGraveyardEnchantment.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterGraveyardEnchantment.add(CardType.ENCHANTMENT.getPredicate()); filterGraveyardEnchantment.add(new OwnerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/StarkeOfRath.java b/Mage.Sets/src/mage/cards/s/StarkeOfRath.java index 6e4b842963..6b132158ad 100644 --- a/Mage.Sets/src/mage/cards/s/StarkeOfRath.java +++ b/Mage.Sets/src/mage/cards/s/StarkeOfRath.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -31,8 +30,8 @@ public final class StarkeOfRath extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); } public StarkeOfRath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StatusStatue.java b/Mage.Sets/src/mage/cards/s/StatusStatue.java index fe14b42902..688c8aefaa 100644 --- a/Mage.Sets/src/mage/cards/s/StatusStatue.java +++ b/Mage.Sets/src/mage/cards/s/StatusStatue.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import mage.constants.SpellAbilityType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; @@ -26,9 +25,9 @@ public final class StatusStatue extends SplitCard { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SteelOverseer.java b/Mage.Sets/src/mage/cards/s/SteelOverseer.java index 5d91504de7..827ce1bb5a 100644 --- a/Mage.Sets/src/mage/cards/s/SteelOverseer.java +++ b/Mage.Sets/src/mage/cards/s/SteelOverseer.java @@ -15,7 +15,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; /** @@ -27,8 +26,8 @@ public final class SteelOverseer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact creature you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SteelcladSerpent.java b/Mage.Sets/src/mage/cards/s/SteelcladSerpent.java index 2eb98aaa06..ff7e9d0dc3 100644 --- a/Mage.Sets/src/mage/cards/s/SteelcladSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SteelcladSerpent.java @@ -11,7 +11,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -49,7 +48,7 @@ class SteelcladSerpentEffect extends RestrictionEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/s/SteelshaperApprentice.java b/Mage.Sets/src/mage/cards/s/SteelshaperApprentice.java index bd944bd462..f92e0fd53c 100644 --- a/Mage.Sets/src/mage/cards/s/SteelshaperApprentice.java +++ b/Mage.Sets/src/mage/cards/s/SteelshaperApprentice.java @@ -17,7 +17,6 @@ import mage.constants.ColoredManaSymbol; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -29,7 +28,7 @@ public final class SteelshaperApprentice extends CardImpl { private static final FilterCard filter = new FilterCard("Equipment card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SteelshapersGift.java b/Mage.Sets/src/mage/cards/s/SteelshapersGift.java index 5e0f60f6d2..009a52cbbb 100644 --- a/Mage.Sets/src/mage/cards/s/SteelshapersGift.java +++ b/Mage.Sets/src/mage/cards/s/SteelshapersGift.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -21,7 +20,7 @@ public final class SteelshapersGift extends CardImpl { private static final FilterCard filter = new FilterCard("Equipment card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new SubtypePredicate(SubType.EQUIPMENT)); } diff --git a/Mage.Sets/src/mage/cards/s/StenchOfDecay.java b/Mage.Sets/src/mage/cards/s/StenchOfDecay.java index 9678b496da..8b07cb70c3 100644 --- a/Mage.Sets/src/mage/cards/s/StenchOfDecay.java +++ b/Mage.Sets/src/mage/cards/s/StenchOfDecay.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class StenchOfDecay extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Nonartifact creatures"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public StenchOfDecay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Stingmoggie.java b/Mage.Sets/src/mage/cards/s/Stingmoggie.java index b64eb25b52..c987e3e8c2 100644 --- a/Mage.Sets/src/mage/cards/s/Stingmoggie.java +++ b/Mage.Sets/src/mage/cards/s/Stingmoggie.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -31,8 +30,8 @@ public final class Stingmoggie extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public Stingmoggie(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StolenIdentity.java b/Mage.Sets/src/mage/cards/s/StolenIdentity.java index 4c1b333ec8..04cf722ae3 100644 --- a/Mage.Sets/src/mage/cards/s/StolenIdentity.java +++ b/Mage.Sets/src/mage/cards/s/StolenIdentity.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,7 +20,7 @@ public final class StolenIdentity extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact or creature"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate())); } public StolenIdentity(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StormTheCitadel.java b/Mage.Sets/src/mage/cards/s/StormTheCitadel.java index 0b7f2266d8..bc67f8c9f6 100644 --- a/Mage.Sets/src/mage/cards/s/StormTheCitadel.java +++ b/Mage.Sets/src/mage/cards/s/StormTheCitadel.java @@ -12,7 +12,6 @@ import mage.constants.Duration; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; import mage.target.TargetPermanent; @@ -28,8 +27,8 @@ public final class StormTheCitadel extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); filter.add(DefendingPlayerControlsPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/s/StorrevDevkarinLich.java b/Mage.Sets/src/mage/cards/s/StorrevDevkarinLich.java index 37f697ef68..9224fee889 100644 --- a/Mage.Sets/src/mage/cards/s/StorrevDevkarinLich.java +++ b/Mage.Sets/src/mage/cards/s/StorrevDevkarinLich.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.ZoneChangeEvent; @@ -35,8 +34,8 @@ public final class StorrevDevkarinLich extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); filter.add(StorrevDevkarinLichPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/s/StreamOfAcid.java b/Mage.Sets/src/mage/cards/s/StreamOfAcid.java index 686e710cdf..915b2d4e5c 100644 --- a/Mage.Sets/src/mage/cards/s/StreamOfAcid.java +++ b/Mage.Sets/src/mage/cards/s/StreamOfAcid.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPermanent; @@ -23,10 +22,10 @@ public final class StreamOfAcid extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), Predicates.and( Predicates.not(new ColorPredicate(ObjectColor.BLACK)), - new CardTypePredicate(CardType.CREATURE)))); + CardType.CREATURE.getPredicate()))); } public StreamOfAcid(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StrongarmMonk.java b/Mage.Sets/src/mage/cards/s/StrongarmMonk.java index 80b56b765a..c67a8279d6 100644 --- a/Mage.Sets/src/mage/cards/s/StrongarmMonk.java +++ b/Mage.Sets/src/mage/cards/s/StrongarmMonk.java @@ -14,7 +14,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -25,7 +24,7 @@ public final class StrongarmMonk extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public StrongarmMonk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java b/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java index 10b87cb361..6ede8658fb 100644 --- a/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java +++ b/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; /** @@ -28,7 +27,7 @@ public final class StrongholdMachinist extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public StrongholdMachinist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StructuralDistortion.java b/Mage.Sets/src/mage/cards/s/StructuralDistortion.java index 31df5ca06e..a818120894 100644 --- a/Mage.Sets/src/mage/cards/s/StructuralDistortion.java +++ b/Mage.Sets/src/mage/cards/s/StructuralDistortion.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,7 +21,7 @@ public final class StructuralDistortion extends CardImpl { private static final FilterPermanent FILTER = new FilterPermanent("artifact or land"); static { - FILTER.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.LAND))); + FILTER.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.LAND.getPredicate())); } public StructuralDistortion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StubbornDenial.java b/Mage.Sets/src/mage/cards/s/StubbornDenial.java index 8ae807c321..20a741afb1 100644 --- a/Mage.Sets/src/mage/cards/s/StubbornDenial.java +++ b/Mage.Sets/src/mage/cards/s/StubbornDenial.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import java.util.UUID; @@ -25,7 +24,7 @@ public final class StubbornDenial extends CardImpl { private static final FilterSpell filter = new FilterSpell("noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public StubbornDenial(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StudentOfOjutai.java b/Mage.Sets/src/mage/cards/s/StudentOfOjutai.java index b51d3667ed..157ed1c658 100644 --- a/Mage.Sets/src/mage/cards/s/StudentOfOjutai.java +++ b/Mage.Sets/src/mage/cards/s/StudentOfOjutai.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class StudentOfOjutai extends CardImpl { private static final FilterSpell filterNonCreature = new FilterSpell("a noncreature spell"); static { - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public StudentOfOjutai(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java b/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java index 4c3e777a98..a0942aff3b 100644 --- a/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java +++ b/Mage.Sets/src/mage/cards/s/SumalaWoodshaper.java @@ -11,7 +11,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -25,8 +24,8 @@ public final class SumalaWoodshaper extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/s/SunderFromWithin.java b/Mage.Sets/src/mage/cards/s/SunderFromWithin.java index c7b3a240a7..1d8b1856ba 100644 --- a/Mage.Sets/src/mage/cards/s/SunderFromWithin.java +++ b/Mage.Sets/src/mage/cards/s/SunderFromWithin.java @@ -8,7 +8,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -23,8 +22,8 @@ public final class SunderFromWithin extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public SunderFromWithin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunforger.java b/Mage.Sets/src/mage/cards/s/Sunforger.java index 11e257fe1d..ceab269a14 100644 --- a/Mage.Sets/src/mage/cards/s/Sunforger.java +++ b/Mage.Sets/src/mage/cards/s/Sunforger.java @@ -26,7 +26,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -105,7 +104,7 @@ class SunforgerEffect extends OneShotEffect { filter.add(Predicates.or( new ColorPredicate(ObjectColor.RED), new ColorPredicate(ObjectColor.WHITE))); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); filter.add(new CardCanBeCastPredicate(source.getControllerId())); if (controller.searchLibrary(target, source, game, controller.getId())) { diff --git a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java index b660eb088e..3a54177b91 100644 --- a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java +++ b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java @@ -12,7 +12,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -32,7 +31,7 @@ public final class SurgicalExtraction extends CardImpl { private static final FilterCard filter = new FilterCard("card in a graveyard other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); } public SurgicalExtraction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurrakDragonclaw.java b/Mage.Sets/src/mage/cards/s/SurrakDragonclaw.java index d92ee012a6..bb5cfb8624 100644 --- a/Mage.Sets/src/mage/cards/s/SurrakDragonclaw.java +++ b/Mage.Sets/src/mage/cards/s/SurrakDragonclaw.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -29,7 +28,7 @@ public final class SurrakDragonclaw extends CardImpl { private static final FilterSpell filterTarget = new FilterSpell("Creature spells you control"); static { - filterTarget.add(new CardTypePredicate(CardType.CREATURE)); + filterTarget.add(CardType.CREATURE.getPredicate()); } public SurrakDragonclaw(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurrakarSpellblade.java b/Mage.Sets/src/mage/cards/s/SurrakarSpellblade.java index bd04d91432..e8e69a2172 100644 --- a/Mage.Sets/src/mage/cards/s/SurrakarSpellblade.java +++ b/Mage.Sets/src/mage/cards/s/SurrakarSpellblade.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -27,8 +26,8 @@ public final class SurrakarSpellblade extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public SurrakarSpellblade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurrealMemoir.java b/Mage.Sets/src/mage/cards/s/SurrealMemoir.java index 7837de1a40..659ca3135e 100644 --- a/Mage.Sets/src/mage/cards/s/SurrealMemoir.java +++ b/Mage.Sets/src/mage/cards/s/SurrealMemoir.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.util.RandomUtil; @@ -63,7 +62,7 @@ class SurrealMemoirEffect extends OneShotEffect { Player player = game.getPlayer(source.getControllerId()); if (player != null) { FilterCard filter = new FilterCard("instant card"); - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); Card[] cards = player.getGraveyard().getCards(filter, game).toArray(new Card[0]); if (cards.length > 0) { Card card = cards[RandomUtil.nextInt(cards.length)]; diff --git a/Mage.Sets/src/mage/cards/s/SwanSong.java b/Mage.Sets/src/mage/cards/s/SwanSong.java index 62d7ec9892..e79026ce37 100644 --- a/Mage.Sets/src/mage/cards/s/SwanSong.java +++ b/Mage.Sets/src/mage/cards/s/SwanSong.java @@ -10,10 +10,8 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.SwanSongBirdToken; -import mage.game.permanent.token.TokenImpl; import mage.game.permanent.token.Token; import mage.game.stack.Spell; import mage.target.TargetSpell; @@ -27,9 +25,9 @@ public final class SwanSong extends CardImpl { private static final FilterSpell filter = new FilterSpell("enchantment, instant or sorcery spell"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.ENCHANTMENT.getPredicate(), + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public SwanSong(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java index b57bdb17bd..5bebb970eb 100644 --- a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java +++ b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java @@ -24,7 +24,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -69,7 +68,7 @@ class SwiftWarkiteEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("creature card with converted mana cost 3 or less from your hand or graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java b/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java index 4e2bdb9bd0..7f23281a5e 100644 --- a/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java +++ b/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java @@ -17,7 +17,6 @@ import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -32,9 +31,9 @@ public final class SydriGalvanicGenius extends CardImpl { private static final FilterArtifactPermanent filterNonCreature = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new CardTypePredicate(CardType.CREATURE)); - filterNonCreature.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(CardType.CREATURE.getPredicate()); + filterNonCreature.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SydriGalvanicGenius(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java b/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java index e0a935f4f1..3eb87371a7 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java +++ b/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java @@ -19,7 +19,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author fireshoes @@ -31,7 +30,7 @@ public final class SylvanAdvocate extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("land creatures"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public SylvanAdvocate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SylvanPrimordial.java b/Mage.Sets/src/mage/cards/s/SylvanPrimordial.java index b6c63993d5..61ef61dafd 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanPrimordial.java +++ b/Mage.Sets/src/mage/cards/s/SylvanPrimordial.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.common.FilterLandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; @@ -70,7 +69,7 @@ enum SylvanPrimordialAdjuster implements TargetAdjuster { if (opponent != null) { FilterPermanent filter = new FilterPermanent("noncreature permanent from opponent " + opponent.getLogName()); filter.add(new ControllerIdPredicate(opponentId)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); TargetPermanent target = new TargetPermanent(0, 1, filter, false); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/s/SylvanReclamation.java b/Mage.Sets/src/mage/cards/s/SylvanReclamation.java index 75cc687bd8..7ce8ae8e82 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanReclamation.java +++ b/Mage.Sets/src/mage/cards/s/SylvanReclamation.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -24,7 +23,7 @@ public final class SylvanReclamation extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifacts and/or enchantments"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public SylvanReclamation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SynodArtificer.java b/Mage.Sets/src/mage/cards/s/SynodArtificer.java index efa906cbaa..906c15ac83 100644 --- a/Mage.Sets/src/mage/cards/s/SynodArtificer.java +++ b/Mage.Sets/src/mage/cards/s/SynodArtificer.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.XTargetsAdjuster; @@ -29,8 +28,8 @@ public final class SynodArtificer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(CardType.ARTIFACT.getPredicate()); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public SynodArtificer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java b/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java index e36a291f25..3a5745d256 100644 --- a/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java +++ b/Mage.Sets/src/mage/cards/t/TaigamOjutaiMaster.java @@ -18,7 +18,6 @@ import mage.constants.*; import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -38,8 +37,8 @@ public final class TaigamOjutaiMaster extends CardImpl { static { filter.add( (Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY), + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate(), new SubtypePredicate(SubType.DRAGON))) ); } diff --git a/Mage.Sets/src/mage/cards/t/TaintedAether.java b/Mage.Sets/src/mage/cards/t/TaintedAether.java index 5bf2a50e39..9cf93f5b2b 100644 --- a/Mage.Sets/src/mage/cards/t/TaintedAether.java +++ b/Mage.Sets/src/mage/cards/t/TaintedAether.java @@ -12,7 +12,6 @@ import mage.constants.Zone; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class TaintedAether extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature or a land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public TaintedAether(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TalarasBane.java b/Mage.Sets/src/mage/cards/t/TalarasBane.java index d1f40067fd..e28a0ca575 100644 --- a/Mage.Sets/src/mage/cards/t/TalarasBane.java +++ b/Mage.Sets/src/mage/cards/t/TalarasBane.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.game.Game; import mage.players.Player; @@ -53,7 +52,7 @@ class TalarasBaneEffect extends OneShotEffect { filter.add(Predicates.or( new ColorPredicate(ObjectColor.GREEN), new ColorPredicate(ObjectColor.WHITE))); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public TalarasBaneEffect() { diff --git a/Mage.Sets/src/mage/cards/t/Tallowisp.java b/Mage.Sets/src/mage/cards/t/Tallowisp.java index ad21e71289..776684205c 100644 --- a/Mage.Sets/src/mage/cards/t/Tallowisp.java +++ b/Mage.Sets/src/mage/cards/t/Tallowisp.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.target.common.TargetCardInLibrary; @@ -30,7 +29,7 @@ public final class Tallowisp extends CardImpl { private static final FilterCard filterAura = new FilterCard("Aura card with enchant creature"); static { - filterAura.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterAura.add(CardType.ENCHANTMENT.getPredicate()); filterAura.add(new SubtypePredicate(SubType.AURA)); filterAura.add(new TallowispAbilityPredicate()); } diff --git a/Mage.Sets/src/mage/cards/t/TalrandSkySummoner.java b/Mage.Sets/src/mage/cards/t/TalrandSkySummoner.java index dd4251f825..4616b64a74 100644 --- a/Mage.Sets/src/mage/cards/t/TalrandSkySummoner.java +++ b/Mage.Sets/src/mage/cards/t/TalrandSkySummoner.java @@ -12,7 +12,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.DrakeToken; /** @@ -25,8 +24,8 @@ public final class TalrandSkySummoner extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public TalrandSkySummoner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TamiyoFieldResearcher.java b/Mage.Sets/src/mage/cards/t/TamiyoFieldResearcher.java index 17039e4b9c..58db54feb0 100644 --- a/Mage.Sets/src/mage/cards/t/TamiyoFieldResearcher.java +++ b/Mage.Sets/src/mage/cards/t/TamiyoFieldResearcher.java @@ -20,7 +20,6 @@ import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.emblems.TamiyoFieldResearcherEmblem; import mage.game.events.DamagedEvent; @@ -44,7 +43,7 @@ public final class TamiyoFieldResearcher extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public TamiyoFieldResearcher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TangleWire.java b/Mage.Sets/src/mage/cards/t/TangleWire.java index 7f08499132..8ee9fe0707 100644 --- a/Mage.Sets/src/mage/cards/t/TangleWire.java +++ b/Mage.Sets/src/mage/cards/t/TangleWire.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -53,9 +52,9 @@ class TangleWireEffect extends OneShotEffect { static{ filter.add(Predicates.not(TappedPredicate.instance)); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } TangleWireEffect() { diff --git a/Mage.Sets/src/mage/cards/t/Tanglewalker.java b/Mage.Sets/src/mage/cards/t/Tanglewalker.java index ce19e01f4f..945b956bfe 100644 --- a/Mage.Sets/src/mage/cards/t/Tanglewalker.java +++ b/Mage.Sets/src/mage/cards/t/Tanglewalker.java @@ -17,7 +17,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterLandPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,7 +27,7 @@ public final class Tanglewalker extends CardImpl { private static final FilterPermanent filter = new FilterLandPermanent(); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public Tanglewalker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TattooWard.java b/Mage.Sets/src/mage/cards/t/TattooWard.java index 00780a9626..d1209fc813 100644 --- a/Mage.Sets/src/mage/cards/t/TattooWard.java +++ b/Mage.Sets/src/mage/cards/t/TattooWard.java @@ -24,7 +24,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -35,7 +34,7 @@ public final class TattooWard extends CardImpl { private static final FilterCard filter = new FilterCard("enchantments"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public TattooWard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TeferiTimeRaveler.java b/Mage.Sets/src/mage/cards/t/TeferiTimeRaveler.java index 803f9475ec..e24bd1be12 100644 --- a/Mage.Sets/src/mage/cards/t/TeferiTimeRaveler.java +++ b/Mage.Sets/src/mage/cards/t/TeferiTimeRaveler.java @@ -15,7 +15,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.players.Player; @@ -32,11 +31,11 @@ public final class TeferiTimeRaveler extends CardImpl { public static final FilterPermanent filter2 = new FilterPermanent("artifact, creature, or enchantment"); static { - filter.add(new CardTypePredicate(CardType.SORCERY)); + filter.add(CardType.SORCERY.getPredicate()); filter2.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TeferiTimebender.java b/Mage.Sets/src/mage/cards/t/TeferiTimebender.java index 89f3fb3f29..375a37a70b 100644 --- a/Mage.Sets/src/mage/cards/t/TeferiTimebender.java +++ b/Mage.Sets/src/mage/cards/t/TeferiTimebender.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -34,8 +33,8 @@ public final class TeferiTimebender extends CardImpl { // +2: Untap up to one target artifact or creature. FilterPermanent filter = new FilterPermanent("artifact or creature"); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate())); LoyaltyAbility ability = new LoyaltyAbility(new UntapTargetEffect(), +2); ability.addTarget(new TargetPermanent(0, 1, filter, false)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/t/TeferisCare.java b/Mage.Sets/src/mage/cards/t/TeferisCare.java index 00fa2e68f8..f31a4a67a3 100644 --- a/Mage.Sets/src/mage/cards/t/TeferisCare.java +++ b/Mage.Sets/src/mage/cards/t/TeferisCare.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetEnchantmentPermanent; @@ -30,8 +29,8 @@ public final class TeferisCare extends CardImpl { private static final FilterSpell filter2 = new FilterSpell("enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter2.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); + filter2.add(CardType.ENCHANTMENT.getPredicate()); } public TeferisCare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TeferisCurse.java b/Mage.Sets/src/mage/cards/t/TeferisCurse.java index a0be11ee01..8b78a63ccb 100644 --- a/Mage.Sets/src/mage/cards/t/TeferisCurse.java +++ b/Mage.Sets/src/mage/cards/t/TeferisCurse.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -30,8 +29,8 @@ public final class TeferisCurse extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ARTIFACT))); + CardType.CREATURE.getPredicate(), + CardType.ARTIFACT.getPredicate())); } public TeferisCurse(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 121ade4895..4875eff4f2 100644 --- a/Mage.Sets/src/mage/cards/t/TeferisRealm.java +++ b/Mage.Sets/src/mage/cards/t/TeferisRealm.java @@ -17,7 +17,6 @@ import mage.choices.ChoiceImpl; import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.TokenPredicate; import mage.game.Game; @@ -93,16 +92,16 @@ class TeferisRealmEffect extends OneShotEffect { filter.add(Predicates.not(TokenPredicate.instance)); switch (choosenType) { case ARTIFACT: - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); break; case CREATURE: - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); break; case LAND: - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); break; case NON_AURA_ENCHANTMENT: - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(Predicates.not(new SubtypePredicate(SubType.AURA))); break; default: diff --git a/Mage.Sets/src/mage/cards/t/TeferisSentinel.java b/Mage.Sets/src/mage/cards/t/TeferisSentinel.java index 63844e3431..e05023fdb2 100644 --- a/Mage.Sets/src/mage/cards/t/TeferisSentinel.java +++ b/Mage.Sets/src/mage/cards/t/TeferisSentinel.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -32,7 +31,7 @@ public final class TeferisSentinel extends CardImpl { // As long as you control a Teferi planeswalker, Teferi's Sentinel gets +4/+0. FilterControlledPermanent filter = new FilterControlledPermanent(); - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.TEFERI)); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( diff --git a/Mage.Sets/src/mage/cards/t/TelJiladWolf.java b/Mage.Sets/src/mage/cards/t/TelJiladWolf.java index 92ea7f3f7e..1f39370e16 100644 --- a/Mage.Sets/src/mage/cards/t/TelJiladWolf.java +++ b/Mage.Sets/src/mage/cards/t/TelJiladWolf.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Duration; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class TelJiladWolf extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public TelJiladWolf(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemperedSteel.java b/Mage.Sets/src/mage/cards/t/TemperedSteel.java index 34ff61ea0f..318b86a50d 100644 --- a/Mage.Sets/src/mage/cards/t/TemperedSteel.java +++ b/Mage.Sets/src/mage/cards/t/TemperedSteel.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class TemperedSteel extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Artifact creatures"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public TemperedSteel (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemporalDistortion.java b/Mage.Sets/src/mage/cards/t/TemporalDistortion.java index 23d08a5c54..d55c9ea62f 100644 --- a/Mage.Sets/src/mage/cards/t/TemporalDistortion.java +++ b/Mage.Sets/src/mage/cards/t/TemporalDistortion.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.CounterPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -35,7 +34,7 @@ public final class TemporalDistortion extends CardImpl { private static final FilterPermanent filter2 = new FilterPermanent("permanents with hourglass counters on them"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.LAND), new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.or(CardType.LAND.getPredicate(), CardType.CREATURE.getPredicate())); filter2.add(new CounterPredicate(CounterType.HOURGLASS)); } diff --git a/Mage.Sets/src/mage/cards/t/TemporalEddy.java b/Mage.Sets/src/mage/cards/t/TemporalEddy.java index da513cbeef..83e8cf53f6 100644 --- a/Mage.Sets/src/mage/cards/t/TemporalEddy.java +++ b/Mage.Sets/src/mage/cards/t/TemporalEddy.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,8 +20,8 @@ public final class TemporalEddy extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public TemporalEddy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemptingWurm.java b/Mage.Sets/src/mage/cards/t/TemptingWurm.java index 2e62e99479..2b85bd24e9 100644 --- a/Mage.Sets/src/mage/cards/t/TemptingWurm.java +++ b/Mage.Sets/src/mage/cards/t/TemptingWurm.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.Target; @@ -56,10 +55,10 @@ class TemptingWurmEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/Terastodon.java b/Mage.Sets/src/mage/cards/t/Terastodon.java index 0f21a9b962..4a73c47b75 100644 --- a/Mage.Sets/src/mage/cards/t/Terastodon.java +++ b/Mage.Sets/src/mage/cards/t/Terastodon.java @@ -13,7 +13,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.ElephantToken; @@ -33,7 +32,7 @@ public final class Terastodon extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Terastodon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Terror.java b/Mage.Sets/src/mage/cards/t/Terror.java index 094a54d259..40773dfb79 100644 --- a/Mage.Sets/src/mage/cards/t/Terror.java +++ b/Mage.Sets/src/mage/cards/t/Terror.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.common.TargetCreaturePermanent; @@ -22,7 +21,7 @@ public final class Terror extends CardImpl { private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent("nonartifact, nonblack creature"); static { - FILTER.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + FILTER.add(Predicates.not(CardType.ARTIFACT.getPredicate())); FILTER.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/t/TesharAncestorsApostle.java b/Mage.Sets/src/mage/cards/t/TesharAncestorsApostle.java index c5d8f4c0ae..cfe5898c04 100644 --- a/Mage.Sets/src/mage/cards/t/TesharAncestorsApostle.java +++ b/Mage.Sets/src/mage/cards/t/TesharAncestorsApostle.java @@ -16,7 +16,6 @@ import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterHistoricSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -30,7 +29,7 @@ public final class TesharAncestorsApostle extends CardImpl { static { filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public TesharAncestorsApostle(UUID ownerId, CardSetInfo cardSetInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretAgentOfBolas.java b/Mage.Sets/src/mage/cards/t/TezzeretAgentOfBolas.java index f68b2a94ba..8d3f0b00e1 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretAgentOfBolas.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretAgentOfBolas.java @@ -20,7 +20,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.StaticFilters; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetPlayer; @@ -35,7 +34,7 @@ public final class TezzeretAgentOfBolas extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public TezzeretAgentOfBolas(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretMasterOfMetal.java b/Mage.Sets/src/mage/cards/t/TezzeretMasterOfMetal.java index 962e8aa48b..368382bb53 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretMasterOfMetal.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretMasterOfMetal.java @@ -26,7 +26,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterArtifactCard; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetOpponent; @@ -74,7 +73,7 @@ class TezzeretMasterOfMetalEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent("artifacts and creatures"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ARTIFACT.getPredicate())); } public TezzeretMasterOfMetalEffect() { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretMasterOfTheBridge.java b/Mage.Sets/src/mage/cards/t/TezzeretMasterOfTheBridge.java index c89cdad2b5..0b528fc166 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretMasterOfTheBridge.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretMasterOfTheBridge.java @@ -17,7 +17,6 @@ import mage.filter.FilterSpell; import mage.filter.StaticFilters; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; @@ -33,8 +32,8 @@ public final class TezzeretMasterOfTheBridge extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.PLANESWALKER), - new CardTypePredicate(CardType.CREATURE) + CardType.PLANESWALKER.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java b/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java index 76dcb60a2f..d364b7a112 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.ComparisonType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class TezzeretsAmbition extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control no artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public TezzeretsAmbition(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java index 7b7a6efe2b..e031da075f 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java @@ -19,7 +19,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -33,7 +32,7 @@ public final class TezzeretsGatebreaker extends CardImpl { static { filter.add(Predicates.or( new ColorPredicate(ObjectColor.BLUE), - new CardTypePredicate(CardType.ARTIFACT) + CardType.ARTIFACT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TheAbyss.java b/Mage.Sets/src/mage/cards/t/TheAbyss.java index 7d813e1cac..eea512f274 100644 --- a/Mage.Sets/src/mage/cards/t/TheAbyss.java +++ b/Mage.Sets/src/mage/cards/t/TheAbyss.java @@ -11,7 +11,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -68,7 +67,7 @@ class TheAbyssTriggeredAbility extends TriggeredAbilityImpl { Player player = game.getPlayer(event.getPlayerId()); if (player != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature you control"); - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter.add(new ControllerIdPredicate(player.getId())); Target target = new TargetCreaturePermanent(filter); target.setAbilityController(getControllerId()); diff --git a/Mage.Sets/src/mage/cards/t/TheBindingOfTheTitans.java b/Mage.Sets/src/mage/cards/t/TheBindingOfTheTitans.java index a6c8366987..42031b42eb 100644 --- a/Mage.Sets/src/mage/cards/t/TheBindingOfTheTitans.java +++ b/Mage.Sets/src/mage/cards/t/TheBindingOfTheTitans.java @@ -10,7 +10,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.Target; @@ -30,8 +29,8 @@ public final class TheBindingOfTheTitans extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TheEldestReborn.java b/Mage.Sets/src/mage/cards/t/TheEldestReborn.java index c8120d042e..05e81badd9 100644 --- a/Mage.Sets/src/mage/cards/t/TheEldestReborn.java +++ b/Mage.Sets/src/mage/cards/t/TheEldestReborn.java @@ -14,7 +14,7 @@ import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.target.common.TargetCardInGraveyard; /** @@ -27,8 +27,8 @@ public final class TheEldestReborn extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } @@ -36,8 +36,8 @@ public final class TheEldestReborn extends CardImpl { static { filterSacrifice.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TheMirariConjecture.java b/Mage.Sets/src/mage/cards/t/TheMirariConjecture.java index b3f260ed87..248f8b56cf 100644 --- a/Mage.Sets/src/mage/cards/t/TheMirariConjecture.java +++ b/Mage.Sets/src/mage/cards/t/TheMirariConjecture.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.SagaChapter; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -32,8 +31,8 @@ public final class TheMirariConjecture extends CardImpl { private static final FilterCard filterSorceryCard = new FilterCard("sorcery card from your graveyard"); static { - filterInstantCard.add(new CardTypePredicate(CardType.INSTANT)); - filterSorceryCard.add(new CardTypePredicate(CardType.SORCERY)); + filterInstantCard.add(CardType.INSTANT.getPredicate()); + filterSorceryCard.add(CardType.SORCERY.getPredicate()); } public TheMirariConjecture(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThingInTheIce.java b/Mage.Sets/src/mage/cards/t/ThingInTheIce.java index d6b018e765..b8ac9a6424 100644 --- a/Mage.Sets/src/mage/cards/t/ThingInTheIce.java +++ b/Mage.Sets/src/mage/cards/t/ThingInTheIce.java @@ -22,7 +22,6 @@ import mage.constants.SubType; import mage.counters.CounterType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author fireshoes @@ -33,8 +32,8 @@ public final class ThingInTheIce extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public ThingInTheIce(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThopterArrest.java b/Mage.Sets/src/mage/cards/t/ThopterArrest.java index a5b154d32f..c3464b02ef 100644 --- a/Mage.Sets/src/mage/cards/t/ThopterArrest.java +++ b/Mage.Sets/src/mage/cards/t/ThopterArrest.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetPermanent; @@ -27,8 +26,8 @@ public final class ThopterArrest extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/t/ThopterEngineer.java b/Mage.Sets/src/mage/cards/t/ThopterEngineer.java index ef0ddf1637..7c3663bf99 100644 --- a/Mage.Sets/src/mage/cards/t/ThopterEngineer.java +++ b/Mage.Sets/src/mage/cards/t/ThopterEngineer.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ThopterColorlessToken; /** @@ -27,7 +26,7 @@ public final class ThopterEngineer extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("Artifact creatures you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ThopterEngineer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThopterFoundry.java b/Mage.Sets/src/mage/cards/t/ThopterFoundry.java index 2c5a4c93c5..0ff356f48b 100644 --- a/Mage.Sets/src/mage/cards/t/ThopterFoundry.java +++ b/Mage.Sets/src/mage/cards/t/ThopterFoundry.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TokenPredicate; import mage.game.permanent.token.ThopterToken; import mage.target.common.TargetControlledPermanent; @@ -28,7 +27,7 @@ public final class ThopterFoundry extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a nontoken artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(Predicates.not(TokenPredicate.instance)); } diff --git a/Mage.Sets/src/mage/cards/t/ThornOfAmethyst.java b/Mage.Sets/src/mage/cards/t/ThornOfAmethyst.java index 65fdf87e44..3de6135ad2 100644 --- a/Mage.Sets/src/mage/cards/t/ThornOfAmethyst.java +++ b/Mage.Sets/src/mage/cards/t/ThornOfAmethyst.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public final class ThornOfAmethyst extends CardImpl { private static final FilterCard filter = new FilterCard("Noncreature spells"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ThornOfAmethyst(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}"); diff --git a/Mage.Sets/src/mage/cards/t/ThoughtDistortion.java b/Mage.Sets/src/mage/cards/t/ThoughtDistortion.java index 1981b4d3de..743f64978c 100644 --- a/Mage.Sets/src/mage/cards/t/ThoughtDistortion.java +++ b/Mage.Sets/src/mage/cards/t/ThoughtDistortion.java @@ -13,7 +13,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetOpponent; @@ -51,7 +50,7 @@ class ThoughtDistortionEffect extends OneShotEffect { private static final FilterCard filter = new FilterNonlandCard(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } ThoughtDistortionEffect() { diff --git a/Mage.Sets/src/mage/cards/t/ThoughtPrison.java b/Mage.Sets/src/mage/cards/t/ThoughtPrison.java index 825e82e084..6fcdc24295 100644 --- a/Mage.Sets/src/mage/cards/t/ThoughtPrison.java +++ b/Mage.Sets/src/mage/cards/t/ThoughtPrison.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -64,7 +63,7 @@ class ThoughtPrisonImprintEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("nonland card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public ThoughtPrisonImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/t/ThranForge.java b/Mage.Sets/src/mage/cards/t/ThranForge.java index 008fbbcb1f..d8a5638a66 100644 --- a/Mage.Sets/src/mage/cards/t/ThranForge.java +++ b/Mage.Sets/src/mage/cards/t/ThranForge.java @@ -14,7 +14,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -26,7 +25,7 @@ public final class ThranForge extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public ThranForge(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Thraximundar.java b/Mage.Sets/src/mage/cards/t/Thraximundar.java index 5fe729530d..c1441c014c 100644 --- a/Mage.Sets/src/mage/cards/t/Thraximundar.java +++ b/Mage.Sets/src/mage/cards/t/Thraximundar.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; @@ -65,7 +64,7 @@ class ThraximundarTriggeredAbility extends TriggeredAbilityImpl { static { filter = new FilterControlledPermanent(" a creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public ThraximundarTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/t/ThroneOfGeth.java b/Mage.Sets/src/mage/cards/t/ThroneOfGeth.java index b71086bd71..5c4ce10ae9 100644 --- a/Mage.Sets/src/mage/cards/t/ThroneOfGeth.java +++ b/Mage.Sets/src/mage/cards/t/ThroneOfGeth.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; import java.util.UUID; @@ -23,7 +22,7 @@ public final class ThroneOfGeth extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("an artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ThroneOfGeth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TidalBore.java b/Mage.Sets/src/mage/cards/t/TidalBore.java index cb8619a9e7..167067a672 100644 --- a/Mage.Sets/src/mage/cards/t/TidalBore.java +++ b/Mage.Sets/src/mage/cards/t/TidalBore.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; @@ -25,7 +24,7 @@ public final class TidalBore extends CardImpl { static { filter.add(new SubtypePredicate(SubType.ISLAND)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public TidalBore(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java index 22786e0e86..398afbb7da 100644 --- a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java +++ b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -21,7 +20,7 @@ public final class TimeOfNeed extends CardImpl { private static final FilterCard filter = new FilterCard("legendary creature card"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } diff --git a/Mage.Sets/src/mage/cards/t/TimeOut.java b/Mage.Sets/src/mage/cards/t/TimeOut.java index b72dc69a79..5a3aedad66 100644 --- a/Mage.Sets/src/mage/cards/t/TimeOut.java +++ b/Mage.Sets/src/mage/cards/t/TimeOut.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -25,7 +24,7 @@ public final class TimeOut extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonland permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public TimeOut(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TitaniasSong.java b/Mage.Sets/src/mage/cards/t/TitaniasSong.java index 37b11987ab..85ae8251a3 100644 --- a/Mage.Sets/src/mage/cards/t/TitaniasSong.java +++ b/Mage.Sets/src/mage/cards/t/TitaniasSong.java @@ -18,7 +18,6 @@ import mage.constants.SubLayer; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -51,7 +50,7 @@ class TitaniasSongEffect extends ContinuousEffectImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public TitaniasSongEffect(Duration duration) { diff --git a/Mage.Sets/src/mage/cards/t/ToilToRenown.java b/Mage.Sets/src/mage/cards/t/ToilToRenown.java index 41b1971317..584fbfa431 100644 --- a/Mage.Sets/src/mage/cards/t/ToilToRenown.java +++ b/Mage.Sets/src/mage/cards/t/ToilToRenown.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.TappedPredicate; @@ -25,9 +24,9 @@ public final class ToilToRenown extends CardImpl { static { filter.add(TappedPredicate.instance); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/t/TolarianAcademy.java b/Mage.Sets/src/mage/cards/t/TolarianAcademy.java index c08c3f7924..307a8d10e7 100644 --- a/Mage.Sets/src/mage/cards/t/TolarianAcademy.java +++ b/Mage.Sets/src/mage/cards/t/TolarianAcademy.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class TolarianAcademy extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifact you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public TolarianAcademy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TormentOfVenom.java b/Mage.Sets/src/mage/cards/t/TormentOfVenom.java index b3c23ae5f1..060e17038d 100644 --- a/Mage.Sets/src/mage/cards/t/TormentOfVenom.java +++ b/Mage.Sets/src/mage/cards/t/TormentOfVenom.java @@ -14,7 +14,6 @@ import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.PermanentIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -74,7 +73,7 @@ class TormentOfVenomEffect extends OneShotEffect { if (permanents > 0 && controllingPlayer.chooseUse(outcome, "Sacrifices a nonland permanent?", "Otherwise you have to discard a card or lose 3 life.", "Sacrifice", "Discard or life loss", source, game)) { FilterPermanent filter = new FilterControlledPermanent("another nonland permanent"); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(Predicates.not(new PermanentIdPredicate(targetCreature.getId()))); Target target = new TargetPermanent(filter); if (controllingPlayer.choose(outcome, target, source.getSourceId(), game)) { diff --git a/Mage.Sets/src/mage/cards/t/TorrentialGearhulk.java b/Mage.Sets/src/mage/cards/t/TorrentialGearhulk.java index 8763da84e0..620293fb1b 100644 --- a/Mage.Sets/src/mage/cards/t/TorrentialGearhulk.java +++ b/Mage.Sets/src/mage/cards/t/TorrentialGearhulk.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.ZoneChangeEvent; @@ -36,7 +35,7 @@ public final class TorrentialGearhulk extends CardImpl { private static final FilterCard filter = new FilterCard("instant card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.INSTANT)); + filter.add(CardType.INSTANT.getPredicate()); } public TorrentialGearhulk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ToshiroUmezawa.java b/Mage.Sets/src/mage/cards/t/ToshiroUmezawa.java index 68a6decc05..2c19a35e2b 100644 --- a/Mage.Sets/src/mage/cards/t/ToshiroUmezawa.java +++ b/Mage.Sets/src/mage/cards/t/ToshiroUmezawa.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -37,7 +36,7 @@ public final class ToshiroUmezawa extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); + filterInstant.add(CardType.INSTANT.getPredicate()); } public ToshiroUmezawa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TotemGuideHartebeest.java b/Mage.Sets/src/mage/cards/t/TotemGuideHartebeest.java index 24b97bca98..936d69b080 100644 --- a/Mage.Sets/src/mage/cards/t/TotemGuideHartebeest.java +++ b/Mage.Sets/src/mage/cards/t/TotemGuideHartebeest.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -23,7 +22,7 @@ public final class TotemGuideHartebeest extends CardImpl { private static final FilterCard filter = new FilterCard("Aura card"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new SubtypePredicate(SubType.AURA)); } diff --git a/Mage.Sets/src/mage/cards/t/TourachsGate.java b/Mage.Sets/src/mage/cards/t/TourachsGate.java index 72912a4b95..c2e1ee27f0 100644 --- a/Mage.Sets/src/mage/cards/t/TourachsGate.java +++ b/Mage.Sets/src/mage/cards/t/TourachsGate.java @@ -29,7 +29,6 @@ import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.AttackingPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -48,7 +47,7 @@ public final class TourachsGate extends CardImpl { private static final FilterControlledPermanent filterLand = new FilterControlledPermanent("land you control"); static { - filterLand.add(new CardTypePredicate(CardType.LAND)); + filterLand.add(CardType.LAND.getPredicate()); } private static final FilterPermanent filterUntapped = new FilterPermanent("enchanted land is untapped"); diff --git a/Mage.Sets/src/mage/cards/t/Toymaker.java b/Mage.Sets/src/mage/cards/t/Toymaker.java index 3622e408a1..4a4eed7f62 100644 --- a/Mage.Sets/src/mage/cards/t/Toymaker.java +++ b/Mage.Sets/src/mage/cards/t/Toymaker.java @@ -20,7 +20,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -34,7 +33,7 @@ public final class Toymaker extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("noncreature artifact"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public Toymaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TragicLesson.java b/Mage.Sets/src/mage/cards/t/TragicLesson.java index c6eb17af10..babd1a1ff6 100644 --- a/Mage.Sets/src/mage/cards/t/TragicLesson.java +++ b/Mage.Sets/src/mage/cards/t/TragicLesson.java @@ -12,7 +12,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetControlledPermanent; @@ -46,7 +45,7 @@ class TragicLessonEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a land you control"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public TragicLessonEffect() { diff --git a/Mage.Sets/src/mage/cards/t/TragicPoet.java b/Mage.Sets/src/mage/cards/t/TragicPoet.java index 109c51d9da..6dea1b39cb 100644 --- a/Mage.Sets/src/mage/cards/t/TragicPoet.java +++ b/Mage.Sets/src/mage/cards/t/TragicPoet.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,7 +25,7 @@ public final class TragicPoet extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public TragicPoet(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrailOfEvidence.java b/Mage.Sets/src/mage/cards/t/TrailOfEvidence.java index b108cf9e4e..dc63e65b26 100644 --- a/Mage.Sets/src/mage/cards/t/TrailOfEvidence.java +++ b/Mage.Sets/src/mage/cards/t/TrailOfEvidence.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,8 +20,8 @@ public final class TrailOfEvidence extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public TrailOfEvidence(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrashForTreasure.java b/Mage.Sets/src/mage/cards/t/TrashForTreasure.java index 947491c44b..0cd06763d8 100644 --- a/Mage.Sets/src/mage/cards/t/TrashForTreasure.java +++ b/Mage.Sets/src/mage/cards/t/TrashForTreasure.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetControlledPermanent; @@ -23,8 +22,8 @@ public final class TrashForTreasure extends CardImpl { private static final FilterCard filterCard = new FilterCard("artifact card from your graveyard"); static { - filterPermanent.add(new CardTypePredicate(CardType.ARTIFACT)); - filterCard.add(new CardTypePredicate(CardType.ARTIFACT)); + filterPermanent.add(CardType.ARTIFACT.getPredicate()); + filterCard.add(CardType.ARTIFACT.getPredicate()); } public TrashForTreasure(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TraverseTheUlvenwald.java b/Mage.Sets/src/mage/cards/t/TraverseTheUlvenwald.java index 33285349e6..e558cbeae3 100644 --- a/Mage.Sets/src/mage/cards/t/TraverseTheUlvenwald.java +++ b/Mage.Sets/src/mage/cards/t/TraverseTheUlvenwald.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInLibrary; import java.util.UUID; @@ -24,7 +23,7 @@ public final class TraverseTheUlvenwald extends CardImpl { private static final FilterCard filter = new FilterCard("a creature or land card"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public TraverseTheUlvenwald(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TreasureMage.java b/Mage.Sets/src/mage/cards/t/TreasureMage.java index 5362ffab5c..f7c492ccd9 100644 --- a/Mage.Sets/src/mage/cards/t/TreasureMage.java +++ b/Mage.Sets/src/mage/cards/t/TreasureMage.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.ComparisonType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -26,7 +25,7 @@ public final class TreasureMage extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card with converted mana cost 6 or more"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } diff --git a/Mage.Sets/src/mage/cards/t/TreasuryThrull.java b/Mage.Sets/src/mage/cards/t/TreasuryThrull.java index 0652e250ae..01f573f7f9 100644 --- a/Mage.Sets/src/mage/cards/t/TreasuryThrull.java +++ b/Mage.Sets/src/mage/cards/t/TreasuryThrull.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -24,9 +23,9 @@ public final class TreasuryThrull extends CardImpl { private static final FilterCard filter = new FilterCard("artifact, creature, or enchantment card from your graveyard"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public TreasuryThrull(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TributeMage.java b/Mage.Sets/src/mage/cards/t/TributeMage.java index b12c7b4d00..23aef5d8e7 100644 --- a/Mage.Sets/src/mage/cards/t/TributeMage.java +++ b/Mage.Sets/src/mage/cards/t/TributeMage.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.SubType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -23,7 +22,7 @@ public final class TributeMage extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card with converted mana cost 2"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 2)); } diff --git a/Mage.Sets/src/mage/cards/t/TributeToTheWild.java b/Mage.Sets/src/mage/cards/t/TributeToTheWild.java index 467f8553d8..7d6f60825f 100644 --- a/Mage.Sets/src/mage/cards/t/TributeToTheWild.java +++ b/Mage.Sets/src/mage/cards/t/TributeToTheWild.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,8 +19,8 @@ public final class TributeToTheWild extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); } public TributeToTheWild(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TricksterMage.java b/Mage.Sets/src/mage/cards/t/TricksterMage.java index 03c2c1f5ac..954f63b51c 100644 --- a/Mage.Sets/src/mage/cards/t/TricksterMage.java +++ b/Mage.Sets/src/mage/cards/t/TricksterMage.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -29,9 +28,9 @@ public final class TricksterMage extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public TricksterMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrinketMage.java b/Mage.Sets/src/mage/cards/t/TrinketMage.java index edbf3d88bb..2d39f8b52b 100644 --- a/Mage.Sets/src/mage/cards/t/TrinketMage.java +++ b/Mage.Sets/src/mage/cards/t/TrinketMage.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.ComparisonType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -25,7 +24,7 @@ public final class TrinketMage extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card with converted mana cost 1 or less"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } diff --git a/Mage.Sets/src/mage/cards/t/TrophyMage.java b/Mage.Sets/src/mage/cards/t/TrophyMage.java index 2ba6ba8057..ac5de99e0b 100644 --- a/Mage.Sets/src/mage/cards/t/TrophyMage.java +++ b/Mage.Sets/src/mage/cards/t/TrophyMage.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.ComparisonType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -24,7 +23,7 @@ public final class TrophyMage extends CardImpl { private static final FilterCard filter = new FilterCard("an artifact card with converted mana cost 3"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 3)); } diff --git a/Mage.Sets/src/mage/cards/t/TrygonPredator.java b/Mage.Sets/src/mage/cards/t/TrygonPredator.java index e71704307a..1acd12e690 100644 --- a/Mage.Sets/src/mage/cards/t/TrygonPredator.java +++ b/Mage.Sets/src/mage/cards/t/TrygonPredator.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -78,8 +77,8 @@ class TrygonPredatorTriggeredAbility extends TriggeredAbilityImpl { if (player != null) { FilterPermanent filter = new FilterPermanent("an artifact or enchantment controlled by " + player.getLogName()); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate())); filter.add(new ControllerIdPredicate(event.getTargetId())); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/t/Turnabout.java b/Mage.Sets/src/mage/cards/t/Turnabout.java index 968a0cd1bb..2a0464eaf2 100644 --- a/Mage.Sets/src/mage/cards/t/Turnabout.java +++ b/Mage.Sets/src/mage/cards/t/Turnabout.java @@ -1,9 +1,6 @@ package mage.cards.t; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -14,15 +11,17 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.TargetPlayer; +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + /** - * * @author Plopman */ public final class Turnabout extends CardImpl { @@ -107,7 +106,7 @@ class TurnaboutEffect extends OneShotEffect { } FilterPermanent filter = new FilterPermanent(); - filter.add(new CardTypePredicate(type)); + filter.add(type.getPredicate()); if (choiceImpl.getChoice().equals("Untap")) { filter.add(TappedPredicate.instance); diff --git a/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java b/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java index bc5cd50021..a226f4a977 100644 --- a/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java +++ b/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java @@ -17,7 +17,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.filter.predicate.permanent.CounterPredicate; @@ -30,7 +29,7 @@ public final class TuskguardCaptain extends CardImpl { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); filter.add(new CounterPredicate(CounterType.P1P1)); } diff --git a/Mage.Sets/src/mage/cards/t/TuvasaTheSunlit.java b/Mage.Sets/src/mage/cards/t/TuvasaTheSunlit.java index f0e8b6b702..1dd9cbae18 100644 --- a/Mage.Sets/src/mage/cards/t/TuvasaTheSunlit.java +++ b/Mage.Sets/src/mage/cards/t/TuvasaTheSunlit.java @@ -23,7 +23,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.common.FilterEnchantmentPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -80,7 +79,7 @@ class TuvasaTheSunlitTriggeredAbility extends SpellCastControllerTriggeredAbilit public TuvasaTheSunlitTriggeredAbility() { super(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), - (FilterSpell) new FilterSpell("an enchantment spell").add(new CardTypePredicate(CardType.ENCHANTMENT)), false, true); + (FilterSpell) new FilterSpell("an enchantment spell").add(CardType.ENCHANTMENT.getPredicate()), false, true); } public TuvasaTheSunlitTriggeredAbility(final TuvasaTheSunlitTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/cards/t/Twiddle.java b/Mage.Sets/src/mage/cards/t/Twiddle.java index 87fdbf75df..b5ca273658 100644 --- a/Mage.Sets/src/mage/cards/t/Twiddle.java +++ b/Mage.Sets/src/mage/cards/t/Twiddle.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -21,9 +20,9 @@ public final class Twiddle extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Twiddle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TwinningGlass.java b/Mage.Sets/src/mage/cards/t/TwinningGlass.java index 6d4e76138f..2498178e5c 100644 --- a/Mage.Sets/src/mage/cards/t/TwinningGlass.java +++ b/Mage.Sets/src/mage/cards/t/TwinningGlass.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.NamePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -74,7 +73,7 @@ class TwinningGlassEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { FilterCard filterCard = new FilterCard(); - filterCard.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterCard.add(Predicates.not(CardType.LAND.getPredicate())); Permanent twinningGlass = game.getPermanent(source.getSourceId()); Player controller = game.getPlayer(source.getControllerId()); SpellsCastWatcher watcher = game.getState().getWatcher(SpellsCastWatcher.class); diff --git a/Mage.Sets/src/mage/cards/t/TwistedJustice.java b/Mage.Sets/src/mage/cards/t/TwistedJustice.java index 99c02a8d0f..f757a13db9 100644 --- a/Mage.Sets/src/mage/cards/t/TwistedJustice.java +++ b/Mage.Sets/src/mage/cards/t/TwistedJustice.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -59,7 +58,7 @@ class TwistedJusticeEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); FilterControlledPermanent filter = new FilterControlledPermanent("creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); diff --git a/Mage.Sets/src/mage/cards/t/Twitch.java b/Mage.Sets/src/mage/cards/t/Twitch.java index 1e3d27a166..c8c4b91cc7 100644 --- a/Mage.Sets/src/mage/cards/t/Twitch.java +++ b/Mage.Sets/src/mage/cards/t/Twitch.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,9 +21,9 @@ public final class Twitch extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public Twitch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java b/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java index abdd56dfad..8ed90c07f2 100644 --- a/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java +++ b/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java @@ -12,7 +12,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.ZombieToken; import mage.players.Player; @@ -65,8 +64,8 @@ class TymaretCallsTheDeadFirstEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java b/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java index a0cd5f7018..4150390c7d 100644 --- a/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java +++ b/Mage.Sets/src/mage/cards/t/TyrantsFamiliar.java @@ -16,7 +16,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.DefendingPlayerControlsPredicate; import mage.target.TargetPermanent; @@ -29,7 +28,7 @@ public final class TyrantsFamiliar extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature defending player controls"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(DefendingPlayerControlsPredicate.instance); } diff --git a/Mage.Sets/src/mage/cards/u/UncageTheMenagerie.java b/Mage.Sets/src/mage/cards/u/UncageTheMenagerie.java index e45a6432a5..dbde5b9c0c 100644 --- a/Mage.Sets/src/mage/cards/u/UncageTheMenagerie.java +++ b/Mage.Sets/src/mage/cards/u/UncageTheMenagerie.java @@ -8,7 +8,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -42,7 +41,7 @@ class UncageTheMenagerieEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public UncageTheMenagerieEffect() { diff --git a/Mage.Sets/src/mage/cards/u/UncoveredClues.java b/Mage.Sets/src/mage/cards/u/UncoveredClues.java index 13411cb46b..a4ae64a715 100644 --- a/Mage.Sets/src/mage/cards/u/UncoveredClues.java +++ b/Mage.Sets/src/mage/cards/u/UncoveredClues.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public final class UncoveredClues extends CardImpl { private static final FilterCard filter = new FilterCard("up to two instant and/or sorcery cards"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public UncoveredClues(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java index 6011ecc25f..afe33929b8 100644 --- a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java +++ b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java @@ -13,7 +13,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; @@ -59,7 +58,7 @@ public final class UnderworldSlums extends CardImpl { addCost(new TapSourceCost()); addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard("basic Swamp, Mountain or Forest"); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); subtypePredicates.add(new SubtypePredicate(SubType.SWAMP)); subtypePredicates.add(new SubtypePredicate(SubType.MOUNTAIN)); diff --git a/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java b/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java index cac786cdcc..fee12d9e9e 100644 --- a/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java +++ b/Mage.Sets/src/mage/cards/u/UnityOfTheDroids.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -28,8 +27,8 @@ public final class UnityOfTheDroids extends CardImpl { private static final FilterCreaturePermanent nonArtifactCreatureFilter = new FilterCreaturePermanent("nonartifact creature"); static { - artifactCreatureFilter.add(new CardTypePredicate(CardType.ARTIFACT)); - nonArtifactCreatureFilter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + artifactCreatureFilter.add(CardType.ARTIFACT.getPredicate()); + nonArtifactCreatureFilter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } diff --git a/Mage.Sets/src/mage/cards/u/Unmask.java b/Mage.Sets/src/mage/cards/u/Unmask.java index 0b2dca411b..a52ea640f5 100644 --- a/Mage.Sets/src/mage/cards/u/Unmask.java +++ b/Mage.Sets/src/mage/cards/u/Unmask.java @@ -12,7 +12,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPlayer; import mage.target.common.TargetCardInHand; @@ -27,7 +26,7 @@ public final class Unmask extends CardImpl { private static final FilterCard filterNonLand = new FilterCard("nonland card"); static { - filterNonLand.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterNonLand.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(new ColorPredicate(ObjectColor.BLACK)); } diff --git a/Mage.Sets/src/mage/cards/u/UnyaroGriffin.java b/Mage.Sets/src/mage/cards/u/UnyaroGriffin.java index 7617d736bc..7957b593d4 100644 --- a/Mage.Sets/src/mage/cards/u/UnyaroGriffin.java +++ b/Mage.Sets/src/mage/cards/u/UnyaroGriffin.java @@ -15,7 +15,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetSpell; @@ -30,8 +29,8 @@ public final class UnyaroGriffin extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.RED)); filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public UnyaroGriffin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UrborgStalker.java b/Mage.Sets/src/mage/cards/u/UrborgStalker.java index 45c7088447..3cedae59d5 100644 --- a/Mage.Sets/src/mage/cards/u/UrborgStalker.java +++ b/Mage.Sets/src/mage/cards/u/UrborgStalker.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -30,7 +29,7 @@ public final class UrborgStalker extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.ACTIVE)); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public UrborgStalker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UrgentExorcism.java b/Mage.Sets/src/mage/cards/u/UrgentExorcism.java index 47968fdabf..ef837c123c 100644 --- a/Mage.Sets/src/mage/cards/u/UrgentExorcism.java +++ b/Mage.Sets/src/mage/cards/u/UrgentExorcism.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.TargetPermanent; @@ -24,7 +23,7 @@ public final class UrgentExorcism extends CardImpl { static { filter.add(Predicates.or( new SubtypePredicate(SubType.SPIRIT), - new CardTypePredicate(CardType.ENCHANTMENT))); + CardType.ENCHANTMENT.getPredicate())); } public UrgentExorcism(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UrzaAcademyHeadmaster.java b/Mage.Sets/src/mage/cards/u/UrzaAcademyHeadmaster.java index 219c99168a..fca38d8129 100644 --- a/Mage.Sets/src/mage/cards/u/UrzaAcademyHeadmaster.java +++ b/Mage.Sets/src/mage/cards/u/UrzaAcademyHeadmaster.java @@ -33,7 +33,6 @@ import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.common.*; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.Game; import mage.game.command.emblems.*; @@ -91,13 +90,13 @@ class UrzaAcademyHeadmasterRandomEffect extends OneShotEffect { static { filter1.add(new ControllerPredicate(TargetController.YOU)); - filter2.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter2.add(Predicates.not(CardType.CREATURE.getPredicate())); filter3.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); filter4.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public UrzaAcademyHeadmasterRandomEffect(int selection, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java b/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java index 969569b743..c1a3feb6b7 100644 --- a/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java +++ b/Mage.Sets/src/mage/cards/u/UrzasRuinousBlast.java @@ -10,7 +10,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; /** @@ -22,7 +21,7 @@ public final class UrzasRuinousBlast extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("nonland permanents that aren't legendary"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } diff --git a/Mage.Sets/src/mage/cards/v/VadersCommand.java b/Mage.Sets/src/mage/cards/v/VadersCommand.java index 69208f4bc3..fbd03123db 100644 --- a/Mage.Sets/src/mage/cards/v/VadersCommand.java +++ b/Mage.Sets/src/mage/cards/v/VadersCommand.java @@ -13,7 +13,6 @@ import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; @@ -28,8 +27,8 @@ public final class VadersCommand extends CardImpl { private static final FilterCreaturePermanent filterNonArtifact = new FilterCreaturePermanent("nonartifact creature"); static { - filterPlaneswalker.add(new CardTypePredicate(CardType.PLANESWALKER)); - filterNonArtifact.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filterPlaneswalker.add(CardType.PLANESWALKER.getPredicate()); + filterNonArtifact.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public VadersCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/Valor.java b/Mage.Sets/src/mage/cards/v/Valor.java index 993e08e77b..466e34dbcc 100644 --- a/Mage.Sets/src/mage/cards/v/Valor.java +++ b/Mage.Sets/src/mage/cards/v/Valor.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +30,7 @@ public final class Valor extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Plains"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SubtypePredicate(SubType.PLAINS)); } diff --git a/Mage.Sets/src/mage/cards/v/VampireCharmseeker.java b/Mage.Sets/src/mage/cards/v/VampireCharmseeker.java index 75c50ddcba..97a63d0958 100644 --- a/Mage.Sets/src/mage/cards/v/VampireCharmseeker.java +++ b/Mage.Sets/src/mage/cards/v/VampireCharmseeker.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInGraveyard; /** @@ -27,9 +26,9 @@ public final class VampireCharmseeker extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY), - new CardTypePredicate(CardType.CREATURE) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate(), + CardType.CREATURE.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/v/VedalkenCertarch.java b/Mage.Sets/src/mage/cards/v/VedalkenCertarch.java index afa85439ab..1ec8de0648 100644 --- a/Mage.Sets/src/mage/cards/v/VedalkenCertarch.java +++ b/Mage.Sets/src/mage/cards/v/VedalkenCertarch.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; @@ -30,9 +29,9 @@ public final class VedalkenCertarch extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public VedalkenCertarch (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VedalkenOrrery.java b/Mage.Sets/src/mage/cards/v/VedalkenOrrery.java index dea684cfd6..b989fdfcdf 100644 --- a/Mage.Sets/src/mage/cards/v/VedalkenOrrery.java +++ b/Mage.Sets/src/mage/cards/v/VedalkenOrrery.java @@ -11,7 +11,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class VedalkenOrrery extends CardImpl { private static final FilterCard filter = new FilterCard("spells"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public VedalkenOrrery(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VensersDiffusion.java b/Mage.Sets/src/mage/cards/v/VensersDiffusion.java index b7c810903f..fe9b7b4b8f 100644 --- a/Mage.Sets/src/mage/cards/v/VensersDiffusion.java +++ b/Mage.Sets/src/mage/cards/v/VensersDiffusion.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterPermanentOrSuspendedCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetPermanentOrSuspendedCard; /** @@ -21,7 +20,7 @@ public final class VensersDiffusion extends CardImpl { private static final FilterPermanentOrSuspendedCard filter = new FilterPermanentOrSuspendedCard("nonland permanent or suspended card"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public VensersDiffusion (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VerduranEnchantress.java b/Mage.Sets/src/mage/cards/v/VerduranEnchantress.java index 1fcff8821f..abd7cc2521 100644 --- a/Mage.Sets/src/mage/cards/v/VerduranEnchantress.java +++ b/Mage.Sets/src/mage/cards/v/VerduranEnchantress.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.UUID; @@ -22,7 +21,7 @@ public final class VerduranEnchantress extends CardImpl { private static final FilterSpell filter = new FilterSpell("an enchantment spell"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public VerduranEnchantress(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VernalEquinox.java b/Mage.Sets/src/mage/cards/v/VernalEquinox.java index 87900a74f5..5eee98d639 100644 --- a/Mage.Sets/src/mage/cards/v/VernalEquinox.java +++ b/Mage.Sets/src/mage/cards/v/VernalEquinox.java @@ -11,7 +11,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class VernalEquinox extends CardImpl { private static final FilterCard filter = new FilterCard("creature and enchantment spells"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public VernalEquinox(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VesselOfNascency.java b/Mage.Sets/src/mage/cards/v/VesselOfNascency.java index 8113992126..3434d7852e 100644 --- a/Mage.Sets/src/mage/cards/v/VesselOfNascency.java +++ b/Mage.Sets/src/mage/cards/v/VesselOfNascency.java @@ -18,7 +18,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -54,11 +53,11 @@ class VesselOfNascencyEffect extends OneShotEffect { private static final FilterCard filterPutInHand = new FilterCard("an artifact, creature, enchantment, land, or planeswalker card"); static { - filterPutInHand.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER))); + filterPutInHand.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public VesselOfNascencyEffect() { diff --git a/Mage.Sets/src/mage/cards/v/Vesuva.java b/Mage.Sets/src/mage/cards/v/Vesuva.java index 9747bca4e4..3338885a70 100644 --- a/Mage.Sets/src/mage/cards/v/Vesuva.java +++ b/Mage.Sets/src/mage/cards/v/Vesuva.java @@ -11,7 +11,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public final class Vesuva extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("land"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public Vesuva(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VexingScuttler.java b/Mage.Sets/src/mage/cards/v/VexingScuttler.java index 32bf347817..0cda528036 100644 --- a/Mage.Sets/src/mage/cards/v/VexingScuttler.java +++ b/Mage.Sets/src/mage/cards/v/VexingScuttler.java @@ -15,7 +15,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -28,8 +27,8 @@ public final class VexingScuttler extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public VexingScuttler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VictoriousDestruction.java b/Mage.Sets/src/mage/cards/v/VictoriousDestruction.java index b497fda325..910dd59849 100644 --- a/Mage.Sets/src/mage/cards/v/VictoriousDestruction.java +++ b/Mage.Sets/src/mage/cards/v/VictoriousDestruction.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,8 +21,8 @@ public final class VictoriousDestruction extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public VictoriousDestruction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VileRequiem.java b/Mage.Sets/src/mage/cards/v/VileRequiem.java index e602b7b6b3..e6c3d3d36b 100644 --- a/Mage.Sets/src/mage/cards/v/VileRequiem.java +++ b/Mage.Sets/src/mage/cards/v/VileRequiem.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.target.TargetPermanent; import mage.target.targetadjustment.VerseCounterAdjuster; @@ -33,7 +32,7 @@ public final class VileRequiem extends CardImpl { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public VileRequiem(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/ViolentImpact.java b/Mage.Sets/src/mage/cards/v/ViolentImpact.java index 00b155a8f6..01d86204c1 100644 --- a/Mage.Sets/src/mage/cards/v/ViolentImpact.java +++ b/Mage.Sets/src/mage/cards/v/ViolentImpact.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,8 +21,8 @@ public final class ViolentImpact extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public ViolentImpact(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/ViridianShaman.java b/Mage.Sets/src/mage/cards/v/ViridianShaman.java index a86cfa8e8d..314b5b2d90 100644 --- a/Mage.Sets/src/mage/cards/v/ViridianShaman.java +++ b/Mage.Sets/src/mage/cards/v/ViridianShaman.java @@ -11,7 +11,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,7 +22,7 @@ public final class ViridianShaman extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public ViridianShaman(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VisceridDrone.java b/Mage.Sets/src/mage/cards/v/VisceridDrone.java index f1e3b4c21c..360df543f8 100644 --- a/Mage.Sets/src/mage/cards/v/VisceridDrone.java +++ b/Mage.Sets/src/mage/cards/v/VisceridDrone.java @@ -18,7 +18,6 @@ import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledCreaturePermanent; @@ -36,7 +35,7 @@ public final class VisceridDrone extends CardImpl { private static final FilterControlledPermanent filter3 = new FilterControlledPermanent("snow Swamp"); static { - filter1.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter1.add(Predicates.not(CardType.ARTIFACT.getPredicate())); filter2.add(new SubtypePredicate(SubType.SWAMP)); filter3.add(new SubtypePredicate(SubType.SWAMP)); filter3.add(new SupertypePredicate(SuperType.SNOW)); diff --git a/Mage.Sets/src/mage/cards/v/VitalSplicer.java b/Mage.Sets/src/mage/cards/v/VitalSplicer.java index af305ba58f..65a6405be2 100644 --- a/Mage.Sets/src/mage/cards/v/VitalSplicer.java +++ b/Mage.Sets/src/mage/cards/v/VitalSplicer.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.game.permanent.token.GolemToken; @@ -31,7 +30,7 @@ public final class VitalSplicer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Golem you control"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.GOLEM)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/v/VivienChampionOfTheWilds.java b/Mage.Sets/src/mage/cards/v/VivienChampionOfTheWilds.java index f08781e6df..1560c2360e 100644 --- a/Mage.Sets/src/mage/cards/v/VivienChampionOfTheWilds.java +++ b/Mage.Sets/src/mage/cards/v/VivienChampionOfTheWilds.java @@ -14,7 +14,6 @@ import mage.abilities.keyword.VigilanceAbility; import mage.cards.*; import mage.constants.*; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.TargetCard; @@ -33,7 +32,7 @@ public final class VivienChampionOfTheWilds extends CardImpl { private static final FilterCard filter = new FilterCard("creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public VivienChampionOfTheWilds(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VivienReid.java b/Mage.Sets/src/mage/cards/v/VivienReid.java index 8da6c440ca..289fade287 100644 --- a/Mage.Sets/src/mage/cards/v/VivienReid.java +++ b/Mage.Sets/src/mage/cards/v/VivienReid.java @@ -19,7 +19,6 @@ import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.command.emblems.VivienReidEmblem; import mage.target.TargetPermanent; @@ -34,14 +33,14 @@ public final class VivienReid extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND) + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate() )); filter2.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), Predicates.and( - new CardTypePredicate(CardType.CREATURE), + CardType.CREATURE.getPredicate(), new AbilityPredicate(FlyingAbility.class) ) )); diff --git a/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java b/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java index a65c5e5d5d..dfc0320a23 100644 --- a/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java +++ b/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java @@ -21,7 +21,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.stack.StackAbility; @@ -37,7 +36,7 @@ public final class VizierOfTheAnointed extends CardImpl { private static final FilterCard filter = new FilterCard("a creature card with eternalize or embalm"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new VizierOfTheAnointedAbilityPredicate()); } diff --git a/Mage.Sets/src/mage/cards/v/Void.java b/Mage.Sets/src/mage/cards/v/Void.java index ff16f61edd..2f11a51224 100644 --- a/Mage.Sets/src/mage/cards/v/Void.java +++ b/Mage.Sets/src/mage/cards/v/Void.java @@ -16,7 +16,6 @@ import mage.constants.ComparisonType; import mage.constants.Outcome; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -86,7 +85,7 @@ class VoidEffect extends OneShotEffect { } FilterCard filterCard = new FilterCard(); filterCard.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, number)); - filterCard.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filterCard.add(Predicates.not(CardType.LAND.getPredicate())); Player targetPlayer = game.getPlayer(targetPointer.getFirst(game, source)); if (targetPlayer != null) { diff --git a/Mage.Sets/src/mage/cards/v/VolcanicSubmersion.java b/Mage.Sets/src/mage/cards/v/VolcanicSubmersion.java index e3650ae587..a22bce9959 100644 --- a/Mage.Sets/src/mage/cards/v/VolcanicSubmersion.java +++ b/Mage.Sets/src/mage/cards/v/VolcanicSubmersion.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -23,8 +22,8 @@ public final class VolcanicSubmersion extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public VolcanicSubmersion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VolcanicWind.java b/Mage.Sets/src/mage/cards/v/VolcanicWind.java index 4d2b33edff..f9338ab134 100644 --- a/Mage.Sets/src/mage/cards/v/VolcanicWind.java +++ b/Mage.Sets/src/mage/cards/v/VolcanicWind.java @@ -9,7 +9,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanentAmount; /** @@ -21,7 +20,7 @@ public final class VolcanicWind extends CardImpl { static final private FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } static final private String rule = "{this} deals X damage divided as you choose among any number of target creatures, where X is the number of creatures on the battlefield as you cast {this}"; diff --git a/Mage.Sets/src/mage/cards/v/VolrathsStronghold.java b/Mage.Sets/src/mage/cards/v/VolrathsStronghold.java index cb919ad6a4..6d41ea61d8 100644 --- a/Mage.Sets/src/mage/cards/v/VolrathsStronghold.java +++ b/Mage.Sets/src/mage/cards/v/VolrathsStronghold.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCardInYourGraveyard; /** @@ -26,7 +25,7 @@ public final class VolrathsStronghold extends CardImpl { private static final FilterCard filter = new FilterCard("creature card from your graveyard"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public VolrathsStronghold(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VoltaicConstruct.java b/Mage.Sets/src/mage/cards/v/VoltaicConstruct.java index 65d58d71d2..fbaccf12fb 100644 --- a/Mage.Sets/src/mage/cards/v/VoltaicConstruct.java +++ b/Mage.Sets/src/mage/cards/v/VoltaicConstruct.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetCreaturePermanent; /** @@ -25,7 +24,7 @@ public final class VoltaicConstruct extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public VoltaicConstruct(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VoltaicKey.java b/Mage.Sets/src/mage/cards/v/VoltaicKey.java index 76dc13bb96..960fb864bc 100644 --- a/Mage.Sets/src/mage/cards/v/VoltaicKey.java +++ b/Mage.Sets/src/mage/cards/v/VoltaicKey.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class VoltaicKey extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public VoltaicKey(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VoraciousReader.java b/Mage.Sets/src/mage/cards/v/VoraciousReader.java index 7acd628632..a761865c20 100644 --- a/Mage.Sets/src/mage/cards/v/VoraciousReader.java +++ b/Mage.Sets/src/mage/cards/v/VoraciousReader.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,8 +23,8 @@ public final class VoraciousReader extends CardImpl { private static final FilterCard filter = new FilterCard("Instant and sorcery spells"); static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/v/VorelOfTheHullClade.java b/Mage.Sets/src/mage/cards/v/VorelOfTheHullClade.java index 01dbf3b1bf..d4b5901de9 100644 --- a/Mage.Sets/src/mage/cards/v/VorelOfTheHullClade.java +++ b/Mage.Sets/src/mage/cards/v/VorelOfTheHullClade.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.counters.Counter; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.TargetPermanent; @@ -33,9 +32,9 @@ public final class VorelOfTheHullClade extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); } public VorelOfTheHullClade(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VraskasConquistador.java b/Mage.Sets/src/mage/cards/v/VraskasConquistador.java index f57955f6c7..c1709e2bc9 100644 --- a/Mage.Sets/src/mage/cards/v/VraskasConquistador.java +++ b/Mage.Sets/src/mage/cards/v/VraskasConquistador.java @@ -14,7 +14,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetOpponent; @@ -27,7 +26,7 @@ public final class VraskasConquistador extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent(); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.VRASKA)); } diff --git a/Mage.Sets/src/mage/cards/w/WalkThePlank.java b/Mage.Sets/src/mage/cards/w/WalkThePlank.java index e4a61b8b6c..8f8d5b9f2f 100644 --- a/Mage.Sets/src/mage/cards/w/WalkThePlank.java +++ b/Mage.Sets/src/mage/cards/w/WalkThePlank.java @@ -9,7 +9,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCreaturePermanent; @@ -22,7 +21,7 @@ public final class WalkThePlank extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Merfolk creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new SubtypePredicate(SubType.MERFOLK))); } diff --git a/Mage.Sets/src/mage/cards/w/WardenOfEvosIsle.java b/Mage.Sets/src/mage/cards/w/WardenOfEvosIsle.java index 5b2edebd4a..d8f5556047 100644 --- a/Mage.Sets/src/mage/cards/w/WardenOfEvosIsle.java +++ b/Mage.Sets/src/mage/cards/w/WardenOfEvosIsle.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.AbilityPredicate; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -23,7 +22,7 @@ public final class WardenOfEvosIsle extends CardImpl { private static final FilterCard filter = new FilterCard("Creature spells with flying"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new AbilityPredicate(FlyingAbility.class)); } diff --git a/Mage.Sets/src/mage/cards/w/WardenOfTheEye.java b/Mage.Sets/src/mage/cards/w/WardenOfTheEye.java index 738741e4cd..e3320ce2a4 100644 --- a/Mage.Sets/src/mage/cards/w/WardenOfTheEye.java +++ b/Mage.Sets/src/mage/cards/w/WardenOfTheEye.java @@ -14,7 +14,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerPredicate; import mage.target.TargetCard; @@ -28,8 +27,8 @@ public final class WardenOfTheEye extends CardImpl { static { filter.add(new OwnerPredicate(TargetController.YOU)); - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public WardenOfTheEye(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WarpingWail.java b/Mage.Sets/src/mage/cards/w/WarpingWail.java index 34be0129c0..54a1f032bd 100644 --- a/Mage.Sets/src/mage/cards/w/WarpingWail.java +++ b/Mage.Sets/src/mage/cards/w/WarpingWail.java @@ -14,7 +14,6 @@ import mage.constants.ComparisonType; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.game.permanent.token.EldraziScionToken; @@ -34,7 +33,7 @@ public final class WarpingWail extends CardImpl { filterCreature.add(Predicates.or( new PowerPredicate(ComparisonType.FEWER_THAN, 2), new ToughnessPredicate(ComparisonType.FEWER_THAN, 2))); - filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); + filterSorcery.add(CardType.SORCERY.getPredicate()); } public WarpingWail(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WarrenWeirding.java b/Mage.Sets/src/mage/cards/w/WarrenWeirding.java index f3b2a62a0b..b5de439dac 100644 --- a/Mage.Sets/src/mage/cards/w/WarrenWeirding.java +++ b/Mage.Sets/src/mage/cards/w/WarrenWeirding.java @@ -18,13 +18,11 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.GoblinRogueToken; -import mage.game.permanent.token.TokenImpl; import mage.game.permanent.token.Token; import mage.players.Player; import mage.target.TargetPlayer; @@ -80,7 +78,7 @@ class WarrenWeirdingEffect extends OneShotEffect { return false; } FilterControlledPermanent filter = new FilterControlledPermanent("creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new ControllerIdPredicate(player.getId())); TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true); diff --git a/Mage.Sets/src/mage/cards/w/WasitoraNekoruQueen.java b/Mage.Sets/src/mage/cards/w/WasitoraNekoruQueen.java index ce4510f533..19b42c19fc 100644 --- a/Mage.Sets/src/mage/cards/w/WasitoraNekoruQueen.java +++ b/Mage.Sets/src/mage/cards/w/WasitoraNekoruQueen.java @@ -16,7 +16,6 @@ import mage.constants.SubType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.WasitoraCatDragonToken; @@ -80,7 +79,7 @@ class WasitoraNekoruQueenEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (damagedPlayer != null && controller != null) { FilterControlledPermanent filter = new FilterControlledPermanent("creature"); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetPermanent target = new TargetPermanent(1, 1, filter, true); if (damagedPlayer.choose(Outcome.Sacrifice, target, source.getSourceId(), game)) { Permanent objectToBeSacrificed = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/w/WaspOfTheBitterEnd.java b/Mage.Sets/src/mage/cards/w/WaspOfTheBitterEnd.java index 2b87ed3ba0..4b148c2dd0 100644 --- a/Mage.Sets/src/mage/cards/w/WaspOfTheBitterEnd.java +++ b/Mage.Sets/src/mage/cards/w/WaspOfTheBitterEnd.java @@ -13,7 +13,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCreaturePermanent; @@ -26,7 +25,7 @@ public final class WaspOfTheBitterEnd extends CardImpl { private static final FilterSpell filter = new FilterSpell("a Bolas planeswalker spell"); static { - filter.add(new CardTypePredicate(CardType.PLANESWALKER)); + filter.add(CardType.PLANESWALKER.getPredicate()); filter.add(new SubtypePredicate(SubType.BOLAS)); } diff --git a/Mage.Sets/src/mage/cards/w/WaveOfReckoning.java b/Mage.Sets/src/mage/cards/w/WaveOfReckoning.java index e30678cc89..fab02cbc8d 100644 --- a/Mage.Sets/src/mage/cards/w/WaveOfReckoning.java +++ b/Mage.Sets/src/mage/cards/w/WaveOfReckoning.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -52,7 +51,7 @@ class WaveOfReckoningDamageEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { FilterPermanent filter = new FilterPermanent(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { int amount = permanent.getPower().getValue(); diff --git a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java index 1a566c49e1..69a25eae30 100644 --- a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java +++ b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -52,10 +51,10 @@ class WaveOfVitriolEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), Predicates.and( - new CardTypePredicate(CardType.LAND), + CardType.LAND.getPredicate(), Predicates.not(new SupertypePredicate(SuperType.BASIC)) ) )); diff --git a/Mage.Sets/src/mage/cards/w/WeldfastEngineer.java b/Mage.Sets/src/mage/cards/w/WeldfastEngineer.java index 2b22da33ad..6c472e347f 100644 --- a/Mage.Sets/src/mage/cards/w/WeldfastEngineer.java +++ b/Mage.Sets/src/mage/cards/w/WeldfastEngineer.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.TargetController; import mage.filter.common.FilterControlledCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.common.TargetControlledPermanent; /** @@ -25,7 +24,7 @@ public final class WeldfastEngineer extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("artifact creature you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public WeldfastEngineer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/Whipflare.java b/Mage.Sets/src/mage/cards/w/Whipflare.java index 74cdf876e3..da7ff31eb7 100644 --- a/Mage.Sets/src/mage/cards/w/Whipflare.java +++ b/Mage.Sets/src/mage/cards/w/Whipflare.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public final class Whipflare extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonartifact creature"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ARTIFACT))); + filter.add(Predicates.not(CardType.ARTIFACT.getPredicate())); } public Whipflare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WhirlerRogue.java b/Mage.Sets/src/mage/cards/w/WhirlerRogue.java index 93210d72a9..21ca121b04 100644 --- a/Mage.Sets/src/mage/cards/w/WhirlerRogue.java +++ b/Mage.Sets/src/mage/cards/w/WhirlerRogue.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.ThopterColorlessToken; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; @@ -30,7 +29,7 @@ public final class WhirlerRogue extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } public WhirlerRogue(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildMammoth.java b/Mage.Sets/src/mage/cards/w/WildMammoth.java index 26f62dc9d9..31911a474a 100644 --- a/Mage.Sets/src/mage/cards/w/WildMammoth.java +++ b/Mage.Sets/src/mage/cards/w/WildMammoth.java @@ -16,7 +16,6 @@ import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.TargetController; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -74,7 +73,7 @@ class WildMammothEffect extends OneShotEffect { int maxCreatures = 0; boolean tie = false; FilterPermanent filter = new FilterPermanent(); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); for (UUID playerId : game.getState().getPlayersInRange(source.getControllerId(), game)) { Player player = game.getPlayer(playerId); diff --git a/Mage.Sets/src/mage/cards/w/WildResearch.java b/Mage.Sets/src/mage/cards/w/WildResearch.java index 2eb4936c37..2cc4eecc20 100644 --- a/Mage.Sets/src/mage/cards/w/WildResearch.java +++ b/Mage.Sets/src/mage/cards/w/WildResearch.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; @@ -31,8 +30,8 @@ public final class WildResearch extends CardImpl { private static final FilterCard filterInstant = new FilterCard("instant card"); static { - filterEnchantment.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filterInstant.add(new CardTypePredicate(CardType.INSTANT)); + filterEnchantment.add(CardType.ENCHANTMENT.getPredicate()); + filterInstant.add(CardType.INSTANT.getPredicate()); } public WildResearch(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildRicochet.java b/Mage.Sets/src/mage/cards/w/WildRicochet.java index 1d6357c708..7f10c2bf65 100644 --- a/Mage.Sets/src/mage/cards/w/WildRicochet.java +++ b/Mage.Sets/src/mage/cards/w/WildRicochet.java @@ -10,7 +10,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterStackObject; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetStackObject; /** @@ -23,8 +22,8 @@ public final class WildRicochet extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); } public WildRicochet(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildSwing.java b/Mage.Sets/src/mage/cards/w/WildSwing.java index b6cdb24250..620909e0e6 100644 --- a/Mage.Sets/src/mage/cards/w/WildSwing.java +++ b/Mage.Sets/src/mage/cards/w/WildSwing.java @@ -11,7 +11,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.Target; @@ -27,7 +26,7 @@ public final class WildSwing extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("target nonenchantment permanents"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.ENCHANTMENT))); + filter.add(Predicates.not(CardType.ENCHANTMENT.getPredicate())); } public WildSwing(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WillKenrith.java b/Mage.Sets/src/mage/cards/w/WillKenrith.java index 8a4c55d726..8af6ce1385 100644 --- a/Mage.Sets/src/mage/cards/w/WillKenrith.java +++ b/Mage.Sets/src/mage/cards/w/WillKenrith.java @@ -17,7 +17,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.emblems.WillKenrithEmblem; import mage.target.TargetPlayer; @@ -82,9 +81,9 @@ class WillKenrithCostReductionEffect extends OneShotEffect { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/w/WindwrightMage.java b/Mage.Sets/src/mage/cards/w/WindwrightMage.java index ba726254d9..227c7c2b8d 100644 --- a/Mage.Sets/src/mage/cards/w/WindwrightMage.java +++ b/Mage.Sets/src/mage/cards/w/WindwrightMage.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -59,7 +58,7 @@ enum WindwrightMageCondition implements Condition { private static final FilterCard filter = new FilterCard("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } diff --git a/Mage.Sets/src/mage/cards/w/WingSplicer.java b/Mage.Sets/src/mage/cards/w/WingSplicer.java index c0d1d90e64..0821a5ea7e 100644 --- a/Mage.Sets/src/mage/cards/w/WingSplicer.java +++ b/Mage.Sets/src/mage/cards/w/WingSplicer.java @@ -15,7 +15,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.permanent.token.GolemToken; @@ -28,7 +27,7 @@ public final class WingSplicer extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("Golem creatures"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(new SubtypePredicate(SubType.GOLEM)); } diff --git a/Mage.Sets/src/mage/cards/w/Wonder.java b/Mage.Sets/src/mage/cards/w/Wonder.java index 62847d0c73..a55bddda60 100644 --- a/Mage.Sets/src/mage/cards/w/Wonder.java +++ b/Mage.Sets/src/mage/cards/w/Wonder.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -31,7 +30,7 @@ public final class Wonder extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Island"); static { - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new SubtypePredicate(SubType.ISLAND)); } diff --git a/Mage.Sets/src/mage/cards/w/WoodfallPrimus.java b/Mage.Sets/src/mage/cards/w/WoodfallPrimus.java index 8a9880d86a..a230722646 100644 --- a/Mage.Sets/src/mage/cards/w/WoodfallPrimus.java +++ b/Mage.Sets/src/mage/cards/w/WoodfallPrimus.java @@ -14,7 +14,6 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -25,7 +24,7 @@ public final class WoodfallPrimus extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("noncreature permanent"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public WoodfallPrimus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java index f7df876681..6ef1e88869 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java @@ -18,7 +18,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -71,7 +70,7 @@ class WoodlandBellowerEffect extends OneShotEffect { } FilterCard filter = new FilterCard("nonlegendary green creature card with converted mana cost 3 or less"); filter.add(new ColorPredicate(ObjectColor.GREEN)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); TargetCardInLibrary target = new TargetCardInLibrary(filter); diff --git a/Mage.Sets/src/mage/cards/w/WoollyMammoths.java b/Mage.Sets/src/mage/cards/w/WoollyMammoths.java index 31d1f94b26..800bdd58a6 100644 --- a/Mage.Sets/src/mage/cards/w/WoollyMammoths.java +++ b/Mage.Sets/src/mage/cards/w/WoollyMammoths.java @@ -17,7 +17,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -31,7 +30,7 @@ public final class WoollyMammoths extends CardImpl { static { filter.add(new SupertypePredicate(SuperType.SNOW)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/w/WorkshopElders.java b/Mage.Sets/src/mage/cards/w/WorkshopElders.java index c1f6d26438..3b4cbd9065 100644 --- a/Mage.Sets/src/mage/cards/w/WorkshopElders.java +++ b/Mage.Sets/src/mage/cards/w/WorkshopElders.java @@ -20,7 +20,6 @@ import mage.filter.FilterPermanent; import mage.filter.common.FilterArtifactCreaturePermanent; import mage.filter.common.FilterControlledArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import java.util.UUID; @@ -36,7 +35,7 @@ public final class WorkshopElders extends CardImpl { = new FilterControlledArtifactPermanent("noncreature artifact you control"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public WorkshopElders(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java b/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java index bd79e941c8..11f2b63a4a 100644 --- a/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java +++ b/Mage.Sets/src/mage/cards/w/WorldBottlingKit.java @@ -14,7 +14,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -78,7 +77,7 @@ class WorldBottlingKitEffect extends OneShotEffect { if (setChosen != null) { game.informPlayers(controller.getLogName() + " has chosen set " + setChosen); FilterPermanent filter = new FilterPermanent(); - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); + filter.add(Predicates.not(Predicates.and(CardType.LAND.getPredicate(), new SupertypePredicate(SuperType.BASIC)))); List permanents = game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game); for (Permanent permanent : permanents) { if (permanent.getExpansionSetCode().equals(setChosen)) { diff --git a/Mage.Sets/src/mage/cards/w/WorldBreaker.java b/Mage.Sets/src/mage/cards/w/WorldBreaker.java index e3f708f5bd..36eb9069e2 100644 --- a/Mage.Sets/src/mage/cards/w/WorldBreaker.java +++ b/Mage.Sets/src/mage/cards/w/WorldBreaker.java @@ -20,7 +20,6 @@ import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.StaticFilters; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; @@ -34,9 +33,9 @@ public final class WorldBreaker extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); } public WorldBreaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WorldQueller.java b/Mage.Sets/src/mage/cards/w/WorldQueller.java index a5c435a3a8..6cadcf6e78 100644 --- a/Mage.Sets/src/mage/cards/w/WorldQueller.java +++ b/Mage.Sets/src/mage/cards/w/WorldQueller.java @@ -1,7 +1,6 @@ package mage.cards.w; -import java.util.*; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; @@ -16,15 +15,15 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.TargetPermanent; import mage.target.common.TargetControlledPermanent; +import java.util.*; + /** - * * @author jeffwadsworth */ public final class WorldQueller extends CardImpl { @@ -112,7 +111,7 @@ class WorldQuellerEffect extends OneShotEffect { } if (type != null) { FilterControlledPermanent filter = new FilterControlledPermanent("permanent you control of type " + type.toString()); - filter.add(new CardTypePredicate(type)); + filter.add(type.getPredicate()); TargetPermanent target = new TargetControlledPermanent(1, 1, filter, false); target.setNotTarget(true); diff --git a/Mage.Sets/src/mage/cards/w/WreakHavoc.java b/Mage.Sets/src/mage/cards/w/WreakHavoc.java index 7b5f83e90a..ee85f28431 100644 --- a/Mage.Sets/src/mage/cards/w/WreakHavoc.java +++ b/Mage.Sets/src/mage/cards/w/WreakHavoc.java @@ -9,7 +9,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.TargetPermanent; /** @@ -22,8 +21,8 @@ public final class WreakHavoc extends CardImpl { static { filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.LAND.getPredicate())); } public WreakHavoc(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WreckingBall.java b/Mage.Sets/src/mage/cards/w/WreckingBall.java index ef45c43a49..9c91a235a4 100644 --- a/Mage.Sets/src/mage/cards/w/WreckingBall.java +++ b/Mage.Sets/src/mage/cards/w/WreckingBall.java @@ -8,7 +8,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.target.Target; import mage.target.TargetPermanent; @@ -21,7 +20,7 @@ public final class WreckingBall extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("creature or land"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), CardType.LAND.getPredicate())); } public WreckingBall(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WrexialTheRisenDeep.java b/Mage.Sets/src/mage/cards/w/WrexialTheRisenDeep.java index 4b48efebcb..96e6872fc1 100644 --- a/Mage.Sets/src/mage/cards/w/WrexialTheRisenDeep.java +++ b/Mage.Sets/src/mage/cards/w/WrexialTheRisenDeep.java @@ -15,7 +15,6 @@ import mage.cards.CardSetInfo; import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.other.OwnerIdPredicate; import mage.game.Game; import mage.game.events.DamagedPlayerEvent; @@ -96,8 +95,8 @@ class WrexialTheRisenDeepTriggeredAbility extends TriggeredAbilityImpl { + damagedPlayer.getName() + "'s graveyard"); filter.add(new OwnerIdPredicate(damagedPlayer.getId())); filter.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY))); + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate())); Target target = new TargetCardInGraveyard(filter); this.getTargets().clear(); diff --git a/Mage.Sets/src/mage/cards/x/XenagosTheReveler.java b/Mage.Sets/src/mage/cards/x/XenagosTheReveler.java index 195a738ccb..a63f52fe18 100644 --- a/Mage.Sets/src/mage/cards/x/XenagosTheReveler.java +++ b/Mage.Sets/src/mage/cards/x/XenagosTheReveler.java @@ -15,7 +15,6 @@ import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.token.XenagosSatyrToken; import mage.players.Player; @@ -120,8 +119,8 @@ class XenagosExileEffect extends OneShotEffect { exiledCards.addAll(controller.getLibrary().getTopCards(game, 7)); controller.moveCards(exiledCards, Zone.EXILED, source, game); FilterCard filter = new FilterCard("creature and/or land cards to put onto the battlefield"); - filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.or(CardType.CREATURE.getPredicate(), + CardType.LAND.getPredicate())); TargetCard target1 = new TargetCard(0, Integer.MAX_VALUE, Zone.EXILED, filter); target1.setNotTarget(true); if (!exiledCards.isEmpty() diff --git a/Mage.Sets/src/mage/cards/x/XenicPoltergeist.java b/Mage.Sets/src/mage/cards/x/XenicPoltergeist.java index 33d6e8756f..0a3aced277 100644 --- a/Mage.Sets/src/mage/cards/x/XenicPoltergeist.java +++ b/Mage.Sets/src/mage/cards/x/XenicPoltergeist.java @@ -19,7 +19,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetArtifactPermanent; @@ -33,7 +32,7 @@ public final class XenicPoltergeist extends CardImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public XenicPoltergeist(UUID ownerId, CardSetInfo setInfo) { @@ -64,7 +63,7 @@ class XenicPoltergeistEffect extends ContinuousEffectImpl { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent(); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public XenicPoltergeistEffect() { diff --git a/Mage.Sets/src/mage/cards/y/YavimayaEnchantress.java b/Mage.Sets/src/mage/cards/y/YavimayaEnchantress.java index 0e9fbcae04..f805b7dc4a 100644 --- a/Mage.Sets/src/mage/cards/y/YavimayaEnchantress.java +++ b/Mage.Sets/src/mage/cards/y/YavimayaEnchantress.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Duration; import mage.constants.Zone; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -24,7 +23,7 @@ public final class YavimayaEnchantress extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("enchantment on the battlefield"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); } public YavimayaEnchantress(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/y/YawgmothsVileOffering.java b/Mage.Sets/src/mage/cards/y/YawgmothsVileOffering.java index 3670b8a32a..4cbc745d66 100644 --- a/Mage.Sets/src/mage/cards/y/YawgmothsVileOffering.java +++ b/Mage.Sets/src/mage/cards/y/YawgmothsVileOffering.java @@ -14,7 +14,6 @@ import mage.constants.Zone; import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -32,8 +31,8 @@ public final class YawgmothsVileOffering extends CardImpl { static { cardFilter.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() )); } diff --git a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java index 63cbad9cc5..2ac0d4eb9d 100644 --- a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java +++ b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java @@ -20,7 +20,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; @@ -83,7 +82,7 @@ class YisanTheWandererBardEffect extends OneShotEffect { int newConvertedCost = sourcePermanent.getCounters(game).getCount(CounterType.VERSE); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, source, game)) { Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/z/ZealotsEnDal.java b/Mage.Sets/src/mage/cards/z/ZealotsEnDal.java index f560e66f98..31ccf5b45a 100644 --- a/Mage.Sets/src/mage/cards/z/ZealotsEnDal.java +++ b/Mage.Sets/src/mage/cards/z/ZealotsEnDal.java @@ -16,7 +16,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -29,7 +28,7 @@ public final class ZealotsEnDal extends CardImpl { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.WHITE))); - filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + filter.add(Predicates.not(CardType.LAND.getPredicate())); } public ZealotsEnDal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZephyrScribe.java b/Mage.Sets/src/mage/cards/z/ZephyrScribe.java index c4313f7593..3b1f720ecf 100644 --- a/Mage.Sets/src/mage/cards/z/ZephyrScribe.java +++ b/Mage.Sets/src/mage/cards/z/ZephyrScribe.java @@ -17,7 +17,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -28,7 +27,7 @@ public final class ZephyrScribe extends CardImpl { private static final FilterSpell filter = new FilterSpell("a noncreature spell"); static { - filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filter.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ZephyrScribe(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZombieMob.java b/Mage.Sets/src/mage/cards/z/ZombieMob.java index c37b4a18a7..f0f2754771 100644 --- a/Mage.Sets/src/mage/cards/z/ZombieMob.java +++ b/Mage.Sets/src/mage/cards/z/ZombieMob.java @@ -13,7 +13,6 @@ import mage.constants.SubType; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; @@ -51,7 +50,7 @@ class ZombieMobEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard(); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public ZombieMobEffect() { diff --git a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java index 4714726be7..c5b4d19b9d 100644 --- a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java +++ b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java @@ -13,7 +13,6 @@ import mage.constants.ComparisonType; import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -26,7 +25,7 @@ public final class ZurTheEnchanter extends CardImpl { private static final FilterCard filter = new FilterCard("enchantment card with converted mana cost 3 or less"); static { - filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filter.add(CardType.ENCHANTMENT.getPredicate()); filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } diff --git a/Mage/src/main/java/mage/abilities/common/FetchLandActivatedAbility.java b/Mage/src/main/java/mage/abilities/common/FetchLandActivatedAbility.java index fa71efebee..5707b8d7c3 100644 --- a/Mage/src/main/java/mage/abilities/common/FetchLandActivatedAbility.java +++ b/Mage/src/main/java/mage/abilities/common/FetchLandActivatedAbility.java @@ -15,7 +15,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; @@ -42,7 +41,7 @@ public class FetchLandActivatedAbility extends ActivatedAbilityImpl { } addCost(new SacrificeSourceCost()); FilterCard filter = new FilterCard(subTypeNames(subtypes)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); List> subtypePredicates = new ArrayList<>(); for (SubType subtype : subtypes) { subtypePredicates.add(new SubtypePredicate(subtype)); diff --git a/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java b/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java index d0ee3f7d0c..b2538d513b 100644 --- a/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java +++ b/Mage/src/main/java/mage/abilities/common/LegendarySpellAbility.java @@ -9,7 +9,6 @@ import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; import mage.game.events.GameEvent; @@ -43,8 +42,8 @@ class LegendarySpellAbilityCheckEffect extends ContinuousRuleModifyingEffectImpl Predicates.and( new SupertypePredicate(SuperType.LEGENDARY), Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER) + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate() ) ) ); diff --git a/Mage/src/main/java/mage/abilities/condition/common/MetalcraftCondition.java b/Mage/src/main/java/mage/abilities/condition/common/MetalcraftCondition.java index e47ec4ac70..51e7683679 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/MetalcraftCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/MetalcraftCondition.java @@ -4,7 +4,6 @@ import mage.abilities.Ability; import mage.abilities.condition.Condition; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; /** @@ -17,7 +16,7 @@ public enum MetalcraftCondition implements Condition { private static final FilterPermanent filter = new FilterPermanent("artifact"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/SpellMasteryCondition.java b/Mage/src/main/java/mage/abilities/condition/common/SpellMasteryCondition.java index be61dc648d..fff9abbf65 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/SpellMasteryCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/SpellMasteryCondition.java @@ -10,7 +10,6 @@ import mage.abilities.condition.Condition; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.players.Player; @@ -25,7 +24,7 @@ public enum SpellMasteryCondition implements Condition { private static final FilterCard filter = new FilterCard(); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } @Override diff --git a/Mage/src/main/java/mage/abilities/keyword/ChampionAbility.java b/Mage/src/main/java/mage/abilities/keyword/ChampionAbility.java index b073f23f6f..141af1bd3a 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ChampionAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ChampionAbility.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; @@ -97,7 +96,7 @@ public class ChampionAbility extends StaticAbility { filter.add(Predicates.or(subtypesPredicates)); } if (requiresCreature) { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } filter.add(AnotherPredicate.instance); diff --git a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java index ef910117b7..211fee2602 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java @@ -17,7 +17,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SharesColorWithSourcePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.game.Game; @@ -56,7 +55,7 @@ public class ConspireAbility extends StaticAbility implements OptionalAdditional static { filter.add(Predicates.not(TappedPredicate.instance)); filter.add(new SharesColorWithSourcePredicate()); - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public enum ConspireTargets { diff --git a/Mage/src/main/java/mage/abilities/keyword/ModularAbility.java b/Mage/src/main/java/mage/abilities/keyword/ModularAbility.java index 3f7ec1c402..545062f5c7 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ModularAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ModularAbility.java @@ -14,7 +14,6 @@ import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; import mage.filter.common.FilterArtifactPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.ZoneChangeEvent; @@ -43,7 +42,7 @@ public class ModularAbility extends DiesTriggeredAbility { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } private int amount; private boolean sunburst; @@ -136,7 +135,7 @@ class ModularDistributeCounterEffect extends OneShotEffect { private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("artifact creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public ModularDistributeCounterEffect() { diff --git a/Mage/src/main/java/mage/abilities/keyword/ProwessAbility.java b/Mage/src/main/java/mage/abilities/keyword/ProwessAbility.java index ec8fee35b1..dd242a70df 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ProwessAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ProwessAbility.java @@ -8,7 +8,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public class ProwessAbility extends SpellCastControllerTriggeredAbility { private static final FilterSpell filterNonCreatureSpell = new FilterSpell("noncreature spell"); static { - filterNonCreatureSpell.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + filterNonCreatureSpell.add(Predicates.not(CardType.CREATURE.getPredicate())); } public ProwessAbility() { diff --git a/Mage/src/main/java/mage/filter/StaticFilters.java b/Mage/src/main/java/mage/filter/StaticFilters.java index 86de642847..d1ec71d603 100644 --- a/Mage/src/main/java/mage/filter/StaticFilters.java +++ b/Mage/src/main/java/mage/filter/StaticFilters.java @@ -11,7 +11,6 @@ import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.common.*; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.MulticoloredPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -228,7 +227,7 @@ public final class StaticFilters { public static final FilterControlledArtifactPermanent FILTER_ARTIFACTS_NON_CREATURE = new FilterControlledArtifactPermanent("Noncreature artifacts"); static { - FILTER_ARTIFACTS_NON_CREATURE.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + FILTER_ARTIFACTS_NON_CREATURE.add(Predicates.not(CardType.CREATURE.getPredicate())); FILTER_ARTIFACTS_NON_CREATURE.setLockedFilter(true); } @@ -236,8 +235,8 @@ public final class StaticFilters { static { FILTER_PERMANENT_ARTIFACT_OR_CREATURE.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); FILTER_PERMANENT_ARTIFACT_OR_CREATURE.setLockedFilter(true); } @@ -246,9 +245,9 @@ public final class StaticFilters { static { FILTER_PERMANENT_ARTIFACT_CREATURE_OR_ENCHANTMENT.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate() )); FILTER_PERMANENT_ARTIFACT_CREATURE_OR_ENCHANTMENT.setLockedFilter(true); } @@ -257,10 +256,10 @@ public final class StaticFilters { static { FILTER_PERMANENT_ARTIFACT_CREATURE_ENCHANTMENT_OR_LAND.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate() )); FILTER_PERMANENT_ARTIFACT_CREATURE_ENCHANTMENT_OR_LAND.setLockedFilter(true); } @@ -287,8 +286,8 @@ public final class StaticFilters { static { FILTER_CONTROLLED_PERMANENT_ARTIFACT_OR_CREATURE.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); FILTER_CONTROLLED_PERMANENT_ARTIFACT_OR_CREATURE.setLockedFilter(true); } @@ -323,7 +322,7 @@ public final class StaticFilters { static { FILTER_OPPONENTS_PERMANENT_ARTIFACT.add(new ControllerPredicate(TargetController.OPPONENT)); - FILTER_OPPONENTS_PERMANENT_ARTIFACT.add(new CardTypePredicate(CardType.ARTIFACT)); + FILTER_OPPONENTS_PERMANENT_ARTIFACT.add(CardType.ARTIFACT.getPredicate()); FILTER_OPPONENTS_PERMANENT_ARTIFACT.setLockedFilter(true); } @@ -332,8 +331,8 @@ public final class StaticFilters { static { FILTER_OPPONENTS_PERMANENT_ARTIFACT_OR_CREATURE.add(new ControllerPredicate(TargetController.OPPONENT)); FILTER_OPPONENTS_PERMANENT_ARTIFACT_OR_CREATURE.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); FILTER_OPPONENTS_PERMANENT_ARTIFACT_OR_CREATURE.setLockedFilter(true); } @@ -374,7 +373,7 @@ public final class StaticFilters { static { FILTER_CONTROLLED_PERMANENT_NON_LAND.add( - Predicates.not(new CardTypePredicate(CardType.LAND)) + Predicates.not(CardType.LAND.getPredicate()) ); FILTER_CONTROLLED_PERMANENT_NON_LAND.setLockedFilter(true); } @@ -426,7 +425,7 @@ public final class StaticFilters { static { FILTER_PERMANENT_CREATURE_OR_PLANESWALKER_A.add( - Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.PLANESWALKER))); + Predicates.or(CardType.CREATURE.getPredicate(), CardType.PLANESWALKER.getPredicate())); FILTER_PERMANENT_CREATURE_OR_PLANESWALKER_A.setLockedFilter(true); } @@ -517,13 +516,13 @@ public final class StaticFilters { FILTER_SPELL_CREATURE.setLockedFilter(true); } - public static final FilterSpell FILTER_SPELL_NON_CREATURE = (FilterSpell) new FilterSpell("noncreature spell").add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + public static final FilterSpell FILTER_SPELL_NON_CREATURE = (FilterSpell) new FilterSpell("noncreature spell").add(Predicates.not(CardType.CREATURE.getPredicate())); static { FILTER_SPELL_NON_CREATURE.setLockedFilter(true); } - public static final FilterSpell FILTER_SPELL_A_NON_CREATURE = (FilterSpell) new FilterSpell("a noncreature spell").add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + public static final FilterSpell FILTER_SPELL_A_NON_CREATURE = (FilterSpell) new FilterSpell("a noncreature spell").add(Predicates.not(CardType.CREATURE.getPredicate())); static { FILTER_SPELL_A_NON_CREATURE.setLockedFilter(true); @@ -552,8 +551,8 @@ public final class StaticFilters { static { FILTER_SPELL_AN_INSTANT_OR_SORCERY.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); FILTER_SPELL_AN_INSTANT_OR_SORCERY.setLockedFilter(true); } @@ -562,8 +561,8 @@ public final class StaticFilters { static { FILTER_SPELL_INSTANT_OR_SORCERY.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); FILTER_SPELL_INSTANT_OR_SORCERY.setLockedFilter(true); } @@ -572,8 +571,8 @@ public final class StaticFilters { static { FILTER_SPELLS_INSTANT_OR_SORCERY.add(Predicates.or( - new CardTypePredicate(CardType.INSTANT), - new CardTypePredicate(CardType.SORCERY) + CardType.INSTANT.getPredicate(), + CardType.SORCERY.getPredicate() )); FILTER_SPELLS_INSTANT_OR_SORCERY.setLockedFilter(true); } @@ -595,7 +594,7 @@ public final class StaticFilters { public static final FilterPermanent FILTER_PERMANENT_AURA = new FilterPermanent(); static { - FILTER_PERMANENT_AURA.add(new CardTypePredicate(CardType.ENCHANTMENT)); + FILTER_PERMANENT_AURA.add(CardType.ENCHANTMENT.getPredicate()); FILTER_PERMANENT_AURA.add(new SubtypePredicate(SubType.AURA)); FILTER_PERMANENT_AURA.setLockedFilter(true); } @@ -603,7 +602,7 @@ public final class StaticFilters { public static final FilterPermanent FILTER_PERMANENT_EQUIPMENT = new FilterPermanent(); static { - FILTER_PERMANENT_EQUIPMENT.add(new CardTypePredicate(CardType.ARTIFACT)); + FILTER_PERMANENT_EQUIPMENT.add(CardType.ARTIFACT.getPredicate()); FILTER_PERMANENT_EQUIPMENT.add(new SubtypePredicate(SubType.EQUIPMENT)); FILTER_PERMANENT_EQUIPMENT.setLockedFilter(true); } @@ -611,7 +610,7 @@ public final class StaticFilters { public static final FilterPermanent FILTER_PERMANENT_FORTIFICATION = new FilterPermanent(); static { - FILTER_PERMANENT_FORTIFICATION.add(new CardTypePredicate(CardType.ARTIFACT)); + FILTER_PERMANENT_FORTIFICATION.add(CardType.ARTIFACT.getPredicate()); FILTER_PERMANENT_FORTIFICATION.add(new SubtypePredicate(SubType.FORTIFICATION)); FILTER_PERMANENT_FORTIFICATION.setLockedFilter(true); } @@ -627,8 +626,8 @@ public final class StaticFilters { static { FILTER_CARD_ARTIFACT_OR_CREATURE.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE) + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate() )); FILTER_CARD_ARTIFACT_OR_CREATURE.setLockedFilter(true); } diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactCard.java b/Mage/src/main/java/mage/filter/common/FilterArtifactCard.java index 1fc8f58e3a..4c1f841b65 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterArtifactCard extends FilterCard { public FilterArtifactCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.ARTIFACT)); + this.add(CardType.ARTIFACT.getPredicate()); } public FilterArtifactCard(final FilterArtifactCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactCreaturePermanent.java b/Mage/src/main/java/mage/filter/common/FilterArtifactCreaturePermanent.java index 1f3be2d86f..3c6e2032cb 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactCreaturePermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactCreaturePermanent.java @@ -2,7 +2,6 @@ package mage.filter.common; import mage.constants.CardType; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -16,7 +15,7 @@ public class FilterArtifactCreaturePermanent extends FilterCreaturePermanent { public FilterArtifactCreaturePermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.ARTIFACT)); + this.add(CardType.ARTIFACT.getPredicate()); } public FilterArtifactCreaturePermanent(final FilterArtifactCreaturePermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentCard.java b/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentCard.java index e54954018b..b2cf74ad9b 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterArtifactOrEnchantmentCard extends FilterCard { public FilterArtifactOrEnchantmentCard(String name) { super(name); - this.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + this.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public FilterArtifactOrEnchantmentCard(final FilterArtifactOrEnchantmentCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentPermanent.java b/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentPermanent.java index 15eab52f88..5b8619f1d4 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactOrEnchantmentPermanent.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterArtifactOrEnchantmentPermanent extends FilterPermanent { public FilterArtifactOrEnchantmentPermanent(String name) { super(name); - this.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); + this.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.ENCHANTMENT.getPredicate())); } public FilterArtifactOrEnchantmentPermanent(final FilterArtifactOrEnchantmentPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactPermanent.java b/Mage/src/main/java/mage/filter/common/FilterArtifactPermanent.java index c3555499ad..a9b527afd0 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactPermanent.java @@ -4,7 +4,7 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; + /** * @@ -18,7 +18,7 @@ public class FilterArtifactPermanent extends FilterPermanent { public FilterArtifactPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.ARTIFACT)); + this.add(CardType.ARTIFACT.getPredicate()); } public FilterArtifactPermanent(final FilterArtifactPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterArtifactSpell.java b/Mage/src/main/java/mage/filter/common/FilterArtifactSpell.java index 7d13cc3048..dda5d74a7f 100644 --- a/Mage/src/main/java/mage/filter/common/FilterArtifactSpell.java +++ b/Mage/src/main/java/mage/filter/common/FilterArtifactSpell.java @@ -3,7 +3,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -17,6 +16,6 @@ public class FilterArtifactSpell extends FilterSpell { public FilterArtifactSpell(String name) { super(name); - this.add(new CardTypePredicate(CardType.ARTIFACT)); + this.add(CardType.ARTIFACT.getPredicate()); } } diff --git a/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java b/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java index 3f6afece52..9ecf609bd4 100644 --- a/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterBasicLandCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; /** @@ -19,7 +18,7 @@ public class FilterBasicLandCard extends FilterCard { public FilterBasicLandCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.LAND)); + this.add(CardType.LAND.getPredicate()); this.add(new SupertypePredicate(SuperType.BASIC)); } diff --git a/Mage/src/main/java/mage/filter/common/FilterControlledArtifactPermanent.java b/Mage/src/main/java/mage/filter/common/FilterControlledArtifactPermanent.java index 44698da4a5..b74f2ca7d0 100644 --- a/Mage/src/main/java/mage/filter/common/FilterControlledArtifactPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterControlledArtifactPermanent.java @@ -2,7 +2,6 @@ package mage.filter.common; import mage.constants.CardType; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterControlledArtifactPermanent extends FilterControlledPermanent public FilterControlledArtifactPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.ARTIFACT)); + this.add(CardType.ARTIFACT.getPredicate()); } public FilterControlledArtifactPermanent(final FilterControlledArtifactPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterControlledCreaturePermanent.java b/Mage/src/main/java/mage/filter/common/FilterControlledCreaturePermanent.java index a723e2e573..df2abdfb34 100644 --- a/Mage/src/main/java/mage/filter/common/FilterControlledCreaturePermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterControlledCreaturePermanent.java @@ -3,7 +3,7 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SubType; -import mage.filter.predicate.mageobject.CardTypePredicate; + import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -27,7 +27,7 @@ public class FilterControlledCreaturePermanent extends FilterControlledPermanent public FilterControlledCreaturePermanent(SubType subtype, String name) { super(name); - this.add(new CardTypePredicate(CardType.CREATURE)); + this.add(CardType.CREATURE.getPredicate()); if(subtype != null) { this.add(new SubtypePredicate(subtype)); } diff --git a/Mage/src/main/java/mage/filter/common/FilterControlledEnchantmentPermanent.java b/Mage/src/main/java/mage/filter/common/FilterControlledEnchantmentPermanent.java index f5a6456a83..a249812cfc 100644 --- a/Mage/src/main/java/mage/filter/common/FilterControlledEnchantmentPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterControlledEnchantmentPermanent.java @@ -2,7 +2,6 @@ package mage.filter.common; import mage.constants.CardType; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,7 +20,7 @@ public class FilterControlledEnchantmentPermanent extends FilterControlledPerman */ public FilterControlledEnchantmentPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.ENCHANTMENT)); + this.add(CardType.ENCHANTMENT.getPredicate()); } public FilterControlledEnchantmentPermanent(final FilterControlledEnchantmentPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterControlledLandPermanent.java b/Mage/src/main/java/mage/filter/common/FilterControlledLandPermanent.java index 78a08fcc14..2dae2c4202 100644 --- a/Mage/src/main/java/mage/filter/common/FilterControlledLandPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterControlledLandPermanent.java @@ -3,7 +3,6 @@ package mage.filter.common; import mage.constants.CardType; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -17,7 +16,7 @@ public class FilterControlledLandPermanent extends FilterControlledPermanent { public FilterControlledLandPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.LAND)); + this.add(CardType.LAND.getPredicate()); } public FilterControlledLandPermanent(final FilterControlledLandPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterControlledPlaneswalkerPermanent.java b/Mage/src/main/java/mage/filter/common/FilterControlledPlaneswalkerPermanent.java index ef474acf32..d115bdda66 100644 --- a/Mage/src/main/java/mage/filter/common/FilterControlledPlaneswalkerPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterControlledPlaneswalkerPermanent.java @@ -2,7 +2,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SubType; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -20,13 +19,13 @@ public class FilterControlledPlaneswalkerPermanent extends FilterControlledPerma public FilterControlledPlaneswalkerPermanent(SubType subType, String name) { super(name); - this.add(new CardTypePredicate(CardType.PLANESWALKER)); + this.add(CardType.PLANESWALKER.getPredicate()); this.add(new SubtypePredicate(subType)); } public FilterControlledPlaneswalkerPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.PLANESWALKER)); + this.add(CardType.PLANESWALKER.getPredicate()); } public FilterControlledPlaneswalkerPermanent(final FilterControlledPlaneswalkerPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureCard.java b/Mage/src/main/java/mage/filter/common/FilterCreatureCard.java index 383a27aec3..6bc79cd7f3 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterCreatureCard extends FilterCard { public FilterCreatureCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.CREATURE)); + this.add(CardType.CREATURE.getPredicate()); } public FilterCreatureCard(final FilterCreatureCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureOrPlaneswalkerPermanent.java b/Mage/src/main/java/mage/filter/common/FilterCreatureOrPlaneswalkerPermanent.java index 1c4710fb8f..9e6cde6cad 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureOrPlaneswalkerPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureOrPlaneswalkerPermanent.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,8 +19,8 @@ public class FilterCreatureOrPlaneswalkerPermanent extends FilterPermanent { public FilterCreatureOrPlaneswalkerPermanent(String name) { super(name); this.add(Predicates.or( - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.CREATURE.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public FilterCreatureOrPlaneswalkerPermanent(final FilterCreatureOrPlaneswalkerPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterCreaturePermanent.java b/Mage/src/main/java/mage/filter/common/FilterCreaturePermanent.java index 4e0283f6b7..f00b74d50d 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreaturePermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreaturePermanent.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -20,12 +19,12 @@ public class FilterCreaturePermanent extends FilterPermanent { public FilterCreaturePermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.CREATURE)); + this.add(CardType.CREATURE.getPredicate()); } public FilterCreaturePermanent(SubType subtype, String name) { super(name); - this.add(new CardTypePredicate(CardType.CREATURE)); + this.add(CardType.CREATURE.getPredicate()); this.add(new SubtypePredicate(subtype)); } diff --git a/Mage/src/main/java/mage/filter/common/FilterCreatureSpell.java b/Mage/src/main/java/mage/filter/common/FilterCreatureSpell.java index bbf667d294..846bc146b9 100644 --- a/Mage/src/main/java/mage/filter/common/FilterCreatureSpell.java +++ b/Mage/src/main/java/mage/filter/common/FilterCreatureSpell.java @@ -6,7 +6,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterSpell; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -20,7 +19,7 @@ public class FilterCreatureSpell extends FilterSpell { public FilterCreatureSpell(String name) { super(name); - this.add(new CardTypePredicate(CardType.CREATURE)); + this.add(CardType.CREATURE.getPredicate()); } } diff --git a/Mage/src/main/java/mage/filter/common/FilterEnchantmentCard.java b/Mage/src/main/java/mage/filter/common/FilterEnchantmentCard.java index 916313c225..c194b9e6fd 100644 --- a/Mage/src/main/java/mage/filter/common/FilterEnchantmentCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterEnchantmentCard.java @@ -3,7 +3,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -17,7 +16,7 @@ public class FilterEnchantmentCard extends FilterCard { public FilterEnchantmentCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.ENCHANTMENT)); + this.add(CardType.ENCHANTMENT.getPredicate()); } public FilterEnchantmentCard(final FilterEnchantmentCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterEnchantmentPermanent.java b/Mage/src/main/java/mage/filter/common/FilterEnchantmentPermanent.java index 13fad6a45a..cc883384a3 100644 --- a/Mage/src/main/java/mage/filter/common/FilterEnchantmentPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterEnchantmentPermanent.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterEnchantmentPermanent extends FilterPermanent { public FilterEnchantmentPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.ENCHANTMENT)); + this.add(CardType.ENCHANTMENT.getPredicate()); } public FilterEnchantmentPermanent(final FilterEnchantmentPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterInstantOrSorceryCard.java b/Mage/src/main/java/mage/filter/common/FilterInstantOrSorceryCard.java index 6bdf668991..c40dec2c23 100644 --- a/Mage/src/main/java/mage/filter/common/FilterInstantOrSorceryCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterInstantOrSorceryCard.java @@ -7,7 +7,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -22,7 +21,7 @@ public class FilterInstantOrSorceryCard extends FilterCard { public FilterInstantOrSorceryCard(String name) { super(name); - this.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + this.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public FilterInstantOrSorceryCard(final FilterInstantOrSorceryCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterInstantOrSorcerySpell.java b/Mage/src/main/java/mage/filter/common/FilterInstantOrSorcerySpell.java index 711242f193..51438217b2 100644 --- a/Mage/src/main/java/mage/filter/common/FilterInstantOrSorcerySpell.java +++ b/Mage/src/main/java/mage/filter/common/FilterInstantOrSorcerySpell.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public class FilterInstantOrSorcerySpell extends FilterSpell { public FilterInstantOrSorcerySpell(String name) { super(name); - this.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + this.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public FilterInstantOrSorcerySpell(final FilterInstantOrSorcerySpell filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterLandCard.java b/Mage/src/main/java/mage/filter/common/FilterLandCard.java index 780dd3b160..7d8ccddbd4 100644 --- a/Mage/src/main/java/mage/filter/common/FilterLandCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterLandCard.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; /** @@ -20,7 +19,7 @@ public class FilterLandCard extends FilterCard { public FilterLandCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.LAND)); + this.add(CardType.LAND.getPredicate()); } public static FilterLandCard basicLandCard() { diff --git a/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java b/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java index 3d517b058c..57b190fbda 100644 --- a/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterLandPermanent.java @@ -7,7 +7,6 @@ import mage.constants.SubType; import mage.constants.SuperType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -22,12 +21,12 @@ public class FilterLandPermanent extends FilterPermanent { public FilterLandPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.LAND)); + this.add(CardType.LAND.getPredicate()); } public FilterLandPermanent(SubType subtype, String name) { super(name); - this.add(new CardTypePredicate(CardType.LAND)); + this.add(CardType.LAND.getPredicate()); this.add(new SubtypePredicate(subtype)); } diff --git a/Mage/src/main/java/mage/filter/common/FilterNoncreatureCard.java b/Mage/src/main/java/mage/filter/common/FilterNoncreatureCard.java index c3c3766187..78ed21e048 100644 --- a/Mage/src/main/java/mage/filter/common/FilterNoncreatureCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterNoncreatureCard.java @@ -3,7 +3,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author ssouders412 @@ -16,7 +15,7 @@ public class FilterNoncreatureCard extends FilterCard { public FilterNoncreatureCard(String name) { super(name); - this.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + this.add(Predicates.not(CardType.CREATURE.getPredicate())); } public FilterNoncreatureCard(final FilterNoncreatureCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterNonlandCard.java b/Mage/src/main/java/mage/filter/common/FilterNonlandCard.java index 055485ac2c..1e06aeb3ea 100644 --- a/Mage/src/main/java/mage/filter/common/FilterNonlandCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterNonlandCard.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -19,7 +18,7 @@ public class FilterNonlandCard extends FilterCard { public FilterNonlandCard(String name) { super(name); - this.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + this.add(Predicates.not(CardType.LAND.getPredicate())); } public FilterNonlandCard(final FilterNonlandCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterNonlandPermanent.java b/Mage/src/main/java/mage/filter/common/FilterNonlandPermanent.java index b63290f1f7..4c0890ca63 100644 --- a/Mage/src/main/java/mage/filter/common/FilterNonlandPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterNonlandPermanent.java @@ -5,7 +5,7 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; + /** * @@ -19,7 +19,7 @@ public class FilterNonlandPermanent extends FilterPermanent { public FilterNonlandPermanent(String name) { super(name); - this.add(Predicates.not(new CardTypePredicate(CardType.LAND))); + this.add(Predicates.not(CardType.LAND.getPredicate())); } public FilterNonlandPermanent(final FilterNonlandPermanent filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterPermanentCard.java b/Mage/src/main/java/mage/filter/common/FilterPermanentCard.java index 760a122aa7..9d76594bb0 100644 --- a/Mage/src/main/java/mage/filter/common/FilterPermanentCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterPermanentCard.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -21,11 +20,11 @@ public class FilterPermanentCard extends FilterCard { super(name); this.add( Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND), - new CardTypePredicate(CardType.PLANESWALKER))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate(), + CardType.PLANESWALKER.getPredicate())); } public FilterPermanentCard(final FilterPermanentCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerCard.java b/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerCard.java index c379a4892a..ba859122d5 100644 --- a/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerCard.java +++ b/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerCard.java @@ -4,7 +4,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @@ -18,7 +17,7 @@ public class FilterPlaneswalkerCard extends FilterCard { public FilterPlaneswalkerCard(String name) { super(name); - this.add(new CardTypePredicate(CardType.PLANESWALKER)); + this.add(CardType.PLANESWALKER.getPredicate()); } public FilterPlaneswalkerCard(final FilterPlaneswalkerCard filter) { diff --git a/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerPermanent.java b/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerPermanent.java index 8149b208bf..099b9dbf0c 100644 --- a/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerPermanent.java +++ b/Mage/src/main/java/mage/filter/common/FilterPlaneswalkerPermanent.java @@ -5,7 +5,6 @@ package mage.filter.common; import mage.constants.CardType; import mage.constants.SubType; import mage.filter.FilterPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -24,7 +23,7 @@ public class FilterPlaneswalkerPermanent extends FilterPermanent { public FilterPlaneswalkerPermanent(String name) { super(name); - this.add(new CardTypePredicate(CardType.PLANESWALKER)); + this.add(CardType.PLANESWALKER.getPredicate()); } public FilterPlaneswalkerPermanent(final FilterPlaneswalkerPermanent filter) { diff --git a/Mage/src/main/java/mage/game/command/emblems/ElspethKnightErrantEmblem.java b/Mage/src/main/java/mage/game/command/emblems/ElspethKnightErrantEmblem.java index b6b292b238..133cc989a2 100644 --- a/Mage/src/main/java/mage/game/command/emblems/ElspethKnightErrantEmblem.java +++ b/Mage/src/main/java/mage/game/command/emblems/ElspethKnightErrantEmblem.java @@ -10,7 +10,6 @@ import mage.constants.Duration; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.command.Emblem; /** @@ -22,10 +21,10 @@ public final class ElspethKnightErrantEmblem extends Emblem { this.setName("Emblem Elspeth"); FilterControlledPermanent filter = new FilterControlledPermanent("Artifacts, creatures, enchantments, and lands you control"); filter.add(Predicates.or( - new CardTypePredicate(CardType.ARTIFACT), - new CardTypePredicate(CardType.CREATURE), - new CardTypePredicate(CardType.ENCHANTMENT), - new CardTypePredicate(CardType.LAND))); + CardType.ARTIFACT.getPredicate(), + CardType.CREATURE.getPredicate(), + CardType.ENCHANTMENT.getPredicate(), + CardType.LAND.getPredicate())); Effect effect = new GainAbilityAllEffect(IndestructibleAbility.getInstance(), Duration.WhileOnBattlefield, filter, false); effect.setText("Artifacts, creatures, enchantments, and lands you control have indestructible"); this.getAbilities().add(new SimpleStaticAbility(Zone.COMMAND, effect)); 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 0b5da1d1e4..3582cc9482 100644 --- a/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/AkoumPlane.java @@ -18,7 +18,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.EnchantedPredicate; import mage.game.command.Plane; import mage.target.Target; @@ -36,7 +35,7 @@ public class AkoumPlane extends Plane { static { filter.add(Predicates.not(EnchantedPredicate.instance)); - filterCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); + filterCard.add(CardType.ENCHANTMENT.getPredicate()); } public AkoumPlane() { diff --git a/Mage/src/main/java/mage/game/command/planes/TrailOfTheMageRingsPlane.java b/Mage/src/main/java/mage/game/command/planes/TrailOfTheMageRingsPlane.java index 7b13f11c20..fe00e2898d 100644 --- a/Mage/src/main/java/mage/game/command/planes/TrailOfTheMageRingsPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/TrailOfTheMageRingsPlane.java @@ -26,7 +26,6 @@ import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.Predicates; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.Plane; import mage.game.stack.Spell; @@ -45,7 +44,7 @@ public class TrailOfTheMageRingsPlane extends Plane { private static final FilterCard filter = new FilterCard("creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public TrailOfTheMageRingsPlane() { @@ -78,7 +77,7 @@ class TrailOfTheMageRingsReboundEffect extends ContinuousEffectImpl { protected static final FilterCard filter = new FilterCard("Instant and sorcery spells"); static { - filter.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); + filter.add(Predicates.or(CardType.INSTANT.getPredicate(), CardType.SORCERY.getPredicate())); } public TrailOfTheMageRingsReboundEffect() { diff --git a/Mage/src/main/java/mage/game/command/planes/TurriIslandPlane.java b/Mage/src/main/java/mage/game/command/planes/TurriIslandPlane.java index 29dc7e71f8..16b5665f2d 100644 --- a/Mage/src/main/java/mage/game/command/planes/TurriIslandPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/TurriIslandPlane.java @@ -13,7 +13,6 @@ import mage.abilities.effects.Effect; import mage.abilities.effects.common.RevealLibraryPutIntoHandEffect; import mage.abilities.effects.common.RollPlanarDieEffect; import mage.abilities.effects.common.cost.CostModificationEffectImpl; -import mage.abilities.effects.common.cost.SpellsCostReductionAllEffect; import mage.cards.Card; import mage.constants.CardType; import mage.constants.CostModificationType; @@ -23,7 +22,6 @@ import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.Plane; import mage.game.stack.Spell; @@ -67,7 +65,7 @@ class TurriIslandEffect extends CostModificationEffectImpl { private static final FilterCard filter = new FilterCard("creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } private static final String rule = "Creature spells cost {2} less to cast"; diff --git a/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java b/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java index b87d8e5131..1bb70f17f6 100644 --- a/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java +++ b/Mage/src/main/java/mage/game/command/planes/UndercityReachesPlane.java @@ -20,7 +20,6 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.filter.FilterCard; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.Game; import mage.game.command.Plane; import mage.game.events.DamagedPlayerEvent; @@ -40,7 +39,7 @@ public class UndercityReachesPlane extends Plane { private static final FilterCard filter = new FilterCard("creature spells"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); } public UndercityReachesPlane() { diff --git a/Mage/src/main/java/mage/game/permanent/token/BelzenlokDemonToken.java b/Mage/src/main/java/mage/game/permanent/token/BelzenlokDemonToken.java index 214b4f07d6..b8dc7a8e88 100644 --- a/Mage/src/main/java/mage/game/permanent/token/BelzenlokDemonToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/BelzenlokDemonToken.java @@ -17,10 +17,8 @@ import mage.constants.Outcome; import mage.constants.SubType; import mage.constants.TargetController; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.game.Game; -import mage.game.permanent.Permanent; import mage.players.Player; /** @@ -71,7 +69,7 @@ class BelzenlokDemonTokenEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("another creature"); static { - filter.add(new CardTypePredicate(CardType.CREATURE)); + filter.add(CardType.CREATURE.getPredicate()); filter.add(AnotherPredicate.instance); } diff --git a/Mage/src/main/java/mage/game/permanent/token/KarnConstructToken.java b/Mage/src/main/java/mage/game/permanent/token/KarnConstructToken.java index 3b5a5b8bc7..842cc6d7da 100644 --- a/Mage/src/main/java/mage/game/permanent/token/KarnConstructToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/KarnConstructToken.java @@ -10,7 +10,6 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; -import mage.filter.predicate.mageobject.CardTypePredicate; import java.util.ArrayList; import java.util.Arrays; @@ -24,7 +23,7 @@ public final class KarnConstructToken extends TokenImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("artifacts you control"); static { - filter.add(new CardTypePredicate(CardType.ARTIFACT)); + filter.add(CardType.ARTIFACT.getPredicate()); } static final private List tokenImageSets = new ArrayList<>(); diff --git a/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java b/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java index 2ecce4b326..6c9acb06d0 100644 --- a/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java +++ b/Mage/src/main/java/mage/target/common/TargetAnyTargetAmount.java @@ -6,7 +6,6 @@ import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePlayerOrPlaneswalker; import mage.filter.common.FilterPermanentOrPlayer; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author BetaSteward_at_googlemail.com @@ -17,7 +16,7 @@ public class TargetAnyTargetAmount extends TargetPermanentOrPlayerAmount { = new FilterCreaturePlayerOrPlaneswalker("targets"); static { - defaultFilter.getPermanentFilter().add(new CardTypePredicate(CardType.CREATURE)); + defaultFilter.getPermanentFilter().add(CardType.CREATURE.getPredicate()); } public TargetAnyTargetAmount(int amount) { diff --git a/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java b/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java index a43ab100de..537feb42e4 100644 --- a/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java +++ b/Mage/src/main/java/mage/target/common/TargetBasicLandCard.java @@ -5,7 +5,6 @@ package mage.target.common; import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetCard; @@ -18,7 +17,7 @@ public class TargetBasicLandCard extends TargetCard { public TargetBasicLandCard(Zone zone) { super(zone); filter.add(new SupertypePredicate(SuperType.BASIC)); - filter.add(new CardTypePredicate(CardType.LAND)); + filter.add(CardType.LAND.getPredicate()); } public TargetBasicLandCard(final TargetBasicLandCard target) { diff --git a/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java b/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java index 8ae66a9ec5..11cb59db03 100644 --- a/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java +++ b/Mage/src/main/java/mage/target/common/TargetCreatureOrPlayerAmount.java @@ -5,7 +5,6 @@ import mage.abilities.dynamicvalue.common.StaticValue; import mage.constants.CardType; import mage.constants.Zone; import mage.filter.common.FilterPermanentOrPlayer; -import mage.filter.predicate.mageobject.CardTypePredicate; /** * @author BetaSteward_at_googlemail.com @@ -16,7 +15,7 @@ public class TargetCreatureOrPlayerAmount extends TargetPermanentOrPlayerAmount = new FilterPermanentOrPlayer("creatures and/or players"); static { - defaultFilter.getPermanentFilter().add(new CardTypePredicate(CardType.CREATURE)); + defaultFilter.getPermanentFilter().add(CardType.CREATURE.getPredicate()); } public TargetCreatureOrPlayerAmount(int amount) {