From 4806626ba0ca78d4f582518a3df5c6b5ec070e0e Mon Sep 17 00:00:00 2001 From: DeepCrimson <98864333+DeepCrimson@users.noreply.github.com> Date: Thu, 16 Jun 2022 12:06:35 -0700 Subject: [PATCH] Refactor: Fix raw use of parameterized class ManaCostsImpl - 'S' cards (#9084) --- Mage.Sets/src/mage/cards/s/SaberclawGolem.java | 2 +- Mage.Sets/src/mage/cards/s/SabertoothCobra.java | 2 +- Mage.Sets/src/mage/cards/s/SacellumArchers.java | 2 +- Mage.Sets/src/mage/cards/s/SacredCat.java | 2 +- Mage.Sets/src/mage/cards/s/SacredGuide.java | 2 +- Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java | 2 +- Mage.Sets/src/mage/cards/s/SadisticObsession.java | 2 +- Mage.Sets/src/mage/cards/s/SafeHaven.java | 2 +- Mage.Sets/src/mage/cards/s/Safeguard.java | 2 +- Mage.Sets/src/mage/cards/s/SafeholdSentry.java | 2 +- Mage.Sets/src/mage/cards/s/SageEyeHarrier.java | 2 +- Mage.Sets/src/mage/cards/s/SaguArcher.java | 2 +- Mage.Sets/src/mage/cards/s/SaguMauler.java | 2 +- Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java | 2 +- Mage.Sets/src/mage/cards/s/Sailmonger.java | 2 +- Mage.Sets/src/mage/cards/s/SakashimaTheImpostor.java | 2 +- Mage.Sets/src/mage/cards/s/SaltRoadAmbushers.java | 2 +- Mage.Sets/src/mage/cards/s/SaltRoadPatrol.java | 2 +- Mage.Sets/src/mage/cards/s/SaltRoadQuartermasters.java | 2 +- Mage.Sets/src/mage/cards/s/SamiteAlchemist.java | 2 +- Mage.Sets/src/mage/cards/s/SamiteCenserBearer.java | 2 +- Mage.Sets/src/mage/cards/s/SamiteSanctuary.java | 2 +- Mage.Sets/src/mage/cards/s/SamutVoiceOfDissent.java | 2 +- Mage.Sets/src/mage/cards/s/SanctifierOfSouls.java | 2 +- Mage.Sets/src/mage/cards/s/SanctuarySmasher.java | 2 +- Mage.Sets/src/mage/cards/s/SanctumPlowbeast.java | 4 ++-- Mage.Sets/src/mage/cards/s/SandalsOfAbdallah.java | 2 +- Mage.Sets/src/mage/cards/s/SandbarMerfolk.java | 2 +- Mage.Sets/src/mage/cards/s/SandbarSerpent.java | 2 +- Mage.Sets/src/mage/cards/s/SandstormCharger.java | 2 +- Mage.Sets/src/mage/cards/s/SandstormEidolon.java | 2 +- Mage.Sets/src/mage/cards/s/SanguineGuard.java | 2 +- Mage.Sets/src/mage/cards/s/SanguinePraetor.java | 2 +- Mage.Sets/src/mage/cards/s/SanitariumSkeleton.java | 2 +- Mage.Sets/src/mage/cards/s/SapphireLeech.java | 2 +- Mage.Sets/src/mage/cards/s/SaprazzanBreaker.java | 2 +- Mage.Sets/src/mage/cards/s/SaprolingSymbiosis.java | 2 +- Mage.Sets/src/mage/cards/s/SapseepForest.java | 2 +- Mage.Sets/src/mage/cards/s/SarpadianEmpiresVolVII.java | 2 +- Mage.Sets/src/mage/cards/s/SatyrHedonist.java | 2 +- Mage.Sets/src/mage/cards/s/SatyrNyxSmith.java | 2 +- Mage.Sets/src/mage/cards/s/SatyrPiper.java | 2 +- Mage.Sets/src/mage/cards/s/SavaenElves.java | 2 +- Mage.Sets/src/mage/cards/s/SavageGorilla.java | 2 +- Mage.Sets/src/mage/cards/s/SavageKnuckleblade.java | 6 +++--- Mage.Sets/src/mage/cards/s/SavagebornHydra.java | 2 +- Mage.Sets/src/mage/cards/s/SavaiCrystal.java | 2 +- Mage.Sets/src/mage/cards/s/ScaldingDevil.java | 2 +- Mage.Sets/src/mage/cards/s/Scaldkin.java | 2 +- Mage.Sets/src/mage/cards/s/ScaleUp.java | 2 +- Mage.Sets/src/mage/cards/s/Scandalmonger.java | 2 +- Mage.Sets/src/mage/cards/s/ScarabFeast.java | 2 +- Mage.Sets/src/mage/cards/s/ScarredVinebreeder.java | 2 +- Mage.Sets/src/mage/cards/s/ScarwoodBandits.java | 2 +- Mage.Sets/src/mage/cards/s/ScarwoodHag.java | 2 +- Mage.Sets/src/mage/cards/s/ScatteredGroves.java | 2 +- Mage.Sets/src/mage/cards/s/ScavengerFolk.java | 2 +- Mage.Sets/src/mage/cards/s/ScavengerGrounds.java | 2 +- Mage.Sets/src/mage/cards/s/ScavengingOoze.java | 2 +- Mage.Sets/src/mage/cards/s/ScepterOfDominance.java | 2 +- Mage.Sets/src/mage/cards/s/ScepterOfFugue.java | 2 +- Mage.Sets/src/mage/cards/s/ScepterOfInsight.java | 2 +- Mage.Sets/src/mage/cards/s/ScholarOfAthreos.java | 2 +- Mage.Sets/src/mage/cards/s/SchoolOfPiranha.java | 2 +- Mage.Sets/src/mage/cards/s/ScionOfDarkness.java | 2 +- Mage.Sets/src/mage/cards/s/ScionOfGlaciers.java | 2 +- Mage.Sets/src/mage/cards/s/ScionOfTheUrDragon.java | 2 +- Mage.Sets/src/mage/cards/s/ScorchingMissile.java | 2 +- Mage.Sets/src/mage/cards/s/ScornfulEgotist.java | 2 +- Mage.Sets/src/mage/cards/s/ScourAllPossibilities.java | 2 +- Mage.Sets/src/mage/cards/s/ScourgeDevil.java | 2 +- Mage.Sets/src/mage/cards/s/ScourgeOfKherRidges.java | 4 ++-- Mage.Sets/src/mage/cards/s/ScourgeOfTheNobilis.java | 2 +- Mage.Sets/src/mage/cards/s/ScourgeOfValkas.java | 2 +- Mage.Sets/src/mage/cards/s/Scrap.java | 2 +- Mage.Sets/src/mage/cards/s/Scrapbasket.java | 2 +- Mage.Sets/src/mage/cards/s/ScreamsOfTheDamned.java | 2 +- Mage.Sets/src/mage/cards/s/ScreechingGriffin.java | 2 +- Mage.Sets/src/mage/cards/s/ScreechingHarpy.java | 2 +- Mage.Sets/src/mage/cards/s/ScreechingPhoenix.java | 2 +- Mage.Sets/src/mage/cards/s/ScrollOfFate.java | 2 +- Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java | 2 +- Mage.Sets/src/mage/cards/s/ScryingGlass.java | 2 +- Mage.Sets/src/mage/cards/s/SeaGateWreckage.java | 2 +- Mage.Sets/src/mage/cards/s/SeaSpirit.java | 2 +- Mage.Sets/src/mage/cards/s/SeaTroll.java | 2 +- Mage.Sets/src/mage/cards/s/SearchForTomorrow.java | 2 +- Mage.Sets/src/mage/cards/s/SearchlightGeist.java | 2 +- Mage.Sets/src/mage/cards/s/SearingSpearAskari.java | 2 +- Mage.Sets/src/mage/cards/s/SeasonedPyromancer.java | 2 +- Mage.Sets/src/mage/cards/s/SeasonedTactician.java | 2 +- Mage.Sets/src/mage/cards/s/SecludedSteppe.java | 2 +- Mage.Sets/src/mage/cards/s/SecurityDetail.java | 2 +- Mage.Sets/src/mage/cards/s/SedgeSliver.java | 2 +- Mage.Sets/src/mage/cards/s/SedgeTroll.java | 2 +- Mage.Sets/src/mage/cards/s/SedraxisSpecter.java | 2 +- Mage.Sets/src/mage/cards/s/SedrisTheTraitorKing.java | 2 +- Mage.Sets/src/mage/cards/s/SeedcradleWitch.java | 2 +- Mage.Sets/src/mage/cards/s/SeerOfTheLastTomorrow.java | 2 +- Mage.Sets/src/mage/cards/s/SeersSundial.java | 2 +- Mage.Sets/src/mage/cards/s/SegmentedKrotiq.java | 2 +- Mage.Sets/src/mage/cards/s/SeismicMage.java | 2 +- Mage.Sets/src/mage/cards/s/SeizeTheDay.java | 2 +- Mage.Sets/src/mage/cards/s/Seizures.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaCluestone.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaEulogist.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/SelesnyaKeyrune.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaLocket.java | 2 +- Mage.Sets/src/mage/cards/s/SelesnyaSentry.java | 2 +- Mage.Sets/src/mage/cards/s/SelflessCathar.java | 2 +- Mage.Sets/src/mage/cards/s/SelvalaHeartOfTheWilds.java | 2 +- Mage.Sets/src/mage/cards/s/SenateCourier.java | 2 +- Mage.Sets/src/mage/cards/s/SenateGuildmage.java | 2 +- Mage.Sets/src/mage/cards/s/SengirNosferatu.java | 2 +- Mage.Sets/src/mage/cards/s/SenseiGoldenTail.java | 2 +- Mage.Sets/src/mage/cards/s/SenselessRage.java | 2 +- Mage.Sets/src/mage/cards/s/SentryOfTheUnderworld.java | 2 +- Mage.Sets/src/mage/cards/s/SepharaSkysBlade.java | 2 +- Mage.Sets/src/mage/cards/s/SeraphOfTheScales.java | 4 ++-- Mage.Sets/src/mage/cards/s/SereneSteward.java | 2 +- Mage.Sets/src/mage/cards/s/SerpentGenerator.java | 2 +- Mage.Sets/src/mage/cards/s/SerpentineBasilisk.java | 2 +- Mage.Sets/src/mage/cards/s/SerpentineKavu.java | 2 +- Mage.Sets/src/mage/cards/s/SerraBestiary.java | 2 +- Mage.Sets/src/mage/cards/s/SerraPaladin.java | 2 +- Mage.Sets/src/mage/cards/s/SerrasLiturgy.java | 2 +- Mage.Sets/src/mage/cards/s/ServantOfTymaret.java | 2 +- Mage.Sets/src/mage/cards/s/SetessanGriffin.java | 2 +- Mage.Sets/src/mage/cards/s/SethronHurloonGeneral.java | 2 +- Mage.Sets/src/mage/cards/s/SeverTheBloodline.java | 2 +- Mage.Sets/src/mage/cards/s/SevinnesReclamation.java | 2 +- Mage.Sets/src/mage/cards/s/SewerRats.java | 2 +- Mage.Sets/src/mage/cards/s/SewerShambler.java | 2 +- Mage.Sets/src/mage/cards/s/ShabrazTheSkyshark.java | 2 +- Mage.Sets/src/mage/cards/s/Shackles.java | 2 +- Mage.Sets/src/mage/cards/s/ShadeOfTrokair.java | 2 +- Mage.Sets/src/mage/cards/s/ShadesBreath.java | 2 +- Mage.Sets/src/mage/cards/s/ShadowGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/ShadowLance.java | 2 +- Mage.Sets/src/mage/cards/s/ShadowbloodEgg.java | 2 +- Mage.Sets/src/mage/cards/s/ShadowbloodRidge.java | 2 +- Mage.Sets/src/mage/cards/s/ShadowbornApostle.java | 2 +- Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java | 2 +- Mage.Sets/src/mage/cards/s/ShaleskinPlower.java | 2 +- Mage.Sets/src/mage/cards/s/ShamanEnKor.java | 2 +- Mage.Sets/src/mage/cards/s/ShamanOfForgottenWays.java | 2 +- Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java | 2 +- Mage.Sets/src/mage/cards/s/ShamblingRemains.java | 2 +- Mage.Sets/src/mage/cards/s/ShamblingStrider.java | 2 +- Mage.Sets/src/mage/cards/s/ShamblingVent.java | 2 +- Mage.Sets/src/mage/cards/s/ShaperGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/ShaperParasite.java | 2 +- Mage.Sets/src/mage/cards/s/ShapersOfNature.java | 4 ++-- Mage.Sets/src/mage/cards/s/Shapesharer.java | 2 +- Mage.Sets/src/mage/cards/s/ShardPhoenix.java | 2 +- Mage.Sets/src/mage/cards/s/SharkTyphoon.java | 2 +- Mage.Sets/src/mage/cards/s/ShatteredPerception.java | 2 +- Mage.Sets/src/mage/cards/s/ShattergangBrothers.java | 6 +++--- Mage.Sets/src/mage/cards/s/ShaukusMinion.java | 2 +- Mage.Sets/src/mage/cards/s/ShefetDunes.java | 2 +- Mage.Sets/src/mage/cards/s/ShefetMonitor.java | 2 +- Mage.Sets/src/mage/cards/s/ShelldockIsle.java | 2 +- Mage.Sets/src/mage/cards/s/ShelteredThicket.java | 2 +- Mage.Sets/src/mage/cards/s/ShieldDancer.java | 2 +- Mage.Sets/src/mage/cards/s/ShieldhideDragon.java | 2 +- Mage.Sets/src/mage/cards/s/ShiftingCeratops.java | 2 +- Mage.Sets/src/mage/cards/s/ShimianNightStalker.java | 2 +- Mage.Sets/src/mage/cards/s/ShimmeringBarrier.java | 2 +- Mage.Sets/src/mage/cards/s/ShimmerscaleDrake.java | 2 +- Mage.Sets/src/mage/cards/s/ShipwreckSinger.java | 4 ++-- Mage.Sets/src/mage/cards/s/ShivanGorge.java | 2 +- Mage.Sets/src/mage/cards/s/ShivanHarvest.java | 2 +- Mage.Sets/src/mage/cards/s/ShivanHellkite.java | 2 +- Mage.Sets/src/mage/cards/s/ShivanMeteor.java | 2 +- Mage.Sets/src/mage/cards/s/ShivanSandMage.java | 2 +- Mage.Sets/src/mage/cards/s/ShivsEmbrace.java | 2 +- Mage.Sets/src/mage/cards/s/ShoreKeeper.java | 2 +- Mage.Sets/src/mage/cards/s/ShoreSnapper.java | 2 +- Mage.Sets/src/mage/cards/s/ShorecrasherElemental.java | 6 +++--- Mage.Sets/src/mage/cards/s/ShorelineRanger.java | 2 +- Mage.Sets/src/mage/cards/s/ShreddedSails.java | 2 +- Mage.Sets/src/mage/cards/s/ShroudedLore.java | 2 +- Mage.Sets/src/mage/cards/s/ShroudedSerpent.java | 2 +- Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java | 2 +- Mage.Sets/src/mage/cards/s/Sicken.java | 2 +- Mage.Sets/src/mage/cards/s/SiegeGangCommander.java | 2 +- Mage.Sets/src/mage/cards/s/SiegebreakerGiant.java | 2 +- Mage.Sets/src/mage/cards/s/SightedCasteSorcerer.java | 2 +- Mage.Sets/src/mage/cards/s/SigilOfTheNayanGods.java | 2 +- Mage.Sets/src/mage/cards/s/SigilOfTheNewDawn.java | 2 +- Mage.Sets/src/mage/cards/s/SigilTracer.java | 2 +- Mage.Sets/src/mage/cards/s/SilentAssassin.java | 2 +- Mage.Sets/src/mage/cards/s/SilentDeparture.java | 2 +- Mage.Sets/src/mage/cards/s/SilentSpecter.java | 2 +- Mage.Sets/src/mage/cards/s/SilkbindFaerie.java | 2 +- Mage.Sets/src/mage/cards/s/SilklashSpider.java | 2 +- Mage.Sets/src/mage/cards/s/SilkwingScout.java | 2 +- Mage.Sets/src/mage/cards/s/SilumgarAssassin.java | 2 +- Mage.Sets/src/mage/cards/s/SilumgarMonument.java | 2 +- Mage.Sets/src/mage/cards/s/SilumgarSpellEater.java | 2 +- Mage.Sets/src/mage/cards/s/SilverWyvern.java | 2 +- Mage.Sets/src/mage/cards/s/SilverchaseFox.java | 2 +- Mage.Sets/src/mage/cards/s/SilvergladePathfinder.java | 2 +- Mage.Sets/src/mage/cards/s/SilversmoteGhoul.java | 2 +- Mage.Sets/src/mage/cards/s/SilvosRogueElemental.java | 2 +- Mage.Sets/src/mage/cards/s/SimicAscendancy.java | 2 +- Mage.Sets/src/mage/cards/s/SimicBasilisk.java | 2 +- Mage.Sets/src/mage/cards/s/SimicCluestone.java | 2 +- Mage.Sets/src/mage/cards/s/SimicFluxmage.java | 2 +- Mage.Sets/src/mage/cards/s/SimicGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/SimicKeyrune.java | 2 +- Mage.Sets/src/mage/cards/s/SimicRagworm.java | 2 +- Mage.Sets/src/mage/cards/s/SinisterConcoction.java | 2 +- Mage.Sets/src/mage/cards/s/SinkingFeeling.java | 2 +- Mage.Sets/src/mage/cards/s/SirenStormtamer.java | 2 +- .../src/mage/cards/s/SisayWeatherlightCaptain.java | 2 +- Mage.Sets/src/mage/cards/s/SisaysIngenuity.java | 2 +- Mage.Sets/src/mage/cards/s/SithEvoker.java | 2 +- Mage.Sets/src/mage/cards/s/SkarrgGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkarrgTheRagePits.java | 2 +- Mage.Sets/src/mage/cards/s/SkarrganFirebird.java | 2 +- Mage.Sets/src/mage/cards/s/SkarrganHellkite.java | 2 +- Mage.Sets/src/mage/cards/s/SkeletalChangeling.java | 2 +- Mage.Sets/src/mage/cards/s/SkeletalGrimace.java | 2 +- Mage.Sets/src/mage/cards/s/SkeletalKathari.java | 2 +- Mage.Sets/src/mage/cards/s/SkeletalVampire.java | 2 +- Mage.Sets/src/mage/cards/s/SkeletalWurm.java | 2 +- Mage.Sets/src/mage/cards/s/SkewerTheCritics.java | 2 +- Mage.Sets/src/mage/cards/s/Skinthinner.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkCommando.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkDrillSergeant.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkMarauder.java | 2 +- Mage.Sets/src/mage/cards/s/SkirkRidgeExhumer.java | 2 +- Mage.Sets/src/mage/cards/s/SkirsdagCultist.java | 2 +- Mage.Sets/src/mage/cards/s/SkirsdagFlayer.java | 2 +- Mage.Sets/src/mage/cards/s/SkirsdagSupplicant.java | 2 +- .../src/mage/cards/s/SkithiryxTheBlightDragon.java | 4 ++-- Mage.Sets/src/mage/cards/s/Skitterskin.java | 2 +- Mage.Sets/src/mage/cards/s/SkittishValesk.java | 2 +- Mage.Sets/src/mage/cards/s/SkolaGrovedancer.java | 2 +- Mage.Sets/src/mage/cards/s/SkullCollector.java | 2 +- Mage.Sets/src/mage/cards/s/SkullFracture.java | 2 +- Mage.Sets/src/mage/cards/s/SkullportMerchant.java | 2 +- Mage.Sets/src/mage/cards/s/SkycatSovereign.java | 2 +- Mage.Sets/src/mage/cards/s/SkycloudEgg.java | 2 +- Mage.Sets/src/mage/cards/s/SkycloudExpanse.java | 2 +- Mage.Sets/src/mage/cards/s/SkylineScout.java | 2 +- Mage.Sets/src/mage/cards/s/SkyriderPatrol.java | 2 +- Mage.Sets/src/mage/cards/s/Skyscribing.java | 2 +- Mage.Sets/src/mage/cards/s/SkyshipStalker.java | 6 +++--- Mage.Sets/src/mage/cards/s/SkyshroudElf.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkyshroudPoacher.java | 2 +- Mage.Sets/src/mage/cards/s/SkyshroudTroll.java | 2 +- Mage.Sets/src/mage/cards/s/SkywatcherAdept.java | 2 +- Mage.Sets/src/mage/cards/s/SkywaySniper.java | 2 +- Mage.Sets/src/mage/cards/s/SkywiseTeachings.java | 2 +- Mage.Sets/src/mage/cards/s/SlaughterPact.java | 2 +- Mage.Sets/src/mage/cards/s/SlayersStronghold.java | 2 +- Mage.Sets/src/mage/cards/s/SliceAndDice.java | 2 +- Mage.Sets/src/mage/cards/s/SlimefootTheStowaway.java | 2 +- Mage.Sets/src/mage/cards/s/SlingbowTrap.java | 2 +- Mage.Sets/src/mage/cards/s/SlingshotGoblin.java | 2 +- Mage.Sets/src/mage/cards/s/SlinkingSkirge.java | 2 +- Mage.Sets/src/mage/cards/s/SlipperyKarst.java | 2 +- Mage.Sets/src/mage/cards/s/SlipstreamEel.java | 2 +- Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java | 2 +- Mage.Sets/src/mage/cards/s/SliptideSerpent.java | 2 +- Mage.Sets/src/mage/cards/s/SlithBloodletter.java | 2 +- Mage.Sets/src/mage/cards/s/Slitherhead.java | 2 +- Mage.Sets/src/mage/cards/s/SlitheringShade.java | 2 +- Mage.Sets/src/mage/cards/s/SliverOverlord.java | 4 ++-- Mage.Sets/src/mage/cards/s/SliverQueen.java | 2 +- Mage.Sets/src/mage/cards/s/Sliversmith.java | 2 +- Mage.Sets/src/mage/cards/s/SluicewayScorpion.java | 2 +- Mage.Sets/src/mage/cards/s/SlumberingTora.java | 2 +- Mage.Sets/src/mage/cards/s/SmeltWardIgnus.java | 2 +- Mage.Sets/src/mage/cards/s/SmitingHelix.java | 2 +- Mage.Sets/src/mage/cards/s/SmokeTeller.java | 2 +- Mage.Sets/src/mage/cards/s/SmokespewInvoker.java | 2 +- Mage.Sets/src/mage/cards/s/SmolderInitiate.java | 2 +- Mage.Sets/src/mage/cards/s/SmolderingCrater.java | 2 +- Mage.Sets/src/mage/cards/s/SmolderingWerewolf.java | 2 +- Mage.Sets/src/mage/cards/s/SnakeBasket.java | 2 +- Mage.Sets/src/mage/cards/s/SnappingThragg.java | 2 +- Mage.Sets/src/mage/cards/s/SnarlingUndorak.java | 4 ++-- Mage.Sets/src/mage/cards/s/SneakAttack.java | 2 +- Mage.Sets/src/mage/cards/s/SnowHound.java | 2 +- Mage.Sets/src/mage/cards/s/SnowhornRider.java | 2 +- Mage.Sets/src/mage/cards/s/SoaringHope.java | 2 +- Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java | 2 +- Mage.Sets/src/mage/cards/s/SolarBlast.java | 2 +- Mage.Sets/src/mage/cards/s/SoldeviDigger.java | 2 +- Mage.Sets/src/mage/cards/s/SoldeviHeretic.java | 2 +- Mage.Sets/src/mage/cards/s/SoldeviSimulacrum.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoldierOfFortune.java | 2 +- Mage.Sets/src/mage/cards/s/SoldierReplica.java | 2 +- Mage.Sets/src/mage/cards/s/Soliton.java | 2 +- Mage.Sets/src/mage/cards/s/SoltariCrusader.java | 2 +- Mage.Sets/src/mage/cards/s/SoltariEmissary.java | 2 +- Mage.Sets/src/mage/cards/s/SomberwaldAlpha.java | 2 +- Mage.Sets/src/mage/cards/s/Songstitcher.java | 2 +- Mage.Sets/src/mage/cards/s/SootfeatherFlock.java | 2 +- Mage.Sets/src/mage/cards/s/SoothsayerAdept.java | 2 +- Mage.Sets/src/mage/cards/s/SophicCentaur.java | 2 +- Mage.Sets/src/mage/cards/s/SoratamiCloudChariot.java | 2 +- Mage.Sets/src/mage/cards/s/SoratamiMindsweeper.java | 2 +- Mage.Sets/src/mage/cards/s/SorayaTheFalconer.java | 2 +- Mage.Sets/src/mage/cards/s/SorcererOfTheFang.java | 2 +- Mage.Sets/src/mage/cards/s/SoulCharmer.java | 2 +- Mage.Sets/src/mage/cards/s/SoulCollector.java | 2 +- Mage.Sets/src/mage/cards/s/SoulFoundry.java | 2 +- Mage.Sets/src/mage/cards/s/SoulKiss.java | 2 +- Mage.Sets/src/mage/cards/s/SoulOfInnistrad.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoulOfRavnica.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoulOfShandalar.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoulOfTheros.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoulOfZendikar.java | 4 ++-- Mage.Sets/src/mage/cards/s/SoulSculptor.java | 2 +- Mage.Sets/src/mage/cards/s/SoulSeparator.java | 2 +- Mage.Sets/src/mage/cards/s/SoulShepherd.java | 2 +- Mage.Sets/src/mage/cards/s/SoulSnare.java | 2 +- Mage.Sets/src/mage/cards/s/SoulbrightFlamekin.java | 2 +- Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java | 2 +- Mage.Sets/src/mage/cards/s/SoulreaperOfMogis.java | 2 +- Mage.Sets/src/mage/cards/s/SoulswornJury.java | 2 +- Mage.Sets/src/mage/cards/s/SouthernPaladin.java | 2 +- Mage.Sets/src/mage/cards/s/SparkSpray.java | 2 +- Mage.Sets/src/mage/cards/s/Sparkspitter.java | 2 +- Mage.Sets/src/mage/cards/s/SparktongueDragon.java | 2 +- Mage.Sets/src/mage/cards/s/SparringCollar.java | 2 +- Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java | 2 +- Mage.Sets/src/mage/cards/s/SpawnOfMayhem.java | 2 +- Mage.Sets/src/mage/cards/s/SpawningBed.java | 2 +- Mage.Sets/src/mage/cards/s/SpawningPool.java | 2 +- Mage.Sets/src/mage/cards/s/SpearOfHeliod.java | 2 +- Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java | 2 +- Mage.Sets/src/mage/cards/s/SpecterOfTheFens.java | 2 +- Mage.Sets/src/mage/cards/s/SpectralLynx.java | 2 +- Mage.Sets/src/mage/cards/s/SpectralSailor.java | 2 +- Mage.Sets/src/mage/cards/s/SpectralSliver.java | 2 +- Mage.Sets/src/mage/cards/s/SpectralSteel.java | 2 +- Mage.Sets/src/mage/cards/s/SpellSnip.java | 2 +- Mage.Sets/src/mage/cards/s/Spellskite.java | 2 +- Mage.Sets/src/mage/cards/s/SphinxOfMagosi.java | 2 +- Mage.Sets/src/mage/cards/s/SpiderSpawning.java | 2 +- Mage.Sets/src/mage/cards/s/SpikeSoldier.java | 2 +- Mage.Sets/src/mage/cards/s/SpikeWorker.java | 2 +- Mage.Sets/src/mage/cards/s/SpikeshotElder.java | 2 +- Mage.Sets/src/mage/cards/s/SpiketailDrake.java | 2 +- Mage.Sets/src/mage/cards/s/SpikewheelAcrobat.java | 2 +- Mage.Sets/src/mage/cards/s/SpindriftDrake.java | 2 +- Mage.Sets/src/mage/cards/s/SpinedBasher.java | 2 +- Mage.Sets/src/mage/cards/s/SpinerockKnoll.java | 2 +- Mage.Sets/src/mage/cards/s/SpinyStarfish.java | 2 +- Mage.Sets/src/mage/cards/s/SpiritBonds.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpiritCairn.java | 2 +- Mage.Sets/src/mage/cards/s/SpiritEnDal.java | 2 +- Mage.Sets/src/mage/cards/s/SpiritShield.java | 2 +- Mage.Sets/src/mage/cards/s/Spiritmonger.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpitFlame.java | 2 +- Mage.Sets/src/mage/cards/s/SpiteflameWitch.java | 2 +- Mage.Sets/src/mage/cards/s/SpitfireBastion.java | 2 +- Mage.Sets/src/mage/cards/s/SpittingDrake.java | 2 +- Mage.Sets/src/mage/cards/s/SpittingGourna.java | 2 +- Mage.Sets/src/mage/cards/s/SpittingHydra.java | 2 +- Mage.Sets/src/mage/cards/s/SpittingSlug.java | 2 +- Mage.Sets/src/mage/cards/s/SplendorMare.java | 2 +- Mage.Sets/src/mage/cards/s/SplinteringWind.java | 2 +- Mage.Sets/src/mage/cards/s/SporebackTroll.java | 2 +- Mage.Sets/src/mage/cards/s/SpringjackPasture.java | 2 +- Mage.Sets/src/mage/cards/s/SquallDrifter.java | 2 +- Mage.Sets/src/mage/cards/s/Squallmonger.java | 2 +- Mage.Sets/src/mage/cards/s/SquealingDevil.java | 2 +- Mage.Sets/src/mage/cards/s/SquirrelWrangler.java | 4 ++-- Mage.Sets/src/mage/cards/s/StaffOfDomination.java | 10 +++++----- Mage.Sets/src/mage/cards/s/StaffOfZegon.java | 2 +- Mage.Sets/src/mage/cards/s/StalkingAssassin.java | 4 ++-- Mage.Sets/src/mage/cards/s/StalkingBloodsucker.java | 2 +- Mage.Sets/src/mage/cards/s/StalkingDrone.java | 2 +- Mage.Sets/src/mage/cards/s/StalkingYeti.java | 2 +- Mage.Sets/src/mage/cards/s/StampedeDriver.java | 2 +- Mage.Sets/src/mage/cards/s/StarDestroyer.java | 6 +++--- Mage.Sets/src/mage/cards/s/StarlightInvoker.java | 2 +- Mage.Sets/src/mage/cards/s/Starstorm.java | 2 +- Mage.Sets/src/mage/cards/s/StartlingDevelopment.java | 2 +- Mage.Sets/src/mage/cards/s/Stasis.java | 2 +- Mage.Sets/src/mage/cards/s/StasisCell.java | 2 +- Mage.Sets/src/mage/cards/s/SteadfastSentinel.java | 2 +- Mage.Sets/src/mage/cards/s/SteamSpitter.java | 2 +- Mage.Sets/src/mage/cards/s/SteelHellkite.java | 2 +- Mage.Sets/src/mage/cards/s/SteelbaneHydra.java | 2 +- Mage.Sets/src/mage/cards/s/SteelingStance.java | 2 +- Mage.Sets/src/mage/cards/s/SteepleCreeper.java | 2 +- Mage.Sets/src/mage/cards/s/StenchOfEvil.java | 2 +- Mage.Sets/src/mage/cards/s/StensiaBloodhall.java | 2 +- Mage.Sets/src/mage/cards/s/StensiaMasquerade.java | 2 +- Mage.Sets/src/mage/cards/s/SteppeGlider.java | 2 +- Mage.Sets/src/mage/cards/s/StillLife.java | 2 +- Mage.Sets/src/mage/cards/s/StillmoonCavalier.java | 6 +++--- Mage.Sets/src/mage/cards/s/StingingBarrier.java | 2 +- Mage.Sets/src/mage/cards/s/StingingShot.java | 2 +- Mage.Sets/src/mage/cards/s/Stingmoggie.java | 2 +- Mage.Sets/src/mage/cards/s/StirTheSands.java | 2 +- Mage.Sets/src/mage/cards/s/StirringAddress.java | 2 +- Mage.Sets/src/mage/cards/s/StirringWildwood.java | 2 +- Mage.Sets/src/mage/cards/s/StitcherGeralf.java | 2 +- Mage.Sets/src/mage/cards/s/StitchersApprentice.java | 2 +- Mage.Sets/src/mage/cards/s/StitchwingSkaab.java | 2 +- Mage.Sets/src/mage/cards/s/StoneHavenMedic.java | 2 +- Mage.Sets/src/mage/cards/s/StoneKavu.java | 4 ++-- Mage.Sets/src/mage/cards/s/StonefareCrocodile.java | 2 +- Mage.Sets/src/mage/cards/s/StoneforgeMystic.java | 2 +- Mage.Sets/src/mage/cards/s/StonehewerGiant.java | 2 +- Mage.Sets/src/mage/cards/s/StonehornChanter.java | 2 +- Mage.Sets/src/mage/cards/s/StonewiseFortifier.java | 2 +- Mage.Sets/src/mage/cards/s/StonewoodInvoker.java | 2 +- Mage.Sets/src/mage/cards/s/Stonewright.java | 2 +- Mage.Sets/src/mage/cards/s/StonybrookAngler.java | 2 +- Mage.Sets/src/mage/cards/s/StormElemental.java | 4 ++-- Mage.Sets/src/mage/cards/s/StormFront.java | 2 +- Mage.Sets/src/mage/cards/s/StormShaman.java | 2 +- Mage.Sets/src/mage/cards/s/Stormbind.java | 2 +- Mage.Sets/src/mage/cards/s/StormcallerOfKeranos.java | 2 +- Mage.Sets/src/mage/cards/s/StormchaserChimera.java | 2 +- Mage.Sets/src/mage/cards/s/StormcloudDjinn.java | 2 +- Mage.Sets/src/mage/cards/s/StormcragElemental.java | 2 +- Mage.Sets/src/mage/cards/s/StormscaleAnarch.java | 2 +- Mage.Sets/src/mage/cards/s/StormscapeApprentice.java | 4 ++-- Mage.Sets/src/mage/cards/s/StormscapeMaster.java | 4 ++-- Mage.Sets/src/mage/cards/s/StormwingDragon.java | 2 +- Mage.Sets/src/mage/cards/s/StormwingEntity.java | 2 +- Mage.Sets/src/mage/cards/s/StoryCircle.java | 2 +- Mage.Sets/src/mage/cards/s/StrandsOfNight.java | 2 +- Mage.Sets/src/mage/cards/s/StrandsOfUndeath.java | 2 +- Mage.Sets/src/mage/cards/s/StranglingSoot.java | 2 +- Mage.Sets/src/mage/cards/s/StratusDancer.java | 2 +- Mage.Sets/src/mage/cards/s/StreamHopper.java | 2 +- Mage.Sets/src/mage/cards/s/StreetSpasm.java | 2 +- Mage.Sets/src/mage/cards/s/StrengthOfIsolation.java | 2 +- Mage.Sets/src/mage/cards/s/StrengthOfLunacy.java | 2 +- Mage.Sets/src/mage/cards/s/StringOfDisappearances.java | 2 +- Mage.Sets/src/mage/cards/s/StripedRiverwinder.java | 2 +- Mage.Sets/src/mage/cards/s/StromgaldCrusader.java | 4 ++-- Mage.Sets/src/mage/cards/s/StromkirkOccultist.java | 2 +- Mage.Sets/src/mage/cards/s/StrongholdBiologist.java | 2 +- Mage.Sets/src/mage/cards/s/StrongholdMachinist.java | 2 +- Mage.Sets/src/mage/cards/s/StrongholdOverseer.java | 2 +- Mage.Sets/src/mage/cards/s/StudentOfWarfare.java | 2 +- Mage.Sets/src/mage/cards/s/SturdyHatchling.java | 2 +- .../src/mage/cards/s/SubiraTulzidiCaravanner.java | 2 +- Mage.Sets/src/mage/cards/s/SultaiBanner.java | 2 +- Mage.Sets/src/mage/cards/s/SummonersPact.java | 2 +- Mage.Sets/src/mage/cards/s/SummoningTrap.java | 2 +- Mage.Sets/src/mage/cards/s/SunCollaredRaptor.java | 2 +- Mage.Sets/src/mage/cards/s/SunbladeElf.java | 2 +- Mage.Sets/src/mage/cards/s/SunfireBalm.java | 2 +- Mage.Sets/src/mage/cards/s/SunflareShaman.java | 2 +- Mage.Sets/src/mage/cards/s/Sunforger.java | 2 +- Mage.Sets/src/mage/cards/s/SungrassEgg.java | 2 +- Mage.Sets/src/mage/cards/s/SungrassPrairie.java | 2 +- Mage.Sets/src/mage/cards/s/SunhomeEnforcer.java | 2 +- .../src/mage/cards/s/SunhomeFortressOfTheLegion.java | 2 +- Mage.Sets/src/mage/cards/s/SunhomeGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/SunkenCity.java | 2 +- Mage.Sets/src/mage/cards/s/SunkenField.java | 2 +- Mage.Sets/src/mage/cards/s/SunkenRuins.java | 6 +++--- Mage.Sets/src/mage/cards/s/SunmanePegasus.java | 2 +- Mage.Sets/src/mage/cards/s/SunsBounty.java | 2 +- Mage.Sets/src/mage/cards/s/SunscapeApprentice.java | 4 ++-- Mage.Sets/src/mage/cards/s/SunscapeMaster.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sunstone.java | 2 +- Mage.Sets/src/mage/cards/s/SurgeMare.java | 2 +- Mage.Sets/src/mage/cards/s/Surgespanner.java | 2 +- Mage.Sets/src/mage/cards/s/SurvivorOfTheUnseen.java | 2 +- Mage.Sets/src/mage/cards/s/SustainingSpirit.java | 2 +- Mage.Sets/src/mage/cards/s/Sustenance.java | 2 +- Mage.Sets/src/mage/cards/s/SutureSpirit.java | 2 +- Mage.Sets/src/mage/cards/s/SvyelunitePriest.java | 2 +- Mage.Sets/src/mage/cards/s/SwarmGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/Swat.java | 2 +- Mage.Sets/src/mage/cards/s/SwellOfCourage.java | 2 +- Mage.Sets/src/mage/cards/s/SwelteringSuns.java | 2 +- Mage.Sets/src/mage/cards/s/SwirlingSpriggan.java | 2 +- Mage.Sets/src/mage/cards/s/SwoopingTalon.java | 2 +- Mage.Sets/src/mage/cards/s/SwordDancer.java | 2 +- Mage.Sets/src/mage/cards/s/SwordOfKaldra.java | 2 +- Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java | 4 ++-- Mage.Sets/src/mage/cards/s/SyggRiverGuide.java | 2 +- Mage.Sets/src/mage/cards/s/SylvanBounty.java | 2 +- Mage.Sets/src/mage/cards/s/SylvanMight.java | 2 +- Mage.Sets/src/mage/cards/s/SylvanReclamation.java | 2 +- Mage.Sets/src/mage/cards/s/SylvokReplica.java | 2 +- Mage.Sets/src/mage/cards/s/SymbioticDeployment.java | 2 +- Mage.Sets/src/mage/cards/s/SyndicateGuildmage.java | 4 ++-- Mage.Sets/src/mage/cards/s/SynodArtificer.java | 4 ++-- Mage.Sets/src/mage/cards/s/SynodSanctum.java | 4 ++-- Mage.Sets/src/mage/cards/s/SyrKonradTheGrim.java | 2 +- 498 files changed, 553 insertions(+), 553 deletions(-) diff --git a/Mage.Sets/src/mage/cards/s/SaberclawGolem.java b/Mage.Sets/src/mage/cards/s/SaberclawGolem.java index 6f9f107e89..ac87263e67 100644 --- a/Mage.Sets/src/mage/cards/s/SaberclawGolem.java +++ b/Mage.Sets/src/mage/cards/s/SaberclawGolem.java @@ -26,7 +26,7 @@ public final class SaberclawGolem extends CardImpl { this.subtype.add(SubType.GOLEM); this.power = new MageInt(4); this.toughness = new MageInt(2); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } public SaberclawGolem (final SaberclawGolem card) { diff --git a/Mage.Sets/src/mage/cards/s/SabertoothCobra.java b/Mage.Sets/src/mage/cards/s/SabertoothCobra.java index 669aee7f28..101d364d4b 100644 --- a/Mage.Sets/src/mage/cards/s/SabertoothCobra.java +++ b/Mage.Sets/src/mage/cards/s/SabertoothCobra.java @@ -33,7 +33,7 @@ public final class SabertoothCobra extends CardImpl { Ability ability = new DealsDamageToAPlayerTriggeredAbility(effect, false, true); effect = new AddPoisonCounterTargetEffect(1); effect.setText("That player gets another poison counter."); - ability.addEffect(new UnlessPaysDelayedEffect(new ManaCostsImpl("{2}"), effect, PhaseStep.UPKEEP, true, + ability.addEffect(new UnlessPaysDelayedEffect(new ManaCostsImpl<>("{2}"), effect, PhaseStep.UPKEEP, true, "That player gets another poison counter at the beginning of their next upkeep unless they pay {2} before that turn.")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SacellumArchers.java b/Mage.Sets/src/mage/cards/s/SacellumArchers.java index a56ce1bc0d..2d85929bf9 100644 --- a/Mage.Sets/src/mage/cards/s/SacellumArchers.java +++ b/Mage.Sets/src/mage/cards/s/SacellumArchers.java @@ -30,7 +30,7 @@ public final class SacellumArchers extends CardImpl { this.toughness = new MageInt(3); // {R}{W}, {tap}: Sacellum Archers deals 2 damage to target attacking or blocking creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{R}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{R}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetAttackingOrBlockingCreature()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SacredCat.java b/Mage.Sets/src/mage/cards/s/SacredCat.java index 3f6b181e7a..04492e025e 100644 --- a/Mage.Sets/src/mage/cards/s/SacredCat.java +++ b/Mage.Sets/src/mage/cards/s/SacredCat.java @@ -28,7 +28,7 @@ public final class SacredCat extends CardImpl { this.addAbility(LifelinkAbility.getInstance()); // Embalm {W} - this.addAbility(new EmbalmAbility(new ManaCostsImpl("{W}"), this)); + this.addAbility(new EmbalmAbility(new ManaCostsImpl<>("{W}"), this)); } private SacredCat(final SacredCat card) { diff --git a/Mage.Sets/src/mage/cards/s/SacredGuide.java b/Mage.Sets/src/mage/cards/s/SacredGuide.java index c2cd0da4df..eed93986ac 100644 --- a/Mage.Sets/src/mage/cards/s/SacredGuide.java +++ b/Mage.Sets/src/mage/cards/s/SacredGuide.java @@ -38,7 +38,7 @@ public final class SacredGuide extends CardImpl { this.toughness = new MageInt(1); // {1}{W}, Sacrifice Sacred Guide: Reveal cards from the top of your library until you reveal a white card. Put that card into your hand and exile all other cards revealed this way. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RevealCardsFromLibraryUntilEffect(filterCard, Zone.HAND, Zone.EXILED), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RevealCardsFromLibraryUntilEffect(filterCard, Zone.HAND, Zone.EXILED), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java b/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java index 917c5afb72..d0d81b66d3 100644 --- a/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java +++ b/Mage.Sets/src/mage/cards/s/SacredWhiteDeer.java @@ -41,7 +41,7 @@ public final class SacredWhiteDeer extends CardImpl { Ability ability = new ConditionalActivatedAbility( Zone.BATTLEFIELD, new GainLifeEffect(4), - new ManaCostsImpl("{3}{G}"), + new ManaCostsImpl<>("{3}{G}"), new PermanentsOnTheBattlefieldCondition(filter) ); ability.addCost(new TapSourceCost()); diff --git a/Mage.Sets/src/mage/cards/s/SadisticObsession.java b/Mage.Sets/src/mage/cards/s/SadisticObsession.java index eef112e504..3202653046 100644 --- a/Mage.Sets/src/mage/cards/s/SadisticObsession.java +++ b/Mage.Sets/src/mage/cards/s/SadisticObsession.java @@ -37,7 +37,7 @@ public final class SadisticObsession extends CardImpl { // Enchanted creature has "{B}, {T}: Put a -1/-1 counter on target creature." ability = new SimpleActivatedAbility(new AddCountersTargetEffect( - CounterType.M1M1.createInstance()), new ManaCostsImpl("{B}") + CounterType.M1M1.createInstance()), new ManaCostsImpl<>("{B}") ); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SafeHaven.java b/Mage.Sets/src/mage/cards/s/SafeHaven.java index 3a0ccfb5ca..945f567c99 100644 --- a/Mage.Sets/src/mage/cards/s/SafeHaven.java +++ b/Mage.Sets/src/mage/cards/s/SafeHaven.java @@ -27,7 +27,7 @@ public final class SafeHaven extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // {2}, {tap}: Exile target creature you control. - Ability ability = new SimpleActivatedAbility(new ExileTargetForSourceEffect(), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(new ExileTargetForSourceEffect(), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Safeguard.java b/Mage.Sets/src/mage/cards/s/Safeguard.java index 318c7c2196..b08325625f 100644 --- a/Mage.Sets/src/mage/cards/s/Safeguard.java +++ b/Mage.Sets/src/mage/cards/s/Safeguard.java @@ -26,7 +26,7 @@ public final class Safeguard extends CardImpl { // {2}{W}: Prevent all combat damage that would be dealt by target creature this turn. Effect effect = new PreventDamageByTargetEffect(Duration.EndOfTurn, true); effect.setText("Prevent all combat damage that would be dealt by target creature this turn."); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}{W}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SafeholdSentry.java b/Mage.Sets/src/mage/cards/s/SafeholdSentry.java index 5190914547..8a90858a9e 100644 --- a/Mage.Sets/src/mage/cards/s/SafeholdSentry.java +++ b/Mage.Sets/src/mage/cards/s/SafeholdSentry.java @@ -31,7 +31,7 @@ public final class SafeholdSentry extends CardImpl { this.toughness = new MageInt(2); // {2}{W}, {untap}: Safehold Sentry gets +0/+2 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 2, Duration.EndOfTurn), new ManaCostsImpl("{2}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{W}")); ability.addCost(new UntapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SageEyeHarrier.java b/Mage.Sets/src/mage/cards/s/SageEyeHarrier.java index 5b2215efc6..6e709e3939 100644 --- a/Mage.Sets/src/mage/cards/s/SageEyeHarrier.java +++ b/Mage.Sets/src/mage/cards/s/SageEyeHarrier.java @@ -28,7 +28,7 @@ public final class SageEyeHarrier extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // Morph {3}{W} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{W}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{W}"))); } private SageEyeHarrier(final SageEyeHarrier card) { diff --git a/Mage.Sets/src/mage/cards/s/SaguArcher.java b/Mage.Sets/src/mage/cards/s/SaguArcher.java index b706cb6015..7837e61f10 100644 --- a/Mage.Sets/src/mage/cards/s/SaguArcher.java +++ b/Mage.Sets/src/mage/cards/s/SaguArcher.java @@ -28,7 +28,7 @@ public final class SaguArcher extends CardImpl { // Reach this.addAbility(ReachAbility.getInstance()); // Morph {4}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{G}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{G}"))); } private SaguArcher(final SaguArcher card) { diff --git a/Mage.Sets/src/mage/cards/s/SaguMauler.java b/Mage.Sets/src/mage/cards/s/SaguMauler.java index 79995068d7..7994e4a293 100644 --- a/Mage.Sets/src/mage/cards/s/SaguMauler.java +++ b/Mage.Sets/src/mage/cards/s/SaguMauler.java @@ -30,7 +30,7 @@ public final class SaguMauler extends CardImpl { // Hexproof this.addAbility(HexproofAbility.getInstance()); // Morph {3}{G}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{G}{U}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{G}{U}"))); } private SaguMauler(final SaguMauler card) { diff --git a/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java b/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java index 37206315d5..fce7a3bdae 100644 --- a/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java +++ b/Mage.Sets/src/mage/cards/s/SaiMasterThopterist.java @@ -49,7 +49,7 @@ public final class SaiMasterThopterist extends CardImpl { Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), - new ManaCostsImpl("{1}{U}") + new ManaCostsImpl<>("{1}{U}") ); ability.addCost(new SacrificeTargetCost( new TargetControlledPermanent(2, 2, filter2, false) diff --git a/Mage.Sets/src/mage/cards/s/Sailmonger.java b/Mage.Sets/src/mage/cards/s/Sailmonger.java index c5f66484c6..2e4fb79d3a 100644 --- a/Mage.Sets/src/mage/cards/s/Sailmonger.java +++ b/Mage.Sets/src/mage/cards/s/Sailmonger.java @@ -31,7 +31,7 @@ public final class Sailmonger extends CardImpl { this.toughness = new MageInt(3); // {2}: Target creature gains flying until end of turn. Any player may activate this ability. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{2}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}")); ability.addTarget(new TargetCreaturePermanent()); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); diff --git a/Mage.Sets/src/mage/cards/s/SakashimaTheImpostor.java b/Mage.Sets/src/mage/cards/s/SakashimaTheImpostor.java index b51c154a38..1cf8b57c16 100644 --- a/Mage.Sets/src/mage/cards/s/SakashimaTheImpostor.java +++ b/Mage.Sets/src/mage/cards/s/SakashimaTheImpostor.java @@ -61,7 +61,7 @@ class SakashimaTheImpostorCopyApplier extends CopyApplier { // {2}{U}{U}: Return Sakashima the Impostor to its owner's hand at the beginning of the next end step blueprint.getAbilities().add(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new ReturnToHandSourceEffect(true)), false), - new ManaCostsImpl("{2}{U}{U}") + new ManaCostsImpl<>("{2}{U}{U}") )); return true; } diff --git a/Mage.Sets/src/mage/cards/s/SaltRoadAmbushers.java b/Mage.Sets/src/mage/cards/s/SaltRoadAmbushers.java index d766236ffe..023d8326d6 100644 --- a/Mage.Sets/src/mage/cards/s/SaltRoadAmbushers.java +++ b/Mage.Sets/src/mage/cards/s/SaltRoadAmbushers.java @@ -32,7 +32,7 @@ public final class SaltRoadAmbushers extends CardImpl { this.addAbility(new SaltRoadAmbushersTriggeredAbility()); // Megamorph {3}{G}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{G}{G}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{G}{G}"), true)); } private SaltRoadAmbushers(final SaltRoadAmbushers card) { diff --git a/Mage.Sets/src/mage/cards/s/SaltRoadPatrol.java b/Mage.Sets/src/mage/cards/s/SaltRoadPatrol.java index 612c06c64c..5201b6480f 100644 --- a/Mage.Sets/src/mage/cards/s/SaltRoadPatrol.java +++ b/Mage.Sets/src/mage/cards/s/SaltRoadPatrol.java @@ -25,7 +25,7 @@ public final class SaltRoadPatrol extends CardImpl { this.toughness = new MageInt(5); // Outlast {1}{W} - this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{W}"))); + this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{1}{W}"))); } private SaltRoadPatrol(final SaltRoadPatrol card) { diff --git a/Mage.Sets/src/mage/cards/s/SaltRoadQuartermasters.java b/Mage.Sets/src/mage/cards/s/SaltRoadQuartermasters.java index 1550e4e66f..cfe562fdf6 100644 --- a/Mage.Sets/src/mage/cards/s/SaltRoadQuartermasters.java +++ b/Mage.Sets/src/mage/cards/s/SaltRoadQuartermasters.java @@ -36,7 +36,7 @@ public final class SaltRoadQuartermasters extends CardImpl { "with two +1/+1 counters on it")); // {2}{G}, Remove a +1/+1 counter from Salt Road Quartermasters: Put a +1/+1 counter on target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl<>("{2}{G}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1))); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SamiteAlchemist.java b/Mage.Sets/src/mage/cards/s/SamiteAlchemist.java index d0fbb864b0..575c832619 100644 --- a/Mage.Sets/src/mage/cards/s/SamiteAlchemist.java +++ b/Mage.Sets/src/mage/cards/s/SamiteAlchemist.java @@ -33,7 +33,7 @@ public final class SamiteAlchemist extends CardImpl { // {W}{W}, {tap}: Prevent the next 4 damage that would be dealt this turn to target creature you control. Tap that creature. It doesn't untap during your next untap step. Ability ability = new SimpleActivatedAbility( new PreventDamageToTargetEffect(Duration.EndOfTurn, 4), - new ManaCostsImpl("{W}{W}") + new ManaCostsImpl<>("{W}{W}") ); ability.addCost(new TapSourceCost()); ability.addEffect(new TapTargetEffect("Tap that creature")); diff --git a/Mage.Sets/src/mage/cards/s/SamiteCenserBearer.java b/Mage.Sets/src/mage/cards/s/SamiteCenserBearer.java index 3abdd434e3..630658ee90 100644 --- a/Mage.Sets/src/mage/cards/s/SamiteCenserBearer.java +++ b/Mage.Sets/src/mage/cards/s/SamiteCenserBearer.java @@ -34,7 +34,7 @@ public final class SamiteCenserBearer extends CardImpl { this.toughness = new MageInt(1); // {W}, Sacrifice Samite Censer-Bearer: Prevent the next 1 damage that would be dealt to each creature you control this turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SamiteCenserBearerEffect(), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SamiteCenserBearerEffect(), new ManaCostsImpl<>("{W}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SamiteSanctuary.java b/Mage.Sets/src/mage/cards/s/SamiteSanctuary.java index d5f6af08f6..ed20c56e6e 100644 --- a/Mage.Sets/src/mage/cards/s/SamiteSanctuary.java +++ b/Mage.Sets/src/mage/cards/s/SamiteSanctuary.java @@ -24,7 +24,7 @@ public final class SamiteSanctuary extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}"); // {2}: Prevent the next 1 damage that would be dealt to target creature this turn. Any player may activate this ability. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn ,1), new ManaCostsImpl("{2}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn ,1), new ManaCostsImpl<>("{2}")); ability.addTarget(new TargetCreaturePermanent()); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); diff --git a/Mage.Sets/src/mage/cards/s/SamutVoiceOfDissent.java b/Mage.Sets/src/mage/cards/s/SamutVoiceOfDissent.java index b121dc6ba6..c3fff0cac6 100644 --- a/Mage.Sets/src/mage/cards/s/SamutVoiceOfDissent.java +++ b/Mage.Sets/src/mage/cards/s/SamutVoiceOfDissent.java @@ -64,7 +64,7 @@ public final class SamutVoiceOfDissent extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(HasteAbility.getInstance(), Duration.WhileOnBattlefield, filter))); //W, Tap: Untap another target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl<>("{W}")); ability.addTarget(new TargetCreaturePermanent(filter2)); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SanctifierOfSouls.java b/Mage.Sets/src/mage/cards/s/SanctifierOfSouls.java index 6067078303..eb0777b3ee 100644 --- a/Mage.Sets/src/mage/cards/s/SanctifierOfSouls.java +++ b/Mage.Sets/src/mage/cards/s/SanctifierOfSouls.java @@ -47,7 +47,7 @@ public final class SanctifierOfSouls extends CardImpl { // {2}{W}, Exile a creature card from your graveyard: Create a 1/1 white Spirit creature token with flying. SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SpiritWhiteToken()), - new ManaCostsImpl("{2}{W}")); + new ManaCostsImpl<>("{2}{W}")); ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard(new FilterCreatureCard("a creature card from your graveyard")))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SanctuarySmasher.java b/Mage.Sets/src/mage/cards/s/SanctuarySmasher.java index 744e77b9ba..b90005d968 100644 --- a/Mage.Sets/src/mage/cards/s/SanctuarySmasher.java +++ b/Mage.Sets/src/mage/cards/s/SanctuarySmasher.java @@ -33,7 +33,7 @@ public final class SanctuarySmasher extends CardImpl { this.addAbility(FirstStrikeAbility.getInstance()); // Cycling {2}{R} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}{R}"))); // When you cycle Sanctuary Smasher, put a first strike counter on target creature you control. Ability ability = new CycleTriggeredAbility( diff --git a/Mage.Sets/src/mage/cards/s/SanctumPlowbeast.java b/Mage.Sets/src/mage/cards/s/SanctumPlowbeast.java index 74aec02f34..0d2822911e 100644 --- a/Mage.Sets/src/mage/cards/s/SanctumPlowbeast.java +++ b/Mage.Sets/src/mage/cards/s/SanctumPlowbeast.java @@ -30,8 +30,8 @@ public final class SanctumPlowbeast extends CardImpl { // Defender this.addAbility(DefenderAbility.getInstance()); // Plainscycling {2}, islandcycling {2} - this.addAbility(new PlainscyclingAbility(new ManaCostsImpl("{2}"))); - this.addAbility(new IslandcyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new PlainscyclingAbility(new ManaCostsImpl<>("{2}"))); + this.addAbility(new IslandcyclingAbility(new ManaCostsImpl<>("{2}"))); } private SanctumPlowbeast(final SanctumPlowbeast card) { diff --git a/Mage.Sets/src/mage/cards/s/SandalsOfAbdallah.java b/Mage.Sets/src/mage/cards/s/SandalsOfAbdallah.java index 889aabe1df..64c8aeaa2e 100644 --- a/Mage.Sets/src/mage/cards/s/SandalsOfAbdallah.java +++ b/Mage.Sets/src/mage/cards/s/SandalsOfAbdallah.java @@ -29,7 +29,7 @@ public final class SandalsOfAbdallah extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); // {2}, {tap}: Target creature gains islandwalk until end of turn. When that creature dies this turn, destroy Sandals of Abdallah. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new IslandwalkAbility(), Duration.EndOfTurn), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new IslandwalkAbility(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SandbarMerfolk.java b/Mage.Sets/src/mage/cards/s/SandbarMerfolk.java index 1a2e2187f5..b8058a003d 100644 --- a/Mage.Sets/src/mage/cards/s/SandbarMerfolk.java +++ b/Mage.Sets/src/mage/cards/s/SandbarMerfolk.java @@ -23,7 +23,7 @@ public final class SandbarMerfolk extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SandbarMerfolk(final SandbarMerfolk card) { diff --git a/Mage.Sets/src/mage/cards/s/SandbarSerpent.java b/Mage.Sets/src/mage/cards/s/SandbarSerpent.java index a88b5a446d..38957e2497 100644 --- a/Mage.Sets/src/mage/cards/s/SandbarSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SandbarSerpent.java @@ -23,7 +23,7 @@ public final class SandbarSerpent extends CardImpl { this.power = new MageInt(3); this.toughness = new MageInt(4); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SandbarSerpent(final SandbarSerpent card) { diff --git a/Mage.Sets/src/mage/cards/s/SandstormCharger.java b/Mage.Sets/src/mage/cards/s/SandstormCharger.java index a37db03633..c3f645b925 100644 --- a/Mage.Sets/src/mage/cards/s/SandstormCharger.java +++ b/Mage.Sets/src/mage/cards/s/SandstormCharger.java @@ -23,7 +23,7 @@ public final class SandstormCharger extends CardImpl { this.toughness = new MageInt(4); // Megamorph {4}{W} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{W}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{W}"), true)); } private SandstormCharger(final SandstormCharger card) { diff --git a/Mage.Sets/src/mage/cards/s/SandstormEidolon.java b/Mage.Sets/src/mage/cards/s/SandstormEidolon.java index 6dccfdd802..07f3a2dea2 100644 --- a/Mage.Sets/src/mage/cards/s/SandstormEidolon.java +++ b/Mage.Sets/src/mage/cards/s/SandstormEidolon.java @@ -32,7 +32,7 @@ public final class SandstormEidolon extends CardImpl { this.toughness = new MageInt(2); // {R}, Sacrifice Sandstorm Eidolon: Target creature can't block this turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBlockTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBlockTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{R}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SanguineGuard.java b/Mage.Sets/src/mage/cards/s/SanguineGuard.java index c92605234b..d0eb456cd0 100644 --- a/Mage.Sets/src/mage/cards/s/SanguineGuard.java +++ b/Mage.Sets/src/mage/cards/s/SanguineGuard.java @@ -29,7 +29,7 @@ public final class SanguineGuard extends CardImpl { this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(FirstStrikeAbility.getInstance()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"))); } private SanguineGuard(final SanguineGuard card) { diff --git a/Mage.Sets/src/mage/cards/s/SanguinePraetor.java b/Mage.Sets/src/mage/cards/s/SanguinePraetor.java index 2ed3cb0813..2af8fef6a0 100644 --- a/Mage.Sets/src/mage/cards/s/SanguinePraetor.java +++ b/Mage.Sets/src/mage/cards/s/SanguinePraetor.java @@ -36,7 +36,7 @@ public final class SanguinePraetor extends CardImpl { this.toughness = new MageInt(5); // {B}, Sacrifice a creature: Destroy each creature with the same converted mana cost as the sacrificed creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SanguinePraetorEffect(), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SanguinePraetorEffect(), new ManaCostsImpl<>("{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SanitariumSkeleton.java b/Mage.Sets/src/mage/cards/s/SanitariumSkeleton.java index 8aa678f2c4..691e881cf7 100644 --- a/Mage.Sets/src/mage/cards/s/SanitariumSkeleton.java +++ b/Mage.Sets/src/mage/cards/s/SanitariumSkeleton.java @@ -25,7 +25,7 @@ public final class SanitariumSkeleton extends CardImpl { this.toughness = new MageInt(2); // {2}{B}: Return Sanitarium Skeleton from your graveyard to your hand. - this.addAbility(new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl("{2}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl<>("{2}{B}"))); } private SanitariumSkeleton(final SanitariumSkeleton card) { diff --git a/Mage.Sets/src/mage/cards/s/SapphireLeech.java b/Mage.Sets/src/mage/cards/s/SapphireLeech.java index c018b844b8..68dc78d5fc 100644 --- a/Mage.Sets/src/mage/cards/s/SapphireLeech.java +++ b/Mage.Sets/src/mage/cards/s/SapphireLeech.java @@ -38,7 +38,7 @@ public final class SapphireLeech extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // Blue spells you cast cost {U} more to cast. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, - new SpellsCostIncreasingAllEffect(new ManaCostsImpl("{U}"), filter, TargetController.YOU))); + new SpellsCostIncreasingAllEffect(new ManaCostsImpl<>("{U}"), filter, TargetController.YOU))); } private SapphireLeech(final SapphireLeech card) { diff --git a/Mage.Sets/src/mage/cards/s/SaprazzanBreaker.java b/Mage.Sets/src/mage/cards/s/SaprazzanBreaker.java index b2668897b6..e3953752f5 100644 --- a/Mage.Sets/src/mage/cards/s/SaprazzanBreaker.java +++ b/Mage.Sets/src/mage/cards/s/SaprazzanBreaker.java @@ -29,7 +29,7 @@ public final class SaprazzanBreaker extends CardImpl { this.toughness = new MageInt(3); // {U}: Put the top card of your library into your graveyard. If that card is a land card, Saprazzan Breaker can't be blocked this turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SaprazzanBreakerEffect(), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SaprazzanBreakerEffect(), new ManaCostsImpl<>("{U}"))); } private SaprazzanBreaker(final SaprazzanBreaker card) { diff --git a/Mage.Sets/src/mage/cards/s/SaprolingSymbiosis.java b/Mage.Sets/src/mage/cards/s/SaprolingSymbiosis.java index 69bc083e85..672f36eb96 100644 --- a/Mage.Sets/src/mage/cards/s/SaprolingSymbiosis.java +++ b/Mage.Sets/src/mage/cards/s/SaprolingSymbiosis.java @@ -25,7 +25,7 @@ public final class SaprolingSymbiosis extends CardImpl { Effect effect = new CreateTokenEffect(new SaprolingToken(), new PermanentsOnBattlefieldCount(StaticFilters.FILTER_CONTROLLED_CREATURE)); // You may cast Saproling Symbiosis as though it had flash if you pay {2} more to cast it. (You may cast it any time you could cast an instant.) - Ability ability = new PayMoreToCastAsThoughtItHadFlashAbility(this, new ManaCostsImpl("{2}")); + Ability ability = new PayMoreToCastAsThoughtItHadFlashAbility(this, new ManaCostsImpl<>("{2}")); ability.addEffect(effect); ability.setRuleAtTheTop(true); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SapseepForest.java b/Mage.Sets/src/mage/cards/s/SapseepForest.java index 350dc8a602..e2e276aa3a 100644 --- a/Mage.Sets/src/mage/cards/s/SapseepForest.java +++ b/Mage.Sets/src/mage/cards/s/SapseepForest.java @@ -45,7 +45,7 @@ public final class SapseepForest extends CardImpl { // {G}, {tap}: You gain 1 life. Activate this ability only if you control two or more green permanents. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), - new ManaCostsImpl("{G}"), + new ManaCostsImpl<>("{G}"), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SarpadianEmpiresVolVII.java b/Mage.Sets/src/mage/cards/s/SarpadianEmpiresVolVII.java index 96b24b599f..5394c265a9 100644 --- a/Mage.Sets/src/mage/cards/s/SarpadianEmpiresVolVII.java +++ b/Mage.Sets/src/mage/cards/s/SarpadianEmpiresVolVII.java @@ -35,7 +35,7 @@ public final class SarpadianEmpiresVolVII extends CardImpl { // As Sarpadian Empires, Vol. VII enters the battlefield, choose white Citizen, blue Camarid, black Thrull, red Goblin, or green Saproling. this.addAbility(new AsEntersBattlefieldAbility(new SarpadianEmpiresChooseTokenEffect())); // {3}, {T}: Create a 1/1 creature token of the chosen color and type. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SarpadianEmpiresCreateSelectedTokenEffect(), new ManaCostsImpl("{3}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SarpadianEmpiresCreateSelectedTokenEffect(), new ManaCostsImpl<>("{3}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SatyrHedonist.java b/Mage.Sets/src/mage/cards/s/SatyrHedonist.java index 319678d014..ae8342fc47 100644 --- a/Mage.Sets/src/mage/cards/s/SatyrHedonist.java +++ b/Mage.Sets/src/mage/cards/s/SatyrHedonist.java @@ -27,7 +27,7 @@ public final class SatyrHedonist extends CardImpl { this.toughness = new MageInt(1); // {R}, Sacrifice Satyr Hedonist: Add {R}{R}{R}. - SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.RedMana(3), new ManaCostsImpl("{R}")); + SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.RedMana(3), new ManaCostsImpl<>("{R}")); ability .addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SatyrNyxSmith.java b/Mage.Sets/src/mage/cards/s/SatyrNyxSmith.java index b601fc404a..33bf21625f 100644 --- a/Mage.Sets/src/mage/cards/s/SatyrNyxSmith.java +++ b/Mage.Sets/src/mage/cards/s/SatyrNyxSmith.java @@ -31,7 +31,7 @@ public final class SatyrNyxSmith extends CardImpl { // Haste this.addAbility(HasteAbility.getInstance()); // Inspired — Whenever Satyr Nyx-Smith becomes untapped, you may pay {2}{R}. If you do, create a 3/1 red Elemental enchantment creature token with haste. - this.addAbility(new InspiredAbility(new DoIfCostPaid(new CreateTokenEffect(new SatyrNyxSmithElementalToken()), new ManaCostsImpl("{2}{R}")))); + this.addAbility(new InspiredAbility(new DoIfCostPaid(new CreateTokenEffect(new SatyrNyxSmithElementalToken()), new ManaCostsImpl<>("{2}{R}")))); } diff --git a/Mage.Sets/src/mage/cards/s/SatyrPiper.java b/Mage.Sets/src/mage/cards/s/SatyrPiper.java index a35f0d4c10..e421e0b51c 100644 --- a/Mage.Sets/src/mage/cards/s/SatyrPiper.java +++ b/Mage.Sets/src/mage/cards/s/SatyrPiper.java @@ -30,7 +30,7 @@ public final class SatyrPiper extends CardImpl { this.toughness = new MageInt(1); // {3}{G}: Target creature must be blocked this turn if able. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByAtLeastOneTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{3}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByAtLeastOneTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{3}{G}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SavaenElves.java b/Mage.Sets/src/mage/cards/s/SavaenElves.java index 5b0d87ac76..1f493bb6a4 100644 --- a/Mage.Sets/src/mage/cards/s/SavaenElves.java +++ b/Mage.Sets/src/mage/cards/s/SavaenElves.java @@ -43,7 +43,7 @@ public final class SavaenElves extends CardImpl { // {G}{G}, {tap}: Destroy target Aura attached to a land. Effect effect = new DestroyTargetEffect(); effect.setText("Destroy target Aura attached to a land"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{G}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{G}{G}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SavageGorilla.java b/Mage.Sets/src/mage/cards/s/SavageGorilla.java index 52263a6821..ab6bce013e 100644 --- a/Mage.Sets/src/mage/cards/s/SavageGorilla.java +++ b/Mage.Sets/src/mage/cards/s/SavageGorilla.java @@ -30,7 +30,7 @@ public final class SavageGorilla extends CardImpl { this.power = new MageInt(3); this.toughness = new MageInt(3); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-3, -3, Duration.EndOfTurn), new ManaCostsImpl("{U}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-3, -3, Duration.EndOfTurn), new ManaCostsImpl<>("{U}{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addEffect(new DrawCardSourceControllerEffect(1)); diff --git a/Mage.Sets/src/mage/cards/s/SavageKnuckleblade.java b/Mage.Sets/src/mage/cards/s/SavageKnuckleblade.java index 3c93d285e7..e96da01726 100644 --- a/Mage.Sets/src/mage/cards/s/SavageKnuckleblade.java +++ b/Mage.Sets/src/mage/cards/s/SavageKnuckleblade.java @@ -32,13 +32,13 @@ public final class SavageKnuckleblade extends CardImpl { this.toughness = new MageInt(4); // {2}{G}: Savage Knuckleblade gets +2/+2 until end of turn. Activate this ability only once each turn. - this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}"))); + this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}"))); // {2}{U}: Return Savage Knuckleblade to its owner's hand. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl("{2}{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{2}{U}"))); // {R}: Savage Knuckleblade gains haste until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/SavagebornHydra.java b/Mage.Sets/src/mage/cards/s/SavagebornHydra.java index 7cc5c9ef8f..83127b5412 100644 --- a/Mage.Sets/src/mage/cards/s/SavagebornHydra.java +++ b/Mage.Sets/src/mage/cards/s/SavagebornHydra.java @@ -36,7 +36,7 @@ public final class SavagebornHydra extends CardImpl { this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.P1P1.createInstance()))); // {1}{RG}: Put a +1/+1 counter on Savageborn Hydra. Activate this ability only any time you could cast a sorcery. - this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{1}{R/G}"))); + this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{1}{R/G}"))); } private SavagebornHydra(final SavagebornHydra card) { diff --git a/Mage.Sets/src/mage/cards/s/SavaiCrystal.java b/Mage.Sets/src/mage/cards/s/SavaiCrystal.java index 7f4205fb6e..e03c140cba 100644 --- a/Mage.Sets/src/mage/cards/s/SavaiCrystal.java +++ b/Mage.Sets/src/mage/cards/s/SavaiCrystal.java @@ -25,7 +25,7 @@ public final class SavaiCrystal extends CardImpl { this.addAbility(new BlackManaAbility()); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SavaiCrystal(final SavaiCrystal card) { diff --git a/Mage.Sets/src/mage/cards/s/ScaldingDevil.java b/Mage.Sets/src/mage/cards/s/ScaldingDevil.java index 914fe0aace..d1ec30eaf3 100644 --- a/Mage.Sets/src/mage/cards/s/ScaldingDevil.java +++ b/Mage.Sets/src/mage/cards/s/ScaldingDevil.java @@ -28,7 +28,7 @@ public final class ScaldingDevil extends CardImpl { this.toughness = new MageInt(1); // {2}{R}: Scalding Devil deals 1 damage to target player. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{2}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{2}{R}")); ability.addTarget(new TargetPlayerOrPlaneswalker()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/Scaldkin.java b/Mage.Sets/src/mage/cards/s/Scaldkin.java index ba7da681c2..f6172d8ad2 100644 --- a/Mage.Sets/src/mage/cards/s/Scaldkin.java +++ b/Mage.Sets/src/mage/cards/s/Scaldkin.java @@ -32,7 +32,7 @@ public final class Scaldkin extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {2}{R}, Sacrifice Scaldkin: Scaldkin deals 2 damage to any target. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{2}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{2}{R}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScaleUp.java b/Mage.Sets/src/mage/cards/s/ScaleUp.java index 969cb0de2a..84cd0f9969 100644 --- a/Mage.Sets/src/mage/cards/s/ScaleUp.java +++ b/Mage.Sets/src/mage/cards/s/ScaleUp.java @@ -41,7 +41,7 @@ public final class ScaleUp extends CardImpl { new CreatureToken(6, 4, "green Wurm with base power and toughness 6/4") .withColor("G").withSubType(SubType.WURM), null, filter, Duration.EndOfTurn, true, false, true - ), new ManaCostsImpl("{4}{G}{G}"))); + ), new ManaCostsImpl<>("{4}{G}{G}"))); } private ScaleUp(final ScaleUp card) { diff --git a/Mage.Sets/src/mage/cards/s/Scandalmonger.java b/Mage.Sets/src/mage/cards/s/Scandalmonger.java index bcdefe3dca..059d597db3 100644 --- a/Mage.Sets/src/mage/cards/s/Scandalmonger.java +++ b/Mage.Sets/src/mage/cards/s/Scandalmonger.java @@ -29,7 +29,7 @@ public final class Scandalmonger extends CardImpl { this.toughness = new MageInt(3); // {2}: Target player discards a card. Any player may activate this ability but only any time they could cast a sorcery. - ActivateAsSorceryActivatedAbility ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl("{2}")); + ActivateAsSorceryActivatedAbility ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl<>("{2}")); ability.addTarget(new TargetPlayer()); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); diff --git a/Mage.Sets/src/mage/cards/s/ScarabFeast.java b/Mage.Sets/src/mage/cards/s/ScarabFeast.java index fde96b30e9..9da01449de 100644 --- a/Mage.Sets/src/mage/cards/s/ScarabFeast.java +++ b/Mage.Sets/src/mage/cards/s/ScarabFeast.java @@ -23,7 +23,7 @@ public final class ScarabFeast extends CardImpl { getSpellAbility().addTarget(new TargetCardInASingleGraveyard(0, 3, StaticFilters.FILTER_CARD_CARDS)); // Cycling {B} - addAbility(new CyclingAbility(new ManaCostsImpl("{B}"))); + addAbility(new CyclingAbility(new ManaCostsImpl<>("{B}"))); } private ScarabFeast(final ScarabFeast card) { diff --git a/Mage.Sets/src/mage/cards/s/ScarredVinebreeder.java b/Mage.Sets/src/mage/cards/s/ScarredVinebreeder.java index 0774e61589..aaf0331ad2 100644 --- a/Mage.Sets/src/mage/cards/s/ScarredVinebreeder.java +++ b/Mage.Sets/src/mage/cards/s/ScarredVinebreeder.java @@ -39,7 +39,7 @@ public final class ScarredVinebreeder extends CardImpl { // {2}{B}, Exile an Elf card from your graveyard: Scarred Vinebreeder gets +3/+3 until end of turn. SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(3, 3, Duration.EndOfTurn), - new ManaCostsImpl("{2}{B}")); + new ManaCostsImpl<>("{2}{B}")); ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard(filter))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ScarwoodBandits.java b/Mage.Sets/src/mage/cards/s/ScarwoodBandits.java index 18dfd8c8ee..54e3116109 100644 --- a/Mage.Sets/src/mage/cards/s/ScarwoodBandits.java +++ b/Mage.Sets/src/mage/cards/s/ScarwoodBandits.java @@ -50,7 +50,7 @@ public final class ScarwoodBandits extends CardImpl { new SourceRemainsInZoneCondition(Zone.BATTLEFIELD), "gain control of target artifact for as long as {this} remains on the battlefield"), new GenericManaCost(2)), - new ManaCostsImpl("{2}{G}")); + new ManaCostsImpl<>("{2}{G}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetArtifactPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScarwoodHag.java b/Mage.Sets/src/mage/cards/s/ScarwoodHag.java index 291ee525b9..ebfafbc096 100644 --- a/Mage.Sets/src/mage/cards/s/ScarwoodHag.java +++ b/Mage.Sets/src/mage/cards/s/ScarwoodHag.java @@ -34,7 +34,7 @@ public final class ScarwoodHag extends CardImpl { // {G}{G}{G}{G}, {tap}: Target creature gains forestwalk until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new ForestwalkAbility(false), Duration.EndOfTurn), - new ManaCostsImpl("{G}{G}{G}{G}")); + new ManaCostsImpl<>("{G}{G}{G}{G}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScatteredGroves.java b/Mage.Sets/src/mage/cards/s/ScatteredGroves.java index 95c70e0cda..b9f4026a96 100644 --- a/Mage.Sets/src/mage/cards/s/ScatteredGroves.java +++ b/Mage.Sets/src/mage/cards/s/ScatteredGroves.java @@ -32,7 +32,7 @@ public final class ScatteredGroves extends CardImpl { this.addAbility(new EntersBattlefieldTappedAbility()); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ScavengerFolk.java b/Mage.Sets/src/mage/cards/s/ScavengerFolk.java index 48ce3d078e..7898d7f558 100644 --- a/Mage.Sets/src/mage/cards/s/ScavengerFolk.java +++ b/Mage.Sets/src/mage/cards/s/ScavengerFolk.java @@ -30,7 +30,7 @@ public final class ScavengerFolk extends CardImpl { this.toughness = new MageInt(1); // {G}, {T}, Sacrifice Scavenger Folk: Destroy target artifact. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{G}")); ability.addCost(new TapSourceCost()); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetArtifactPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScavengerGrounds.java b/Mage.Sets/src/mage/cards/s/ScavengerGrounds.java index 0b56db41e0..db84024227 100644 --- a/Mage.Sets/src/mage/cards/s/ScavengerGrounds.java +++ b/Mage.Sets/src/mage/cards/s/ScavengerGrounds.java @@ -41,7 +41,7 @@ public final class ScavengerGrounds extends CardImpl { Ability ability2 = new SimpleActivatedAbility( Zone.BATTLEFIELD, new ExileGraveyardAllPlayersEffect(), - new ManaCostsImpl("{2}")); + new ManaCostsImpl<>("{2}")); ability2.addCost(new TapSourceCost()); ability2.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, true))); this.addAbility(ability2); diff --git a/Mage.Sets/src/mage/cards/s/ScavengingOoze.java b/Mage.Sets/src/mage/cards/s/ScavengingOoze.java index dd8e386a75..2bd07be885 100644 --- a/Mage.Sets/src/mage/cards/s/ScavengingOoze.java +++ b/Mage.Sets/src/mage/cards/s/ScavengingOoze.java @@ -34,7 +34,7 @@ public final class ScavengingOoze extends CardImpl { this.toughness = new MageInt(2); // {G}: Exile target card from a graveyard. If it was a creature card, put a +1/+1 counter on Scavenging Ooze and you gain 1 life. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScavengingOozeEffect(), new ManaCostsImpl("{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScavengingOozeEffect(), new ManaCostsImpl<>("{G}")); ability.addTarget(new TargetCardInGraveyard()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ScepterOfDominance.java b/Mage.Sets/src/mage/cards/s/ScepterOfDominance.java index aae1f9a024..b5131cbe4b 100644 --- a/Mage.Sets/src/mage/cards/s/ScepterOfDominance.java +++ b/Mage.Sets/src/mage/cards/s/ScepterOfDominance.java @@ -23,7 +23,7 @@ public final class ScepterOfDominance extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}{W}{W}"); - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{W}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScepterOfFugue.java b/Mage.Sets/src/mage/cards/s/ScepterOfFugue.java index 3b56ad7d1a..d5505d4b00 100644 --- a/Mage.Sets/src/mage/cards/s/ScepterOfFugue.java +++ b/Mage.Sets/src/mage/cards/s/ScepterOfFugue.java @@ -25,7 +25,7 @@ public final class ScepterOfFugue extends CardImpl { // {1}{B}, {T}: Target player discards a card. Activate this ability only during your turn. - Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl("{1}{B}"), MyTurnCondition.instance); + Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl<>("{1}{B}"), MyTurnCondition.instance); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPlayer()); ability.addHint(MyTurnHint.instance); diff --git a/Mage.Sets/src/mage/cards/s/ScepterOfInsight.java b/Mage.Sets/src/mage/cards/s/ScepterOfInsight.java index 0e56545cec..d9e23e9724 100644 --- a/Mage.Sets/src/mage/cards/s/ScepterOfInsight.java +++ b/Mage.Sets/src/mage/cards/s/ScepterOfInsight.java @@ -22,7 +22,7 @@ public final class ScepterOfInsight extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}{U}{U}"); - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{3}{U}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{3}{U}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ScholarOfAthreos.java b/Mage.Sets/src/mage/cards/s/ScholarOfAthreos.java index e6535d5c99..72f6079e42 100644 --- a/Mage.Sets/src/mage/cards/s/ScholarOfAthreos.java +++ b/Mage.Sets/src/mage/cards/s/ScholarOfAthreos.java @@ -30,7 +30,7 @@ public final class ScholarOfAthreos extends CardImpl { this.toughness = new MageInt(4); // {2}{B}: Each opponent loses 1 life. You gain life equal to the life lost this way. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScholarOfAthreosEffect(), new ManaCostsImpl("{2}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScholarOfAthreosEffect(), new ManaCostsImpl<>("{2}{B}"))); } private ScholarOfAthreos(final ScholarOfAthreos card) { diff --git a/Mage.Sets/src/mage/cards/s/SchoolOfPiranha.java b/Mage.Sets/src/mage/cards/s/SchoolOfPiranha.java index 52dda5db45..077867a8b1 100644 --- a/Mage.Sets/src/mage/cards/s/SchoolOfPiranha.java +++ b/Mage.Sets/src/mage/cards/s/SchoolOfPiranha.java @@ -25,7 +25,7 @@ public final class SchoolOfPiranha extends CardImpl { this.toughness = new MageInt(3); // At the beginning of your upkeep, sacrifice School of Piranha unless you pay {1}{U}. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{1}{U}")), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{1}{U}")), TargetController.YOU, false)); } private SchoolOfPiranha(final SchoolOfPiranha card) { diff --git a/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java b/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java index 1db5653daa..d0379c4417 100644 --- a/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java +++ b/Mage.Sets/src/mage/cards/s/ScionOfDarkness.java @@ -40,7 +40,7 @@ public final class ScionOfDarkness extends CardImpl { this.addAbility(new ScionOfDarknessTriggeredAbility()); // Cycling {3} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{3}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{3}"))); } private ScionOfDarkness(final ScionOfDarkness card) { diff --git a/Mage.Sets/src/mage/cards/s/ScionOfGlaciers.java b/Mage.Sets/src/mage/cards/s/ScionOfGlaciers.java index 037791b6ac..5c44c99b84 100644 --- a/Mage.Sets/src/mage/cards/s/ScionOfGlaciers.java +++ b/Mage.Sets/src/mage/cards/s/ScionOfGlaciers.java @@ -27,7 +27,7 @@ public final class ScionOfGlaciers extends CardImpl { this.toughness = new MageInt(5); // {U}: Scion of Glaciers gets +1/-1 until end of turn - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{U}"))); } private ScionOfGlaciers(final ScionOfGlaciers card) { diff --git a/Mage.Sets/src/mage/cards/s/ScionOfTheUrDragon.java b/Mage.Sets/src/mage/cards/s/ScionOfTheUrDragon.java index 61d588c0f7..574672b170 100644 --- a/Mage.Sets/src/mage/cards/s/ScionOfTheUrDragon.java +++ b/Mage.Sets/src/mage/cards/s/ScionOfTheUrDragon.java @@ -38,7 +38,7 @@ public final class ScionOfTheUrDragon extends CardImpl { // {2}: Search your library for a Dragon permanent card and put it into your graveyard. If you do, Scion of the Ur-Dragon becomes a copy of that card until end of turn. Then shuffle your library. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScionOfTheUrDragonEffect(), - new ManaCostsImpl("{2}"))); + new ManaCostsImpl<>("{2}"))); } private ScionOfTheUrDragon(final ScionOfTheUrDragon card) { diff --git a/Mage.Sets/src/mage/cards/s/ScorchingMissile.java b/Mage.Sets/src/mage/cards/s/ScorchingMissile.java index 8a217d2ff8..a389ebb3f1 100644 --- a/Mage.Sets/src/mage/cards/s/ScorchingMissile.java +++ b/Mage.Sets/src/mage/cards/s/ScorchingMissile.java @@ -25,7 +25,7 @@ public final class ScorchingMissile extends CardImpl { this.getSpellAbility().addTarget(new TargetPlayerOrPlaneswalker()); // Flashback {9}{R} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{9}{R}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{9}{R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ScornfulEgotist.java b/Mage.Sets/src/mage/cards/s/ScornfulEgotist.java index 4f25f8af6b..d14005ffc1 100644 --- a/Mage.Sets/src/mage/cards/s/ScornfulEgotist.java +++ b/Mage.Sets/src/mage/cards/s/ScornfulEgotist.java @@ -24,7 +24,7 @@ public final class ScornfulEgotist extends CardImpl { this.toughness = new MageInt(1); // Morph {U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{U}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{U}"))); } private ScornfulEgotist(final ScornfulEgotist card) { diff --git a/Mage.Sets/src/mage/cards/s/ScourAllPossibilities.java b/Mage.Sets/src/mage/cards/s/ScourAllPossibilities.java index 9018a5534a..d387ca4432 100644 --- a/Mage.Sets/src/mage/cards/s/ScourAllPossibilities.java +++ b/Mage.Sets/src/mage/cards/s/ScourAllPossibilities.java @@ -24,7 +24,7 @@ public final class ScourAllPossibilities extends CardImpl { this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1).concatBy(", then")); // Flashback {4}{U} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{4}{U}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{4}{U}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ScourgeDevil.java b/Mage.Sets/src/mage/cards/s/ScourgeDevil.java index c795b9ed19..446e8e12a7 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeDevil.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeDevil.java @@ -29,7 +29,7 @@ public final class ScourgeDevil extends CardImpl { // When Scourge Devil enters the battlefield, creatures you control get +1/+0 until end of turn. this.addAbility(new EntersBattlefieldTriggeredAbility(new BoostControlledEffect(1, 0, Duration.EndOfTurn))); // Unearth {2}{R} - this.addAbility(new UnearthAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new UnearthAbility(new ManaCostsImpl<>("{2}{R}"))); } private ScourgeDevil(final ScourgeDevil card) { diff --git a/Mage.Sets/src/mage/cards/s/ScourgeOfKherRidges.java b/Mage.Sets/src/mage/cards/s/ScourgeOfKherRidges.java index ddd7a5237f..44aece15c4 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeOfKherRidges.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeOfKherRidges.java @@ -43,11 +43,11 @@ public final class ScourgeOfKherRidges extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {1}{R}: Scourge of Kher Ridges deals 2 damage to each creature without flying. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(2, filter), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(2, filter), new ManaCostsImpl<>("{1}{R}")); this.addAbility(ability); // {5}{R}: Scourge of Kher Ridges deals 6 damage to each other creature with flying. - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(6, filter2), new ManaCostsImpl("{5}{R}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(6, filter2), new ManaCostsImpl<>("{5}{R}")); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/s/ScourgeOfTheNobilis.java b/Mage.Sets/src/mage/cards/s/ScourgeOfTheNobilis.java index f23b0cbedb..1f6de4fb59 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeOfTheNobilis.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeOfTheNobilis.java @@ -41,7 +41,7 @@ public final class ScourgeOfTheNobilis extends CardImpl { // As long as enchanted creature is red, it gets +1/+1 and has "{RW}: This creature gets +1/+0 until end of turn." SimpleStaticAbility redAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new BoostEnchantedEffect(1, 1), new EnchantedCreatureColorCondition(ObjectColor.RED), "As long as enchanted creature is red, it gets +1/+1")); redAbility.addEffect(new ConditionalContinuousEffect(new GainAbilityAttachedEffect( - new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R/W}")), AttachmentType.AURA), + new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R/W}")), AttachmentType.AURA), new EnchantedCreatureColorCondition(ObjectColor.RED), "and has \"{R/W}: This creature gets +1/+0 until end of turn.\"")); this.addAbility(redAbility); diff --git a/Mage.Sets/src/mage/cards/s/ScourgeOfValkas.java b/Mage.Sets/src/mage/cards/s/ScourgeOfValkas.java index c5bd142eb9..8dd18b9436 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeOfValkas.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeOfValkas.java @@ -49,7 +49,7 @@ public final class ScourgeOfValkas extends CardImpl { this.addAbility(ability); // {R}: Scourge of Valkas gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private ScourgeOfValkas(final ScourgeOfValkas card) { diff --git a/Mage.Sets/src/mage/cards/s/Scrap.java b/Mage.Sets/src/mage/cards/s/Scrap.java index 7b96912781..065c91d6ef 100644 --- a/Mage.Sets/src/mage/cards/s/Scrap.java +++ b/Mage.Sets/src/mage/cards/s/Scrap.java @@ -21,7 +21,7 @@ public final class Scrap extends CardImpl { this.getSpellAbility().addEffect(new DestroyTargetEffect()); this.getSpellAbility().addTarget(new TargetArtifactPermanent()); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private Scrap(final Scrap card) { diff --git a/Mage.Sets/src/mage/cards/s/Scrapbasket.java b/Mage.Sets/src/mage/cards/s/Scrapbasket.java index de6430a487..7907b10976 100644 --- a/Mage.Sets/src/mage/cards/s/Scrapbasket.java +++ b/Mage.Sets/src/mage/cards/s/Scrapbasket.java @@ -32,7 +32,7 @@ public final class Scrapbasket extends CardImpl { this.toughness = new MageInt(2); // {1}: Scrapbasket becomes all colors until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesAllColorsEffect(), new ManaCostsImpl("{1}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesAllColorsEffect(), new ManaCostsImpl<>("{1}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ScreamsOfTheDamned.java b/Mage.Sets/src/mage/cards/s/ScreamsOfTheDamned.java index 1b3c787b20..d1743d9d7c 100644 --- a/Mage.Sets/src/mage/cards/s/ScreamsOfTheDamned.java +++ b/Mage.Sets/src/mage/cards/s/ScreamsOfTheDamned.java @@ -24,7 +24,7 @@ public final class ScreamsOfTheDamned extends CardImpl { // {1}{B}, Exile a card from your graveyard: Screams of the Damned deals 1 damage to each creature and each player. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEverythingEffect(1), new ManaCostsImpl("{1}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEverythingEffect(1), new ManaCostsImpl<>("{1}{B}")); ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard())); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ScreechingGriffin.java b/Mage.Sets/src/mage/cards/s/ScreechingGriffin.java index c7af96f9fe..08d6cdbd62 100644 --- a/Mage.Sets/src/mage/cards/s/ScreechingGriffin.java +++ b/Mage.Sets/src/mage/cards/s/ScreechingGriffin.java @@ -33,7 +33,7 @@ public final class ScreechingGriffin extends CardImpl { // {R}: Target creature can't block Screeching Griffin this turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBeBlockedByTargetSourceEffect(Duration.EndOfTurn), - new ManaCostsImpl("{R}")); + new ManaCostsImpl<>("{R}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ScreechingHarpy.java b/Mage.Sets/src/mage/cards/s/ScreechingHarpy.java index d901f53009..e9c748d52c 100644 --- a/Mage.Sets/src/mage/cards/s/ScreechingHarpy.java +++ b/Mage.Sets/src/mage/cards/s/ScreechingHarpy.java @@ -27,7 +27,7 @@ public final class ScreechingHarpy extends CardImpl { this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(FlyingAbility.getInstance()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"))); } private ScreechingHarpy(final ScreechingHarpy card) { diff --git a/Mage.Sets/src/mage/cards/s/ScreechingPhoenix.java b/Mage.Sets/src/mage/cards/s/ScreechingPhoenix.java index 08ce8f9f11..498c20ff3f 100644 --- a/Mage.Sets/src/mage/cards/s/ScreechingPhoenix.java +++ b/Mage.Sets/src/mage/cards/s/ScreechingPhoenix.java @@ -33,7 +33,7 @@ public final class ScreechingPhoenix extends CardImpl { this.addAbility(new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Duration.EndOfTurn), - new ManaCostsImpl("{2}{R}") + new ManaCostsImpl<>("{2}{R}") )); } diff --git a/Mage.Sets/src/mage/cards/s/ScrollOfFate.java b/Mage.Sets/src/mage/cards/s/ScrollOfFate.java index fd3e2773af..0d467c260f 100644 --- a/Mage.Sets/src/mage/cards/s/ScrollOfFate.java +++ b/Mage.Sets/src/mage/cards/s/ScrollOfFate.java @@ -88,7 +88,7 @@ class ScrollOfFateEffect extends OneShotEffect { if (card.isCreature(game)) { manaCosts = card.getSpellAbility() != null ? card.getSpellAbility().getManaCosts() : null; if (manaCosts == null) { - manaCosts = new ManaCostsImpl("{0}"); + manaCosts = new ManaCostsImpl<>("{0}"); } } MageObjectReference objectReference = new MageObjectReference(card.getId(), diff --git a/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java b/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java index 746ec0df8b..189029d43c 100644 --- a/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java +++ b/Mage.Sets/src/mage/cards/s/ScrollOfTheMasters.java @@ -45,7 +45,7 @@ public final class ScrollOfTheMasters extends CardImpl { Effect effect = new BoostTargetEffect(xValue, xValue, Duration.EndOfTurn); effect.setText("Target creature you control gets +1/+1 until end of turn for each lore counter on {this}"); Ability ability = new SimpleActivatedAbility( - Zone.BATTLEFIELD, effect, new ManaCostsImpl("{3}")); + Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{3}")); ability.addTarget(new TargetControlledCreaturePermanent()); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScryingGlass.java b/Mage.Sets/src/mage/cards/s/ScryingGlass.java index 5de031332d..d7fbd2837a 100644 --- a/Mage.Sets/src/mage/cards/s/ScryingGlass.java +++ b/Mage.Sets/src/mage/cards/s/ScryingGlass.java @@ -28,7 +28,7 @@ public final class ScryingGlass extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}"); // {3}, {tap}: Choose a number greater than 0 and a color. Target opponent reveals their hand. If that opponent reveals exactly the chosen number of cards of the chosen color, you draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryingGlassEffect(), new ManaCostsImpl("{3}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryingGlassEffect(), new ManaCostsImpl<>("{3}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetOpponent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SeaGateWreckage.java b/Mage.Sets/src/mage/cards/s/SeaGateWreckage.java index 2369b612c2..bf4568f0ac 100644 --- a/Mage.Sets/src/mage/cards/s/SeaGateWreckage.java +++ b/Mage.Sets/src/mage/cards/s/SeaGateWreckage.java @@ -28,7 +28,7 @@ public final class SeaGateWreckage extends CardImpl { // {2}{C}, {T}: Draw a card. Activate this ability only if you have no cards in hand. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), - new ManaCostsImpl("{2}{C}"), HellbentCondition.instance); + new ManaCostsImpl<>("{2}{C}"), HellbentCondition.instance); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SeaSpirit.java b/Mage.Sets/src/mage/cards/s/SeaSpirit.java index 5965bdf8d9..b6e4afb838 100644 --- a/Mage.Sets/src/mage/cards/s/SeaSpirit.java +++ b/Mage.Sets/src/mage/cards/s/SeaSpirit.java @@ -28,7 +28,7 @@ public final class SeaSpirit extends CardImpl { this.toughness = new MageInt(3); // {U}: Sea Spirit gets +1/+0 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(+1, +0, Duration.EndOfTurn), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(+1, +0, Duration.EndOfTurn), new ManaCostsImpl<>("{U}")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SeaTroll.java b/Mage.Sets/src/mage/cards/s/SeaTroll.java index a708309ee9..84843e7340 100644 --- a/Mage.Sets/src/mage/cards/s/SeaTroll.java +++ b/Mage.Sets/src/mage/cards/s/SeaTroll.java @@ -36,7 +36,7 @@ public final class SeaTroll extends CardImpl { this.toughness = new MageInt(1); // {U}: Regenerate Sea Troll. Activate this ability only if Sea Troll blocked or was blocked by a blue creature this turn. - Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{U}"), new SeaTrollCondition()); + Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{U}"), new SeaTrollCondition()); ability.addWatcher(new SeaTrollWatcher()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SearchForTomorrow.java b/Mage.Sets/src/mage/cards/s/SearchForTomorrow.java index 55d12920c2..29d3b7dea0 100644 --- a/Mage.Sets/src/mage/cards/s/SearchForTomorrow.java +++ b/Mage.Sets/src/mage/cards/s/SearchForTomorrow.java @@ -28,7 +28,7 @@ public final class SearchForTomorrow extends CardImpl { this.getSpellAbility().addEffect(new SearchLibraryPutInPlayEffect(target, false, Outcome.PutLandInPlay)); // Suspend 2-{G} - this.addAbility(new SuspendAbility(2, new ManaCostsImpl("{G}"), this)); + this.addAbility(new SuspendAbility(2, new ManaCostsImpl<>("{G}"), this)); } private SearchForTomorrow(final SearchForTomorrow card) { diff --git a/Mage.Sets/src/mage/cards/s/SearchlightGeist.java b/Mage.Sets/src/mage/cards/s/SearchlightGeist.java index d6177643c0..ecdf58ea8f 100644 --- a/Mage.Sets/src/mage/cards/s/SearchlightGeist.java +++ b/Mage.Sets/src/mage/cards/s/SearchlightGeist.java @@ -32,7 +32,7 @@ public final class SearchlightGeist extends CardImpl { // {3}{B}: Searchlight Geist gains deathtouch until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn), - new ManaCostsImpl("{3}{B}"))); + new ManaCostsImpl<>("{3}{B}"))); } private SearchlightGeist(final SearchlightGeist card) { diff --git a/Mage.Sets/src/mage/cards/s/SearingSpearAskari.java b/Mage.Sets/src/mage/cards/s/SearingSpearAskari.java index 2ea3d3d630..a54553c689 100644 --- a/Mage.Sets/src/mage/cards/s/SearingSpearAskari.java +++ b/Mage.Sets/src/mage/cards/s/SearingSpearAskari.java @@ -33,7 +33,7 @@ public final class SearingSpearAskari extends CardImpl { this.addAbility(new FlankingAbility()); // {1}{R}: Searing Spear Askari gains menace until end of turn. (It can't be blocked except by two or more creatures.) - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(new MenaceAbility(), Duration.EndOfTurn), new ManaCostsImpl("{1}{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(new MenaceAbility(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}"))); } private SearingSpearAskari(final SearingSpearAskari card) { diff --git a/Mage.Sets/src/mage/cards/s/SeasonedPyromancer.java b/Mage.Sets/src/mage/cards/s/SeasonedPyromancer.java index 062c656d7a..d025495062 100644 --- a/Mage.Sets/src/mage/cards/s/SeasonedPyromancer.java +++ b/Mage.Sets/src/mage/cards/s/SeasonedPyromancer.java @@ -41,7 +41,7 @@ public final class SeasonedPyromancer extends CardImpl { Ability ability = new SimpleActivatedAbility( Zone.GRAVEYARD, new CreateTokenEffect(new RedElementalToken(), 2), - new ManaCostsImpl("{3}{R}{R}") + new ManaCostsImpl<>("{3}{R}{R}") ); ability.addCost(new ExileSourceFromGraveCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SeasonedTactician.java b/Mage.Sets/src/mage/cards/s/SeasonedTactician.java index 65db5c59d4..3d83c670ab 100644 --- a/Mage.Sets/src/mage/cards/s/SeasonedTactician.java +++ b/Mage.Sets/src/mage/cards/s/SeasonedTactician.java @@ -31,7 +31,7 @@ public final class SeasonedTactician extends CardImpl { // {3}, Exile the top four cards of your library: The next time a source of your choice would deal damage to you this turn, prevent that damage. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventNextDamageFromChosenSourceToYouEffect(Duration.EndOfTurn), - new ManaCostsImpl("{3}")); + new ManaCostsImpl<>("{3}")); ability.addCost(new ExileFromTopOfLibraryCost(4)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SecludedSteppe.java b/Mage.Sets/src/mage/cards/s/SecludedSteppe.java index 29c0445629..2473814128 100644 --- a/Mage.Sets/src/mage/cards/s/SecludedSteppe.java +++ b/Mage.Sets/src/mage/cards/s/SecludedSteppe.java @@ -24,7 +24,7 @@ public final class SecludedSteppe extends CardImpl { // {tap}: Add {W}. this.addAbility(new WhiteManaAbility()); // Cycling {W} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{W}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{W}"))); } private SecludedSteppe(final SecludedSteppe card) { diff --git a/Mage.Sets/src/mage/cards/s/SecurityDetail.java b/Mage.Sets/src/mage/cards/s/SecurityDetail.java index 26cd0af04a..277b0142f2 100644 --- a/Mage.Sets/src/mage/cards/s/SecurityDetail.java +++ b/Mage.Sets/src/mage/cards/s/SecurityDetail.java @@ -26,7 +26,7 @@ public final class SecurityDetail extends CardImpl { this.addAbility(new LimitedTimesPerTurnActivatedAbility( Zone.BATTLEFIELD, new CreateTokenEffect(new SoldierToken()), - new ManaCostsImpl("{W}{W}"), + new ManaCostsImpl<>("{W}{W}"), 1, new CreatureCountCondition(0, TargetController.YOU) )); diff --git a/Mage.Sets/src/mage/cards/s/SedgeSliver.java b/Mage.Sets/src/mage/cards/s/SedgeSliver.java index 67df8ea5d8..08a3dd4acb 100644 --- a/Mage.Sets/src/mage/cards/s/SedgeSliver.java +++ b/Mage.Sets/src/mage/cards/s/SedgeSliver.java @@ -43,7 +43,7 @@ public final class SedgeSliver extends CardImpl { new GainAbilityAllEffect(boost, Duration.WhileOnBattlefield, filter, "All Sliver creatures have \"This creature gets +1/+1 as long as you control a Swamp.\""))); // All Slivers have "{B}: Regenerate this permanent." - Ability regenerate = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")); + Ability regenerate = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(regenerate, Duration.WhileOnBattlefield, filterSlivers, "All Slivers have \"{B}: Regenerate this permanent.\""))); diff --git a/Mage.Sets/src/mage/cards/s/SedgeTroll.java b/Mage.Sets/src/mage/cards/s/SedgeTroll.java index 850ac61869..4a618a03d5 100644 --- a/Mage.Sets/src/mage/cards/s/SedgeTroll.java +++ b/Mage.Sets/src/mage/cards/s/SedgeTroll.java @@ -36,7 +36,7 @@ public final class SedgeTroll extends CardImpl { // Sedge Troll gets +1/+1 as long as you control a Swamp. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceWhileControlsEffect(filter, 1, 1))); // {B}: Regenerate Sedge Troll. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"))); } private SedgeTroll(final SedgeTroll card) { diff --git a/Mage.Sets/src/mage/cards/s/SedraxisSpecter.java b/Mage.Sets/src/mage/cards/s/SedraxisSpecter.java index c2b9962b55..6b87d330c9 100644 --- a/Mage.Sets/src/mage/cards/s/SedraxisSpecter.java +++ b/Mage.Sets/src/mage/cards/s/SedraxisSpecter.java @@ -31,7 +31,7 @@ public final class SedraxisSpecter extends CardImpl { // Whenever Sedraxis Specter deals combat damage to a player, that player discards a card. this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DiscardTargetEffect(1), false, true)); // Unearth {1}{B} - this.addAbility(new UnearthAbility(new ManaCostsImpl("{1}{B}"))); + this.addAbility(new UnearthAbility(new ManaCostsImpl<>("{1}{B}"))); } private SedraxisSpecter(final SedraxisSpecter card) { diff --git a/Mage.Sets/src/mage/cards/s/SedrisTheTraitorKing.java b/Mage.Sets/src/mage/cards/s/SedrisTheTraitorKing.java index 2825f28381..6bcf0297cc 100644 --- a/Mage.Sets/src/mage/cards/s/SedrisTheTraitorKing.java +++ b/Mage.Sets/src/mage/cards/s/SedrisTheTraitorKing.java @@ -60,7 +60,7 @@ class SedrisTheTraitorKingEffect extends ContinuousEffectImpl { for (UUID cardId : controller.getGraveyard()) { Card card = game.getCard(cardId); if (card != null && card.isCreature(game)) { - UnearthAbility ability = new UnearthAbility(new ManaCostsImpl("{2}{B}")); + UnearthAbility ability = new UnearthAbility(new ManaCostsImpl<>("{2}{B}")); ability.setSourceId(cardId); ability.setControllerId(card.getOwnerId()); game.getState().addOtherAbility(card, ability); diff --git a/Mage.Sets/src/mage/cards/s/SeedcradleWitch.java b/Mage.Sets/src/mage/cards/s/SeedcradleWitch.java index 295b0056a4..5f007d3146 100644 --- a/Mage.Sets/src/mage/cards/s/SeedcradleWitch.java +++ b/Mage.Sets/src/mage/cards/s/SeedcradleWitch.java @@ -30,7 +30,7 @@ public final class SeedcradleWitch extends CardImpl { this.toughness = new MageInt(1); // {2}{G}{W}: Target creature gets +3/+3 until end of turn. Untap that creature. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(3, 3, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}{W}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(3, 3, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}{W}")); ability.addEffect(new UntapTargetEffect().setText("untap that creature")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SeerOfTheLastTomorrow.java b/Mage.Sets/src/mage/cards/s/SeerOfTheLastTomorrow.java index 28db602d77..32136cf2eb 100644 --- a/Mage.Sets/src/mage/cards/s/SeerOfTheLastTomorrow.java +++ b/Mage.Sets/src/mage/cards/s/SeerOfTheLastTomorrow.java @@ -31,7 +31,7 @@ public final class SeerOfTheLastTomorrow extends CardImpl { this.toughness = new MageInt(4); // {U}, {T}, Discard a card: Target player puts the top three cards of their library into their graveyard. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutLibraryIntoGraveTargetEffect(3), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutLibraryIntoGraveTargetEffect(3), new ManaCostsImpl<>("{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); ability.addTarget(new TargetPlayer()); diff --git a/Mage.Sets/src/mage/cards/s/SeersSundial.java b/Mage.Sets/src/mage/cards/s/SeersSundial.java index a8f784c710..203dfdf906 100644 --- a/Mage.Sets/src/mage/cards/s/SeersSundial.java +++ b/Mage.Sets/src/mage/cards/s/SeersSundial.java @@ -20,7 +20,7 @@ public final class SeersSundial extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); // Landfall - Whenever a land enters the battlefield under your control, you may pay {2}. If you do, draw a card. - this.addAbility(new LandfallAbility(new DoIfCostPaid(new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}")), false)); // optional = false because DoIfCost is already optonal + this.addAbility(new LandfallAbility(new DoIfCostPaid(new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}")), false)); // optional = false because DoIfCost is already optonal } private SeersSundial(final SeersSundial card) { diff --git a/Mage.Sets/src/mage/cards/s/SegmentedKrotiq.java b/Mage.Sets/src/mage/cards/s/SegmentedKrotiq.java index 78d228ac51..9b12b9e15b 100644 --- a/Mage.Sets/src/mage/cards/s/SegmentedKrotiq.java +++ b/Mage.Sets/src/mage/cards/s/SegmentedKrotiq.java @@ -23,7 +23,7 @@ public final class SegmentedKrotiq extends CardImpl { this.toughness = new MageInt(5); // Megamorph {6}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{6}{G}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{6}{G}"), true)); } private SegmentedKrotiq(final SegmentedKrotiq card) { diff --git a/Mage.Sets/src/mage/cards/s/SeismicMage.java b/Mage.Sets/src/mage/cards/s/SeismicMage.java index 5a6cd7ab60..af2165ad31 100644 --- a/Mage.Sets/src/mage/cards/s/SeismicMage.java +++ b/Mage.Sets/src/mage/cards/s/SeismicMage.java @@ -30,7 +30,7 @@ public final class SeismicMage extends CardImpl { this.toughness = new MageInt(1); // {2}{R}, {tap}, Discard a card: Destroy target land. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{2}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{2}{R}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); ability.addTarget(new TargetLandPermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SeizeTheDay.java b/Mage.Sets/src/mage/cards/s/SeizeTheDay.java index 8c9e698c07..af935cf911 100644 --- a/Mage.Sets/src/mage/cards/s/SeizeTheDay.java +++ b/Mage.Sets/src/mage/cards/s/SeizeTheDay.java @@ -27,7 +27,7 @@ public final class SeizeTheDay extends CardImpl { this.getSpellAbility().addEffect(new AddCombatAndMainPhaseEffect()); // Flashback {2}{R} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{2}{R}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{2}{R}"))); } private SeizeTheDay(final SeizeTheDay card) { diff --git a/Mage.Sets/src/mage/cards/s/Seizures.java b/Mage.Sets/src/mage/cards/s/Seizures.java index b478616768..30fdbcfb7f 100644 --- a/Mage.Sets/src/mage/cards/s/Seizures.java +++ b/Mage.Sets/src/mage/cards/s/Seizures.java @@ -83,7 +83,7 @@ class SeizuresEffect extends OneShotEffect { } Player player = game.getPlayer(enchanted.getControllerId()); if (player != null) { - Cost cost = new ManaCostsImpl("{3}"); + Cost cost = new ManaCostsImpl<>("{3}"); if (cost.canPay(source, source, player.getId(), game) && player.chooseUse(Outcome.Benefit, "Pay " + cost.getText() + " to avoid damage?", source, game)) { cost.clearPaid(); diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaCluestone.java b/Mage.Sets/src/mage/cards/s/SelesnyaCluestone.java index 8e769f0767..8746ef2e95 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaCluestone.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaCluestone.java @@ -32,7 +32,7 @@ public final class SelesnyaCluestone extends CardImpl { this.addAbility(new WhiteManaAbility()); // {G}{W}, {T}, Sacrifice Selesnya Cluestone: Draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{G}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{G}{W}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaEulogist.java b/Mage.Sets/src/mage/cards/s/SelesnyaEulogist.java index 24b31ddbc6..e7b7734ac4 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaEulogist.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaEulogist.java @@ -31,7 +31,7 @@ public final class SelesnyaEulogist extends CardImpl { // {2}{G}: Exile target creature card from a graveyard, then populate. Ability ability = new SimpleActivatedAbility( new ExileTargetEffect().setText("exile target creature card from a graveyard,"), - new ManaCostsImpl("{2}{G}") + new ManaCostsImpl<>("{2}{G}") ); ability.addEffect(new PopulateEffect("then")); ability.addTarget(new TargetCardInGraveyard(StaticFilters.FILTER_CARD_CREATURE)); diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaGuildmage.java b/Mage.Sets/src/mage/cards/s/SelesnyaGuildmage.java index 7c56ab5810..307fe2bccc 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaGuildmage.java @@ -32,9 +32,9 @@ public final class SelesnyaGuildmage extends CardImpl { this.toughness = new MageInt(2); // {3}{G}: Create a 1/1 green Saproling creature token. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken()), new ManaCostsImpl("{3}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken()), new ManaCostsImpl<>("{3}{G}"))); // {3}{W}: Creatures you control get +1/+1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{3}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{3}{W}"))); } public SelesnyaGuildmage (final SelesnyaGuildmage card) { diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaKeyrune.java b/Mage.Sets/src/mage/cards/s/SelesnyaKeyrune.java index b8e3be608a..093aa08cde 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaKeyrune.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaKeyrune.java @@ -29,7 +29,7 @@ public final class SelesnyaKeyrune extends CardImpl { this.addAbility(new WhiteManaAbility()); // {G}{W}: Selesnya Keyrune becomes a 3/3 green and white Wolf artifact creature until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SelesnyaKeyruneToken(), "", Duration.EndOfTurn), new ManaCostsImpl("{G}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SelesnyaKeyruneToken(), "", Duration.EndOfTurn), new ManaCostsImpl<>("{G}{W}"))); } private SelesnyaKeyrune(final SelesnyaKeyrune card) { diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaLocket.java b/Mage.Sets/src/mage/cards/s/SelesnyaLocket.java index da3ccb4090..64118cf4ff 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaLocket.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaLocket.java @@ -29,7 +29,7 @@ public final class SelesnyaLocket extends CardImpl { // {G/W}{G/W}{G/W}{G/W}, {T}, Sacrifice Selesnya Locket: Draw two cards. Ability ability = new SimpleActivatedAbility( new DrawCardSourceControllerEffect(2), - new ManaCostsImpl("{G/W}{G/W}{G/W}{G/W}") + new ManaCostsImpl<>("{G/W}{G/W}{G/W}{G/W}") ); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaSentry.java b/Mage.Sets/src/mage/cards/s/SelesnyaSentry.java index 9712213c9f..a70865edc7 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaSentry.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaSentry.java @@ -27,7 +27,7 @@ public final class SelesnyaSentry extends CardImpl { this.toughness = new MageInt(2); // {5}{G}: Regenerate Selesnya Sentry. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{5}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{5}{G}"))); } private SelesnyaSentry(final SelesnyaSentry card) { diff --git a/Mage.Sets/src/mage/cards/s/SelflessCathar.java b/Mage.Sets/src/mage/cards/s/SelflessCathar.java index 6962c393c7..28d5794da2 100644 --- a/Mage.Sets/src/mage/cards/s/SelflessCathar.java +++ b/Mage.Sets/src/mage/cards/s/SelflessCathar.java @@ -29,7 +29,7 @@ public final class SelflessCathar extends CardImpl { this.toughness = new MageInt(1); // {1}{W}, Sacrifice Selfless Cathar: Creatures you control get +1/+1 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SelvalaHeartOfTheWilds.java b/Mage.Sets/src/mage/cards/s/SelvalaHeartOfTheWilds.java index a0a72de56b..c7a9b74376 100644 --- a/Mage.Sets/src/mage/cards/s/SelvalaHeartOfTheWilds.java +++ b/Mage.Sets/src/mage/cards/s/SelvalaHeartOfTheWilds.java @@ -51,7 +51,7 @@ public final class SelvalaHeartOfTheWilds extends CardImpl { ManaEffect manaEffect = new AddManaInAnyCombinationEffect( GreatestPowerAmongControlledCreaturesValue.instance, GreatestPowerAmongControlledCreaturesValue.instance, ColoredManaSymbol.W, ColoredManaSymbol.U, ColoredManaSymbol.B, ColoredManaSymbol.R, ColoredManaSymbol.G); - Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, manaEffect, new ManaCostsImpl("{G}")); + Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, manaEffect, new ManaCostsImpl<>("{G}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SenateCourier.java b/Mage.Sets/src/mage/cards/s/SenateCourier.java index b016c0c4bc..7db6e5c691 100644 --- a/Mage.Sets/src/mage/cards/s/SenateCourier.java +++ b/Mage.Sets/src/mage/cards/s/SenateCourier.java @@ -32,7 +32,7 @@ public final class SenateCourier extends CardImpl { // {1}{W}: Senate Courier gains vigilance until end of turn. this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect( VigilanceAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{1}{W}"))); + ), new ManaCostsImpl<>("{1}{W}"))); } private SenateCourier(final SenateCourier card) { diff --git a/Mage.Sets/src/mage/cards/s/SenateGuildmage.java b/Mage.Sets/src/mage/cards/s/SenateGuildmage.java index 90fed4a5bc..23ea9afcc2 100644 --- a/Mage.Sets/src/mage/cards/s/SenateGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SenateGuildmage.java @@ -33,7 +33,7 @@ public final class SenateGuildmage extends CardImpl { this.addAbility(ability1); // {U}, {T}: Draw a card, then discard a card. - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(), new ManaCostsImpl("{U}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(), new ManaCostsImpl<>("{U}")); ability2.addCost(new TapSourceCost()); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/s/SengirNosferatu.java b/Mage.Sets/src/mage/cards/s/SengirNosferatu.java index 519c4d1cc3..e777771b61 100644 --- a/Mage.Sets/src/mage/cards/s/SengirNosferatu.java +++ b/Mage.Sets/src/mage/cards/s/SengirNosferatu.java @@ -43,7 +43,7 @@ public final class SengirNosferatu extends CardImpl { // {1}{B}, Exile Sengir Nosferatu: Create a 1/2 black Bat creature token with flying. It has "{1}{B}, Sacrifice this creature: Return an exiled card named Sengir Nosferatu to the battlefield under its owner's control." Effect effect = new CreateTokenEffect(new SengirNosferatuBatToken(), 1); effect.setText("Create a 1/2 black Bat creature token with flying. It has \"{1}{B}, Sacrifice this creature: Return an exiled card named Sengir Nosferatu to the battlefield under its owner's control.\""); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{B}")); ability.addCost(new ExileSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SenseiGoldenTail.java b/Mage.Sets/src/mage/cards/s/SenseiGoldenTail.java index e39abcb7b8..4d45d5bcd2 100644 --- a/Mage.Sets/src/mage/cards/s/SenseiGoldenTail.java +++ b/Mage.Sets/src/mage/cards/s/SenseiGoldenTail.java @@ -41,7 +41,7 @@ public final class SenseiGoldenTail extends CardImpl { Ability ability = new ActivateAsSorceryActivatedAbility( Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.TRAINING.createInstance()), - new ManaCostsImpl("{1}{W}") + new ManaCostsImpl<>("{1}{W}") ); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SenselessRage.java b/Mage.Sets/src/mage/cards/s/SenselessRage.java index 4379ae8d86..202469dc20 100644 --- a/Mage.Sets/src/mage/cards/s/SenselessRage.java +++ b/Mage.Sets/src/mage/cards/s/SenselessRage.java @@ -39,7 +39,7 @@ public final class SenselessRage extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); // Madness {1}{R} - this.addAbility(new MadnessAbility(new ManaCostsImpl("{1}{R}"))); + this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{1}{R}"))); } private SenselessRage(final SenselessRage card) { diff --git a/Mage.Sets/src/mage/cards/s/SentryOfTheUnderworld.java b/Mage.Sets/src/mage/cards/s/SentryOfTheUnderworld.java index 7a042f4e6c..5c1ae95bb2 100644 --- a/Mage.Sets/src/mage/cards/s/SentryOfTheUnderworld.java +++ b/Mage.Sets/src/mage/cards/s/SentryOfTheUnderworld.java @@ -35,7 +35,7 @@ public final class SentryOfTheUnderworld extends CardImpl { // Vigilance this.addAbility(VigilanceAbility.getInstance()); // {W}{B}, Pay 3 life: Regenerate Sentry of the Underworld. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{W}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{W}{B}")); ability.addCost(new PayLifeCost(3)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SepharaSkysBlade.java b/Mage.Sets/src/mage/cards/s/SepharaSkysBlade.java index 4cfa788db4..0dfa1d0225 100644 --- a/Mage.Sets/src/mage/cards/s/SepharaSkysBlade.java +++ b/Mage.Sets/src/mage/cards/s/SepharaSkysBlade.java @@ -50,7 +50,7 @@ public final class SepharaSkysBlade extends CardImpl { this.toughness = new MageInt(7); // You may pay {W} and tap four untapped creatures you control with flying rather than pay this spell's mana cost. - Ability ability = new AlternativeCostSourceAbility(new ManaCostsImpl("{W}")); + Ability ability = new AlternativeCostSourceAbility(new ManaCostsImpl<>("{W}")); ability.addCost(new TapTargetCost(new TargetControlledPermanent( 4, 4, filter, true ))); diff --git a/Mage.Sets/src/mage/cards/s/SeraphOfTheScales.java b/Mage.Sets/src/mage/cards/s/SeraphOfTheScales.java index d21c04c48f..7119d3de1e 100644 --- a/Mage.Sets/src/mage/cards/s/SeraphOfTheScales.java +++ b/Mage.Sets/src/mage/cards/s/SeraphOfTheScales.java @@ -38,7 +38,7 @@ public final class SeraphOfTheScales extends CardImpl { new GainAbilitySourceEffect( VigilanceAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{W}") + ), new ManaCostsImpl<>("{W}") )); // {B}: Seraph of the Scales gains deathtouch until end of turn. @@ -47,7 +47,7 @@ public final class SeraphOfTheScales extends CardImpl { new GainAbilitySourceEffect( DeathtouchAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{B}") + ), new ManaCostsImpl<>("{B}") )); // Afterlife 2 diff --git a/Mage.Sets/src/mage/cards/s/SereneSteward.java b/Mage.Sets/src/mage/cards/s/SereneSteward.java index 0d9df6b92b..6c331a5274 100644 --- a/Mage.Sets/src/mage/cards/s/SereneSteward.java +++ b/Mage.Sets/src/mage/cards/s/SereneSteward.java @@ -31,7 +31,7 @@ public final class SereneSteward extends CardImpl { // Whenever you gain life, you may pay {W}. If you do, put a +1/+1 counter on target creature. Ability ability = new GainLifeControllerTriggeredAbility( - new DoIfCostPaid(new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{W}")), + new DoIfCostPaid(new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{W}")), false); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SerpentGenerator.java b/Mage.Sets/src/mage/cards/s/SerpentGenerator.java index 2a4d9201f4..b142e9ae6e 100644 --- a/Mage.Sets/src/mage/cards/s/SerpentGenerator.java +++ b/Mage.Sets/src/mage/cards/s/SerpentGenerator.java @@ -26,7 +26,7 @@ public final class SerpentGenerator extends CardImpl { // {4}, {tap}: Create a 1/1 colorless Snake artifact creature token. It has "Whenever this creature deals damage to a player, that player gets a poison counter." Effect effect = new CreateTokenEffect(new SerpentGeneratorSnakeToken()); effect.setText("Create a 1/1 colorless Snake artifact creature token. It has \"Whenever this creature deals damage to a player, that player gets a poison counter.\""); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{4}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{4}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SerpentineBasilisk.java b/Mage.Sets/src/mage/cards/s/SerpentineBasilisk.java index 2a8681b908..ac1ca9f69b 100644 --- a/Mage.Sets/src/mage/cards/s/SerpentineBasilisk.java +++ b/Mage.Sets/src/mage/cards/s/SerpentineBasilisk.java @@ -31,7 +31,7 @@ public final class SerpentineBasilisk extends CardImpl { new CreateDelayedTriggeredAbilityEffect( new AtTheEndOfCombatDelayedTriggeredAbility(new DestroyTargetEffect("destroy that creature at end of combat")), true), false, true)); // Morph {1}{G}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{G}{G}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{G}{G}"))); } private SerpentineBasilisk(final SerpentineBasilisk card) { diff --git a/Mage.Sets/src/mage/cards/s/SerpentineKavu.java b/Mage.Sets/src/mage/cards/s/SerpentineKavu.java index 0c6f101b3a..e563470173 100644 --- a/Mage.Sets/src/mage/cards/s/SerpentineKavu.java +++ b/Mage.Sets/src/mage/cards/s/SerpentineKavu.java @@ -27,7 +27,7 @@ public final class SerpentineKavu extends CardImpl { this.toughness = new MageInt(4); // {R}: Serpentine Kavu gains haste until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private SerpentineKavu(final SerpentineKavu card) { diff --git a/Mage.Sets/src/mage/cards/s/SerraBestiary.java b/Mage.Sets/src/mage/cards/s/SerraBestiary.java index 8275578b8b..575c62697e 100644 --- a/Mage.Sets/src/mage/cards/s/SerraBestiary.java +++ b/Mage.Sets/src/mage/cards/s/SerraBestiary.java @@ -45,7 +45,7 @@ public final class SerraBestiary extends CardImpl { this.addAbility(ability); // At the beginning of your upkeep, sacrifice Serra Bestiary unless you pay {W}{W}. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{W}{W}")), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{W}{W}")), TargetController.YOU, false)); // Enchanted creature can't attack or block, and its activated abilities with {T} in their costs can't be activated. Ability ability2 = new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockAttachedEffect(AttachmentType.AURA)); diff --git a/Mage.Sets/src/mage/cards/s/SerraPaladin.java b/Mage.Sets/src/mage/cards/s/SerraPaladin.java index 9eb242def5..0b60727585 100644 --- a/Mage.Sets/src/mage/cards/s/SerraPaladin.java +++ b/Mage.Sets/src/mage/cards/s/SerraPaladin.java @@ -38,7 +38,7 @@ public final class SerraPaladin extends CardImpl { this.addAbility(ability); // {1}{W}{W}, {tap}: Target creature gains vigilance until end of turn. - ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}{W}")); + ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java b/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java index f713471704..1161801ad9 100644 --- a/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java +++ b/Mage.Sets/src/mage/cards/s/SerrasLiturgy.java @@ -45,7 +45,7 @@ public final class SerrasLiturgy extends CardImpl { // {W}, Sacrifice Serra's Liturgy: Destroy up to X target artifacts and/or enchantments, where X is the number of verse counters on Serra's Liturgy. Effect effect = new DestroyTargetEffect(true); effect.setText("Destroy up to X target artifacts and/or enchantments, where X is the number of verse counters on {this}."); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{W}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetPermanent(0, 0, filter, false)); ability.setTargetAdjuster(VerseCounterAdjuster.instance); diff --git a/Mage.Sets/src/mage/cards/s/ServantOfTymaret.java b/Mage.Sets/src/mage/cards/s/ServantOfTymaret.java index 42a5d5321a..1fa718ea4f 100644 --- a/Mage.Sets/src/mage/cards/s/ServantOfTymaret.java +++ b/Mage.Sets/src/mage/cards/s/ServantOfTymaret.java @@ -34,7 +34,7 @@ public final class ServantOfTymaret extends CardImpl { this.addAbility(new InspiredAbility(new ServantOfTymaretEffect())); // {2}{B}: Regenerate Servant of Tymaret. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{2}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{2}{B}"))); } private ServantOfTymaret(final ServantOfTymaret card) { diff --git a/Mage.Sets/src/mage/cards/s/SetessanGriffin.java b/Mage.Sets/src/mage/cards/s/SetessanGriffin.java index 86a01095ba..94237227ef 100644 --- a/Mage.Sets/src/mage/cards/s/SetessanGriffin.java +++ b/Mage.Sets/src/mage/cards/s/SetessanGriffin.java @@ -30,7 +30,7 @@ public final class SetessanGriffin extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {2}{G}{G}: Setessan Griffin gets +2/+2 until end of turn. Activate this ability only once each turn. - this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,2, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}{G}"))); + this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,2, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}{G}"))); } private SetessanGriffin(final SetessanGriffin card) { diff --git a/Mage.Sets/src/mage/cards/s/SethronHurloonGeneral.java b/Mage.Sets/src/mage/cards/s/SethronHurloonGeneral.java index 81e26c2ff7..c37129a9e1 100644 --- a/Mage.Sets/src/mage/cards/s/SethronHurloonGeneral.java +++ b/Mage.Sets/src/mage/cards/s/SethronHurloonGeneral.java @@ -54,7 +54,7 @@ public final class SethronHurloonGeneral extends CardImpl { // {2}{B/R}: Minotaurs you control get +1/+0 and gain menace and haste until end of turn. Ability ability = new SimpleActivatedAbility(new BoostControlledEffect( 1, 0, Duration.EndOfTurn, filter2 - ).setText("Minotaurs you control get +1/+0"), new ManaCostsImpl("{2}{B/R}")); + ).setText("Minotaurs you control get +1/+0"), new ManaCostsImpl<>("{2}{B/R}")); ability.addEffect(new GainAbilityControlledEffect( new MenaceAbility(), Duration.EndOfTurn, filter3 ).setText("and gain menace")); diff --git a/Mage.Sets/src/mage/cards/s/SeverTheBloodline.java b/Mage.Sets/src/mage/cards/s/SeverTheBloodline.java index ae27c60569..69987774ba 100644 --- a/Mage.Sets/src/mage/cards/s/SeverTheBloodline.java +++ b/Mage.Sets/src/mage/cards/s/SeverTheBloodline.java @@ -33,7 +33,7 @@ public final class SeverTheBloodline extends CardImpl { this.getSpellAbility().addEffect(new SeverTheBloodlineEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); // Flashback {5}{B}{B} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{5}{B}{B}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{5}{B}{B}"))); } private SeverTheBloodline(final SeverTheBloodline card) { diff --git a/Mage.Sets/src/mage/cards/s/SevinnesReclamation.java b/Mage.Sets/src/mage/cards/s/SevinnesReclamation.java index 0cf6945e4b..a5690a9b52 100644 --- a/Mage.Sets/src/mage/cards/s/SevinnesReclamation.java +++ b/Mage.Sets/src/mage/cards/s/SevinnesReclamation.java @@ -40,7 +40,7 @@ public final class SevinnesReclamation extends CardImpl { this.getSpellAbility().addEffect(new SevinnesReclamationEffect()); // Flashback {4}{W} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{4}{W}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{4}{W}"))); } private SevinnesReclamation(final SevinnesReclamation card) { diff --git a/Mage.Sets/src/mage/cards/s/SewerRats.java b/Mage.Sets/src/mage/cards/s/SewerRats.java index 85e342d6f5..5e68ec9295 100644 --- a/Mage.Sets/src/mage/cards/s/SewerRats.java +++ b/Mage.Sets/src/mage/cards/s/SewerRats.java @@ -29,7 +29,7 @@ public final class SewerRats extends CardImpl { this.toughness = new MageInt(1); // {B}, Pay 1 life: Sewer Rats gets +1/+0 until end of turn. Activate this ability no more than three times each turn. - Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{B}"), 3); + Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{B}"), 3); ability.addCost(new PayLifeCost(1)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SewerShambler.java b/Mage.Sets/src/mage/cards/s/SewerShambler.java index 391c599131..3f8a79201f 100644 --- a/Mage.Sets/src/mage/cards/s/SewerShambler.java +++ b/Mage.Sets/src/mage/cards/s/SewerShambler.java @@ -27,7 +27,7 @@ public final class SewerShambler extends CardImpl { // Swampwalk (This creature can't be blocked as long as defending player controls a Swamp.) this.addAbility(new SwampwalkAbility()); // Scavenge {2}{B} ({2}{B}, Exile this card from your graveyard: Put a number of +1/+1 counters equal to this card's power on target creature. Scavenge only as a sorcery.) - this.addAbility(new ScavengeAbility(new ManaCostsImpl("{2}{B}"))); + this.addAbility(new ScavengeAbility(new ManaCostsImpl<>("{2}{B}"))); } private SewerShambler(final SewerShambler card) { diff --git a/Mage.Sets/src/mage/cards/s/ShabrazTheSkyshark.java b/Mage.Sets/src/mage/cards/s/ShabrazTheSkyshark.java index 1fb6afe8ce..b19acab483 100644 --- a/Mage.Sets/src/mage/cards/s/ShabrazTheSkyshark.java +++ b/Mage.Sets/src/mage/cards/s/ShabrazTheSkyshark.java @@ -54,7 +54,7 @@ public final class ShabrazTheSkyshark extends CardImpl { // {W/U}: Target Human gains flying until end of turn. ability = new SimpleActivatedAbility(new GainAbilityTargetEffect( FlyingAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{W/U}")); + ), new ManaCostsImpl<>("{W/U}")); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/Shackles.java b/Mage.Sets/src/mage/cards/s/Shackles.java index fbe60a1ed5..e2e41ade34 100644 --- a/Mage.Sets/src/mage/cards/s/Shackles.java +++ b/Mage.Sets/src/mage/cards/s/Shackles.java @@ -40,7 +40,7 @@ public final class Shackles extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect())); // {W}: Return Shackles to its owner's hand. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl("{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{W}"))); } private Shackles(final Shackles card) { diff --git a/Mage.Sets/src/mage/cards/s/ShadeOfTrokair.java b/Mage.Sets/src/mage/cards/s/ShadeOfTrokair.java index 5a40d4f9dc..d823258d40 100644 --- a/Mage.Sets/src/mage/cards/s/ShadeOfTrokair.java +++ b/Mage.Sets/src/mage/cards/s/ShadeOfTrokair.java @@ -32,7 +32,7 @@ public final class ShadeOfTrokair extends CardImpl { this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.W))); // Suspend 3-{W} - this.addAbility(new SuspendAbility(3, new ManaCostsImpl("{W}"), this)); + this.addAbility(new SuspendAbility(3, new ManaCostsImpl<>("{W}"), this)); } private ShadeOfTrokair(final ShadeOfTrokair card) { diff --git a/Mage.Sets/src/mage/cards/s/ShadesBreath.java b/Mage.Sets/src/mage/cards/s/ShadesBreath.java index dfef9cdb93..7ac89a66e6 100644 --- a/Mage.Sets/src/mage/cards/s/ShadesBreath.java +++ b/Mage.Sets/src/mage/cards/s/ShadesBreath.java @@ -32,7 +32,7 @@ public final class ShadesBreath extends CardImpl { new GainAbilityControlledEffect(new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn).setText("this creature gets +1/+1 until end of turn"), - new ManaCostsImpl("{B}") + new ManaCostsImpl<>("{B}") ), Duration.EndOfTurn, StaticFilters.FILTER_CONTROLLED_A_CREATURE) .setText("and gains \"{B}: This creature gets +1/+1 until end of turn.\"") ); diff --git a/Mage.Sets/src/mage/cards/s/ShadowGuildmage.java b/Mage.Sets/src/mage/cards/s/ShadowGuildmage.java index 33a40a7f3d..2af510423f 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/ShadowGuildmage.java @@ -32,13 +32,13 @@ public final class ShadowGuildmage extends CardImpl { this.toughness = new MageInt(1); // {U}, {tap}: Put target creature you control on top of its owner's library. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibraryTargetEffect(true), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibraryTargetEffect(true), new ManaCostsImpl<>("{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); // {R}, {tap}: Shadow Guildmage deals 1 damage to any target and 1 damage to you. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{R}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{R}")); ability.addCost(new TapSourceCost()); ability.addEffect(new DamageControllerEffect(1)); ability.addTarget(new TargetAnyTarget()); diff --git a/Mage.Sets/src/mage/cards/s/ShadowLance.java b/Mage.Sets/src/mage/cards/s/ShadowLance.java index 6ad9eef8b4..d5646f5fa2 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowLance.java +++ b/Mage.Sets/src/mage/cards/s/ShadowLance.java @@ -34,7 +34,7 @@ public final class ShadowLance extends CardImpl { Ability ability = new EnchantAbility(auraTarget.getTargetName()); this.addAbility(ability); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.AURA))); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}"))); } private ShadowLance(final ShadowLance card) { diff --git a/Mage.Sets/src/mage/cards/s/ShadowbloodEgg.java b/Mage.Sets/src/mage/cards/s/ShadowbloodEgg.java index 6e2599027b..61e10522e1 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowbloodEgg.java +++ b/Mage.Sets/src/mage/cards/s/ShadowbloodEgg.java @@ -24,7 +24,7 @@ public final class ShadowbloodEgg extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}"); // {2}, {tap}, Sacrifice Shadowblood Egg: Add {B}{R}. Draw a card. - ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 1, 0, 0, 0, 0), new ManaCostsImpl("{2}")); + ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 1, 0, 0, 0, 0), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addEffect(new DrawCardSourceControllerEffect(1)); diff --git a/Mage.Sets/src/mage/cards/s/ShadowbloodRidge.java b/Mage.Sets/src/mage/cards/s/ShadowbloodRidge.java index 62d5d4a582..1f3b618dbf 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowbloodRidge.java +++ b/Mage.Sets/src/mage/cards/s/ShadowbloodRidge.java @@ -22,7 +22,7 @@ public final class ShadowbloodRidge extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // {1}, {tap}: Add {B}{R}. - Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 1, 0, 0, 0, 0), new ManaCostsImpl("{1}")); + Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 1, 0, 0, 0, 0), new ManaCostsImpl<>("{1}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShadowbornApostle.java b/Mage.Sets/src/mage/cards/s/ShadowbornApostle.java index 8ab705985f..c4a8eba84e 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowbornApostle.java +++ b/Mage.Sets/src/mage/cards/s/ShadowbornApostle.java @@ -46,7 +46,7 @@ public final class ShadowbornApostle extends CardImpl { this.getSpellAbility().addEffect(new InfoEffect("A deck can have any number of cards named Shadowborn Apostle.")); // {B}, Sacrifice six creatures named Shadowborn Apostle: Search your library for a Demon creature and put it onto the battlefield. Then shuffle your library. Effect effect = new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter), false, true); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(6,6,filterApostle, false))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java b/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java index efa578ccd1..b4e12c56c3 100644 --- a/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java +++ b/Mage.Sets/src/mage/cards/s/ShalaiVoiceOfPlenty.java @@ -65,7 +65,7 @@ public final class ShalaiVoiceOfPlenty extends CardImpl { CounterType.P1P1.createInstance(), StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED ), - new ManaCostsImpl("{4}{G}{G}") + new ManaCostsImpl<>("{4}{G}{G}") )); } diff --git a/Mage.Sets/src/mage/cards/s/ShaleskinPlower.java b/Mage.Sets/src/mage/cards/s/ShaleskinPlower.java index 2e76ea2b86..1ab4a6cfcd 100644 --- a/Mage.Sets/src/mage/cards/s/ShaleskinPlower.java +++ b/Mage.Sets/src/mage/cards/s/ShaleskinPlower.java @@ -27,7 +27,7 @@ public final class ShaleskinPlower extends CardImpl { this.toughness = new MageInt(2); // Morph {4}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{R}"))); // When Shaleskin Plower is turned face up, destroy target land. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DestroyTargetEffect()); ability.addTarget(new TargetLandPermanent()); diff --git a/Mage.Sets/src/mage/cards/s/ShamanEnKor.java b/Mage.Sets/src/mage/cards/s/ShamanEnKor.java index 0561458fd8..7fd0e76352 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanEnKor.java +++ b/Mage.Sets/src/mage/cards/s/ShamanEnKor.java @@ -51,7 +51,7 @@ public final class ShamanEnKor extends CardImpl { this.addAbility(ability); // {1}{W}: The next time a source of your choice would deal damage to target creature this turn, that damage is dealt to Shaman en-Kor instead. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShamanEnKorRedirectFromTargetEffect(), new ManaCostsImpl("{1}{W}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShamanEnKorRedirectFromTargetEffect(), new ManaCostsImpl<>("{1}{W}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShamanOfForgottenWays.java b/Mage.Sets/src/mage/cards/s/ShamanOfForgottenWays.java index 406e593c90..030edfad8d 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanOfForgottenWays.java +++ b/Mage.Sets/src/mage/cards/s/ShamanOfForgottenWays.java @@ -49,7 +49,7 @@ public final class ShamanOfForgottenWays extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility( Zone.BATTLEFIELD, new ShamanOfForgottenWaysEffect(), - new ManaCostsImpl("{9}{G}{G}"), + new ManaCostsImpl<>("{9}{G}{G}"), FormidableCondition.instance); ability.addCost(new TapSourceCost()); ability.setAbilityWord(AbilityWord.FORMIDABLE); diff --git a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java index 93e7ea1dee..e77e30e1ae 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java +++ b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java @@ -58,7 +58,7 @@ public final class ShamanOfTheGreatHunt extends CardImpl { // Ferocious — {2}{G/U}{G/U}: Draw a card for each creature you control with power 4 or greater. DynamicValue amount = new PermanentsOnBattlefieldCount(filter); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(amount), new ManaCostsImpl("{2}{G/U}{G/U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(amount), new ManaCostsImpl<>("{2}{G/U}{G/U}")); ability.setAbilityWord(AbilityWord.FEROCIOUS); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShamblingRemains.java b/Mage.Sets/src/mage/cards/s/ShamblingRemains.java index 07299c5fae..075aae6b3d 100644 --- a/Mage.Sets/src/mage/cards/s/ShamblingRemains.java +++ b/Mage.Sets/src/mage/cards/s/ShamblingRemains.java @@ -28,7 +28,7 @@ public final class ShamblingRemains extends CardImpl { // Shambling Remains can't block. this.addAbility(new CantBlockAbility()); // Unearth {B}{R} - this.addAbility(new UnearthAbility(new ManaCostsImpl("{B}{R}"))); + this.addAbility(new UnearthAbility(new ManaCostsImpl<>("{B}{R}"))); } private ShamblingRemains(final ShamblingRemains card) { diff --git a/Mage.Sets/src/mage/cards/s/ShamblingStrider.java b/Mage.Sets/src/mage/cards/s/ShamblingStrider.java index a07825d7b7..a6ca632c31 100644 --- a/Mage.Sets/src/mage/cards/s/ShamblingStrider.java +++ b/Mage.Sets/src/mage/cards/s/ShamblingStrider.java @@ -26,7 +26,7 @@ public final class ShamblingStrider extends CardImpl { this.toughness = new MageInt(5); // {R}{G}: Shambling Strider gets +1/-1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl("{R}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}{G}"))); } private ShamblingStrider(final ShamblingStrider card) { diff --git a/Mage.Sets/src/mage/cards/s/ShamblingVent.java b/Mage.Sets/src/mage/cards/s/ShamblingVent.java index a0642f518d..094c961457 100644 --- a/Mage.Sets/src/mage/cards/s/ShamblingVent.java +++ b/Mage.Sets/src/mage/cards/s/ShamblingVent.java @@ -36,7 +36,7 @@ public final class ShamblingVent extends CardImpl { // {1}{W}{B}: Shambling Vent becomes a 2/3 white and black Elemental creature with lifelink until end of turn. It's still a land. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect( - new ShamblingVentToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{1}{W}{B}"))); + new ShamblingVentToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}{B}"))); } private ShamblingVent(final ShamblingVent card) { diff --git a/Mage.Sets/src/mage/cards/s/ShaperGuildmage.java b/Mage.Sets/src/mage/cards/s/ShaperGuildmage.java index 0052ff5b84..5251200ccb 100644 --- a/Mage.Sets/src/mage/cards/s/ShaperGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/ShaperGuildmage.java @@ -32,13 +32,13 @@ public final class ShaperGuildmage extends CardImpl { this.toughness = new MageInt(1); // {W}, {tap}: Target creature gains first strike until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {B}, {tap}: Target creature gets +1/+0 until end of turn. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{B}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShaperParasite.java b/Mage.Sets/src/mage/cards/s/ShaperParasite.java index d41caa1c26..44aeb25889 100644 --- a/Mage.Sets/src/mage/cards/s/ShaperParasite.java +++ b/Mage.Sets/src/mage/cards/s/ShaperParasite.java @@ -35,7 +35,7 @@ public final class ShaperParasite extends CardImpl { this.toughness = new MageInt(3); // Morph {2}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{U}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{U}"))); // When Shaper Parasite is turned face up, target creature gets +2/-2 or -2/+2 until end of turn. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new ShaperParasiteEffect()); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/ShapersOfNature.java b/Mage.Sets/src/mage/cards/s/ShapersOfNature.java index 7adf833497..3deaabc134 100644 --- a/Mage.Sets/src/mage/cards/s/ShapersOfNature.java +++ b/Mage.Sets/src/mage/cards/s/ShapersOfNature.java @@ -33,12 +33,12 @@ public final class ShapersOfNature extends CardImpl { this.toughness = new MageInt(3); // {3}{G}: Put a +1/+1 counter on target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl("{3}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl<>("{3}{G}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {2}{U}, Remove a +1/+1 counter from a creature you control: Draw a card. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{U}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{U}")); ability.addCost(new RemoveCounterCost(new TargetControlledCreaturePermanent(), CounterType.P1P1)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/Shapesharer.java b/Mage.Sets/src/mage/cards/s/Shapesharer.java index 7e1548c694..7944dbc31a 100644 --- a/Mage.Sets/src/mage/cards/s/Shapesharer.java +++ b/Mage.Sets/src/mage/cards/s/Shapesharer.java @@ -40,7 +40,7 @@ public final class Shapesharer extends CardImpl { // {2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn. Ability copyAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShapesharerEffect(), - new ManaCostsImpl("{2}{U}")); + new ManaCostsImpl<>("{2}{U}")); copyAbility.addTarget(new TargetPermanent(filterShapeshifter)); copyAbility.addTarget(new TargetCreaturePermanent()); this.addAbility(copyAbility); diff --git a/Mage.Sets/src/mage/cards/s/ShardPhoenix.java b/Mage.Sets/src/mage/cards/s/ShardPhoenix.java index 0724aae57e..fbb686f32b 100644 --- a/Mage.Sets/src/mage/cards/s/ShardPhoenix.java +++ b/Mage.Sets/src/mage/cards/s/ShardPhoenix.java @@ -47,7 +47,7 @@ public final class ShardPhoenix extends CardImpl { // {R}{R}{R}: Return Shard Phoenix from your graveyard to your hand. Activate this ability only during your upkeep. this.addAbility(new ConditionalActivatedAbility(Zone.GRAVEYARD, - new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl("{R}{R}{R}"), new IsStepCondition(PhaseStep.UPKEEP), null)); + new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl<>("{R}{R}{R}"), new IsStepCondition(PhaseStep.UPKEEP), null)); } private ShardPhoenix(final ShardPhoenix card) { diff --git a/Mage.Sets/src/mage/cards/s/SharkTyphoon.java b/Mage.Sets/src/mage/cards/s/SharkTyphoon.java index cb4c2dc9c6..733d8cc85d 100644 --- a/Mage.Sets/src/mage/cards/s/SharkTyphoon.java +++ b/Mage.Sets/src/mage/cards/s/SharkTyphoon.java @@ -35,7 +35,7 @@ public final class SharkTyphoon extends CardImpl { )); // Cycling {X}{1}{U} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{X}{1}{U}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{X}{1}{U}"))); // When you cycle Shark Typhoon, create an X/X blue Shark creature token with flying. this.addAbility(new SharkTyphoonTriggeredAbility()); diff --git a/Mage.Sets/src/mage/cards/s/ShatteredPerception.java b/Mage.Sets/src/mage/cards/s/ShatteredPerception.java index f678090975..758a843ccf 100644 --- a/Mage.Sets/src/mage/cards/s/ShatteredPerception.java +++ b/Mage.Sets/src/mage/cards/s/ShatteredPerception.java @@ -22,7 +22,7 @@ public final class ShatteredPerception extends CardImpl { // Discard all the cards in your hand, then draw that many cards. this.getSpellAbility().addEffect(new DiscardHandDrawSameNumberSourceEffect()); // Flashback {5}{R} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{5}{R}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{5}{R}"))); } private ShatteredPerception(final ShatteredPerception card) { diff --git a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java index 7fb2e52975..e6698d021a 100644 --- a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java +++ b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java @@ -41,18 +41,18 @@ public final class ShattergangBrothers extends CardImpl { this.toughness = new MageInt(3); // {2}{B}, Sacrifice a creature: Each other player sacrifices a creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(FILTER_CONTROLLED_CREATURE_SHORT_TEXT), new ManaCostsImpl("{2}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(FILTER_CONTROLLED_CREATURE_SHORT_TEXT), new ManaCostsImpl<>("{2}{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); this.addAbility(ability); // {2}{R}, Sacrifice an artifact: Each other player sacrifices an artifact. FilterControlledPermanent filter = new FilterControlledArtifactPermanent("an artifact"); - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(filter), new ManaCostsImpl("{2}{R}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(filter), new ManaCostsImpl<>("{2}{R}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, true))); this.addAbility(ability); // {2}{G}, Sacrifice an enchantment: Each other player sacrifices an enchantment. filter = new FilterControlledPermanent("an enchantment"); filter.add(CardType.ENCHANTMENT.getPredicate()); - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(filter), new ManaCostsImpl("{2}{G}")); + 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/ShaukusMinion.java b/Mage.Sets/src/mage/cards/s/ShaukusMinion.java index b00de4fac1..339402edac 100644 --- a/Mage.Sets/src/mage/cards/s/ShaukusMinion.java +++ b/Mage.Sets/src/mage/cards/s/ShaukusMinion.java @@ -39,7 +39,7 @@ public final class ShaukusMinion extends CardImpl { this.toughness = new MageInt(2); // {B}{R}, {tap}: Shauku's Minion deals 2 damage to target white creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{B}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{B}{R}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShefetDunes.java b/Mage.Sets/src/mage/cards/s/ShefetDunes.java index 4adfe7d350..f5724b9d3c 100644 --- a/Mage.Sets/src/mage/cards/s/ShefetDunes.java +++ b/Mage.Sets/src/mage/cards/s/ShefetDunes.java @@ -49,7 +49,7 @@ public final class ShefetDunes extends CardImpl { Ability ability2 = new ActivateAsSorceryActivatedAbility( Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), - new ManaCostsImpl("{2}{W}{W}")); + new ManaCostsImpl<>("{2}{W}{W}")); ability2.addCost(new TapSourceCost()); ability2.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filterDesertPermanent, true))); this.addAbility(ability2); diff --git a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java index 456998072f..9a822d32fc 100644 --- a/Mage.Sets/src/mage/cards/s/ShefetMonitor.java +++ b/Mage.Sets/src/mage/cards/s/ShefetMonitor.java @@ -40,7 +40,7 @@ public final class ShefetMonitor extends CardImpl { this.toughness = new MageInt(5); // Cycling {3}{G} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{3}{G}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{3}{G}"))); // When you cycle Shefet Monitor, you may search your library for a basic land card or a Desert card, put it onto the battlefield, then shuffle your library. this.addAbility(new CycleTriggeredAbility( diff --git a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java index 3fbc09f370..1feb7b775e 100644 --- a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java +++ b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java @@ -39,7 +39,7 @@ public final class ShelldockIsle extends CardImpl { Ability ability = new SimpleActivatedAbility(new ConditionalOneShotEffect( new HideawayPlayEffect(), condition, "you may play the exiled card " + "without paying its mana cost if a library has twenty or fewer cards in it" - ), new ManaCostsImpl("{U}")); + ), new ManaCostsImpl<>("{U}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShelteredThicket.java b/Mage.Sets/src/mage/cards/s/ShelteredThicket.java index 676eae6264..fdb41d0733 100644 --- a/Mage.Sets/src/mage/cards/s/ShelteredThicket.java +++ b/Mage.Sets/src/mage/cards/s/ShelteredThicket.java @@ -32,7 +32,7 @@ public final class ShelteredThicket extends CardImpl { this.addAbility(new EntersBattlefieldTappedAbility()); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ShieldDancer.java b/Mage.Sets/src/mage/cards/s/ShieldDancer.java index 788c24f719..da3fb9851a 100644 --- a/Mage.Sets/src/mage/cards/s/ShieldDancer.java +++ b/Mage.Sets/src/mage/cards/s/ShieldDancer.java @@ -35,7 +35,7 @@ public final class ShieldDancer extends CardImpl { this.toughness = new MageInt(3); // {2}{W}: The next time target attacking creature would deal combat damage to Shield Dancer this turn, that creature deals that damage to itself instead. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShieldDancerRedirectionEffect(), new ManaCostsImpl("{2}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShieldDancerRedirectionEffect(), new ManaCostsImpl<>("{2}{W}")); ability.addTarget(new TargetAttackingCreature()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShieldhideDragon.java b/Mage.Sets/src/mage/cards/s/ShieldhideDragon.java index 2447912018..9c7aeb4518 100644 --- a/Mage.Sets/src/mage/cards/s/ShieldhideDragon.java +++ b/Mage.Sets/src/mage/cards/s/ShieldhideDragon.java @@ -43,7 +43,7 @@ public final class ShieldhideDragon extends CardImpl { this.addAbility(LifelinkAbility.getInstance()); // Megamorph {5}{W}{W} - this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{W}{W}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{W}{W}"), true)); // When Shieldhide Dragon is turned face up, put a +1/+1 counter on each other Dragon you control. this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), false, false)); diff --git a/Mage.Sets/src/mage/cards/s/ShiftingCeratops.java b/Mage.Sets/src/mage/cards/s/ShiftingCeratops.java index efc57339c0..285a0d0654 100644 --- a/Mage.Sets/src/mage/cards/s/ShiftingCeratops.java +++ b/Mage.Sets/src/mage/cards/s/ShiftingCeratops.java @@ -46,7 +46,7 @@ public final class ShiftingCeratops extends CardImpl { this.addAbility(ProtectionAbility.from(ObjectColor.BLUE)); // {G}: Shifting Ceratops gains your choice of reach, trample, or haste until end of turn. - this.addAbility(new SimpleActivatedAbility(new ShiftingCeratopsEffect(), new ManaCostsImpl("{G}"))); + this.addAbility(new SimpleActivatedAbility(new ShiftingCeratopsEffect(), new ManaCostsImpl<>("{G}"))); } private ShiftingCeratops(final ShiftingCeratops card) { diff --git a/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java b/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java index 360147f92b..d26f6f0fa3 100644 --- a/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java +++ b/Mage.Sets/src/mage/cards/s/ShimianNightStalker.java @@ -41,7 +41,7 @@ public final class ShimianNightStalker extends CardImpl { this.toughness = new MageInt(4); // {B}, {T}: All damage that would be dealt to you this turn by target attacking creature is dealt to Shimian Night Stalker instead. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShimianNightStalkerRedirectDamageEffect(), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShimianNightStalkerRedirectDamageEffect(), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShimmeringBarrier.java b/Mage.Sets/src/mage/cards/s/ShimmeringBarrier.java index e4d92e3865..145a849f66 100644 --- a/Mage.Sets/src/mage/cards/s/ShimmeringBarrier.java +++ b/Mage.Sets/src/mage/cards/s/ShimmeringBarrier.java @@ -27,7 +27,7 @@ public final class ShimmeringBarrier extends CardImpl { this.addAbility(DefenderAbility.getInstance()); this.addAbility(FirstStrikeAbility.getInstance()); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private ShimmeringBarrier(final ShimmeringBarrier card) { diff --git a/Mage.Sets/src/mage/cards/s/ShimmerscaleDrake.java b/Mage.Sets/src/mage/cards/s/ShimmerscaleDrake.java index f18d8f4aea..b2795505c8 100644 --- a/Mage.Sets/src/mage/cards/s/ShimmerscaleDrake.java +++ b/Mage.Sets/src/mage/cards/s/ShimmerscaleDrake.java @@ -28,7 +28,7 @@ public final class ShimmerscaleDrake extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java b/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java index 01dd3e5383..f2c1eb321b 100644 --- a/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java +++ b/Mage.Sets/src/mage/cards/s/ShipwreckSinger.java @@ -34,11 +34,11 @@ public final class ShipwreckSinger extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {1}{U}: Target creature an opponent controls attacks this turn if able. - Ability ability = new SimpleActivatedAbility(new AttacksIfAbleTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(new AttacksIfAbleTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{1}{U}")); ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_OPPONENTS_PERMANENT_CREATURE)); this.addAbility(ability); // {1}{B}, {T}: Attacking creatures get -1/-1 until end of turn. - ability = new SimpleActivatedAbility(new BoostAllEffect(-1,-1, Duration.EndOfTurn, StaticFilters.FILTER_ATTACKING_CREATURES, false), new ManaCostsImpl("{1}{B}")); + ability = new SimpleActivatedAbility(new BoostAllEffect(-1,-1, Duration.EndOfTurn, StaticFilters.FILTER_ATTACKING_CREATURES, false), new ManaCostsImpl<>("{1}{B}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShivanGorge.java b/Mage.Sets/src/mage/cards/s/ShivanGorge.java index 38600dcf26..62ac093453 100644 --- a/Mage.Sets/src/mage/cards/s/ShivanGorge.java +++ b/Mage.Sets/src/mage/cards/s/ShivanGorge.java @@ -28,7 +28,7 @@ public final class ShivanGorge extends CardImpl { // {tap}: Add {C}. this.addAbility(new ColorlessManaAbility()); // {2}{R}, {tap}: Shivan Gorge deals 1 damage to each opponent. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamagePlayersEffect(1, TargetController.OPPONENT), new ManaCostsImpl("{2}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamagePlayersEffect(1, TargetController.OPPONENT), new ManaCostsImpl<>("{2}{R}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShivanHarvest.java b/Mage.Sets/src/mage/cards/s/ShivanHarvest.java index 9479900a7d..19c050d4b4 100644 --- a/Mage.Sets/src/mage/cards/s/ShivanHarvest.java +++ b/Mage.Sets/src/mage/cards/s/ShivanHarvest.java @@ -25,7 +25,7 @@ public final class ShivanHarvest extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{R}"); // {1}{R}, Sacrifice a creature: Destroy target nonbasic land. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{R}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); ability.addTarget(new TargetNonBasicLandPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShivanHellkite.java b/Mage.Sets/src/mage/cards/s/ShivanHellkite.java index d68872f3b7..971c7296f4 100644 --- a/Mage.Sets/src/mage/cards/s/ShivanHellkite.java +++ b/Mage.Sets/src/mage/cards/s/ShivanHellkite.java @@ -28,7 +28,7 @@ public final class ShivanHellkite extends CardImpl { this.power = new MageInt(5); this.toughness = new MageInt(5); this.addAbility(FlyingAbility.getInstance()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{1}{R}")); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShivanMeteor.java b/Mage.Sets/src/mage/cards/s/ShivanMeteor.java index d360153716..92af25729c 100644 --- a/Mage.Sets/src/mage/cards/s/ShivanMeteor.java +++ b/Mage.Sets/src/mage/cards/s/ShivanMeteor.java @@ -24,7 +24,7 @@ public final class ShivanMeteor extends CardImpl { this.getSpellAbility().addEffect(new DamageTargetEffect(13)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); // Suspend 2-{1}{R}{R} - this.addAbility(new SuspendAbility(2, new ManaCostsImpl("{1}{R}{R}"), this)); + this.addAbility(new SuspendAbility(2, new ManaCostsImpl<>("{1}{R}{R}"), this)); } private ShivanMeteor(final ShivanMeteor card) { diff --git a/Mage.Sets/src/mage/cards/s/ShivanSandMage.java b/Mage.Sets/src/mage/cards/s/ShivanSandMage.java index eca0d7e3fe..34ac57b68d 100644 --- a/Mage.Sets/src/mage/cards/s/ShivanSandMage.java +++ b/Mage.Sets/src/mage/cards/s/ShivanSandMage.java @@ -53,7 +53,7 @@ public final class ShivanSandMage extends CardImpl { this.addAbility(ability); // Suspend 4-{R} - this.addAbility(new SuspendAbility(4, new ManaCostsImpl("{R}"), this)); + this.addAbility(new SuspendAbility(4, new ManaCostsImpl<>("{R}"), this)); } private ShivanSandMage(final ShivanSandMage card) { diff --git a/Mage.Sets/src/mage/cards/s/ShivsEmbrace.java b/Mage.Sets/src/mage/cards/s/ShivsEmbrace.java index be3bd98732..7820e2d108 100644 --- a/Mage.Sets/src/mage/cards/s/ShivsEmbrace.java +++ b/Mage.Sets/src/mage/cards/s/ShivsEmbrace.java @@ -47,7 +47,7 @@ public final class ShivsEmbrace extends CardImpl { ability.addEffect(effect); this.addAbility(ability); // {R}: Enchanted creature gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/ShoreKeeper.java b/Mage.Sets/src/mage/cards/s/ShoreKeeper.java index fa0ed94b27..4d4646498e 100644 --- a/Mage.Sets/src/mage/cards/s/ShoreKeeper.java +++ b/Mage.Sets/src/mage/cards/s/ShoreKeeper.java @@ -29,7 +29,7 @@ public final class ShoreKeeper extends CardImpl { this.toughness = new MageInt(3); // {7}{u}, {t}, Sacrifice Shore Keeper: Draw three cards. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(3), new ManaCostsImpl("{7}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(3), new ManaCostsImpl<>("{7}{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ShoreSnapper.java b/Mage.Sets/src/mage/cards/s/ShoreSnapper.java index 86c51ad14a..c2d9e2c5a2 100644 --- a/Mage.Sets/src/mage/cards/s/ShoreSnapper.java +++ b/Mage.Sets/src/mage/cards/s/ShoreSnapper.java @@ -29,7 +29,7 @@ public final class ShoreSnapper extends CardImpl { this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(new IslandwalkAbility(), Duration.EndOfTurn), - new ManaCostsImpl("{U}"))); + new ManaCostsImpl<>("{U}"))); } private ShoreSnapper(final ShoreSnapper card) { diff --git a/Mage.Sets/src/mage/cards/s/ShorecrasherElemental.java b/Mage.Sets/src/mage/cards/s/ShorecrasherElemental.java index 1996ca1408..af6f41d8a9 100644 --- a/Mage.Sets/src/mage/cards/s/ShorecrasherElemental.java +++ b/Mage.Sets/src/mage/cards/s/ShorecrasherElemental.java @@ -38,13 +38,13 @@ public final class ShorecrasherElemental extends CardImpl { this.toughness = new MageInt(3); // {U}: Exile Shorecrasher Elemental, then return it to the battlefield face down under its owner's control. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShorecrasherElementalEffect(), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShorecrasherElementalEffect(), new ManaCostsImpl<>("{U}"))); // {1}: Shorecrasher Elemental gets +1/-1 or -1/+1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShorecrasherElementalBoostEffect(), new ManaCostsImpl("{1}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShorecrasherElementalBoostEffect(), new ManaCostsImpl<>("{1}"))); // Megamorph {4}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{U}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{U}"), true)); } diff --git a/Mage.Sets/src/mage/cards/s/ShorelineRanger.java b/Mage.Sets/src/mage/cards/s/ShorelineRanger.java index 45279e0c10..3c7170cd80 100644 --- a/Mage.Sets/src/mage/cards/s/ShorelineRanger.java +++ b/Mage.Sets/src/mage/cards/s/ShorelineRanger.java @@ -29,7 +29,7 @@ public final class ShorelineRanger extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // Islandcycling {2} - this.addAbility(new IslandcyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new IslandcyclingAbility(new ManaCostsImpl<>("{2}"))); } private ShorelineRanger(final ShorelineRanger card) { diff --git a/Mage.Sets/src/mage/cards/s/ShreddedSails.java b/Mage.Sets/src/mage/cards/s/ShreddedSails.java index eb20e6fe23..d77da51831 100644 --- a/Mage.Sets/src/mage/cards/s/ShreddedSails.java +++ b/Mage.Sets/src/mage/cards/s/ShreddedSails.java @@ -42,7 +42,7 @@ public final class ShreddedSails extends CardImpl { this.getSpellAbility().addMode(mode); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private ShreddedSails(final ShreddedSails card) { diff --git a/Mage.Sets/src/mage/cards/s/ShroudedLore.java b/Mage.Sets/src/mage/cards/s/ShroudedLore.java index 137463dca1..b13a319f9b 100644 --- a/Mage.Sets/src/mage/cards/s/ShroudedLore.java +++ b/Mage.Sets/src/mage/cards/s/ShroudedLore.java @@ -65,7 +65,7 @@ class ShroudedLoreEffect extends OneShotEffect { if (you != null && opponent != null) { FilterCard filter = new FilterCard(); filter.add(new OwnerIdPredicate(you.getId())); - Cost cost = new ManaCostsImpl("{B}"); + Cost cost = new ManaCostsImpl<>("{B}"); TargetCardInGraveyard chosenCard; Card card = null; boolean done = false; diff --git a/Mage.Sets/src/mage/cards/s/ShroudedSerpent.java b/Mage.Sets/src/mage/cards/s/ShroudedSerpent.java index e3654eed05..9ca66eb5b4 100644 --- a/Mage.Sets/src/mage/cards/s/ShroudedSerpent.java +++ b/Mage.Sets/src/mage/cards/s/ShroudedSerpent.java @@ -29,7 +29,7 @@ public final class ShroudedSerpent extends CardImpl { // Whenever Shrouded Serpent attacks, defending player may pay {4}. If they don't, Shrouded Serpent can't be blocked this turn. this.addAbility(new AttacksTriggeredAbility( - new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(new CantBeBlockedByAllSourceEffect(new FilterCreaturePermanent(), Duration.EndOfCombat), new ManaCostsImpl("{4}")), + new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(new CantBeBlockedByAllSourceEffect(new FilterCreaturePermanent(), Duration.EndOfCombat), new ManaCostsImpl<>("{4}")), false, "Whenever {this} attacks, defending player may pay {4}. If they don't, {this} can't be blocked this turn.", SetTargetPointer.PLAYER)); diff --git a/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java b/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java index fd3d9eb674..1c290b2ea0 100644 --- a/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java +++ b/Mage.Sets/src/mage/cards/s/ShuYunTheSilentTempest.java @@ -46,7 +46,7 @@ public final class ShuYunTheSilentTempest extends CardImpl { Ability ability = new SpellCastControllerTriggeredAbility( new DoIfCostPaid( new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn), - new ManaCostsImpl("{R/W}{R/W}"), + new ManaCostsImpl<>("{R/W}{R/W}"), "Pay to let target creature gain double strike?"), filter, false); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/Sicken.java b/Mage.Sets/src/mage/cards/s/Sicken.java index 9d39d17723..37eb422f38 100644 --- a/Mage.Sets/src/mage/cards/s/Sicken.java +++ b/Mage.Sets/src/mage/cards/s/Sicken.java @@ -35,7 +35,7 @@ public final class Sicken extends CardImpl { // Enchanted creature gets -2/-2. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(-1, -1, Duration.WhileOnBattlefield))); //Cycling - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private Sicken(final Sicken card) { diff --git a/Mage.Sets/src/mage/cards/s/SiegeGangCommander.java b/Mage.Sets/src/mage/cards/s/SiegeGangCommander.java index 0d2a329629..8c08fe0553 100644 --- a/Mage.Sets/src/mage/cards/s/SiegeGangCommander.java +++ b/Mage.Sets/src/mage/cards/s/SiegeGangCommander.java @@ -39,7 +39,7 @@ public final class SiegeGangCommander extends CardImpl { this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new GoblinToken(), 3), false)); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{1}{R}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, false))); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SiegebreakerGiant.java b/Mage.Sets/src/mage/cards/s/SiegebreakerGiant.java index 1a3360b352..d6b25870f2 100644 --- a/Mage.Sets/src/mage/cards/s/SiegebreakerGiant.java +++ b/Mage.Sets/src/mage/cards/s/SiegebreakerGiant.java @@ -36,7 +36,7 @@ public final class SiegebreakerGiant extends CardImpl { Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new CantBlockTargetEffect(Duration.EndOfTurn), - new ManaCostsImpl("{3}{R}") + new ManaCostsImpl<>("{3}{R}") ); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SightedCasteSorcerer.java b/Mage.Sets/src/mage/cards/s/SightedCasteSorcerer.java index 3e77e19218..7531a6b2de 100644 --- a/Mage.Sets/src/mage/cards/s/SightedCasteSorcerer.java +++ b/Mage.Sets/src/mage/cards/s/SightedCasteSorcerer.java @@ -30,7 +30,7 @@ public final class SightedCasteSorcerer extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(new ExaltedAbility()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{U}"))); } public SightedCasteSorcerer (final SightedCasteSorcerer card) { diff --git a/Mage.Sets/src/mage/cards/s/SigilOfTheNayanGods.java b/Mage.Sets/src/mage/cards/s/SigilOfTheNayanGods.java index 7d83c4ee59..e9a5716ad5 100644 --- a/Mage.Sets/src/mage/cards/s/SigilOfTheNayanGods.java +++ b/Mage.Sets/src/mage/cards/s/SigilOfTheNayanGods.java @@ -43,7 +43,7 @@ public final class SigilOfTheNayanGods extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(amount, amount, Duration.WhileOnBattlefield))); // Cycling {G/W} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{G/W}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{G/W}"))); } private SigilOfTheNayanGods(final SigilOfTheNayanGods card) { diff --git a/Mage.Sets/src/mage/cards/s/SigilOfTheNewDawn.java b/Mage.Sets/src/mage/cards/s/SigilOfTheNewDawn.java index ca6e00901b..1b6ad55337 100644 --- a/Mage.Sets/src/mage/cards/s/SigilOfTheNewDawn.java +++ b/Mage.Sets/src/mage/cards/s/SigilOfTheNewDawn.java @@ -25,7 +25,7 @@ public final class SigilOfTheNewDawn extends CardImpl { Effect effect = new ReturnFromGraveyardToHandTargetEffect(); effect.setText("return that card to your hand"); this.addAbility(new PutIntoGraveFromBattlefieldAllTriggeredAbility( - new DoIfCostPaid(effect, new ManaCostsImpl("{1}{W}")), + new DoIfCostPaid(effect, new ManaCostsImpl<>("{1}{W}")), false, StaticFilters.FILTER_PERMANENT_A_CREATURE, true, true )); } diff --git a/Mage.Sets/src/mage/cards/s/SigilTracer.java b/Mage.Sets/src/mage/cards/s/SigilTracer.java index 95deaf09e5..780b9fa554 100644 --- a/Mage.Sets/src/mage/cards/s/SigilTracer.java +++ b/Mage.Sets/src/mage/cards/s/SigilTracer.java @@ -40,7 +40,7 @@ public final class SigilTracer extends CardImpl { this.toughness = new MageInt(2); // {1}{U}, Tap two untapped Wizards you control: Copy target instant or sorcery spell. You may choose new targets for the copy. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CopyTargetSpellEffect(), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CopyTargetSpellEffect(), new ManaCostsImpl<>("{1}{U}")); ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_INSTANT_OR_SORCERY)); ability.addCost(new TapTargetCost(new TargetControlledCreaturePermanent(2, 2, filter, false))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilentAssassin.java b/Mage.Sets/src/mage/cards/s/SilentAssassin.java index d433cbf48b..33cb908e48 100644 --- a/Mage.Sets/src/mage/cards/s/SilentAssassin.java +++ b/Mage.Sets/src/mage/cards/s/SilentAssassin.java @@ -38,7 +38,7 @@ public final class SilentAssassin extends CardImpl { new AtTheEndOfCombatDelayedTriggeredAbility( new DestroyTargetEffect().setText("destroy target blocking creature") ), true - ), new ManaCostsImpl("{3}{B}")); + ), new ManaCostsImpl<>("{3}{B}")); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SilentDeparture.java b/Mage.Sets/src/mage/cards/s/SilentDeparture.java index d0e8e7cb8a..c397bfc7f5 100644 --- a/Mage.Sets/src/mage/cards/s/SilentDeparture.java +++ b/Mage.Sets/src/mage/cards/s/SilentDeparture.java @@ -25,7 +25,7 @@ public final class SilentDeparture extends CardImpl { this.getSpellAbility().addEffect(new ReturnToHandTargetEffect()); // Flashback {4}{U} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{4}{U}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{4}{U}"))); } private SilentDeparture(final SilentDeparture card) { diff --git a/Mage.Sets/src/mage/cards/s/SilentSpecter.java b/Mage.Sets/src/mage/cards/s/SilentSpecter.java index f33626cb3e..1764064710 100644 --- a/Mage.Sets/src/mage/cards/s/SilentSpecter.java +++ b/Mage.Sets/src/mage/cards/s/SilentSpecter.java @@ -31,7 +31,7 @@ public final class SilentSpecter extends CardImpl { // Whenever Silent Specter deals combat damage to a player, that player discards two cards. this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DiscardTargetEffect(2), false, true)); // Morph {3}{B}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{B}{B}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{B}{B}"))); } private SilentSpecter(final SilentSpecter card) { diff --git a/Mage.Sets/src/mage/cards/s/SilkbindFaerie.java b/Mage.Sets/src/mage/cards/s/SilkbindFaerie.java index dd3725bc94..076305a352 100644 --- a/Mage.Sets/src/mage/cards/s/SilkbindFaerie.java +++ b/Mage.Sets/src/mage/cards/s/SilkbindFaerie.java @@ -34,7 +34,7 @@ public final class SilkbindFaerie extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {1}{WU}, {untap}: Tap target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{1}{W/U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{1}{W/U}")); ability.addCost(new UntapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilklashSpider.java b/Mage.Sets/src/mage/cards/s/SilklashSpider.java index 9aec75f8ad..229199ec03 100644 --- a/Mage.Sets/src/mage/cards/s/SilklashSpider.java +++ b/Mage.Sets/src/mage/cards/s/SilklashSpider.java @@ -41,7 +41,7 @@ public final class SilklashSpider extends CardImpl { // {X}{G}{G}: Silklash Spider deals X damage to each creature with flying. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(ManacostVariableValue.REGULAR, filter), - new ManaCostsImpl("{X}{G}{G}"))); + new ManaCostsImpl<>("{X}{G}{G}"))); } private SilklashSpider(final SilklashSpider card) { diff --git a/Mage.Sets/src/mage/cards/s/SilkwingScout.java b/Mage.Sets/src/mage/cards/s/SilkwingScout.java index 5ade8a775f..99651042e0 100644 --- a/Mage.Sets/src/mage/cards/s/SilkwingScout.java +++ b/Mage.Sets/src/mage/cards/s/SilkwingScout.java @@ -37,7 +37,7 @@ public final class SilkwingScout extends CardImpl { // {G}, Sacrifice Silkwing Scout: Search your library for a basic land card and put that card onto the battlefield tapped. Then shuffle your library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND), true, true), - new ManaCostsImpl("{G}")); + new ManaCostsImpl<>("{G}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java index 7ec71e11a4..eb84761c0b 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java @@ -45,7 +45,7 @@ public final class SilumgarAssassin extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByCreaturesWithGreaterPowerEffect())); // Megamorph {2}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{B}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{B}"), true)); // When Silumgar Assassin is turned face up, destroy target creature with power 3 or less an opponent controls. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DestroyTargetEffect(), false); diff --git a/Mage.Sets/src/mage/cards/s/SilumgarMonument.java b/Mage.Sets/src/mage/cards/s/SilumgarMonument.java index 079591759f..fcb2a8a0c4 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarMonument.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarMonument.java @@ -32,7 +32,7 @@ public final class SilumgarMonument extends CardImpl { // {4}{U}{B}: Silumgar Monument becomes a 4/4 blue and black Dragon artifact creature with flying until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect - (new OjutaiMonumentToken(), "", Duration.EndOfTurn), new ManaCostsImpl("{4}{U}{B}"))); + (new OjutaiMonumentToken(), "", Duration.EndOfTurn), new ManaCostsImpl<>("{4}{U}{B}"))); } private SilumgarMonument(final SilumgarMonument card) { diff --git a/Mage.Sets/src/mage/cards/s/SilumgarSpellEater.java b/Mage.Sets/src/mage/cards/s/SilumgarSpellEater.java index 08fdd03aee..ea5b361c52 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarSpellEater.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarSpellEater.java @@ -29,7 +29,7 @@ public final class SilumgarSpellEater extends CardImpl { this.toughness = new MageInt(3); // Megamorph {4}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{U}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{U}"), true)); // When Silumgar Spell-Eater is turned face up, counter target spell unless its controller pays {3}. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new CounterUnlessPaysEffect(new GenericManaCost(3)), false, false); diff --git a/Mage.Sets/src/mage/cards/s/SilverWyvern.java b/Mage.Sets/src/mage/cards/s/SilverWyvern.java index b1b0e8d21e..5040adfe5b 100644 --- a/Mage.Sets/src/mage/cards/s/SilverWyvern.java +++ b/Mage.Sets/src/mage/cards/s/SilverWyvern.java @@ -49,7 +49,7 @@ public final class SilverWyvern extends CardImpl { new ChooseNewTargetsTargetEffect(true, true) .setText("Change the target of target spell or ability that targets only {this}. " + "The new target must be a creature"), - new ManaCostsImpl("{U}") + new ManaCostsImpl<>("{U}") ); ability.addTarget(new TargetStackObject(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilverchaseFox.java b/Mage.Sets/src/mage/cards/s/SilverchaseFox.java index 3e1a44ef96..55cc6f69cf 100644 --- a/Mage.Sets/src/mage/cards/s/SilverchaseFox.java +++ b/Mage.Sets/src/mage/cards/s/SilverchaseFox.java @@ -28,7 +28,7 @@ public final class SilverchaseFox extends CardImpl { this.toughness = new MageInt(2); // {1}{W}, Sacrifice Silverchase Fox: Exile target enchantment. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{1}{W}")); ability.addTarget(new TargetEnchantmentPermanent()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilvergladePathfinder.java b/Mage.Sets/src/mage/cards/s/SilvergladePathfinder.java index c88e7f55ce..f776ac2fb5 100644 --- a/Mage.Sets/src/mage/cards/s/SilvergladePathfinder.java +++ b/Mage.Sets/src/mage/cards/s/SilvergladePathfinder.java @@ -34,7 +34,7 @@ public final class SilvergladePathfinder extends CardImpl { // {1}{G}, {tap}, Discard a card: Search your library for a basic land card and put that card onto the battlefield tapped. Then shuffle your library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND), true, true), - new ManaCostsImpl("{1}{G}")); + new ManaCostsImpl<>("{1}{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilversmoteGhoul.java b/Mage.Sets/src/mage/cards/s/SilversmoteGhoul.java index 85d5dd0288..ceb5b9494f 100644 --- a/Mage.Sets/src/mage/cards/s/SilversmoteGhoul.java +++ b/Mage.Sets/src/mage/cards/s/SilversmoteGhoul.java @@ -47,7 +47,7 @@ public final class SilversmoteGhoul extends CardImpl { // {1}{B}, Sacrifice Silversmote Ghoul: Draw a card. Ability ability = new SimpleActivatedAbility( - new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{1}{B}") + new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{1}{B}") ); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SilvosRogueElemental.java b/Mage.Sets/src/mage/cards/s/SilvosRogueElemental.java index 942645fd72..de0d80a4e7 100644 --- a/Mage.Sets/src/mage/cards/s/SilvosRogueElemental.java +++ b/Mage.Sets/src/mage/cards/s/SilvosRogueElemental.java @@ -31,7 +31,7 @@ public final class SilvosRogueElemental extends CardImpl { // Trample this.addAbility(TrampleAbility.getInstance()); // {G}: Regenerate Silvos, Rogue Elemental. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"))); } private SilvosRogueElemental(final SilvosRogueElemental card) { diff --git a/Mage.Sets/src/mage/cards/s/SimicAscendancy.java b/Mage.Sets/src/mage/cards/s/SimicAscendancy.java index df75a5edaf..b981f659d0 100644 --- a/Mage.Sets/src/mage/cards/s/SimicAscendancy.java +++ b/Mage.Sets/src/mage/cards/s/SimicAscendancy.java @@ -33,7 +33,7 @@ public final class SimicAscendancy extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{G}{U}"); // {1}{G}{U}: Put a +1/+1 counter on target creature you control. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{1}{G}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{1}{G}{U}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SimicBasilisk.java b/Mage.Sets/src/mage/cards/s/SimicBasilisk.java index 89fb8bc954..605c744961 100644 --- a/Mage.Sets/src/mage/cards/s/SimicBasilisk.java +++ b/Mage.Sets/src/mage/cards/s/SimicBasilisk.java @@ -42,7 +42,7 @@ public final class SimicBasilisk extends CardImpl { Effect effect = new CreateDelayedTriggeredAbilityEffect( new AtTheEndOfCombatDelayedTriggeredAbility(new DestroyTargetEffect()), true); effect.setText("destroy that creature at end of combat"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new DealsDamageToACreatureTriggeredAbility(effect, true, false, true), Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new DealsDamageToACreatureTriggeredAbility(effect, true, false, true), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}")); ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_A_CREATURE_P1P1)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SimicCluestone.java b/Mage.Sets/src/mage/cards/s/SimicCluestone.java index 9e3ec201bd..1556c34e24 100644 --- a/Mage.Sets/src/mage/cards/s/SimicCluestone.java +++ b/Mage.Sets/src/mage/cards/s/SimicCluestone.java @@ -32,7 +32,7 @@ public final class SimicCluestone extends CardImpl { this.addAbility(new BlueManaAbility()); // {G}{U}, {T}, Sacrifice Simic Cluestone: Draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{G}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{G}{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SimicFluxmage.java b/Mage.Sets/src/mage/cards/s/SimicFluxmage.java index c659711909..a2613fd61a 100644 --- a/Mage.Sets/src/mage/cards/s/SimicFluxmage.java +++ b/Mage.Sets/src/mage/cards/s/SimicFluxmage.java @@ -38,7 +38,7 @@ public final class SimicFluxmage extends CardImpl { this.addAbility(new EvolveAbility()); // 1{U}, {T}: Move a +1/+1 counter from Simic Fluxmage onto target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveCounterFromSourceToTargetEffect(),new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveCounterFromSourceToTargetEffect(),new ManaCostsImpl<>("{1}{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SimicGuildmage.java b/Mage.Sets/src/mage/cards/s/SimicGuildmage.java index f29b9cfe9c..c451d148e5 100644 --- a/Mage.Sets/src/mage/cards/s/SimicGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SimicGuildmage.java @@ -51,7 +51,7 @@ public final class SimicGuildmage extends CardImpl { this.toughness = new MageInt(2); // {1}{G}: Move a +1/+1 counter from target creature onto another target creature with the same controller. - Ability countersAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveCounterFromTargetToTargetEffect(), new ManaCostsImpl("{1}{G}")); + Ability countersAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveCounterFromTargetToTargetEffect(), new ManaCostsImpl<>("{1}{G}")); TargetCreaturePermanent target = new TargetCreaturePermanent( new FilterCreaturePermanent("creature (you take counter from)")); target.setTargetTag(1); @@ -67,7 +67,7 @@ public final class SimicGuildmage extends CardImpl { this.addAbility(countersAbility); // {1}{U}: Attach target Aura enchanting a permanent to another permanent with the same controller. - Ability auraAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveAuraEffect(), new ManaCostsImpl("{1}{U}")); + Ability auraAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MoveAuraEffect(), new ManaCostsImpl<>("{1}{U}")); auraAbility.addTarget(new TargetPermanent(auraFilter)); this.addAbility(auraAbility); diff --git a/Mage.Sets/src/mage/cards/s/SimicKeyrune.java b/Mage.Sets/src/mage/cards/s/SimicKeyrune.java index f355e3222e..9cae760bb7 100644 --- a/Mage.Sets/src/mage/cards/s/SimicKeyrune.java +++ b/Mage.Sets/src/mage/cards/s/SimicKeyrune.java @@ -31,7 +31,7 @@ public final class SimicKeyrune extends CardImpl { this.addAbility(new BlueManaAbility()); // {G}{U}: Simic Keyrune becomes a 2/3 green and blue Crab artifact creature with hexproof until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SimicKeyruneToken(), "", Duration.EndOfTurn), new ManaCostsImpl("{G}{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SimicKeyruneToken(), "", Duration.EndOfTurn), new ManaCostsImpl<>("{G}{U}"))); } private SimicKeyrune(final SimicKeyrune card) { diff --git a/Mage.Sets/src/mage/cards/s/SimicRagworm.java b/Mage.Sets/src/mage/cards/s/SimicRagworm.java index ccc5f3b903..2c86eac06a 100644 --- a/Mage.Sets/src/mage/cards/s/SimicRagworm.java +++ b/Mage.Sets/src/mage/cards/s/SimicRagworm.java @@ -25,7 +25,7 @@ public final class SimicRagworm extends CardImpl { this.toughness = new MageInt(3); // {U}: Untap Simic Ragworm. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{U}"))); } private SimicRagworm(final SimicRagworm card) { diff --git a/Mage.Sets/src/mage/cards/s/SinisterConcoction.java b/Mage.Sets/src/mage/cards/s/SinisterConcoction.java index 4795cdc41d..67a26f69dd 100644 --- a/Mage.Sets/src/mage/cards/s/SinisterConcoction.java +++ b/Mage.Sets/src/mage/cards/s/SinisterConcoction.java @@ -26,7 +26,7 @@ public final class SinisterConcoction extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{B}"); // {B}, Pay 1 life, Put the top card of your library into your graveyard, Discard a card, Sacrifice Sinister Concoction: Destroy target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{B}")); ability.addCost(new PayLifeCost(1)); ability.addCost(new MillCardsCost()); ability.addCost(new DiscardCardCost()); diff --git a/Mage.Sets/src/mage/cards/s/SinkingFeeling.java b/Mage.Sets/src/mage/cards/s/SinkingFeeling.java index eb5098dc99..a587eb38e2 100644 --- a/Mage.Sets/src/mage/cards/s/SinkingFeeling.java +++ b/Mage.Sets/src/mage/cards/s/SinkingFeeling.java @@ -46,7 +46,7 @@ public final class SinkingFeeling extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect())); // Enchanted creature has "{1}, Put a -1/-1 counter on this creature: Untap this creature. - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{1}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{1}")); ability2.addCost(new PutCountersSourceCost(CounterType.M1M1.createInstance()).setText("put a -1/-1 counter on this creature")); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability2, AttachmentType.AURA, Duration.Custom, "Enchanted creature has \"{1}, Put a -1/-1 counter on this creature: Untap this creature.\""))); diff --git a/Mage.Sets/src/mage/cards/s/SirenStormtamer.java b/Mage.Sets/src/mage/cards/s/SirenStormtamer.java index 666f896b65..cd77b0bd15 100644 --- a/Mage.Sets/src/mage/cards/s/SirenStormtamer.java +++ b/Mage.Sets/src/mage/cards/s/SirenStormtamer.java @@ -45,7 +45,7 @@ public final class SirenStormtamer extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {U}, Sacrifice Siren Stormtamer: Counter target spell or ability that targets you or a creature you control. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{U}")); ability.addTarget(new SirenStormtamerTargetObject()); ability.addCost(new SacrificeSourceCost()); diff --git a/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java b/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java index 1334f8291e..1e1ada5df1 100644 --- a/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java +++ b/Mage.Sets/src/mage/cards/s/SisayWeatherlightCaptain.java @@ -48,7 +48,7 @@ public final class SisayWeatherlightCaptain extends CardImpl { // {W}{U}{B}{R}{G}: Search your library for a legendary permanent card with converted mana cost less than Sisay's power, put that card onto the battlefield, then shuffle your library. this.addAbility(new SimpleActivatedAbility( new SisayWeatherlightCaptainEffect(), - new ManaCostsImpl("{W}{U}{B}{R}{G}") + new ManaCostsImpl<>("{W}{U}{B}{R}{G}") )); } diff --git a/Mage.Sets/src/mage/cards/s/SisaysIngenuity.java b/Mage.Sets/src/mage/cards/s/SisaysIngenuity.java index f08e7cf7e0..a01418d911 100644 --- a/Mage.Sets/src/mage/cards/s/SisaysIngenuity.java +++ b/Mage.Sets/src/mage/cards/s/SisaysIngenuity.java @@ -44,7 +44,7 @@ public final class SisaysIngenuity extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1))); // Enchanted creature has "{2}{U}: Target creature becomes the color of your choice until end of turn." ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorTargetEffect(Duration.EndOfTurn), - new ManaCostsImpl("{2}{U}")); + new ManaCostsImpl<>("{2}{U}")); ability.addTarget(new TargetCreaturePermanent()); Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA); effect.setText("Enchanted creature has \"{2}{U}: Target creature becomes the color of your choice until end of turn.\""); diff --git a/Mage.Sets/src/mage/cards/s/SithEvoker.java b/Mage.Sets/src/mage/cards/s/SithEvoker.java index 051394b13b..686f7d8488 100644 --- a/Mage.Sets/src/mage/cards/s/SithEvoker.java +++ b/Mage.Sets/src/mage/cards/s/SithEvoker.java @@ -41,7 +41,7 @@ public final class SithEvoker extends CardImpl { this.toughness = new MageInt(3); // {T}, {B}, Sacrifice a creature: You gain life equal to that creature's power or toughness. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SithEvokerEffect(), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SithEvokerEffect(), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); diff --git a/Mage.Sets/src/mage/cards/s/SkarrgGuildmage.java b/Mage.Sets/src/mage/cards/s/SkarrgGuildmage.java index 42d1a093c1..c1b6da136b 100644 --- a/Mage.Sets/src/mage/cards/s/SkarrgGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SkarrgGuildmage.java @@ -37,11 +37,11 @@ public final class SkarrgGuildmage extends CardImpl { // {R}{G}: Creatures you control gain trample until end of turn. this.addAbility(new SimpleActivatedAbility( Zone.BATTLEFIELD, new GainAbilityAllEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent(), "Creatures you control gain trample until end of turn"), - new ManaCostsImpl("{R}{G}"))); + new ManaCostsImpl<>("{R}{G}"))); // {1}{R}{G}: Target land you control becomes a 4/4 Elemental creature until end of turn. It's still a land. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureTargetEffect( new ElementalCreatureToken(4, 4, "4/4 Elemental creature"), - false, true, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}{G}") ); + false, true, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}{G}") ); ability.addTarget(new TargetPermanent(new FilterControlledLandPermanent())); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SkarrgTheRagePits.java b/Mage.Sets/src/mage/cards/s/SkarrgTheRagePits.java index 2e8e7cdee9..92d48aa5a0 100644 --- a/Mage.Sets/src/mage/cards/s/SkarrgTheRagePits.java +++ b/Mage.Sets/src/mage/cards/s/SkarrgTheRagePits.java @@ -26,7 +26,7 @@ public final class SkarrgTheRagePits extends CardImpl { public SkarrgTheRagePits(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.addAbility(new ColorlessManaAbility()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{R}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}{G}")); ability.addCost(new TapSourceCost()); ability.addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SkarrganFirebird.java b/Mage.Sets/src/mage/cards/s/SkarrganFirebird.java index ebe3af2be2..dadce98393 100644 --- a/Mage.Sets/src/mage/cards/s/SkarrganFirebird.java +++ b/Mage.Sets/src/mage/cards/s/SkarrganFirebird.java @@ -39,7 +39,7 @@ public final class SkarrganFirebird extends CardImpl { this.addAbility(new ConditionalActivatedAbility( Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), - new ManaCostsImpl("{R}{R}{R}"), + new ManaCostsImpl<>("{R}{R}{R}"), new OpponentWasDealtDamageCondition(), null)); } diff --git a/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java b/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java index 778f98de68..816e660ae3 100644 --- a/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java +++ b/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java @@ -39,7 +39,7 @@ public final class SkarrganHellkite extends CardImpl { // {3}{R}: Skarrgan Hellkite deals 2 damage divided as you choose among one or two targets. Activate this ability only if Skarrgan Hellkite has a +1/+1 counter on it. Ability ability = new ConditionalActivatedAbility( Zone.BATTLEFIELD, new DamageMultiEffect(2), - new ManaCostsImpl("{3}{R}"), new SourceHasCounterCondition(CounterType.P1P1), + new ManaCostsImpl<>("{3}{R}"), new SourceHasCounterCondition(CounterType.P1P1), "{3}{R}: {this} deals 2 damage divided as you choose among one or two targets. " + "Activate only if {this} has a +1/+1 counter on it." ); diff --git a/Mage.Sets/src/mage/cards/s/SkeletalChangeling.java b/Mage.Sets/src/mage/cards/s/SkeletalChangeling.java index 7779623592..a53e04f123 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalChangeling.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalChangeling.java @@ -28,7 +28,7 @@ public final class SkeletalChangeling extends CardImpl { // Changeling this.addAbility(new ChangelingAbility()); // {1}{B}: Regenerate Skeletal Changeling. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"))); } private SkeletalChangeling(final SkeletalChangeling card) { diff --git a/Mage.Sets/src/mage/cards/s/SkeletalGrimace.java b/Mage.Sets/src/mage/cards/s/SkeletalGrimace.java index 2e8a9a30f7..564ee4fe59 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalGrimace.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalGrimace.java @@ -41,7 +41,7 @@ public final class SkeletalGrimace extends CardImpl { this.addAbility(ability); // Enchanted creature gets +1/+1 and has "{B}: Regenerate this creature." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield))); - Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")); + Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA))); } diff --git a/Mage.Sets/src/mage/cards/s/SkeletalKathari.java b/Mage.Sets/src/mage/cards/s/SkeletalKathari.java index 6b741680b9..f6e44979d3 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalKathari.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalKathari.java @@ -32,7 +32,7 @@ public final class SkeletalKathari extends CardImpl { this.toughness = new MageInt(2); this.addAbility(FlyingAbility.getInstance()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkeletalVampire.java b/Mage.Sets/src/mage/cards/s/SkeletalVampire.java index 22758d1175..265cf143e3 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalVampire.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalVampire.java @@ -45,7 +45,7 @@ public final class SkeletalVampire extends CardImpl { // When Skeletal Vampire enters the battlefield, create two 1/1 black Bat creature tokens with flying. this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new BatToken(), 2))); // {3}{B}{B}, Sacrifice a Bat: Create two 1/1 black Bat creature tokens with flying. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new BatToken(), 2), new ManaCostsImpl("{3}{B}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new BatToken(), 2), new ManaCostsImpl<>("{3}{B}{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, false))); this.addAbility(ability); // Sacrifice a Bat: Regenerate Skeletal Vampire. diff --git a/Mage.Sets/src/mage/cards/s/SkeletalWurm.java b/Mage.Sets/src/mage/cards/s/SkeletalWurm.java index 0ad633485d..bdcf8a164b 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletalWurm.java +++ b/Mage.Sets/src/mage/cards/s/SkeletalWurm.java @@ -26,7 +26,7 @@ public final class SkeletalWurm extends CardImpl { this.power = new MageInt(7); this.toughness = new MageInt(6); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"))); } private SkeletalWurm(final SkeletalWurm card) { diff --git a/Mage.Sets/src/mage/cards/s/SkewerTheCritics.java b/Mage.Sets/src/mage/cards/s/SkewerTheCritics.java index 808d6637fa..519ebffcee 100644 --- a/Mage.Sets/src/mage/cards/s/SkewerTheCritics.java +++ b/Mage.Sets/src/mage/cards/s/SkewerTheCritics.java @@ -23,7 +23,7 @@ public final class SkewerTheCritics extends CardImpl { this.getSpellAbility().addTarget(new TargetAnyTarget()); // Spectacle {R} - this.addAbility(new SpectacleAbility(this, new ManaCostsImpl("{R}"))); + this.addAbility(new SpectacleAbility(this, new ManaCostsImpl<>("{R}"))); } private SkewerTheCritics(final SkewerTheCritics card) { diff --git a/Mage.Sets/src/mage/cards/s/Skinthinner.java b/Mage.Sets/src/mage/cards/s/Skinthinner.java index 052190c5f5..ce738b65b9 100644 --- a/Mage.Sets/src/mage/cards/s/Skinthinner.java +++ b/Mage.Sets/src/mage/cards/s/Skinthinner.java @@ -27,7 +27,7 @@ public final class Skinthinner extends CardImpl { this.toughness = new MageInt(1); // Morph {3}{B}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{B}{B}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{B}{B}"))); // When Skinthinner is turned face up, destroy target nonblack creature. It can't be regenerated. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DestroyTargetEffect(true)); ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_PERMANENT_CREATURE_NON_BLACK)); diff --git a/Mage.Sets/src/mage/cards/s/SkirkCommando.java b/Mage.Sets/src/mage/cards/s/SkirkCommando.java index d44a07d1c9..8fd4e024fd 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkCommando.java +++ b/Mage.Sets/src/mage/cards/s/SkirkCommando.java @@ -35,7 +35,7 @@ public final class SkirkCommando extends CardImpl { this.addAbility(new SkirkCommandoTriggeredAbility()); //Morph {2}{R} (You may cast this card face down as a 2/2 creature for 3. Turn it face up any time for its morph cost.) - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/SkirkDrillSergeant.java b/Mage.Sets/src/mage/cards/s/SkirkDrillSergeant.java index ef086d3db4..55dd15459d 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkDrillSergeant.java +++ b/Mage.Sets/src/mage/cards/s/SkirkDrillSergeant.java @@ -43,7 +43,7 @@ public final class SkirkDrillSergeant extends CardImpl { this.toughness = new MageInt(1); // Whenever Skirk Drill Sergeant or another Goblin dies, you may pay {2}{R}. If you do, reveal the top card of your library. If it's a Goblin permanent card, put it onto the battlefield. Otherwise, put it into your graveyard. - this.addAbility(new DiesThisOrAnotherCreatureTriggeredAbility(new DoIfCostPaid(new SkirkDrillSergeantEffect(), new ManaCostsImpl("{2}{R}")), false, filter)); + this.addAbility(new DiesThisOrAnotherCreatureTriggeredAbility(new DoIfCostPaid(new SkirkDrillSergeantEffect(), new ManaCostsImpl<>("{2}{R}")), false, filter)); } diff --git a/Mage.Sets/src/mage/cards/s/SkirkMarauder.java b/Mage.Sets/src/mage/cards/s/SkirkMarauder.java index 397940e73c..a86dcb65af 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkMarauder.java +++ b/Mage.Sets/src/mage/cards/s/SkirkMarauder.java @@ -27,7 +27,7 @@ public final class SkirkMarauder extends CardImpl { this.toughness = new MageInt(1); // Morph {2}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{R}"))); // When Skirk Marauder is turned face up, it deals 2 damage to any target. Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DamageTargetEffect(2, "it")); diff --git a/Mage.Sets/src/mage/cards/s/SkirkRidgeExhumer.java b/Mage.Sets/src/mage/cards/s/SkirkRidgeExhumer.java index 04969add8f..ebacc960bd 100644 --- a/Mage.Sets/src/mage/cards/s/SkirkRidgeExhumer.java +++ b/Mage.Sets/src/mage/cards/s/SkirkRidgeExhumer.java @@ -30,7 +30,7 @@ public final class SkirkRidgeExhumer extends CardImpl { this.toughness = new MageInt(1); // {B}, {tap}, Discard a card: Create a 1/1 black Zombie Goblin creature token named Festering Goblin. It has "When Festering Goblin dies, target creature gets -1/-1 until end of turn." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new FesteringGoblinToken()), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new FesteringGoblinToken()), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java b/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java index 283fb8af42..fc807c6e3d 100644 --- a/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java +++ b/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java @@ -32,7 +32,7 @@ public final class SkirsdagCultist extends CardImpl { this.toughness = new MageInt(2); // {R}, {T}, Sacrifice a creature: Skirsdag Cultist deals 2 damage to any target. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{R}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); ability.addTarget(new TargetAnyTarget()); diff --git a/Mage.Sets/src/mage/cards/s/SkirsdagFlayer.java b/Mage.Sets/src/mage/cards/s/SkirsdagFlayer.java index a5504780f0..1ea4d5e62b 100644 --- a/Mage.Sets/src/mage/cards/s/SkirsdagFlayer.java +++ b/Mage.Sets/src/mage/cards/s/SkirsdagFlayer.java @@ -39,7 +39,7 @@ public final class SkirsdagFlayer extends CardImpl { this.toughness = new MageInt(1); // {3}{B}, {tap}, Sacrifice a Human: Destroy target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{3}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{3}{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter))); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SkirsdagSupplicant.java b/Mage.Sets/src/mage/cards/s/SkirsdagSupplicant.java index 865e8a4d28..4584ef0835 100644 --- a/Mage.Sets/src/mage/cards/s/SkirsdagSupplicant.java +++ b/Mage.Sets/src/mage/cards/s/SkirsdagSupplicant.java @@ -29,7 +29,7 @@ public final class SkirsdagSupplicant extends CardImpl { this.toughness = new MageInt(3); // {B}, {T}, Discard a card: Each player loses 2 life. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeAllPlayersEffect(2), new ManaCostsImpl("{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeAllPlayersEffect(2), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SkithiryxTheBlightDragon.java b/Mage.Sets/src/mage/cards/s/SkithiryxTheBlightDragon.java index 95279e779e..2fec41c3bb 100644 --- a/Mage.Sets/src/mage/cards/s/SkithiryxTheBlightDragon.java +++ b/Mage.Sets/src/mage/cards/s/SkithiryxTheBlightDragon.java @@ -36,8 +36,8 @@ public final class SkithiryxTheBlightDragon extends CardImpl { this.toughness = new MageInt(4); this.addAbility(FlyingAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{B}"))); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}{B}"))); } public SkithiryxTheBlightDragon (final SkithiryxTheBlightDragon card) { diff --git a/Mage.Sets/src/mage/cards/s/Skitterskin.java b/Mage.Sets/src/mage/cards/s/Skitterskin.java index ed40db6bfc..70676dd1b6 100644 --- a/Mage.Sets/src/mage/cards/s/Skitterskin.java +++ b/Mage.Sets/src/mage/cards/s/Skitterskin.java @@ -48,7 +48,7 @@ public final class Skitterskin extends CardImpl { // {1}{B}: Regenerate Skitterskin. Activate this ability only if you control another colorless creature. Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), - new ManaCostsImpl("{1}{B}"), + new ManaCostsImpl<>("{1}{B}"), new PermanentsOnTheBattlefieldCondition(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkittishValesk.java b/Mage.Sets/src/mage/cards/s/SkittishValesk.java index 04d609547c..6c355fe6e1 100644 --- a/Mage.Sets/src/mage/cards/s/SkittishValesk.java +++ b/Mage.Sets/src/mage/cards/s/SkittishValesk.java @@ -35,7 +35,7 @@ public final class SkittishValesk extends CardImpl { this.addAbility(new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new SkittishValeskEffect(), TargetController.YOU, false)); // Morph {5}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{R}"))); } private SkittishValesk(final SkittishValesk card) { diff --git a/Mage.Sets/src/mage/cards/s/SkolaGrovedancer.java b/Mage.Sets/src/mage/cards/s/SkolaGrovedancer.java index 7e8b751c21..0c77b34bce 100644 --- a/Mage.Sets/src/mage/cards/s/SkolaGrovedancer.java +++ b/Mage.Sets/src/mage/cards/s/SkolaGrovedancer.java @@ -35,7 +35,7 @@ public final class SkolaGrovedancer extends CardImpl { // {2}{G}: Put the top card of your library into your graveyard. this.addAbility(new SimpleActivatedAbility( - new MillCardsControllerEffect(1), new ManaCostsImpl("{2}{G}") + new MillCardsControllerEffect(1), new ManaCostsImpl<>("{2}{G}") )); } diff --git a/Mage.Sets/src/mage/cards/s/SkullCollector.java b/Mage.Sets/src/mage/cards/s/SkullCollector.java index 71ce9345e6..5d87d96322 100644 --- a/Mage.Sets/src/mage/cards/s/SkullCollector.java +++ b/Mage.Sets/src/mage/cards/s/SkullCollector.java @@ -40,7 +40,7 @@ public final class SkullCollector extends CardImpl { // At the beginning of your upkeep, return a black creature you control to its owner's hand. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), TargetController.YOU, false)); // {1}{B}: Regenerate Skull Collector. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"))); } private SkullCollector(final SkullCollector card) { diff --git a/Mage.Sets/src/mage/cards/s/SkullFracture.java b/Mage.Sets/src/mage/cards/s/SkullFracture.java index a4186e6dd2..a416d6c68a 100644 --- a/Mage.Sets/src/mage/cards/s/SkullFracture.java +++ b/Mage.Sets/src/mage/cards/s/SkullFracture.java @@ -26,7 +26,7 @@ public final class SkullFracture extends CardImpl { this.getSpellAbility().addEffect(new DiscardTargetEffect(1)); this.getSpellAbility().addTarget(new TargetPlayer()); // Flashback {3}{B} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{3}{B}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{3}{B}"))); } private SkullFracture(final SkullFracture card) { diff --git a/Mage.Sets/src/mage/cards/s/SkullportMerchant.java b/Mage.Sets/src/mage/cards/s/SkullportMerchant.java index 33aea4c880..0dcd5c5305 100644 --- a/Mage.Sets/src/mage/cards/s/SkullportMerchant.java +++ b/Mage.Sets/src/mage/cards/s/SkullportMerchant.java @@ -45,7 +45,7 @@ public final class SkullportMerchant extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new TreasureToken()))); // {1}{B}, Sacrifice another creature or a Treasure: Draw a card. - Ability ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{1}{B}")); + Ability ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{1}{B}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkycatSovereign.java b/Mage.Sets/src/mage/cards/s/SkycatSovereign.java index 4586b90fa2..b14012ff87 100644 --- a/Mage.Sets/src/mage/cards/s/SkycatSovereign.java +++ b/Mage.Sets/src/mage/cards/s/SkycatSovereign.java @@ -52,7 +52,7 @@ public final class SkycatSovereign extends CardImpl { // {2}{W}{U}: Create a 1/1 white Cat Bird creature token with flying. this.addAbility(new SimpleActivatedAbility( - new CreateTokenEffect(new CatBirdToken()), new ManaCostsImpl("{2}{W}{U}") + new CreateTokenEffect(new CatBirdToken()), new ManaCostsImpl<>("{2}{W}{U}") )); } diff --git a/Mage.Sets/src/mage/cards/s/SkycloudEgg.java b/Mage.Sets/src/mage/cards/s/SkycloudEgg.java index 830b33aaae..b195595680 100644 --- a/Mage.Sets/src/mage/cards/s/SkycloudEgg.java +++ b/Mage.Sets/src/mage/cards/s/SkycloudEgg.java @@ -24,7 +24,7 @@ public final class SkycloudEgg extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}"); // {2}, {tap}, Sacrifice Skycloud Egg: Add {W}{U}. Draw a card. - ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 0, 0, 0, 0), new ManaCostsImpl("{2}")); + ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 0, 0, 0, 0), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addEffect(new DrawCardSourceControllerEffect(1)); diff --git a/Mage.Sets/src/mage/cards/s/SkycloudExpanse.java b/Mage.Sets/src/mage/cards/s/SkycloudExpanse.java index 66d61b5bbe..c9e2551e14 100644 --- a/Mage.Sets/src/mage/cards/s/SkycloudExpanse.java +++ b/Mage.Sets/src/mage/cards/s/SkycloudExpanse.java @@ -22,7 +22,7 @@ public final class SkycloudExpanse extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // {1}, {tap}: Add {W}{U}. - Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 0, 0, 0, 0), new ManaCostsImpl("{1}")); + Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 0, 0, 0, 0), new ManaCostsImpl<>("{1}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkylineScout.java b/Mage.Sets/src/mage/cards/s/SkylineScout.java index 21a1eeb448..966b608a3d 100644 --- a/Mage.Sets/src/mage/cards/s/SkylineScout.java +++ b/Mage.Sets/src/mage/cards/s/SkylineScout.java @@ -31,7 +31,7 @@ public final class SkylineScout extends CardImpl { this.addAbility(new AttacksTriggeredAbility(new DoIfCostPaid( new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn) .setText("it gains flying until end of turn"), - new ManaCostsImpl("{1}{W}") + new ManaCostsImpl<>("{1}{W}") ), false)); } diff --git a/Mage.Sets/src/mage/cards/s/SkyriderPatrol.java b/Mage.Sets/src/mage/cards/s/SkyriderPatrol.java index 0c646acf19..26c5ad1092 100644 --- a/Mage.Sets/src/mage/cards/s/SkyriderPatrol.java +++ b/Mage.Sets/src/mage/cards/s/SkyriderPatrol.java @@ -53,7 +53,7 @@ public final class SkyriderPatrol extends CardImpl { ability.addEffect(new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn)); ability.addTarget(new TargetPermanent(filter)); this.addAbility(new BeginningOfCombatTriggeredAbility(new DoWhenCostPaid( - ability, new ManaCostsImpl("{G}{U}"), "Pay {G}{U}?" + ability, new ManaCostsImpl<>("{G}{U}"), "Pay {G}{U}?" ), TargetController.YOU, false)); } diff --git a/Mage.Sets/src/mage/cards/s/Skyscribing.java b/Mage.Sets/src/mage/cards/s/Skyscribing.java index 347be5f679..d486c2dc63 100644 --- a/Mage.Sets/src/mage/cards/s/Skyscribing.java +++ b/Mage.Sets/src/mage/cards/s/Skyscribing.java @@ -22,7 +22,7 @@ public final class Skyscribing extends CardImpl { // Each player draws X cards. this.getSpellAbility().addEffect(new DrawCardAllEffect(ManacostVariableValue.REGULAR)); // Forecast - {2}{U}, Reveal Skyscribing from your hand: Each player draws a card. - this.addAbility(new ForecastAbility(new DrawCardAllEffect(1), new ManaCostsImpl("{2}{U}"))); + this.addAbility(new ForecastAbility(new DrawCardAllEffect(1), new ManaCostsImpl<>("{2}{U}"))); } private Skyscribing(final Skyscribing card) { diff --git a/Mage.Sets/src/mage/cards/s/SkyshipStalker.java b/Mage.Sets/src/mage/cards/s/SkyshipStalker.java index f606701c16..3c8b29d316 100644 --- a/Mage.Sets/src/mage/cards/s/SkyshipStalker.java +++ b/Mage.Sets/src/mage/cards/s/SkyshipStalker.java @@ -33,13 +33,13 @@ public final class SkyshipStalker extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {R}: Skyship Stalker gains +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); // {R}: Skyship Stalker gains first strike until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); // {R}: Skyship Stalker gains haste until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private SkyshipStalker(final SkyshipStalker card) { diff --git a/Mage.Sets/src/mage/cards/s/SkyshroudElf.java b/Mage.Sets/src/mage/cards/s/SkyshroudElf.java index 8ad3fae6bf..a43f84b2d6 100644 --- a/Mage.Sets/src/mage/cards/s/SkyshroudElf.java +++ b/Mage.Sets/src/mage/cards/s/SkyshroudElf.java @@ -32,9 +32,9 @@ public final class SkyshroudElf extends CardImpl { this.addAbility(new GreenManaAbility()); // {1}: Add {R} or {W}. - Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.RedMana(1), new ManaCostsImpl("{1}")); + Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.RedMana(1), new ManaCostsImpl<>("{1}")); this.addAbility(ability); - Ability ability2 = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.WhiteMana(1), new ManaCostsImpl("{1}")); + Ability ability2 = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.WhiteMana(1), new ManaCostsImpl<>("{1}")); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/s/SkyshroudPoacher.java b/Mage.Sets/src/mage/cards/s/SkyshroudPoacher.java index 278198ea92..168cb5aae0 100644 --- a/Mage.Sets/src/mage/cards/s/SkyshroudPoacher.java +++ b/Mage.Sets/src/mage/cards/s/SkyshroudPoacher.java @@ -37,7 +37,7 @@ public final class SkyshroudPoacher extends CardImpl { this.toughness = new MageInt(2); // {3}, {tap}: Search your library for an Elf permanent card and put it onto the battlefield. Then shuffle your library. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new ManaCostsImpl("{3}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new ManaCostsImpl<>("{3}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkyshroudTroll.java b/Mage.Sets/src/mage/cards/s/SkyshroudTroll.java index 7b379eb5fd..cfb1f11148 100644 --- a/Mage.Sets/src/mage/cards/s/SkyshroudTroll.java +++ b/Mage.Sets/src/mage/cards/s/SkyshroudTroll.java @@ -25,7 +25,7 @@ public final class SkyshroudTroll extends CardImpl { this.power = new MageInt(3); this.toughness = new MageInt(3); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}"))); } private SkyshroudTroll(final SkyshroudTroll card) { diff --git a/Mage.Sets/src/mage/cards/s/SkywatcherAdept.java b/Mage.Sets/src/mage/cards/s/SkywatcherAdept.java index 22725f5460..a4ff98aff5 100644 --- a/Mage.Sets/src/mage/cards/s/SkywatcherAdept.java +++ b/Mage.Sets/src/mage/cards/s/SkywatcherAdept.java @@ -30,7 +30,7 @@ public final class SkywatcherAdept extends LevelerCard { this.power = new MageInt(1); this.toughness = new MageInt(1); - this.addAbility(new LevelUpAbility(new ManaCostsImpl("{3}"))); + this.addAbility(new LevelUpAbility(new ManaCostsImpl<>("{3}"))); Abilities abilities1 = new AbilitiesImpl<>(); abilities1.add(FlyingAbility.getInstance()); diff --git a/Mage.Sets/src/mage/cards/s/SkywaySniper.java b/Mage.Sets/src/mage/cards/s/SkywaySniper.java index 362fae650a..b41d481aad 100644 --- a/Mage.Sets/src/mage/cards/s/SkywaySniper.java +++ b/Mage.Sets/src/mage/cards/s/SkywaySniper.java @@ -41,7 +41,7 @@ public final class SkywaySniper extends CardImpl { this.addAbility(ReachAbility.getInstance()); // {2}{G}: Skyway Sniper deals 1 damage to target creature with flying. - Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new ManaCostsImpl<>("{2}{G}")); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java b/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java index eab6812a92..af23359c86 100644 --- a/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java +++ b/Mage.Sets/src/mage/cards/s/SkywiseTeachings.java @@ -29,7 +29,7 @@ public final class SkywiseTeachings extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{U}"); // Whenever you cast a noncreature spell, you may pay {1}{U}. If you do, create a 2/2 blue Djinn Monk creature token with flying. - this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new DjinnMonkToken()), new ManaCostsImpl("{1}{U}")), filter, false)); + this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new DjinnMonkToken()), new ManaCostsImpl<>("{1}{U}")), filter, false)); } diff --git a/Mage.Sets/src/mage/cards/s/SlaughterPact.java b/Mage.Sets/src/mage/cards/s/SlaughterPact.java index 62ad870c5b..80ae58690b 100644 --- a/Mage.Sets/src/mage/cards/s/SlaughterPact.java +++ b/Mage.Sets/src/mage/cards/s/SlaughterPact.java @@ -26,7 +26,7 @@ public final class SlaughterPact extends CardImpl { this.getSpellAbility().addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_PERMANENT_CREATURE_NON_BLACK)); this.getSpellAbility().addEffect(new DestroyTargetEffect()); // At the beginning of your next upkeep, pay {2}{B}. If you don't, you lose the game. - this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new PactDelayedTriggeredAbility(new ManaCostsImpl("{2}{B}")),false)); + this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new PactDelayedTriggeredAbility(new ManaCostsImpl<>("{2}{B}")),false)); } private SlaughterPact(final SlaughterPact card) { diff --git a/Mage.Sets/src/mage/cards/s/SlayersStronghold.java b/Mage.Sets/src/mage/cards/s/SlayersStronghold.java index b46858cbe3..5279685d96 100644 --- a/Mage.Sets/src/mage/cards/s/SlayersStronghold.java +++ b/Mage.Sets/src/mage/cards/s/SlayersStronghold.java @@ -31,7 +31,7 @@ public final class SlayersStronghold extends CardImpl { // {R}{W}, {tap}: Target creature gets +2/+0 and gains vigilance and haste until end of turn. Ability ability = new SimpleActivatedAbility(new BoostTargetEffect( 2, 0, Duration.EndOfTurn - ).setText("target creature gets +2/+0"), new ManaCostsImpl("{R}{W}")); + ).setText("target creature gets +2/+0"), new ManaCostsImpl<>("{R}{W}")); ability.addEffect(new GainAbilityTargetEffect( VigilanceAbility.getInstance(), Duration.EndOfTurn ).setText("and gains vigilance")); diff --git a/Mage.Sets/src/mage/cards/s/SliceAndDice.java b/Mage.Sets/src/mage/cards/s/SliceAndDice.java index 1f840e61ab..ef607a02be 100644 --- a/Mage.Sets/src/mage/cards/s/SliceAndDice.java +++ b/Mage.Sets/src/mage/cards/s/SliceAndDice.java @@ -23,7 +23,7 @@ public final class SliceAndDice extends CardImpl { // Slice and Dice deals 4 damage to each creature. this.getSpellAbility().addEffect(new DamageAllEffect(4, new FilterCreaturePermanent())); // Cycling {2}{R} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}{R}"))); // When you cycle Slice and Dice, you may have it deal 1 damage to each creature. this.addAbility(new CycleTriggeredAbility(new DamageAllEffect(1, StaticFilters.FILTER_PERMANENT_CREATURE).setText("have it deal 1 damage to each creature"), true)); } diff --git a/Mage.Sets/src/mage/cards/s/SlimefootTheStowaway.java b/Mage.Sets/src/mage/cards/s/SlimefootTheStowaway.java index 72f5a00063..0d7dfc11d7 100644 --- a/Mage.Sets/src/mage/cards/s/SlimefootTheStowaway.java +++ b/Mage.Sets/src/mage/cards/s/SlimefootTheStowaway.java @@ -43,7 +43,7 @@ public final class SlimefootTheStowaway extends CardImpl { this.addAbility(ability); // {4}: Create a 1/1 green Saproling creature token. - this.addAbility(new SimpleActivatedAbility(new CreateTokenEffect(new SaprolingToken()), new ManaCostsImpl("{4}"))); + this.addAbility(new SimpleActivatedAbility(new CreateTokenEffect(new SaprolingToken()), new ManaCostsImpl<>("{4}"))); } private SlimefootTheStowaway(final SlimefootTheStowaway card) { diff --git a/Mage.Sets/src/mage/cards/s/SlingbowTrap.java b/Mage.Sets/src/mage/cards/s/SlingbowTrap.java index c154c89ccd..444f4a0d19 100644 --- a/Mage.Sets/src/mage/cards/s/SlingbowTrap.java +++ b/Mage.Sets/src/mage/cards/s/SlingbowTrap.java @@ -35,7 +35,7 @@ public final class SlingbowTrap extends CardImpl { this.subtype.add(SubType.TRAP); // If a black creature with flying is attacking, you may pay {G} rather than pay Slingbow Trap's mana cost. - this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{G}"), SlingbowTrapCondition.instance)); + this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl<>("{G}"), SlingbowTrapCondition.instance)); // Destroy target attacking creature with flying. this.getSpellAbility().addEffect(new DestroyTargetEffect()); diff --git a/Mage.Sets/src/mage/cards/s/SlingshotGoblin.java b/Mage.Sets/src/mage/cards/s/SlingshotGoblin.java index aacdf5c176..275f9c60bc 100644 --- a/Mage.Sets/src/mage/cards/s/SlingshotGoblin.java +++ b/Mage.Sets/src/mage/cards/s/SlingshotGoblin.java @@ -38,7 +38,7 @@ public final class SlingshotGoblin extends CardImpl { this.toughness = new MageInt(2); // {R}, {tap}: Slingshot Goblin deals 2 damage to target blue creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{R}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SlinkingSkirge.java b/Mage.Sets/src/mage/cards/s/SlinkingSkirge.java index 36d65b56eb..33b1f7d3d8 100644 --- a/Mage.Sets/src/mage/cards/s/SlinkingSkirge.java +++ b/Mage.Sets/src/mage/cards/s/SlinkingSkirge.java @@ -31,7 +31,7 @@ public final class SlinkingSkirge extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {2}, Sacrifice Slinking Skirge: Draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SlipperyKarst.java b/Mage.Sets/src/mage/cards/s/SlipperyKarst.java index dcd815373e..8089ae161b 100644 --- a/Mage.Sets/src/mage/cards/s/SlipperyKarst.java +++ b/Mage.Sets/src/mage/cards/s/SlipperyKarst.java @@ -22,7 +22,7 @@ public final class SlipperyKarst extends CardImpl { this.addAbility(new EntersBattlefieldTappedAbility()); this.addAbility(new GreenManaAbility()); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SlipperyKarst(final SlipperyKarst card) { diff --git a/Mage.Sets/src/mage/cards/s/SlipstreamEel.java b/Mage.Sets/src/mage/cards/s/SlipstreamEel.java index 0352ad454b..5f8564b57c 100644 --- a/Mage.Sets/src/mage/cards/s/SlipstreamEel.java +++ b/Mage.Sets/src/mage/cards/s/SlipstreamEel.java @@ -31,7 +31,7 @@ public final class SlipstreamEel extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(new FilterLandPermanent(SubType.ISLAND,"an Island")))); // Cycling {1}{U} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{U}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{U}"))); } private SlipstreamEel(final SlipstreamEel card) { diff --git a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java index 03fb381a45..ef4bbffbf8 100644 --- a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java @@ -38,7 +38,7 @@ public final class SlipstreamSerpent extends CardImpl { new SacrificeSourceEffect())); // Morph {5}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{U}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{U}"))); } private SlipstreamSerpent(final SlipstreamSerpent card) { diff --git a/Mage.Sets/src/mage/cards/s/SliptideSerpent.java b/Mage.Sets/src/mage/cards/s/SliptideSerpent.java index 0c1407d820..a54b5d27f8 100644 --- a/Mage.Sets/src/mage/cards/s/SliptideSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SliptideSerpent.java @@ -25,7 +25,7 @@ public final class SliptideSerpent extends CardImpl { this.toughness = new MageInt(4); // {3}{U}: Return Sliptide Serpent to its owner's hand. - this.addAbility(new SimpleActivatedAbility(new ReturnToHandSourceEffect(true), new ManaCostsImpl("{3}{U}"))); + this.addAbility(new SimpleActivatedAbility(new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{3}{U}"))); } private SliptideSerpent(final SliptideSerpent card) { diff --git a/Mage.Sets/src/mage/cards/s/SlithBloodletter.java b/Mage.Sets/src/mage/cards/s/SlithBloodletter.java index b3fa51394b..c13a7a3c8e 100644 --- a/Mage.Sets/src/mage/cards/s/SlithBloodletter.java +++ b/Mage.Sets/src/mage/cards/s/SlithBloodletter.java @@ -28,7 +28,7 @@ public final class SlithBloodletter extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), false)); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"))); } private SlithBloodletter(final SlithBloodletter card) { diff --git a/Mage.Sets/src/mage/cards/s/Slitherhead.java b/Mage.Sets/src/mage/cards/s/Slitherhead.java index c39f43d839..b48e080ac5 100644 --- a/Mage.Sets/src/mage/cards/s/Slitherhead.java +++ b/Mage.Sets/src/mage/cards/s/Slitherhead.java @@ -25,7 +25,7 @@ public final class Slitherhead extends CardImpl { this.toughness = new MageInt(1); // Scavenge {0} ({0}, Exile this card from your graveyard: Put a number of +1/+1 counters equal to this card's power on target creature. Scavenge only as a sorcery.) - this.addAbility(new ScavengeAbility(new ManaCostsImpl("{0}"))); + this.addAbility(new ScavengeAbility(new ManaCostsImpl<>("{0}"))); } private Slitherhead(final Slitherhead card) { diff --git a/Mage.Sets/src/mage/cards/s/SlitheringShade.java b/Mage.Sets/src/mage/cards/s/SlitheringShade.java index b7e60c0192..9128fcb235 100644 --- a/Mage.Sets/src/mage/cards/s/SlitheringShade.java +++ b/Mage.Sets/src/mage/cards/s/SlitheringShade.java @@ -36,7 +36,7 @@ public final class SlitheringShade extends CardImpl { this.addAbility(DefenderAbility.getInstance()); //{B}: Slithering Shade gets +1/+1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{B}"))); // Hellbent — Slithering Shade can attack as though it didn't have defender as long as you have no cards in hand. Effect effect = new ConditionalAsThoughEffect( diff --git a/Mage.Sets/src/mage/cards/s/SliverOverlord.java b/Mage.Sets/src/mage/cards/s/SliverOverlord.java index 5fedf523a9..23b27779f6 100644 --- a/Mage.Sets/src/mage/cards/s/SliverOverlord.java +++ b/Mage.Sets/src/mage/cards/s/SliverOverlord.java @@ -39,10 +39,10 @@ public final class SliverOverlord extends CardImpl { this.toughness = new MageInt(7); // {3}: Search your library for a Sliver card, reveal that card, and put it into your hand. Then shuffle your library. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true), new ManaCostsImpl("{3}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true), new ManaCostsImpl<>("{3}"))); // {3}: Gain control of target Sliver. - Ability ability = (new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainControlTargetEffect(Duration.Custom), new ManaCostsImpl("{3}"))); + Ability ability = (new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainControlTargetEffect(Duration.Custom), new ManaCostsImpl<>("{3}"))); Target target = new TargetPermanent(new FilterCreaturePermanent(SubType.SLIVER,"Sliver")); ability.addTarget(target); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SliverQueen.java b/Mage.Sets/src/mage/cards/s/SliverQueen.java index 9f94c868ec..bafd8b4791 100644 --- a/Mage.Sets/src/mage/cards/s/SliverQueen.java +++ b/Mage.Sets/src/mage/cards/s/SliverQueen.java @@ -29,7 +29,7 @@ public final class SliverQueen extends CardImpl { this.toughness = new MageInt(7); // {2}: Create a 1/1 colorless Sliver creature token. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SliverToken()), new ManaCostsImpl("{2}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SliverToken()), new ManaCostsImpl<>("{2}"))); } private SliverQueen(final SliverQueen card) { diff --git a/Mage.Sets/src/mage/cards/s/Sliversmith.java b/Mage.Sets/src/mage/cards/s/Sliversmith.java index bdfade99e9..39a8d1f1f3 100644 --- a/Mage.Sets/src/mage/cards/s/Sliversmith.java +++ b/Mage.Sets/src/mage/cards/s/Sliversmith.java @@ -28,7 +28,7 @@ public final class Sliversmith extends CardImpl { this.toughness = new MageInt(1); // {1}, {T}, Discard a card: Create a 1/1 colorless Sliver artifact creature token named Metallic Sliver. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new MetallicSliverToken()), new ManaCostsImpl("{1}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new MetallicSliverToken()), new ManaCostsImpl<>("{1}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SluicewayScorpion.java b/Mage.Sets/src/mage/cards/s/SluicewayScorpion.java index b9c456b442..fe8df20b9b 100644 --- a/Mage.Sets/src/mage/cards/s/SluicewayScorpion.java +++ b/Mage.Sets/src/mage/cards/s/SluicewayScorpion.java @@ -27,7 +27,7 @@ public final class SluicewayScorpion extends CardImpl { // Deathtouch this.addAbility(DeathtouchAbility.getInstance()); // Scavenge {1}{B}{G} - this.addAbility(new ScavengeAbility(new ManaCostsImpl("{1}{B}{G}"))); + this.addAbility(new ScavengeAbility(new ManaCostsImpl<>("{1}{B}{G}"))); } private SluicewayScorpion(final SluicewayScorpion card) { diff --git a/Mage.Sets/src/mage/cards/s/SlumberingTora.java b/Mage.Sets/src/mage/cards/s/SlumberingTora.java index 545c74fcd9..e90ac5d24d 100644 --- a/Mage.Sets/src/mage/cards/s/SlumberingTora.java +++ b/Mage.Sets/src/mage/cards/s/SlumberingTora.java @@ -33,7 +33,7 @@ public final class SlumberingTora extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); // {2}, Discard a Spirit or Arcane card: Slumbering Tora becomes an X/X Cat artifact creature until end of turn, // where X is the discarded card's converted mana cost. - Ability ability = new SimpleActivatedAbility(new SlumberingToraEffect(), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(new SlumberingToraEffect(), new ManaCostsImpl<>("{2}")); ability.addCost(new DiscardTargetCost(new TargetCardInHand(filter))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SmeltWardIgnus.java b/Mage.Sets/src/mage/cards/s/SmeltWardIgnus.java index df72e415ed..2a7a722015 100644 --- a/Mage.Sets/src/mage/cards/s/SmeltWardIgnus.java +++ b/Mage.Sets/src/mage/cards/s/SmeltWardIgnus.java @@ -41,7 +41,7 @@ public final class SmeltWardIgnus extends CardImpl { Zone.BATTLEFIELD, new GainControlTargetEffect( Duration.EndOfTurn, true - ), new ManaCostsImpl("{2}{R}") + ), new ManaCostsImpl<>("{2}{R}") ); ability.addEffect(new UntapTargetEffect().setText("Untap that creature")); ability.addEffect(new GainAbilityTargetEffect( diff --git a/Mage.Sets/src/mage/cards/s/SmitingHelix.java b/Mage.Sets/src/mage/cards/s/SmitingHelix.java index 7dba0e9b9b..24fec7a8c1 100644 --- a/Mage.Sets/src/mage/cards/s/SmitingHelix.java +++ b/Mage.Sets/src/mage/cards/s/SmitingHelix.java @@ -26,7 +26,7 @@ public final class SmitingHelix extends CardImpl { this.getSpellAbility().addTarget(new TargetAnyTarget()); // Flashback {R}{W} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{R}{W}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{R}{W}"))); } private SmitingHelix(final SmitingHelix card) { diff --git a/Mage.Sets/src/mage/cards/s/SmokeTeller.java b/Mage.Sets/src/mage/cards/s/SmokeTeller.java index 5c2c392114..9869fc1f12 100644 --- a/Mage.Sets/src/mage/cards/s/SmokeTeller.java +++ b/Mage.Sets/src/mage/cards/s/SmokeTeller.java @@ -44,7 +44,7 @@ public final class SmokeTeller extends CardImpl { this.toughness = new MageInt(2); // 1U: Look at target face-down creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SmokeTellerLookFaceDownEffect(), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SmokeTellerLookFaceDownEffect(), new ManaCostsImpl<>("{1}{U}")); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SmokespewInvoker.java b/Mage.Sets/src/mage/cards/s/SmokespewInvoker.java index 8bfe792068..88b7c3c246 100644 --- a/Mage.Sets/src/mage/cards/s/SmokespewInvoker.java +++ b/Mage.Sets/src/mage/cards/s/SmokespewInvoker.java @@ -30,7 +30,7 @@ public final class SmokespewInvoker extends CardImpl { // {7}{B}: Target creature gets -3/-3 until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-3, -3, Duration.EndOfTurn), - new ManaCostsImpl("{7}{B}")); + new ManaCostsImpl<>("{7}{B}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SmolderInitiate.java b/Mage.Sets/src/mage/cards/s/SmolderInitiate.java index 612d4428b4..d51197edfc 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderInitiate.java +++ b/Mage.Sets/src/mage/cards/s/SmolderInitiate.java @@ -38,7 +38,7 @@ public final class SmolderInitiate extends CardImpl { this.toughness = new MageInt(1); // Whenever a player casts a black spell, you may pay {1}. If you do, target player loses 1 life. - Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new LoseLifeTargetEffect(1), new ManaCostsImpl("{1}")), filter, false); + Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new LoseLifeTargetEffect(1), new ManaCostsImpl<>("{1}")), filter, false); ability.addTarget(new TargetPlayer()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SmolderingCrater.java b/Mage.Sets/src/mage/cards/s/SmolderingCrater.java index d2a9a75460..a80d95ed93 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderingCrater.java +++ b/Mage.Sets/src/mage/cards/s/SmolderingCrater.java @@ -22,7 +22,7 @@ public final class SmolderingCrater extends CardImpl { this.addAbility(new EntersBattlefieldTappedAbility()); this.addAbility(new RedManaAbility()); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SmolderingCrater(final SmolderingCrater card) { diff --git a/Mage.Sets/src/mage/cards/s/SmolderingWerewolf.java b/Mage.Sets/src/mage/cards/s/SmolderingWerewolf.java index 42825ddfee..f7868ec747 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderingWerewolf.java +++ b/Mage.Sets/src/mage/cards/s/SmolderingWerewolf.java @@ -42,7 +42,7 @@ public final class SmolderingWerewolf extends CardImpl { // {4}{R}{R}: Transform Smoldering Werewolf. this.addAbility(new TransformAbility()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(), new ManaCostsImpl("{4}{R}{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(), new ManaCostsImpl<>("{4}{R}{R}"))); } private SmolderingWerewolf(final SmolderingWerewolf card) { diff --git a/Mage.Sets/src/mage/cards/s/SnakeBasket.java b/Mage.Sets/src/mage/cards/s/SnakeBasket.java index 6e794b0bdb..56717e19fd 100644 --- a/Mage.Sets/src/mage/cards/s/SnakeBasket.java +++ b/Mage.Sets/src/mage/cards/s/SnakeBasket.java @@ -26,7 +26,7 @@ public final class SnakeBasket extends CardImpl { // {X}, Sacrifice Snake Basket: create X 1/1 green Snake creature tokens. Activate this ability only any time you could cast a sorcery. Effect effect = new CreateTokenEffect(new SnakeToken(), ManacostVariableValue.REGULAR); - Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{X}")); + Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{X}")); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SnappingThragg.java b/Mage.Sets/src/mage/cards/s/SnappingThragg.java index 490e959fdb..c793aa68aa 100644 --- a/Mage.Sets/src/mage/cards/s/SnappingThragg.java +++ b/Mage.Sets/src/mage/cards/s/SnappingThragg.java @@ -36,7 +36,7 @@ public final class SnappingThragg extends CardImpl { this.addAbility(new SnappingThraggTriggeredAbility()); // Morph {4}{R}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{R}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{R}{R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/SnarlingUndorak.java b/Mage.Sets/src/mage/cards/s/SnarlingUndorak.java index 8f4a57db5f..41bc9c0c15 100644 --- a/Mage.Sets/src/mage/cards/s/SnarlingUndorak.java +++ b/Mage.Sets/src/mage/cards/s/SnarlingUndorak.java @@ -36,11 +36,11 @@ public final class SnarlingUndorak extends CardImpl { this.toughness = new MageInt(3); // {2}{G}: Target Beast creature gets +1/+1 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}")); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); // Morph {1}{G}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{G}{G}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{G}{G}"))); } private SnarlingUndorak(final SnarlingUndorak card) { diff --git a/Mage.Sets/src/mage/cards/s/SneakAttack.java b/Mage.Sets/src/mage/cards/s/SneakAttack.java index 2df5981e8a..38678b5e9b 100644 --- a/Mage.Sets/src/mage/cards/s/SneakAttack.java +++ b/Mage.Sets/src/mage/cards/s/SneakAttack.java @@ -35,7 +35,7 @@ public final class SneakAttack extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{R}"); // {R}: You may put a creature card from your hand onto the battlefield. That creature gains haste. Sacrifice the creature at the beginning of the next end step. - this.addAbility(new SimpleActivatedAbility(new SneakAttackEffect(), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(new SneakAttackEffect(), new ManaCostsImpl<>("{R}"))); } private SneakAttack(final SneakAttack card) { diff --git a/Mage.Sets/src/mage/cards/s/SnowHound.java b/Mage.Sets/src/mage/cards/s/SnowHound.java index b7c48270c7..236c3a0f56 100644 --- a/Mage.Sets/src/mage/cards/s/SnowHound.java +++ b/Mage.Sets/src/mage/cards/s/SnowHound.java @@ -42,7 +42,7 @@ public final class SnowHound extends CardImpl { // {1}, {tap}: Return Snow Hound and target green or blue creature you control to their owner's hand. Effect effect = new ReturnToHandSourceEffect(true); effect.setText("Return Snow Hound"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}")); ability.addCost(new TapSourceCost()); effect = new ReturnToHandTargetEffect(); effect.setText("and target green or blue creature you control to their owners' hands"); diff --git a/Mage.Sets/src/mage/cards/s/SnowhornRider.java b/Mage.Sets/src/mage/cards/s/SnowhornRider.java index cd543fbe5c..b007165244 100644 --- a/Mage.Sets/src/mage/cards/s/SnowhornRider.java +++ b/Mage.Sets/src/mage/cards/s/SnowhornRider.java @@ -28,7 +28,7 @@ public final class SnowhornRider extends CardImpl { // Trample this.addAbility(TrampleAbility.getInstance()); // Morph {2}{G}{U}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{G}{U}{R}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{G}{U}{R}"))); } private SnowhornRider(final SnowhornRider card) { diff --git a/Mage.Sets/src/mage/cards/s/SoaringHope.java b/Mage.Sets/src/mage/cards/s/SoaringHope.java index e845c325c3..2bd9704cd4 100644 --- a/Mage.Sets/src/mage/cards/s/SoaringHope.java +++ b/Mage.Sets/src/mage/cards/s/SoaringHope.java @@ -47,7 +47,7 @@ public final class SoaringHope extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA))); // {W}: Put Soaring Hope on top of it's owner's library - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibrarySourceEffect(true), new ManaCostsImpl("{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibrarySourceEffect(true), new ManaCostsImpl<>("{W}"))); } private SoaringHope(final SoaringHope card) { diff --git a/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java b/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java index 0f1fa8b970..2d227c891f 100644 --- a/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java +++ b/Mage.Sets/src/mage/cards/s/SokenzanSpellblade.java @@ -38,7 +38,7 @@ public final class SokenzanSpellblade extends CardImpl { 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}") + effect, new ManaCostsImpl<>("{1}{R}") )); } diff --git a/Mage.Sets/src/mage/cards/s/SolarBlast.java b/Mage.Sets/src/mage/cards/s/SolarBlast.java index 414affb15c..ecb9eb31a4 100644 --- a/Mage.Sets/src/mage/cards/s/SolarBlast.java +++ b/Mage.Sets/src/mage/cards/s/SolarBlast.java @@ -26,7 +26,7 @@ public final class SolarBlast extends CardImpl { this.getSpellAbility().addEffect(new DamageTargetEffect(3)); this.getSpellAbility().addTarget(new TargetAnyTarget()); // Cycling {1}{R}{R} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{R}{R}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{R}{R}"))); // When you cycle Solar Blast, you may have it deal 1 damage to any target. Ability ability = new CycleTriggeredAbility(new DamageTargetEffect(1), true); ability.addTarget(new TargetAnyTarget()); diff --git a/Mage.Sets/src/mage/cards/s/SoldeviDigger.java b/Mage.Sets/src/mage/cards/s/SoldeviDigger.java index e3ea441691..f4bfde1925 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviDigger.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviDigger.java @@ -25,7 +25,7 @@ public final class SoldeviDigger extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}"); // {2}: Put the top card of your graveyard on the bottom of your library. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoldeviDiggerEffect(), new ManaCostsImpl("{2}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoldeviDiggerEffect(), new ManaCostsImpl<>("{2}"))); } private SoldeviDigger(final SoldeviDigger card) { diff --git a/Mage.Sets/src/mage/cards/s/SoldeviHeretic.java b/Mage.Sets/src/mage/cards/s/SoldeviHeretic.java index 8000555607..fdf987f70e 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviHeretic.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviHeretic.java @@ -34,7 +34,7 @@ public final class SoldeviHeretic extends CardImpl { this.toughness = new MageInt(2); // {W}, {tap}: Prevent the next 2 damage that would be dealt to target creature this turn. Target opponent may draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn ,2), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn ,2), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); Effect effect = new DrawCardTargetEffect(1, true); diff --git a/Mage.Sets/src/mage/cards/s/SoldeviSimulacrum.java b/Mage.Sets/src/mage/cards/s/SoldeviSimulacrum.java index db93459693..23980f8430 100644 --- a/Mage.Sets/src/mage/cards/s/SoldeviSimulacrum.java +++ b/Mage.Sets/src/mage/cards/s/SoldeviSimulacrum.java @@ -28,9 +28,9 @@ public final class SoldeviSimulacrum extends CardImpl { this.toughness = new MageInt(4); // Cumulative upkeep {1} - this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{1}"))); + this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{1}"))); // {1}: Soldevi Simulacrum gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl("{1}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}"))); } private SoldeviSimulacrum(final SoldeviSimulacrum card) { diff --git a/Mage.Sets/src/mage/cards/s/SoldierOfFortune.java b/Mage.Sets/src/mage/cards/s/SoldierOfFortune.java index af247e4ed3..11e7b98631 100644 --- a/Mage.Sets/src/mage/cards/s/SoldierOfFortune.java +++ b/Mage.Sets/src/mage/cards/s/SoldierOfFortune.java @@ -31,7 +31,7 @@ public final class SoldierOfFortune extends CardImpl { // {R}, {T}: Target player shuffles their library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShuffleLibraryTargetEffect(), new TapSourceCost()); - ability.addManaCost(new ManaCostsImpl("{R}")); + ability.addManaCost(new ManaCostsImpl<>("{R}")); ability.addTarget(new TargetPlayer()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SoldierReplica.java b/Mage.Sets/src/mage/cards/s/SoldierReplica.java index 40026fc1e5..37250c2bc5 100644 --- a/Mage.Sets/src/mage/cards/s/SoldierReplica.java +++ b/Mage.Sets/src/mage/cards/s/SoldierReplica.java @@ -27,7 +27,7 @@ public final class SoldierReplica extends CardImpl { this.subtype.add(SubType.SOLDIER); this.power = new MageInt(1); this.toughness = new MageInt(3); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent(new FilterAttackingOrBlockingCreature())); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Soliton.java b/Mage.Sets/src/mage/cards/s/Soliton.java index 334b3e4ca4..f3bc5f9f24 100644 --- a/Mage.Sets/src/mage/cards/s/Soliton.java +++ b/Mage.Sets/src/mage/cards/s/Soliton.java @@ -24,7 +24,7 @@ public final class Soliton extends CardImpl { this.subtype.add(SubType.CONSTRUCT); this.power = new MageInt(3); this.toughness = new MageInt(4); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{U}"))); } public Soliton (final Soliton card) { diff --git a/Mage.Sets/src/mage/cards/s/SoltariCrusader.java b/Mage.Sets/src/mage/cards/s/SoltariCrusader.java index 5594162b64..5860aea0c8 100644 --- a/Mage.Sets/src/mage/cards/s/SoltariCrusader.java +++ b/Mage.Sets/src/mage/cards/s/SoltariCrusader.java @@ -30,7 +30,7 @@ public final class SoltariCrusader extends CardImpl { // Shadow this.addAbility(ShadowAbility.getInstance()); // {1}{W}: Soltari Crusader gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}"))); } private SoltariCrusader(final SoltariCrusader card) { diff --git a/Mage.Sets/src/mage/cards/s/SoltariEmissary.java b/Mage.Sets/src/mage/cards/s/SoltariEmissary.java index 54662bd1bf..3b811104d9 100644 --- a/Mage.Sets/src/mage/cards/s/SoltariEmissary.java +++ b/Mage.Sets/src/mage/cards/s/SoltariEmissary.java @@ -29,7 +29,7 @@ public final class SoltariEmissary extends CardImpl { this.toughness = new MageInt(1); // {W}: Soltari Emissary gains shadow until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShadowAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShadowAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W}"))); } private SoltariEmissary(final SoltariEmissary card) { diff --git a/Mage.Sets/src/mage/cards/s/SomberwaldAlpha.java b/Mage.Sets/src/mage/cards/s/SomberwaldAlpha.java index 8a18b9d36d..84826cbedf 100644 --- a/Mage.Sets/src/mage/cards/s/SomberwaldAlpha.java +++ b/Mage.Sets/src/mage/cards/s/SomberwaldAlpha.java @@ -47,7 +47,7 @@ public final class SomberwaldAlpha extends CardImpl { // {1}{G}: Target creature you control gains trample until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), - new ManaCostsImpl("{1}{G}")); + new ManaCostsImpl<>("{1}{G}")); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/Songstitcher.java b/Mage.Sets/src/mage/cards/s/Songstitcher.java index af7b6c04d4..b1ebe09114 100644 --- a/Mage.Sets/src/mage/cards/s/Songstitcher.java +++ b/Mage.Sets/src/mage/cards/s/Songstitcher.java @@ -38,7 +38,7 @@ public final class Songstitcher extends CardImpl { this.toughness = new MageInt(1); // {1}{W}: Prevent all combat damage that would be dealt this turn by target attacking creature with flying. - Ability ability = new SimpleActivatedAbility(new PreventDamageByTargetEffect(Duration.EndOfTurn, true), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(new PreventDamageByTargetEffect(Duration.EndOfTurn, true), new ManaCostsImpl<>("{1}{W}")); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SootfeatherFlock.java b/Mage.Sets/src/mage/cards/s/SootfeatherFlock.java index 566a031610..2da0499f1b 100644 --- a/Mage.Sets/src/mage/cards/s/SootfeatherFlock.java +++ b/Mage.Sets/src/mage/cards/s/SootfeatherFlock.java @@ -26,7 +26,7 @@ public final class SootfeatherFlock extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // Morph {3}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{B}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{B}"))); } private SootfeatherFlock(final SootfeatherFlock card) { diff --git a/Mage.Sets/src/mage/cards/s/SoothsayerAdept.java b/Mage.Sets/src/mage/cards/s/SoothsayerAdept.java index 41c3446bf6..914c06e57c 100644 --- a/Mage.Sets/src/mage/cards/s/SoothsayerAdept.java +++ b/Mage.Sets/src/mage/cards/s/SoothsayerAdept.java @@ -28,7 +28,7 @@ public final class SoothsayerAdept extends CardImpl { // {1}{U}, {T}: Draw a card, then discard a card. Ability ability = new SimpleActivatedAbility( - new DrawDiscardControllerEffect(), new ManaCostsImpl("{1}{U}") + new DrawDiscardControllerEffect(), new ManaCostsImpl<>("{1}{U}") ); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SophicCentaur.java b/Mage.Sets/src/mage/cards/s/SophicCentaur.java index e097325538..171504dcd8 100644 --- a/Mage.Sets/src/mage/cards/s/SophicCentaur.java +++ b/Mage.Sets/src/mage/cards/s/SophicCentaur.java @@ -36,7 +36,7 @@ public final class SophicCentaur extends CardImpl { DynamicValue lifeToGainAmount = new MultipliedValue(CardsInControllerHandCount.instance, 2); Effect effect = new GainLifeEffect(lifeToGainAmount); effect.setText("You gain 2 life for each card in your hand"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}{G}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}{G}{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoratamiCloudChariot.java b/Mage.Sets/src/mage/cards/s/SoratamiCloudChariot.java index d2c257883f..2bab6e90dd 100644 --- a/Mage.Sets/src/mage/cards/s/SoratamiCloudChariot.java +++ b/Mage.Sets/src/mage/cards/s/SoratamiCloudChariot.java @@ -36,7 +36,7 @@ public final class SoratamiCloudChariot extends CardImpl { Effect effect = new PreventDamageToTargetEffect(Duration.EndOfTurn, true); effect.setText("Prevent all combat damage that would be dealt to"); // and dealt by target creature you control this turn. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}")); effect = new PreventDamageByTargetEffect(Duration.EndOfTurn, true); effect.setText("and dealt by target creature you control this turn."); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/s/SoratamiMindsweeper.java b/Mage.Sets/src/mage/cards/s/SoratamiMindsweeper.java index 776dfd7659..d290eabe9a 100644 --- a/Mage.Sets/src/mage/cards/s/SoratamiMindsweeper.java +++ b/Mage.Sets/src/mage/cards/s/SoratamiMindsweeper.java @@ -38,7 +38,7 @@ public final class SoratamiMindsweeper extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {2}, Return a land you control to its owner's hand: Target player puts the top two cards of their library into their graveyard. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,new PutLibraryIntoGraveTargetEffect(2), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,new PutLibraryIntoGraveTargetEffect(2), new ManaCostsImpl<>("{2}")); ability.addTarget(new TargetPlayer()); ability.addCost(new ReturnToHandChosenControlledPermanentCost(new TargetControlledPermanent(filter))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SorayaTheFalconer.java b/Mage.Sets/src/mage/cards/s/SorayaTheFalconer.java index 9b24d23488..a391ea6e0b 100644 --- a/Mage.Sets/src/mage/cards/s/SorayaTheFalconer.java +++ b/Mage.Sets/src/mage/cards/s/SorayaTheFalconer.java @@ -38,7 +38,7 @@ public final class SorayaTheFalconer extends CardImpl { new FilterCreaturePermanent(SubType.BIRD, "Bird creatures"), false))); // {1}{W}: Target Bird creature gains banding until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")); ability.addTarget(new TargetCreaturePermanent(new FilterCreaturePermanent(SubType.BIRD, "Bird creature"))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SorcererOfTheFang.java b/Mage.Sets/src/mage/cards/s/SorcererOfTheFang.java index cca2dadca7..d1868ec776 100644 --- a/Mage.Sets/src/mage/cards/s/SorcererOfTheFang.java +++ b/Mage.Sets/src/mage/cards/s/SorcererOfTheFang.java @@ -28,7 +28,7 @@ public final class SorcererOfTheFang extends CardImpl { this.toughness = new MageInt(3); // {5}{B}, {T}: Sorcerer of the Fang deals 2 damage to target opponent or planeswalker. - Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2), new ManaCostsImpl("{5}{B}")); + Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2), new ManaCostsImpl<>("{5}{B}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetOpponentOrPlaneswalker()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoulCharmer.java b/Mage.Sets/src/mage/cards/s/SoulCharmer.java index 35dfa20171..6b6a4cf3a4 100644 --- a/Mage.Sets/src/mage/cards/s/SoulCharmer.java +++ b/Mage.Sets/src/mage/cards/s/SoulCharmer.java @@ -26,7 +26,7 @@ public final class SoulCharmer extends CardImpl { this.toughness = new MageInt(2); // Whenever Soul Charmer deals combat damage to a creature, you gain 2 life unless they pay {2}. - this.addAbility(new DealsCombatDamageToACreatureTriggeredAbility(new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(new GainLifeEffect(2), new ManaCostsImpl("{2}")), false, true)); + this.addAbility(new DealsCombatDamageToACreatureTriggeredAbility(new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(new GainLifeEffect(2), new ManaCostsImpl<>("{2}")), false, true)); } private SoulCharmer(final SoulCharmer card) { diff --git a/Mage.Sets/src/mage/cards/s/SoulCollector.java b/Mage.Sets/src/mage/cards/s/SoulCollector.java index ff07dbc4f0..50faefca3a 100644 --- a/Mage.Sets/src/mage/cards/s/SoulCollector.java +++ b/Mage.Sets/src/mage/cards/s/SoulCollector.java @@ -31,7 +31,7 @@ public final class SoulCollector extends CardImpl { this.addAbility(new DealtDamageAndDiedTriggeredAbility(new ReturnToBattlefieldUnderYourControlTargetEffect().setText("return that card to the battlefield under your control"))); // Morph {B}{B}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{B}{B}{B}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{B}{B}{B}"))); } private SoulCollector(final SoulCollector card) { diff --git a/Mage.Sets/src/mage/cards/s/SoulFoundry.java b/Mage.Sets/src/mage/cards/s/SoulFoundry.java index 931c716c28..c641e13f1d 100644 --- a/Mage.Sets/src/mage/cards/s/SoulFoundry.java +++ b/Mage.Sets/src/mage/cards/s/SoulFoundry.java @@ -43,7 +43,7 @@ public final class SoulFoundry extends CardImpl { ); // {X}, {T}: Create a token that's a copy of the exiled card. X is the converted mana cost of that card. - Ability ability = new SimpleActivatedAbility(new SoulFoundryEffect(), new ManaCostsImpl("{X}")); + Ability ability = new SimpleActivatedAbility(new SoulFoundryEffect(), new ManaCostsImpl<>("{X}")); ability.addCost(new TapSourceCost()); ability.setCostAdjuster(SoulFoundryAdjuster.instance); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoulKiss.java b/Mage.Sets/src/mage/cards/s/SoulKiss.java index 29e7044f1f..683f640a16 100644 --- a/Mage.Sets/src/mage/cards/s/SoulKiss.java +++ b/Mage.Sets/src/mage/cards/s/SoulKiss.java @@ -37,7 +37,7 @@ public final class SoulKiss extends CardImpl { this.addAbility(ability); // {B}, Pay 1 life: Enchanted creature gets +2/+2 until end of turn. Activate this ability no more than three times each turn. ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.EndOfTurn), - new ManaCostsImpl("{B}"), 3); + new ManaCostsImpl<>("{B}"), 3); ability.addCost(new PayLifeCost(1)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SoulOfInnistrad.java b/Mage.Sets/src/mage/cards/s/SoulOfInnistrad.java index 618d80d18d..0d2ea57b98 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfInnistrad.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfInnistrad.java @@ -32,12 +32,12 @@ public final class SoulOfInnistrad extends CardImpl { // Deathtouch this.addAbility(DeathtouchAbility.getInstance()); // {3}{B}{B}: Return up to three target creature cards from your graveyard to your hand. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl("{3}{B}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{3}{B}{B}")); ability.addTarget(new TargetCardInYourGraveyard(0, 3, StaticFilters.FILTER_CARD_CREATURES_YOUR_GRAVEYARD)); this.addAbility(ability); // {3}{B}{B}, Exile Soul of Innistrad from your graveyard: Return up to three target creature cards from your graveyard to your hand. - ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl("{3}{B}{B}")); + ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{3}{B}{B}")); ability.addCost(new ExileSourceFromGraveCost()); ability.addTarget(new TargetCardInYourGraveyard(0, 3, StaticFilters.FILTER_CARD_CREATURES_YOUR_GRAVEYARD)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoulOfRavnica.java b/Mage.Sets/src/mage/cards/s/SoulOfRavnica.java index f9820f9c99..4b0e86e84f 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfRavnica.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfRavnica.java @@ -33,10 +33,10 @@ public final class SoulOfRavnica extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {5}{U}{U}: Draw a card for each color among permanents you control. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardForEachColorAmongControlledPermanentsEffect(), new ManaCostsImpl("{5}{U}{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardForEachColorAmongControlledPermanentsEffect(), new ManaCostsImpl<>("{5}{U}{U}"))); // {5}{U}{U}, Exile Soul of Ravnica from your graveyard: Draw a card for each color among permanents you control. - Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new DrawCardForEachColorAmongControlledPermanentsEffect(), new ManaCostsImpl("{5}{U}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new DrawCardForEachColorAmongControlledPermanentsEffect(), new ManaCostsImpl<>("{5}{U}{U}")); ability.addCost(new ExileSourceFromGraveCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SoulOfShandalar.java b/Mage.Sets/src/mage/cards/s/SoulOfShandalar.java index cff9b243d5..aa3f1743b5 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfShandalar.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfShandalar.java @@ -42,13 +42,13 @@ public final class SoulOfShandalar extends CardImpl { this.addAbility(FirstStrikeAbility.getInstance()); // {3}{R}{R}: Soul of Shandalar deals 3 damage to target player and 3 damage to up to one target creature that player controls. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoulOfShandalarEffect(), new ManaCostsImpl("{3}{R}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoulOfShandalarEffect(), new ManaCostsImpl<>("{3}{R}{R}")); ability.addTarget(new TargetPlayerOrPlaneswalker()); ability.addTarget(new SoulOfShandalarTarget()); this.addAbility(ability); // {3}{R}{R}, Exile Soul of Shandalar from your graveyard: Soul of Shandalar deals 3 damage to target player and 3 damage to up to one target creature that player controls. - ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new SoulOfShandalarEffect(), new ManaCostsImpl("{3}{R}{R}")); + ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new SoulOfShandalarEffect(), new ManaCostsImpl<>("{3}{R}{R}")); ability.addCost(new ExileSourceFromGraveCost()); ability.addTarget(new TargetPlayerOrPlaneswalker()); ability.addTarget(new SoulOfShandalarTarget()); diff --git a/Mage.Sets/src/mage/cards/s/SoulOfTheros.java b/Mage.Sets/src/mage/cards/s/SoulOfTheros.java index 954dee6b26..48eab3ba1f 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfTheros.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfTheros.java @@ -39,7 +39,7 @@ public final class SoulOfTheros extends CardImpl { // {4}{W}{W}: Creatures you control get +2/+2 and gain first strike and lifelink until end of turn. Effect effect1 = new BoostControlledEffect(2, 2, Duration.EndOfTurn); effect1.setText("Creatures you control get +2/+2"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect1, new ManaCostsImpl("{4}{W}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect1, new ManaCostsImpl<>("{4}{W}{W}")); Effect effect2 = new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn); effect2.setText("and gain first strike"); ability.addEffect(effect2); @@ -49,7 +49,7 @@ public final class SoulOfTheros extends CardImpl { this.addAbility(ability); // {4}{W}{W}, Exile Soul of Theros from your graveyard: Creatures you control get +2/+2 and gain first strike and lifelink until end of turn. - ability = new SimpleActivatedAbility(Zone.GRAVEYARD, effect1, new ManaCostsImpl("{4}{W}{W}")); + ability = new SimpleActivatedAbility(Zone.GRAVEYARD, effect1, new ManaCostsImpl<>("{4}{W}{W}")); ability.addCost(new ExileSourceFromGraveCost()); ability.addEffect(effect2); ability.addEffect(effect3); diff --git a/Mage.Sets/src/mage/cards/s/SoulOfZendikar.java b/Mage.Sets/src/mage/cards/s/SoulOfZendikar.java index eeed6e7e41..fb093224fd 100644 --- a/Mage.Sets/src/mage/cards/s/SoulOfZendikar.java +++ b/Mage.Sets/src/mage/cards/s/SoulOfZendikar.java @@ -32,9 +32,9 @@ public final class SoulOfZendikar extends CardImpl { // Reach this.addAbility(ReachAbility.getInstance()); // {3}{G}{G}: Create a 3/3 green Beast creature token. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new BeastToken()), new ManaCostsImpl("{3}{G}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new BeastToken()), new ManaCostsImpl<>("{3}{G}{G}"))); // {3}{G}{G}, Exile Soul of Zendikar from your graveyard: Create a 3/3 green Beast creature token. - Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new CreateTokenEffect(new BeastToken()), new ManaCostsImpl("{3}{G}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new CreateTokenEffect(new BeastToken()), new ManaCostsImpl<>("{3}{G}{G}")); ability.addCost(new ExileSourceFromGraveCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SoulSculptor.java b/Mage.Sets/src/mage/cards/s/SoulSculptor.java index a16517620d..26a8d92c04 100644 --- a/Mage.Sets/src/mage/cards/s/SoulSculptor.java +++ b/Mage.Sets/src/mage/cards/s/SoulSculptor.java @@ -34,7 +34,7 @@ public final class SoulSculptor extends CardImpl { this.toughness = new MageInt(1); // {1}{W}, {tap}: Target creature becomes an enchantment and loses all abilities until a player casts a creature spell. - Ability ability = new SimpleActivatedAbility(new ConditionalContinuousEffect(new SoulSculptorEffect(), SoulSculptorCondition.instance, rule), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(new ConditionalContinuousEffect(new SoulSculptorEffect(), SoulSculptorCondition.instance, rule), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoulSeparator.java b/Mage.Sets/src/mage/cards/s/SoulSeparator.java index f8d51fc404..277323fe23 100644 --- a/Mage.Sets/src/mage/cards/s/SoulSeparator.java +++ b/Mage.Sets/src/mage/cards/s/SoulSeparator.java @@ -43,7 +43,7 @@ public final class SoulSeparator extends CardImpl { CreateTokenCopyTargetEffect copyEffect = new CreateTokenCopyTargetEffect(null, null, false, 1, false, false, null, 1, 1, true); copyEffect.setAdditionalSubType(SubType.SPIRIT); copyEffect.setText("Create a token that's a copy of that card except it's 1/1, it's a Spirit in addition to its other types, and it has flying"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, copyEffect, new ManaCostsImpl("{5}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, copyEffect, new ManaCostsImpl<>("{5}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD)); diff --git a/Mage.Sets/src/mage/cards/s/SoulShepherd.java b/Mage.Sets/src/mage/cards/s/SoulShepherd.java index 8878d8dd9e..65b4288bf3 100644 --- a/Mage.Sets/src/mage/cards/s/SoulShepherd.java +++ b/Mage.Sets/src/mage/cards/s/SoulShepherd.java @@ -30,7 +30,7 @@ public final class SoulShepherd extends CardImpl { this.toughness = new MageInt(1); // {W}, Exile a creature card from your graveyard: You gain 1 life. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{W}")); ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard(new FilterCreatureCard("a creature card from your graveyard")))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SoulSnare.java b/Mage.Sets/src/mage/cards/s/SoulSnare.java index aa33e0192a..49543e304c 100644 --- a/Mage.Sets/src/mage/cards/s/SoulSnare.java +++ b/Mage.Sets/src/mage/cards/s/SoulSnare.java @@ -26,7 +26,7 @@ public final class SoulSnare extends CardImpl { // {W}, Sacrifice Soul Snare: Exile target creature that's attacking you or a planeswalker you control. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new ExileTargetEffect(), new ManaCostsImpl("{W}")); + new ExileTargetEffect(), new ManaCostsImpl<>("{W}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent(new FilterCreatureAttackingYou(true))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SoulbrightFlamekin.java b/Mage.Sets/src/mage/cards/s/SoulbrightFlamekin.java index 95f3198e03..9ab6b9d25b 100644 --- a/Mage.Sets/src/mage/cards/s/SoulbrightFlamekin.java +++ b/Mage.Sets/src/mage/cards/s/SoulbrightFlamekin.java @@ -38,7 +38,7 @@ public final class SoulbrightFlamekin extends CardImpl { // {2}: Target creature gains trample until end of turn. If this is the third time this ability has resolved this turn, you may add {R}{R}{R}{R}{R}{R}{R}{R}. Ability ability = new SimpleActivatedAbility(new GainAbilityTargetEffect( TrampleAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{2}")); + ), new ManaCostsImpl<>("{2}")); ability.addEffect(new IfAbilityHasResolvedXTimesEffect(Outcome.PutManaInPool, 3, new SoulbrightFlamekinEffect())); ability.addTarget(new TargetCreaturePermanent()); ability.addHint(AbilityResolutionCountHint.instance); diff --git a/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java b/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java index 632644ef95..d8df2ae824 100644 --- a/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java +++ b/Mage.Sets/src/mage/cards/s/SoulfireGrandMaster.java @@ -52,7 +52,7 @@ public final class SoulfireGrandMaster extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); // {2}{U/R}{U/R}: The next time you cast an instant or sorcery spell from your hand this turn, put that card into your hand instead of your graveyard as it resolves. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoulfireGrandMasterCastFromHandReplacementEffect(), new ManaCostsImpl("{2}{U/R}{U/R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SoulfireGrandMasterCastFromHandReplacementEffect(), new ManaCostsImpl<>("{2}{U/R}{U/R}"))); } diff --git a/Mage.Sets/src/mage/cards/s/SoulreaperOfMogis.java b/Mage.Sets/src/mage/cards/s/SoulreaperOfMogis.java index 41a5fa0eee..16e674c60a 100644 --- a/Mage.Sets/src/mage/cards/s/SoulreaperOfMogis.java +++ b/Mage.Sets/src/mage/cards/s/SoulreaperOfMogis.java @@ -30,7 +30,7 @@ public final class SoulreaperOfMogis extends CardImpl { // {2}{B}, Sacrifice a creature: Draw a card. Ability ability = new SimpleActivatedAbility( - new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{B}") + new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{B}") ); ability.addCost(new SacrificeTargetCost( new TargetControlledPermanent(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT) diff --git a/Mage.Sets/src/mage/cards/s/SoulswornJury.java b/Mage.Sets/src/mage/cards/s/SoulswornJury.java index e3cb361805..6e0dd31d0d 100644 --- a/Mage.Sets/src/mage/cards/s/SoulswornJury.java +++ b/Mage.Sets/src/mage/cards/s/SoulswornJury.java @@ -33,7 +33,7 @@ public final class SoulswornJury extends CardImpl { this.addAbility(DefenderAbility.getInstance()); // {1}{U}, Sacrifice Soulsworn Jury: Counter target creature spell. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{1}{U}")); ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_CREATURE)); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SouthernPaladin.java b/Mage.Sets/src/mage/cards/s/SouthernPaladin.java index 3958bc0e0d..89ee478a05 100644 --- a/Mage.Sets/src/mage/cards/s/SouthernPaladin.java +++ b/Mage.Sets/src/mage/cards/s/SouthernPaladin.java @@ -39,7 +39,7 @@ public final class SouthernPaladin extends CardImpl { this.toughness = new MageInt(3); // {W}{W}, {tap}: Destroy target red permanent. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{W}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{W}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SparkSpray.java b/Mage.Sets/src/mage/cards/s/SparkSpray.java index b4b083f8ab..f256d6888b 100644 --- a/Mage.Sets/src/mage/cards/s/SparkSpray.java +++ b/Mage.Sets/src/mage/cards/s/SparkSpray.java @@ -25,7 +25,7 @@ public final class SparkSpray extends CardImpl { this.getSpellAbility().addTarget(new TargetAnyTarget()); // Cycling {R} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{R}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{R}"))); } private SparkSpray(final SparkSpray card) { diff --git a/Mage.Sets/src/mage/cards/s/Sparkspitter.java b/Mage.Sets/src/mage/cards/s/Sparkspitter.java index ef556e087c..d76ed213ef 100644 --- a/Mage.Sets/src/mage/cards/s/Sparkspitter.java +++ b/Mage.Sets/src/mage/cards/s/Sparkspitter.java @@ -30,7 +30,7 @@ public final class Sparkspitter extends CardImpl { this.toughness = new MageInt(3); // {R}, {tap}, Discard a card: Create a 3/1 red Elemental creature token named Spark Elemental. It has trample, haste, and "At the beginning of the end step, sacrifice Spark Elemental." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SparkElementalToken()), new ManaCostsImpl("{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SparkElementalToken()), new ManaCostsImpl<>("{R}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SparktongueDragon.java b/Mage.Sets/src/mage/cards/s/SparktongueDragon.java index 5396b970d1..3c2e52f6be 100644 --- a/Mage.Sets/src/mage/cards/s/SparktongueDragon.java +++ b/Mage.Sets/src/mage/cards/s/SparktongueDragon.java @@ -37,7 +37,7 @@ public final class SparktongueDragon extends CardImpl { ); ability.addTarget(new TargetAnyTarget()); this.addAbility(new EntersBattlefieldTriggeredAbility(new DoWhenCostPaid( - ability, new ManaCostsImpl("{2}{R}"), + ability, new ManaCostsImpl<>("{2}{R}"), "Pay {2}{R} to deal 3 damage?" ))); } diff --git a/Mage.Sets/src/mage/cards/s/SparringCollar.java b/Mage.Sets/src/mage/cards/s/SparringCollar.java index c21fa7dc13..4266cd6d56 100644 --- a/Mage.Sets/src/mage/cards/s/SparringCollar.java +++ b/Mage.Sets/src/mage/cards/s/SparringCollar.java @@ -33,7 +33,7 @@ public final class SparringCollar extends CardImpl { // Equipped creature has first strike. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT))); // {R}{R}: Attach Sparring Collar to target creature you control. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.BoostCreature, "Attach {this} to target creature you control"), new ManaCostsImpl("{R}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.BoostCreature, "Attach {this} to target creature you control"), new ManaCostsImpl<>("{R}{R}")); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); // Equip {1} diff --git a/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java b/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java index 797f9d0957..9b2c6557ef 100644 --- a/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java +++ b/Mage.Sets/src/mage/cards/s/SpatulaOfTheAges.java @@ -38,7 +38,7 @@ public final class SpatulaOfTheAges extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); // {4}, {T}, Sacrifice Spatula of the Ages: You may put a silver-bordered permanent card from your hand onto the battlefield. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutCardFromHandOntoBattlefieldEffect(filter), new ManaCostsImpl("{4}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutCardFromHandOntoBattlefieldEffect(filter), new ManaCostsImpl<>("{4}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpawnOfMayhem.java b/Mage.Sets/src/mage/cards/s/SpawnOfMayhem.java index 3e0215662e..ed3f114417 100644 --- a/Mage.Sets/src/mage/cards/s/SpawnOfMayhem.java +++ b/Mage.Sets/src/mage/cards/s/SpawnOfMayhem.java @@ -35,7 +35,7 @@ public final class SpawnOfMayhem extends CardImpl { this.toughness = new MageInt(4); // Spectacle {1}{B}{B} - this.addAbility(new SpectacleAbility(this, new ManaCostsImpl("{1}{B}{B}"))); + this.addAbility(new SpectacleAbility(this, new ManaCostsImpl<>("{1}{B}{B}"))); // Flying this.addAbility(FlyingAbility.getInstance()); diff --git a/Mage.Sets/src/mage/cards/s/SpawningBed.java b/Mage.Sets/src/mage/cards/s/SpawningBed.java index 930b5149f7..491ef6f896 100644 --- a/Mage.Sets/src/mage/cards/s/SpawningBed.java +++ b/Mage.Sets/src/mage/cards/s/SpawningBed.java @@ -28,7 +28,7 @@ public final class SpawningBed extends CardImpl { this.addAbility(new ColorlessManaAbility()); // {6}, {T}, Sacrifice Spawning Bed: Create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new EldraziScionToken(), 3), new ManaCostsImpl("{6}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new EldraziScionToken(), 3), new ManaCostsImpl<>("{6}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpawningPool.java b/Mage.Sets/src/mage/cards/s/SpawningPool.java index 01bb4fe5e3..fbc500ab76 100644 --- a/Mage.Sets/src/mage/cards/s/SpawningPool.java +++ b/Mage.Sets/src/mage/cards/s/SpawningPool.java @@ -22,7 +22,7 @@ public final class SpawningPool extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.addAbility(new EntersBattlefieldTappedAbility()); this.addAbility(new BlackManaAbility()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SkeletonRegenerateToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{1}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new SkeletonRegenerateToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}"))); } private SpawningPool(final SpawningPool card) { diff --git a/Mage.Sets/src/mage/cards/s/SpearOfHeliod.java b/Mage.Sets/src/mage/cards/s/SpearOfHeliod.java index 16dc4a435e..d8dbece3f6 100644 --- a/Mage.Sets/src/mage/cards/s/SpearOfHeliod.java +++ b/Mage.Sets/src/mage/cards/s/SpearOfHeliod.java @@ -42,7 +42,7 @@ public final class SpearOfHeliod extends CardImpl { this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield))); // {1}{W}{W}, {T}: Destroy target creature that dealt damage to you this turn. - Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl("{1}{W}{W}")); + Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{W}{W}")); ability.addCost(new TapSourceCost()); Target target = new TargetCreaturePermanent(filter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java index 02e68dce90..26c736d1d5 100644 --- a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java @@ -42,7 +42,7 @@ public final class SpearbreakerBehemoth extends CardImpl { // {1}: Target creature with power 5 or greater is indestructible this turn. SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn), - new ManaCostsImpl("{1}")); + new ManaCostsImpl<>("{1}")); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpecterOfTheFens.java b/Mage.Sets/src/mage/cards/s/SpecterOfTheFens.java index 691b56ee63..c8901f0b82 100644 --- a/Mage.Sets/src/mage/cards/s/SpecterOfTheFens.java +++ b/Mage.Sets/src/mage/cards/s/SpecterOfTheFens.java @@ -31,7 +31,7 @@ public final class SpecterOfTheFens extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {5}{B}: Target opponent loses 2 life and you gain 2 life. - Ability ability = new SimpleActivatedAbility(new LoseLifeTargetEffect(2), new ManaCostsImpl("{5}{B}")); + Ability ability = new SimpleActivatedAbility(new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{5}{B}")); ability.addEffect(new GainLifeEffect(2).concatBy("and")); ability.addTarget(new TargetOpponent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpectralLynx.java b/Mage.Sets/src/mage/cards/s/SpectralLynx.java index 8a5dfa0136..7c980c5279 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralLynx.java +++ b/Mage.Sets/src/mage/cards/s/SpectralLynx.java @@ -31,7 +31,7 @@ public final class SpectralLynx extends CardImpl { // Protection from green this.addAbility(ProtectionAbility.from(ObjectColor.GREEN)); // {B}: Regenerate Spectral Lynx. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"))); } private SpectralLynx(final SpectralLynx card) { diff --git a/Mage.Sets/src/mage/cards/s/SpectralSailor.java b/Mage.Sets/src/mage/cards/s/SpectralSailor.java index 62e03bab36..e7797464d1 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralSailor.java +++ b/Mage.Sets/src/mage/cards/s/SpectralSailor.java @@ -34,7 +34,7 @@ public final class SpectralSailor extends CardImpl { // {3}{U}: Draw a card. this.addAbility(new SimpleActivatedAbility( - new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{3}{U}") + new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{3}{U}") )); } diff --git a/Mage.Sets/src/mage/cards/s/SpectralSliver.java b/Mage.Sets/src/mage/cards/s/SpectralSliver.java index f2777d2e11..7c9d9f88ed 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralSliver.java +++ b/Mage.Sets/src/mage/cards/s/SpectralSliver.java @@ -32,7 +32,7 @@ public final class SpectralSliver extends CardImpl { this.toughness = new MageInt(2); // All Sliver creatures have "{2}: This creature gets +1/+1 until end of turn." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn).setText("this creature gets +1/+1 until end of turn"), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn).setText("this creature gets +1/+1 until end of turn"), new ManaCostsImpl<>("{2}")); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_ALL_SLIVERS))); } diff --git a/Mage.Sets/src/mage/cards/s/SpectralSteel.java b/Mage.Sets/src/mage/cards/s/SpectralSteel.java index a9dd8a75bf..5b78362690 100644 --- a/Mage.Sets/src/mage/cards/s/SpectralSteel.java +++ b/Mage.Sets/src/mage/cards/s/SpectralSteel.java @@ -57,7 +57,7 @@ public final class SpectralSteel extends CardImpl { // {1}{W}, Exile Spectral Steel from your graveyard: Return another target Aura or Equipment card from your graveyard to your hand. ability = new SimpleActivatedAbility( - Zone.GRAVEYARD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl("{1}{W}") + Zone.GRAVEYARD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{1}{W}") ); ability.addCost(new ExileSourceFromGraveCost()); ability.addTarget(new TargetCardInYourGraveyard(filter)); diff --git a/Mage.Sets/src/mage/cards/s/SpellSnip.java b/Mage.Sets/src/mage/cards/s/SpellSnip.java index 1fbd2150ae..fe073d4daa 100644 --- a/Mage.Sets/src/mage/cards/s/SpellSnip.java +++ b/Mage.Sets/src/mage/cards/s/SpellSnip.java @@ -24,7 +24,7 @@ public final class SpellSnip extends CardImpl { // Counter target spell unless its controller pays {1}. this.getSpellAbility().addTarget(new TargetSpell()); this.getSpellAbility().addEffect(new CounterUnlessPaysEffect(new GenericManaCost(1))); - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private SpellSnip(final SpellSnip card) { diff --git a/Mage.Sets/src/mage/cards/s/Spellskite.java b/Mage.Sets/src/mage/cards/s/Spellskite.java index 07fe08f4fe..aaaa950fcc 100644 --- a/Mage.Sets/src/mage/cards/s/Spellskite.java +++ b/Mage.Sets/src/mage/cards/s/Spellskite.java @@ -38,7 +38,7 @@ public final class Spellskite extends CardImpl { this.toughness = new MageInt(4); // {U/P}: Change a target of target spell or ability to Spellskite. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SpellskiteEffect(), new ManaCostsImpl("{U/P}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SpellskiteEffect(), new ManaCostsImpl<>("{U/P}")); ability.addTarget(new TargetStackObject()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SphinxOfMagosi.java b/Mage.Sets/src/mage/cards/s/SphinxOfMagosi.java index caadfbe9c6..2405ef3cdf 100644 --- a/Mage.Sets/src/mage/cards/s/SphinxOfMagosi.java +++ b/Mage.Sets/src/mage/cards/s/SphinxOfMagosi.java @@ -30,7 +30,7 @@ public final class SphinxOfMagosi extends CardImpl { this.power = new MageInt(6); this.toughness = new MageInt(6); this.addAbility(FlyingAbility.getInstance()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{U}")); ability.addEffect(new AddCountersSourceEffect(CounterType.P1P1.createInstance()).concatBy(", then")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpiderSpawning.java b/Mage.Sets/src/mage/cards/s/SpiderSpawning.java index 41bf430997..acbd39d690 100644 --- a/Mage.Sets/src/mage/cards/s/SpiderSpawning.java +++ b/Mage.Sets/src/mage/cards/s/SpiderSpawning.java @@ -24,7 +24,7 @@ public final class SpiderSpawning extends CardImpl { // Create a 1/2 green Spider creature token with reach for each creature card in your graveyard. this.getSpellAbility().addEffect(new CreateTokenEffect(new SpiderToken(), new CardsInControllerGraveyardCount(StaticFilters.FILTER_CARD_CREATURE))); // Flashback {6}{B} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{6}{B}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{6}{B}"))); } private SpiderSpawning(final SpiderSpawning card) { diff --git a/Mage.Sets/src/mage/cards/s/SpikeSoldier.java b/Mage.Sets/src/mage/cards/s/SpikeSoldier.java index 8c612734b4..b1c05e2794 100644 --- a/Mage.Sets/src/mage/cards/s/SpikeSoldier.java +++ b/Mage.Sets/src/mage/cards/s/SpikeSoldier.java @@ -36,7 +36,7 @@ public final class SpikeSoldier extends CardImpl { // Spike Soldier enters the battlefield with three +1/+1 counters on it. this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(3)), "with three +1/+1 counters on it")); // {2}, Remove a +1/+1 counter from Spike Soldier: Put a +1/+1 counter on target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{2}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance())); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpikeWorker.java b/Mage.Sets/src/mage/cards/s/SpikeWorker.java index 73939f733f..18352b9eaa 100644 --- a/Mage.Sets/src/mage/cards/s/SpikeWorker.java +++ b/Mage.Sets/src/mage/cards/s/SpikeWorker.java @@ -33,7 +33,7 @@ public final class SpikeWorker extends CardImpl { // Spike Worker enters the battlefield with two +1/+1 counters on it. this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)), "with two +1/+1 counters on it")); // {2}, Remove a +1/+1 counter from Spike Worker: Put a +1/+1 counter on target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{2}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance())); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpikeshotElder.java b/Mage.Sets/src/mage/cards/s/SpikeshotElder.java index b54b67622c..16a9d3ec87 100644 --- a/Mage.Sets/src/mage/cards/s/SpikeshotElder.java +++ b/Mage.Sets/src/mage/cards/s/SpikeshotElder.java @@ -30,7 +30,7 @@ public final class SpikeshotElder extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SpikeshotElderEffect(), new ManaCostsImpl("{1}{R}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SpikeshotElderEffect(), new ManaCostsImpl<>("{1}{R}{R}")); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpiketailDrake.java b/Mage.Sets/src/mage/cards/s/SpiketailDrake.java index c6c98b9c89..1bf115a8d7 100644 --- a/Mage.Sets/src/mage/cards/s/SpiketailDrake.java +++ b/Mage.Sets/src/mage/cards/s/SpiketailDrake.java @@ -31,7 +31,7 @@ public final class SpiketailDrake extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // Sacrifice Spiketail Drake: Counter target spell unless its controller pays {3}. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(new ManaCostsImpl("{3}")), new SacrificeSourceCost()); ability.addTarget(new TargetSpell()); this.addAbility(ability); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(new ManaCostsImpl<>("{3}")), new SacrificeSourceCost()); ability.addTarget(new TargetSpell()); this.addAbility(ability); } private SpiketailDrake(final SpiketailDrake card) { diff --git a/Mage.Sets/src/mage/cards/s/SpikewheelAcrobat.java b/Mage.Sets/src/mage/cards/s/SpikewheelAcrobat.java index fc751f4170..fb618c70a6 100644 --- a/Mage.Sets/src/mage/cards/s/SpikewheelAcrobat.java +++ b/Mage.Sets/src/mage/cards/s/SpikewheelAcrobat.java @@ -24,7 +24,7 @@ public final class SpikewheelAcrobat extends CardImpl { this.toughness = new MageInt(2); // Spectacle {2}{R} - this.addAbility(new SpectacleAbility(this, new ManaCostsImpl("{2}{R}"))); + this.addAbility(new SpectacleAbility(this, new ManaCostsImpl<>("{2}{R}"))); } private SpikewheelAcrobat(final SpikewheelAcrobat card) { diff --git a/Mage.Sets/src/mage/cards/s/SpindriftDrake.java b/Mage.Sets/src/mage/cards/s/SpindriftDrake.java index 475a7fe78e..26c4fbc763 100644 --- a/Mage.Sets/src/mage/cards/s/SpindriftDrake.java +++ b/Mage.Sets/src/mage/cards/s/SpindriftDrake.java @@ -28,7 +28,7 @@ public final class SpindriftDrake extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // At the beginning of your upkeep, sacrifice Spindrift Drake unless you pay {U}. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{U}")), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{U}")), TargetController.YOU, false)); } private SpindriftDrake(final SpindriftDrake card) { diff --git a/Mage.Sets/src/mage/cards/s/SpinedBasher.java b/Mage.Sets/src/mage/cards/s/SpinedBasher.java index 084f3f2144..c550136e79 100644 --- a/Mage.Sets/src/mage/cards/s/SpinedBasher.java +++ b/Mage.Sets/src/mage/cards/s/SpinedBasher.java @@ -24,7 +24,7 @@ public final class SpinedBasher extends CardImpl { this.toughness = new MageInt(1); // Morph {2}{B} - this.addAbility(new MorphAbility(new ManaCostsImpl("{2}{B}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{2}{B}"))); } private SpinedBasher(final SpinedBasher card) { diff --git a/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java b/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java index 0a82ef2e68..d8bdf71aed 100644 --- a/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java +++ b/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java @@ -43,7 +43,7 @@ public final class SpinerockKnoll extends CardImpl { new HideawayPlayEffect(), SpinerockKnollCondition.instance, "you may play the exiled card without paying its mana cost " + "if an opponent was dealt 7 or more damage this turn" - ), new ManaCostsImpl("{R}")); + ), new ManaCostsImpl<>("{R}")); ability.addCost(new TapSourceCost()); this.addAbility(ability, new SpinerockKnollWatcher()); } diff --git a/Mage.Sets/src/mage/cards/s/SpinyStarfish.java b/Mage.Sets/src/mage/cards/s/SpinyStarfish.java index 48ed1e689c..1ab9736296 100644 --- a/Mage.Sets/src/mage/cards/s/SpinyStarfish.java +++ b/Mage.Sets/src/mage/cards/s/SpinyStarfish.java @@ -35,7 +35,7 @@ public final class SpinyStarfish extends CardImpl { this.toughness = new MageInt(1); // {U}: Regenerate Spiny Starfish. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{U}"))); // At the beginning of each end step, if Spiny Starfish regenerated this turn, create a 0/1 blue Starfish creature token for each time it regenerated this turn. this.addAbility( diff --git a/Mage.Sets/src/mage/cards/s/SpiritBonds.java b/Mage.Sets/src/mage/cards/s/SpiritBonds.java index 885ccc27eb..7686065227 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritBonds.java +++ b/Mage.Sets/src/mage/cards/s/SpiritBonds.java @@ -45,11 +45,11 @@ public final class SpiritBonds extends CardImpl { // Whenever a nontoken creature enters the battlefield under your control, you may pay {W}. If you do, but a 1/1 white Spirit creature token with flying into play. - this.addAbility(new EntersBattlefieldControlledTriggeredAbility(Zone.BATTLEFIELD, new DoIfCostPaid(new CreateTokenEffect(new SpiritWhiteToken()), new ManaCostsImpl("{W}")), filterNontoken, false)); + this.addAbility(new EntersBattlefieldControlledTriggeredAbility(Zone.BATTLEFIELD, new DoIfCostPaid(new CreateTokenEffect(new SpiritWhiteToken()), new ManaCostsImpl<>("{W}")), filterNontoken, false)); // {1}{W}, Sacrifice a Spirit: Target non-Spirit creature you control gains indestructible until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new GainAbilityTargetEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")); + new GainAbilityTargetEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filterSpirit, true))); ability.addTarget(new TargetControlledCreaturePermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpiritCairn.java b/Mage.Sets/src/mage/cards/s/SpiritCairn.java index bc1eea191e..4e4ff453dd 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritCairn.java +++ b/Mage.Sets/src/mage/cards/s/SpiritCairn.java @@ -21,7 +21,7 @@ public final class SpiritCairn extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{W}"); // Whenever a player discards a card, you may pay {W}. If you do, create a 1/1 white Spirit creature token with flying. - this.addAbility(new DiscardCardPlayerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new SpiritWhiteToken()), new ManaCostsImpl("{W}")),false)); + this.addAbility(new DiscardCardPlayerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new SpiritWhiteToken()), new ManaCostsImpl<>("{W}")),false)); } private SpiritCairn(final SpiritCairn card) { diff --git a/Mage.Sets/src/mage/cards/s/SpiritEnDal.java b/Mage.Sets/src/mage/cards/s/SpiritEnDal.java index 0f3f835761..adeffb95f9 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritEnDal.java +++ b/Mage.Sets/src/mage/cards/s/SpiritEnDal.java @@ -31,7 +31,7 @@ public final class SpiritEnDal extends CardImpl { this.addAbility(ShadowAbility.getInstance()); // Forecast - {1}{W}, Reveal Spirit en-Dal from your hand: Target creature gains shadow until end of turn. - Ability ability = new ForecastAbility(new GainAbilityTargetEffect(ShadowAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")); + Ability ability = new ForecastAbility(new GainAbilityTargetEffect(ShadowAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpiritShield.java b/Mage.Sets/src/mage/cards/s/SpiritShield.java index 922fcd4ff2..0938284f06 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritShield.java +++ b/Mage.Sets/src/mage/cards/s/SpiritShield.java @@ -31,7 +31,7 @@ public final class SpiritShield extends CardImpl { // {2}, {tap}: Target creature gets +0/+2 for as long as Spirit Shield remains tapped. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostTargetEffect(0, 2, Duration.Custom), SourceTappedCondition.TAPPED, - "target creature gets +0/+2 for as long as {this} remains tapped"), new ManaCostsImpl("{2}")); + "target creature gets +0/+2 for as long as {this} remains tapped"), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Spiritmonger.java b/Mage.Sets/src/mage/cards/s/Spiritmonger.java index 770567ec1e..afcbc5ba34 100644 --- a/Mage.Sets/src/mage/cards/s/Spiritmonger.java +++ b/Mage.Sets/src/mage/cards/s/Spiritmonger.java @@ -33,9 +33,9 @@ public final class Spiritmonger extends CardImpl { // Whenever Spiritmonger deals damage to a creature, put a +1/+1 counter on Spiritmonger. this.addAbility(new DealsDamageToACreatureTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(), true), false, false, false)); // {B}: Regenerate Spiritmonger. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"))); // {G}: Spiritmonger becomes the color of your choice until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorSourceEffect(Duration.EndOfTurn), new ManaCostsImpl("{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorSourceEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{G}"))); } private Spiritmonger(final Spiritmonger card) { diff --git a/Mage.Sets/src/mage/cards/s/SpitFlame.java b/Mage.Sets/src/mage/cards/s/SpitFlame.java index b664b8f7d1..75197ba24a 100644 --- a/Mage.Sets/src/mage/cards/s/SpitFlame.java +++ b/Mage.Sets/src/mage/cards/s/SpitFlame.java @@ -35,7 +35,7 @@ public final class SpitFlame extends CardImpl { Zone.GRAVEYARD, new DoIfCostPaid( new ReturnSourceFromGraveyardToHandEffect(), - new ManaCostsImpl("{R}") + new ManaCostsImpl<>("{R}") ), filter, false )); } diff --git a/Mage.Sets/src/mage/cards/s/SpiteflameWitch.java b/Mage.Sets/src/mage/cards/s/SpiteflameWitch.java index be01717025..3ff1fc06d6 100644 --- a/Mage.Sets/src/mage/cards/s/SpiteflameWitch.java +++ b/Mage.Sets/src/mage/cards/s/SpiteflameWitch.java @@ -26,7 +26,7 @@ public final class SpiteflameWitch extends CardImpl { this.power = new MageInt(2); this.toughness = new MageInt(1); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeAllPlayersEffect(1), new ManaCostsImpl("{B}{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeAllPlayersEffect(1), new ManaCostsImpl<>("{B}{R}"))); } private SpiteflameWitch(final SpiteflameWitch card) { diff --git a/Mage.Sets/src/mage/cards/s/SpitfireBastion.java b/Mage.Sets/src/mage/cards/s/SpitfireBastion.java index 9268cd4d9b..3ed04843b4 100644 --- a/Mage.Sets/src/mage/cards/s/SpitfireBastion.java +++ b/Mage.Sets/src/mage/cards/s/SpitfireBastion.java @@ -32,7 +32,7 @@ public final class SpitfireBastion extends CardImpl { // {2}{R}, {T}: Spitfire Bastion deals 3 damage to any target. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new TapSourceCost()); - ability.addCost(new ManaCostsImpl("{2}{R}")); + ability.addCost(new ManaCostsImpl<>("{2}{R}")); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpittingDrake.java b/Mage.Sets/src/mage/cards/s/SpittingDrake.java index 54e8640bba..7f99e2aa25 100644 --- a/Mage.Sets/src/mage/cards/s/SpittingDrake.java +++ b/Mage.Sets/src/mage/cards/s/SpittingDrake.java @@ -30,7 +30,7 @@ public final class SpittingDrake extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {R}: Spitting Drake gets +1/+0 until end of turn. Activate this ability only once each turn. - this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private SpittingDrake(final SpittingDrake card) { diff --git a/Mage.Sets/src/mage/cards/s/SpittingGourna.java b/Mage.Sets/src/mage/cards/s/SpittingGourna.java index 6c3821fc99..fd491fcb8b 100644 --- a/Mage.Sets/src/mage/cards/s/SpittingGourna.java +++ b/Mage.Sets/src/mage/cards/s/SpittingGourna.java @@ -26,7 +26,7 @@ public final class SpittingGourna extends CardImpl { // Reach this.addAbility(ReachAbility.getInstance()); // Morph {4}{G} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{G}"))); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{G}"))); } private SpittingGourna(final SpittingGourna card) { diff --git a/Mage.Sets/src/mage/cards/s/SpittingHydra.java b/Mage.Sets/src/mage/cards/s/SpittingHydra.java index b8b29ffee8..32fc62c98b 100644 --- a/Mage.Sets/src/mage/cards/s/SpittingHydra.java +++ b/Mage.Sets/src/mage/cards/s/SpittingHydra.java @@ -37,7 +37,7 @@ public final class SpittingHydra extends CardImpl { this.addAbility(new EntersBattlefieldAbility(effect)); // {1}{R}, Remove a +1/+1 counter from Spitting Hydra: Spitting Hydra deals 1 damage to target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{1}{R}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1))); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SpittingSlug.java b/Mage.Sets/src/mage/cards/s/SpittingSlug.java index 2ddf77a139..d4e2c1cabb 100644 --- a/Mage.Sets/src/mage/cards/s/SpittingSlug.java +++ b/Mage.Sets/src/mage/cards/s/SpittingSlug.java @@ -42,7 +42,7 @@ public final class SpittingSlug extends CardImpl { this.addAbility(new BlocksOrBecomesBlockedSourceTriggeredAbility( new DoIfCostPaid(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new SpittingSlugEffect(), - new ManaCostsImpl("{1}{G}")).setText("you may pay {1}{G}. If you do, {this} gains first strike until end of turn. Otherwise, each creature blocking or blocked by {this} gains first strike until end of turn"), + new ManaCostsImpl<>("{1}{G}")).setText("you may pay {1}{G}. If you do, {this} gains first strike until end of turn. Otherwise, each creature blocking or blocked by {this} gains first strike until end of turn"), false)); } diff --git a/Mage.Sets/src/mage/cards/s/SplendorMare.java b/Mage.Sets/src/mage/cards/s/SplendorMare.java index dbc20eabe0..82ae9f821c 100644 --- a/Mage.Sets/src/mage/cards/s/SplendorMare.java +++ b/Mage.Sets/src/mage/cards/s/SplendorMare.java @@ -33,7 +33,7 @@ public final class SplendorMare extends CardImpl { this.addAbility(LifelinkAbility.getInstance()); // Cycling {1}{W} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{W}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{W}"))); // When you cycle Splendor Mare, put a lifelink counter on target creature you control. Ability ability = new CycleTriggeredAbility(new AddCountersTargetEffect(CounterType.LIFELINK.createInstance())); diff --git a/Mage.Sets/src/mage/cards/s/SplinteringWind.java b/Mage.Sets/src/mage/cards/s/SplinteringWind.java index c51db80358..7127b33653 100644 --- a/Mage.Sets/src/mage/cards/s/SplinteringWind.java +++ b/Mage.Sets/src/mage/cards/s/SplinteringWind.java @@ -35,7 +35,7 @@ public final class SplinteringWind extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}{G}"); // {2}{G}: Splintering Wind deals 1 damage to target creature. Create a 1/1 green Splinter creature token. It has flying and “Cumulative upkeep {G}.” When it leaves the battlefield, it deals 1 damage to you and each creature you control. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{2}{G}")); ability.addEffect(new SplinteringWindCreateTokenEffect()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SporebackTroll.java b/Mage.Sets/src/mage/cards/s/SporebackTroll.java index b49be9ed72..3ea47b766c 100644 --- a/Mage.Sets/src/mage/cards/s/SporebackTroll.java +++ b/Mage.Sets/src/mage/cards/s/SporebackTroll.java @@ -33,7 +33,7 @@ public final class SporebackTroll extends CardImpl { this.addAbility(new GraftAbility(this, 2)); // {1}{G}: Regenerate target creature with a +1/+1 counter on it. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl("{1}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{1}{G}")); ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_A_CREATURE_P1P1)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SpringjackPasture.java b/Mage.Sets/src/mage/cards/s/SpringjackPasture.java index ed7b0f7f89..e4c9280aca 100644 --- a/Mage.Sets/src/mage/cards/s/SpringjackPasture.java +++ b/Mage.Sets/src/mage/cards/s/SpringjackPasture.java @@ -39,7 +39,7 @@ public final class SpringjackPasture extends CardImpl { this.addAbility(new ColorlessManaAbility()); // {4}, {tap}: Create a 0/1 white Goat creature token. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new GoatToken()), new ManaCostsImpl("{4}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new GoatToken()), new ManaCostsImpl<>("{4}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SquallDrifter.java b/Mage.Sets/src/mage/cards/s/SquallDrifter.java index e7bef80662..7212e65d7b 100644 --- a/Mage.Sets/src/mage/cards/s/SquallDrifter.java +++ b/Mage.Sets/src/mage/cards/s/SquallDrifter.java @@ -34,7 +34,7 @@ public final class SquallDrifter extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {W}, {tap}: Tap target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Squallmonger.java b/Mage.Sets/src/mage/cards/s/Squallmonger.java index 7e1bfc7cff..6d58257913 100644 --- a/Mage.Sets/src/mage/cards/s/Squallmonger.java +++ b/Mage.Sets/src/mage/cards/s/Squallmonger.java @@ -38,7 +38,7 @@ public final class Squallmonger extends CardImpl { this.toughness = new MageInt(3); // {2}: Squallmonger deals 1 damage to each creature with flying and each player. Any player may activate this ability. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(1, filter), new ManaCostsImpl("{2}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageAllEffect(1, filter), new ManaCostsImpl<>("{2}")); Effect effect = new DamagePlayersEffect(1); effect.setText("and each player"); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/s/SquealingDevil.java b/Mage.Sets/src/mage/cards/s/SquealingDevil.java index 89c2fbae5f..81f84ed77d 100644 --- a/Mage.Sets/src/mage/cards/s/SquealingDevil.java +++ b/Mage.Sets/src/mage/cards/s/SquealingDevil.java @@ -77,7 +77,7 @@ class SquealingDevilEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); - ManaCosts cost = new ManaCostsImpl("{X}"); + ManaCosts cost = new ManaCostsImpl<>("{X}"); if (player != null) { if (player.chooseUse(Outcome.BoostCreature, "Pay " + cost.getText() + "?", source, game)) { int costX = player.announceXMana(0, Integer.MAX_VALUE, "Announce the value for {X}", game, source); diff --git a/Mage.Sets/src/mage/cards/s/SquirrelWrangler.java b/Mage.Sets/src/mage/cards/s/SquirrelWrangler.java index 662c87a9ee..97fe961411 100644 --- a/Mage.Sets/src/mage/cards/s/SquirrelWrangler.java +++ b/Mage.Sets/src/mage/cards/s/SquirrelWrangler.java @@ -36,12 +36,12 @@ public final class SquirrelWrangler extends CardImpl { this.toughness = new MageInt(2); // {1}{G}, Sacrifice a land: Create two 1/1 green Squirrel creature tokens. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SquirrelToken(), 2), new ManaCostsImpl("{1}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SquirrelToken(), 2), new ManaCostsImpl<>("{1}{G}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(new FilterControlledLandPermanent("a land")))); this.addAbility(ability); // {1}{G}, Sacrifice a land: Squirrel creatures get +1/+1 until end of turn. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.EndOfTurn, filter, false), new ManaCostsImpl("{1}{G}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.EndOfTurn, filter, false), new ManaCostsImpl<>("{1}{G}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(new FilterControlledLandPermanent("a land")))); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StaffOfDomination.java b/Mage.Sets/src/mage/cards/s/StaffOfDomination.java index c1894587c7..8816dbd9c2 100644 --- a/Mage.Sets/src/mage/cards/s/StaffOfDomination.java +++ b/Mage.Sets/src/mage/cards/s/StaffOfDomination.java @@ -27,23 +27,23 @@ public final class StaffOfDomination extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); // {1}: Untap Staff of Domination. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{1}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{1}"))); // {2}, {tap}: You gain 1 life. - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl("{2}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{2}")); ability2.addCost(new TapSourceCost()); this.addAbility(ability2); // {3}, {tap}: Untap target creature. - Ability ability3 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl("{3}")); + Ability ability3 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl<>("{3}")); ability3.addCost(new TapSourceCost()); ability3.addTarget(new TargetCreaturePermanent()); this.addAbility(ability3); // {4}, {tap}: Tap target creature. - Ability ability4 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{4}")); + Ability ability4 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{4}")); ability4.addCost(new TapSourceCost()); ability4.addTarget(new TargetCreaturePermanent()); this.addAbility(ability4); // {5}, {tap}: Draw a card. - Ability ability5 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{5}")); + Ability ability5 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{5}")); ability5.addCost(new TapSourceCost()); this.addAbility(ability5); } diff --git a/Mage.Sets/src/mage/cards/s/StaffOfZegon.java b/Mage.Sets/src/mage/cards/s/StaffOfZegon.java index 3867f09c4c..7a4023bda5 100644 --- a/Mage.Sets/src/mage/cards/s/StaffOfZegon.java +++ b/Mage.Sets/src/mage/cards/s/StaffOfZegon.java @@ -24,7 +24,7 @@ public final class StaffOfZegon extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); // {3}, {tap}: Target creature gets -2/-0 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, 0, Duration.EndOfTurn), new ManaCostsImpl("{3}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{3}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StalkingAssassin.java b/Mage.Sets/src/mage/cards/s/StalkingAssassin.java index 7f1cdbf52f..7759c4f630 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingAssassin.java +++ b/Mage.Sets/src/mage/cards/s/StalkingAssassin.java @@ -39,12 +39,12 @@ public final class StalkingAssassin extends CardImpl { this.toughness = new MageInt(1); // {3}{U}, {T}: Tap target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{3}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{3}{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {3}{B}, {T}: Destroy target tapped creature. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{3}{B}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{3}{B}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StalkingBloodsucker.java b/Mage.Sets/src/mage/cards/s/StalkingBloodsucker.java index 7b7e56ba7e..48529d8771 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingBloodsucker.java +++ b/Mage.Sets/src/mage/cards/s/StalkingBloodsucker.java @@ -32,7 +32,7 @@ public final class StalkingBloodsucker extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {1}{B}, Discard a card: Stalking Bloodsucker gets +2/+2 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{1}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}")); ability.addCost(new DiscardCardCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StalkingDrone.java b/Mage.Sets/src/mage/cards/s/StalkingDrone.java index 4a848e38a3..d21499688c 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingDrone.java +++ b/Mage.Sets/src/mage/cards/s/StalkingDrone.java @@ -30,7 +30,7 @@ public final class StalkingDrone extends CardImpl { // Devoid this.addAbility(new DevoidAbility(this.color)); // {C}: Stalking Drone gets +1/+2 until end of turn. Activate this ability only once each turn. - this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 2, Duration.EndOfTurn), new ManaCostsImpl("{C}"))); + this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{C}"))); } private StalkingDrone(final StalkingDrone card) { diff --git a/Mage.Sets/src/mage/cards/s/StalkingYeti.java b/Mage.Sets/src/mage/cards/s/StalkingYeti.java index 10c6891f95..512798f15c 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingYeti.java +++ b/Mage.Sets/src/mage/cards/s/StalkingYeti.java @@ -48,7 +48,7 @@ public final class StalkingYeti extends CardImpl { this.addAbility(ability); // {2}{snow}: Return Stalking Yeti to its owner's hand. Activate this ability only any time you could cast a sorcery. - this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl("{2}{S}"))); + this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{2}{S}"))); } private StalkingYeti(final StalkingYeti card) { diff --git a/Mage.Sets/src/mage/cards/s/StampedeDriver.java b/Mage.Sets/src/mage/cards/s/StampedeDriver.java index 695679cc37..5a04d9285a 100644 --- a/Mage.Sets/src/mage/cards/s/StampedeDriver.java +++ b/Mage.Sets/src/mage/cards/s/StampedeDriver.java @@ -35,7 +35,7 @@ public final class StampedeDriver extends CardImpl { this.toughness = new MageInt(1); // {1}{G}, {T}, Discard a card: Creatures you control get +1/+1 and gain trample until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardTargetCost(new TargetCardInHand())); ability.addEffect(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); diff --git a/Mage.Sets/src/mage/cards/s/StarDestroyer.java b/Mage.Sets/src/mage/cards/s/StarDestroyer.java index b04f4519e4..7da690f2d3 100644 --- a/Mage.Sets/src/mage/cards/s/StarDestroyer.java +++ b/Mage.Sets/src/mage/cards/s/StarDestroyer.java @@ -46,15 +46,15 @@ public final class StarDestroyer extends CardImpl { this.addAbility(SpaceflightAbility.getInstance()); // {2}{U}: Tap target artifact creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{2}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{2}{U}")); ability.addTarget(new TargetCreaturePermanent(filter1)); this.addAbility(ability); // {2}{B}: Create a 1/1 black Starship artifact creature token with spaceflight named TIE Fighter. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new TIEFighterToken()), new ManaCostsImpl("{2}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new TIEFighterToken()), new ManaCostsImpl<>("{2}{B}"))); // {2}{R}: Star Destroyer deals 2 damge to target non-Starship creature or player. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{2}{R}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{2}{R}")); ability.addTarget(new TargetCreatureOrPlayer(filter3)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StarlightInvoker.java b/Mage.Sets/src/mage/cards/s/StarlightInvoker.java index 317f5a48d3..abba8b5701 100644 --- a/Mage.Sets/src/mage/cards/s/StarlightInvoker.java +++ b/Mage.Sets/src/mage/cards/s/StarlightInvoker.java @@ -26,7 +26,7 @@ public final class StarlightInvoker extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(3); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(5), new ManaCostsImpl("{7}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(5), new ManaCostsImpl<>("{7}{W}"))); } private StarlightInvoker(final StarlightInvoker card) { diff --git a/Mage.Sets/src/mage/cards/s/Starstorm.java b/Mage.Sets/src/mage/cards/s/Starstorm.java index cd076d518c..351bb1c049 100644 --- a/Mage.Sets/src/mage/cards/s/Starstorm.java +++ b/Mage.Sets/src/mage/cards/s/Starstorm.java @@ -24,7 +24,7 @@ public final class Starstorm extends CardImpl { // Starstorm deals X damage to each creature. this.getSpellAbility().addEffect(new DamageAllEffect(ManacostVariableValue.REGULAR, new FilterCreaturePermanent())); // Cycling {3} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{3}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{3}"))); } private Starstorm(final Starstorm card) { diff --git a/Mage.Sets/src/mage/cards/s/StartlingDevelopment.java b/Mage.Sets/src/mage/cards/s/StartlingDevelopment.java index 020f29e7d5..278e4d485b 100644 --- a/Mage.Sets/src/mage/cards/s/StartlingDevelopment.java +++ b/Mage.Sets/src/mage/cards/s/StartlingDevelopment.java @@ -31,7 +31,7 @@ public final class StartlingDevelopment extends CardImpl { this.getSpellAbility().addTarget(new TargetCreaturePermanent()); // Cycling {1} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}"))); } private StartlingDevelopment(final StartlingDevelopment card) { diff --git a/Mage.Sets/src/mage/cards/s/Stasis.java b/Mage.Sets/src/mage/cards/s/Stasis.java index 82affe548d..d3562a540e 100644 --- a/Mage.Sets/src/mage/cards/s/Stasis.java +++ b/Mage.Sets/src/mage/cards/s/Stasis.java @@ -26,7 +26,7 @@ public final class Stasis extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipUntapStepEffect())); // At the beginning of your upkeep, sacrifice Stasis unless you pay {U}. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{U}")), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{U}")), TargetController.YOU, false)); } diff --git a/Mage.Sets/src/mage/cards/s/StasisCell.java b/Mage.Sets/src/mage/cards/s/StasisCell.java index e6696c383c..f888d40d9f 100644 --- a/Mage.Sets/src/mage/cards/s/StasisCell.java +++ b/Mage.Sets/src/mage/cards/s/StasisCell.java @@ -39,7 +39,7 @@ public final class StasisCell extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect())); // {3}{U}: Attach Stasis Cell to target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.Detriment, "Attach {this} to target creature"), new ManaCostsImpl("{3}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.Detriment, "Attach {this} to target creature"), new ManaCostsImpl<>("{3}{U}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SteadfastSentinel.java b/Mage.Sets/src/mage/cards/s/SteadfastSentinel.java index a982050af5..b4e3e66ea6 100644 --- a/Mage.Sets/src/mage/cards/s/SteadfastSentinel.java +++ b/Mage.Sets/src/mage/cards/s/SteadfastSentinel.java @@ -24,7 +24,7 @@ public final class SteadfastSentinel extends CardImpl { addAbility(VigilanceAbility.getInstance()); //Eternalize {4}{W}{W} - addAbility(new EternalizeAbility(new ManaCostsImpl("{4}{W}{W}"), this)); + addAbility(new EternalizeAbility(new ManaCostsImpl<>("{4}{W}{W}"), this)); } diff --git a/Mage.Sets/src/mage/cards/s/SteamSpitter.java b/Mage.Sets/src/mage/cards/s/SteamSpitter.java index 934c35e3b3..28e2ee4bb0 100644 --- a/Mage.Sets/src/mage/cards/s/SteamSpitter.java +++ b/Mage.Sets/src/mage/cards/s/SteamSpitter.java @@ -29,7 +29,7 @@ public final class SteamSpitter extends CardImpl { // Reach this.addAbility(ReachAbility.getInstance()); // {R}: Steam Spitter gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private SteamSpitter(final SteamSpitter card) { diff --git a/Mage.Sets/src/mage/cards/s/SteelHellkite.java b/Mage.Sets/src/mage/cards/s/SteelHellkite.java index 4cc764abbe..0557fff49a 100644 --- a/Mage.Sets/src/mage/cards/s/SteelHellkite.java +++ b/Mage.Sets/src/mage/cards/s/SteelHellkite.java @@ -51,7 +51,7 @@ public final class SteelHellkite extends CardImpl { this.addAbility(new LimitedTimesPerTurnActivatedAbility( Zone.BATTLEFIELD, new SteelHellkiteDestroyEffect(), - new ManaCostsImpl("{X}") + new ManaCostsImpl<>("{X}") ), new SteelHellkiteWatcher()); } diff --git a/Mage.Sets/src/mage/cards/s/SteelbaneHydra.java b/Mage.Sets/src/mage/cards/s/SteelbaneHydra.java index f73bff650c..703d099218 100644 --- a/Mage.Sets/src/mage/cards/s/SteelbaneHydra.java +++ b/Mage.Sets/src/mage/cards/s/SteelbaneHydra.java @@ -32,7 +32,7 @@ public final class SteelbaneHydra extends CardImpl { this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.P1P1.createInstance()))); // {2}{G}, Remove a +1/+1 counter from Steelbane Hydra: Destroy target artifact or enchantment. - Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{2}{G}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1))); ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_ENCHANTMENT)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SteelingStance.java b/Mage.Sets/src/mage/cards/s/SteelingStance.java index e17bcb0f39..465d0f1dee 100644 --- a/Mage.Sets/src/mage/cards/s/SteelingStance.java +++ b/Mage.Sets/src/mage/cards/s/SteelingStance.java @@ -26,7 +26,7 @@ public final class SteelingStance extends CardImpl { // Creatures you control get +1/+1 until end of turn. this.getSpellAbility().addEffect(new BoostControlledEffect(1,1, Duration.EndOfTurn)); // Forecast - {W}, Reveal Steeling Stance from your hand: Target creature gets +1/+1 until end of turn. - Ability ability = new ForecastAbility(new BoostTargetEffect(1,1, Duration.EndOfTurn), new ManaCostsImpl("{W}")); + Ability ability = new ForecastAbility(new BoostTargetEffect(1,1, Duration.EndOfTurn), new ManaCostsImpl<>("{W}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SteepleCreeper.java b/Mage.Sets/src/mage/cards/s/SteepleCreeper.java index ebb8958b1c..9d4ab7b1ca 100644 --- a/Mage.Sets/src/mage/cards/s/SteepleCreeper.java +++ b/Mage.Sets/src/mage/cards/s/SteepleCreeper.java @@ -30,7 +30,7 @@ public final class SteepleCreeper extends CardImpl { this.addAbility(new SimpleActivatedAbility( new GainAbilitySourceEffect( FlyingAbility.getInstance(), Duration.EndOfTurn - ), new ManaCostsImpl("{3}{U}") + ), new ManaCostsImpl<>("{3}{U}") )); } diff --git a/Mage.Sets/src/mage/cards/s/StenchOfEvil.java b/Mage.Sets/src/mage/cards/s/StenchOfEvil.java index e025012fc0..1b14f035e6 100644 --- a/Mage.Sets/src/mage/cards/s/StenchOfEvil.java +++ b/Mage.Sets/src/mage/cards/s/StenchOfEvil.java @@ -66,7 +66,7 @@ class StenchOfEvilEffect extends OneShotEffect { for (Permanent land : game.getBattlefield().getAllActivePermanents(filter, game)) { UUID landControllerId = land.getControllerId(); if (land.destroy(source, game, false)) { - Cost cost = new ManaCostsImpl("{2}"); + Cost cost = new ManaCostsImpl<>("{2}"); Player landController = game.getPlayer(landControllerId); if (landController != null && cost.canPay(source, source, landControllerId, game) diff --git a/Mage.Sets/src/mage/cards/s/StensiaBloodhall.java b/Mage.Sets/src/mage/cards/s/StensiaBloodhall.java index f7f6d318ba..a9702dd00a 100644 --- a/Mage.Sets/src/mage/cards/s/StensiaBloodhall.java +++ b/Mage.Sets/src/mage/cards/s/StensiaBloodhall.java @@ -26,7 +26,7 @@ public final class StensiaBloodhall extends CardImpl { this.addAbility(new ColorlessManaAbility()); // {3}{B}{R}, {T}: Stensia Bloodhall deals 2 damage to target player. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{3}{B}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{3}{B}{R}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPlayerOrPlaneswalker()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java b/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java index b7d5b5869f..19647b05f0 100644 --- a/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java +++ b/Mage.Sets/src/mage/cards/s/StensiaMasquerade.java @@ -49,7 +49,7 @@ public final class StensiaMasquerade extends CardImpl { this.addAbility(new StensiaMasqueradeTriggeredAbility()); // Madness {2}{R} - this.addAbility(new MadnessAbility(new ManaCostsImpl("{2}{R}"))); + this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{2}{R}"))); } private StensiaMasquerade(final StensiaMasquerade card) { diff --git a/Mage.Sets/src/mage/cards/s/SteppeGlider.java b/Mage.Sets/src/mage/cards/s/SteppeGlider.java index ea4a6830d2..d822ef9aa8 100644 --- a/Mage.Sets/src/mage/cards/s/SteppeGlider.java +++ b/Mage.Sets/src/mage/cards/s/SteppeGlider.java @@ -40,7 +40,7 @@ public final class SteppeGlider extends CardImpl { // {1}{W}: Target creature with a +1/+1 counter on it gains flying and vigilance until end of turn. Effect effect = new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn); effect.setText("Target creature with a +1/+1 counter on it gains flying"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{W}")); effect = new GainAbilityTargetEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn); effect.setText("and vigilance until end of turn"); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/s/StillLife.java b/Mage.Sets/src/mage/cards/s/StillLife.java index 7810eabcca..53504fbe05 100644 --- a/Mage.Sets/src/mage/cards/s/StillLife.java +++ b/Mage.Sets/src/mage/cards/s/StillLife.java @@ -25,7 +25,7 @@ public final class StillLife extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{G}{G}"); // {G}{G}: Still Life becomes a 4/3 Centaur creature until end of turn. It's still an enchantment. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new StillLifeCentaur(), "", Duration.EndOfTurn), new ManaCostsImpl("{G}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new StillLifeCentaur(), "", Duration.EndOfTurn), new ManaCostsImpl<>("{G}{G}"))); } private StillLife(final StillLife card) { diff --git a/Mage.Sets/src/mage/cards/s/StillmoonCavalier.java b/Mage.Sets/src/mage/cards/s/StillmoonCavalier.java index 9e9a5f29ab..3d6219f059 100644 --- a/Mage.Sets/src/mage/cards/s/StillmoonCavalier.java +++ b/Mage.Sets/src/mage/cards/s/StillmoonCavalier.java @@ -35,11 +35,11 @@ public final class StillmoonCavalier extends CardImpl { // Protection from white and from black this.addAbility(ProtectionAbility.from(ObjectColor.WHITE, ObjectColor.BLACK)); // {WB}: Stillmoon Cavalier gains flying until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W/B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W/B}"))); // {WB}: Stillmoon Cavalier gains first strike until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W/B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W/B}"))); // {WB}{WB}: Stillmoon Cavalier gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl("{W/B}{W/B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl<>("{W/B}{W/B}"))); } private StillmoonCavalier(final StillmoonCavalier card) { diff --git a/Mage.Sets/src/mage/cards/s/StingingBarrier.java b/Mage.Sets/src/mage/cards/s/StingingBarrier.java index 41f3e6bc50..97abc3a5b4 100644 --- a/Mage.Sets/src/mage/cards/s/StingingBarrier.java +++ b/Mage.Sets/src/mage/cards/s/StingingBarrier.java @@ -30,7 +30,7 @@ public final class StingingBarrier extends CardImpl { // Defender this.addAbility(DefenderAbility.getInstance()); // {U}, {tap}: Stinging Barrier deals 1 damage to any target. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{U}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StingingShot.java b/Mage.Sets/src/mage/cards/s/StingingShot.java index 956d49f52d..138a2d01de 100644 --- a/Mage.Sets/src/mage/cards/s/StingingShot.java +++ b/Mage.Sets/src/mage/cards/s/StingingShot.java @@ -34,7 +34,7 @@ public final class StingingShot extends CardImpl { getSpellAbility().addEffect(new AddCountersTargetEffect(CounterType.M1M1.createInstance(3))); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private StingingShot(final StingingShot card) { diff --git a/Mage.Sets/src/mage/cards/s/Stingmoggie.java b/Mage.Sets/src/mage/cards/s/Stingmoggie.java index 9122319521..f69162f0d6 100644 --- a/Mage.Sets/src/mage/cards/s/Stingmoggie.java +++ b/Mage.Sets/src/mage/cards/s/Stingmoggie.java @@ -45,7 +45,7 @@ public final class Stingmoggie extends CardImpl { this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)),"with two +1/+1 counters on it")); // {3}{R}, Remove a +1/+1 counter from Stingmoggie: Destroy target artifact or land. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{3}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{3}{R}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1))); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StirTheSands.java b/Mage.Sets/src/mage/cards/s/StirTheSands.java index 8fe7584c84..591d5dc771 100644 --- a/Mage.Sets/src/mage/cards/s/StirTheSands.java +++ b/Mage.Sets/src/mage/cards/s/StirTheSands.java @@ -24,7 +24,7 @@ public final class StirTheSands extends CardImpl { getSpellAbility().addEffect(new CreateTokenEffect(new ZombieToken(), 3)); // Cycling {3}{B} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{3}{B}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{3}{B}"))); // When you cycle Stir the Sands, create a 2/2 black Zombie creature token. this.addAbility(new CycleTriggeredAbility(new CreateTokenEffect(new ZombieToken()))); diff --git a/Mage.Sets/src/mage/cards/s/StirringAddress.java b/Mage.Sets/src/mage/cards/s/StirringAddress.java index 358ab4cd31..13378b8453 100644 --- a/Mage.Sets/src/mage/cards/s/StirringAddress.java +++ b/Mage.Sets/src/mage/cards/s/StirringAddress.java @@ -27,7 +27,7 @@ public final class StirringAddress extends CardImpl { // Overload {5}{W} this.addAbility(new OverloadAbility(this, new BoostControlledEffect( 2, 2, Duration.EndOfTurn - ).setText("Each creature you control gets +2/+2 until end of turn."), new ManaCostsImpl("{5}{W}"))); + ).setText("Each creature you control gets +2/+2 until end of turn."), new ManaCostsImpl<>("{5}{W}"))); } private StirringAddress(final StirringAddress card) { diff --git a/Mage.Sets/src/mage/cards/s/StirringWildwood.java b/Mage.Sets/src/mage/cards/s/StirringWildwood.java index 62b019a549..cabcf81d03 100644 --- a/Mage.Sets/src/mage/cards/s/StirringWildwood.java +++ b/Mage.Sets/src/mage/cards/s/StirringWildwood.java @@ -30,7 +30,7 @@ public final class StirringWildwood extends CardImpl { this.addAbility(new EntersBattlefieldTappedAbility()); this.addAbility(new GreenManaAbility()); this.addAbility(new WhiteManaAbility()); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new StirringWildwoodToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{1}{G}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new StirringWildwoodToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}{W}"))); } private StirringWildwood(final StirringWildwood card) { diff --git a/Mage.Sets/src/mage/cards/s/StitcherGeralf.java b/Mage.Sets/src/mage/cards/s/StitcherGeralf.java index 156d974dc3..0d1f937fc9 100644 --- a/Mage.Sets/src/mage/cards/s/StitcherGeralf.java +++ b/Mage.Sets/src/mage/cards/s/StitcherGeralf.java @@ -37,7 +37,7 @@ public final class StitcherGeralf extends CardImpl { this.toughness = new MageInt(4); // {2}{U}, {tap}: Each player puts the top three cards of their library into their graveyard. Exile up to two creature cards put into graveyards this way. Create an X/X blue Zombie creature token, where X is the total power of the cards exiled this way. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StitcherGeralfEffect(), new ManaCostsImpl("{2}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StitcherGeralfEffect(), new ManaCostsImpl<>("{2}{U}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StitchersApprentice.java b/Mage.Sets/src/mage/cards/s/StitchersApprentice.java index 100868f5ea..6762f9a452 100644 --- a/Mage.Sets/src/mage/cards/s/StitchersApprentice.java +++ b/Mage.Sets/src/mage/cards/s/StitchersApprentice.java @@ -37,7 +37,7 @@ public final class StitchersApprentice extends CardImpl { this.toughness = new MageInt(2); // {1}{U}, {tap}: Create a 2/2 blue Homunculus creature token, then sacrifice a creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new StitchersApprenticeHomunculusToken()), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new StitchersApprenticeHomunculusToken()), new ManaCostsImpl<>("{1}{U}")); ability.addCost(new TapSourceCost()); ability.addEffect(new StitchersApprenticeEffect()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StitchwingSkaab.java b/Mage.Sets/src/mage/cards/s/StitchwingSkaab.java index ed2016f848..95c5b92a23 100644 --- a/Mage.Sets/src/mage/cards/s/StitchwingSkaab.java +++ b/Mage.Sets/src/mage/cards/s/StitchwingSkaab.java @@ -34,7 +34,7 @@ public final class StitchwingSkaab extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {1}{U}, Discard two cards: Return Stitchwing Skaab from your graveyard to the battlefield tapped. - Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToBattlefieldEffect(true, false), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToBattlefieldEffect(true, false), new ManaCostsImpl<>("{1}{U}")); ability.addCost(new DiscardTargetCost(new TargetCardInHand(2, new FilterCard("two cards")))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StoneHavenMedic.java b/Mage.Sets/src/mage/cards/s/StoneHavenMedic.java index b39eb0453e..5499a272c9 100644 --- a/Mage.Sets/src/mage/cards/s/StoneHavenMedic.java +++ b/Mage.Sets/src/mage/cards/s/StoneHavenMedic.java @@ -28,7 +28,7 @@ public final class StoneHavenMedic extends CardImpl { this.toughness = new MageInt(3); // {W}, {T}: You gain 1 life. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StoneKavu.java b/Mage.Sets/src/mage/cards/s/StoneKavu.java index 4716aea4cc..d09944766a 100644 --- a/Mage.Sets/src/mage/cards/s/StoneKavu.java +++ b/Mage.Sets/src/mage/cards/s/StoneKavu.java @@ -27,9 +27,9 @@ public final class StoneKavu extends CardImpl { this.toughness = new MageInt(3); // {R}: Stone Kavu gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); // {W}: Stone Kavu gets +0/+1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl("{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{W}"))); } private StoneKavu(final StoneKavu card) { diff --git a/Mage.Sets/src/mage/cards/s/StonefareCrocodile.java b/Mage.Sets/src/mage/cards/s/StonefareCrocodile.java index 63597c378c..d27bf4768f 100644 --- a/Mage.Sets/src/mage/cards/s/StonefareCrocodile.java +++ b/Mage.Sets/src/mage/cards/s/StonefareCrocodile.java @@ -28,7 +28,7 @@ public final class StonefareCrocodile extends CardImpl { this.toughness = new MageInt(2); // {2}{B}: Stonefare Crocodile gains lifelink until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{2}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{B}"))); } private StonefareCrocodile(final StonefareCrocodile card) { diff --git a/Mage.Sets/src/mage/cards/s/StoneforgeMystic.java b/Mage.Sets/src/mage/cards/s/StoneforgeMystic.java index ab7cd94903..756df2a70f 100644 --- a/Mage.Sets/src/mage/cards/s/StoneforgeMystic.java +++ b/Mage.Sets/src/mage/cards/s/StoneforgeMystic.java @@ -43,7 +43,7 @@ public final class StoneforgeMystic extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(target, true, true), true)); // {1}{W}, {T}: You may put an Equipment card from your hand onto the battlefield. - SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutCardFromHandOntoBattlefieldEffect(filter), new ManaCostsImpl("{1}{W}")); + SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutCardFromHandOntoBattlefieldEffect(filter), new ManaCostsImpl<>("{1}{W}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StonehewerGiant.java b/Mage.Sets/src/mage/cards/s/StonehewerGiant.java index 32c6fb962f..3be10833c4 100644 --- a/Mage.Sets/src/mage/cards/s/StonehewerGiant.java +++ b/Mage.Sets/src/mage/cards/s/StonehewerGiant.java @@ -44,7 +44,7 @@ public final class StonehewerGiant extends CardImpl { Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new StonehewerGiantEffect(), - new ManaCostsImpl("{1}{W}") + new ManaCostsImpl<>("{1}{W}") ); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StonehornChanter.java b/Mage.Sets/src/mage/cards/s/StonehornChanter.java index 9a3d32d076..065949b277 100644 --- a/Mage.Sets/src/mage/cards/s/StonehornChanter.java +++ b/Mage.Sets/src/mage/cards/s/StonehornChanter.java @@ -31,7 +31,7 @@ public final class StonehornChanter extends CardImpl { this.toughness = new MageInt(4); // {5}{W}: Stonehorn Chanter gains vigilance and lifelink until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{5}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{5}{W}")); ability.addEffect(new GainAbilitySourceEffect(LifelinkAbility.getInstance())); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StonewiseFortifier.java b/Mage.Sets/src/mage/cards/s/StonewiseFortifier.java index d21065c47c..dfa1a08cd0 100644 --- a/Mage.Sets/src/mage/cards/s/StonewiseFortifier.java +++ b/Mage.Sets/src/mage/cards/s/StonewiseFortifier.java @@ -35,7 +35,7 @@ public final class StonewiseFortifier extends CardImpl { this.toughness = new MageInt(2); // {4}{W}: Prevent all damage that would be dealt to Stonewise Fortifier by target creature this turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StonewiseFortifierPreventAllDamageToEffect(), new ManaCostsImpl("{4}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StonewiseFortifierPreventAllDamageToEffect(), new ManaCostsImpl<>("{4}{W}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StonewoodInvoker.java b/Mage.Sets/src/mage/cards/s/StonewoodInvoker.java index 71fe7caedf..15375153a6 100644 --- a/Mage.Sets/src/mage/cards/s/StonewoodInvoker.java +++ b/Mage.Sets/src/mage/cards/s/StonewoodInvoker.java @@ -28,7 +28,7 @@ public final class StonewoodInvoker extends CardImpl { this.toughness = new MageInt(2); // {7}{G}: Stonewood Invoker gets +5/+5 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(5,5,Duration.EndOfTurn), new ManaCostsImpl("{7}{G}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(5,5,Duration.EndOfTurn), new ManaCostsImpl<>("{7}{G}"))); } private StonewoodInvoker(final StonewoodInvoker card) { diff --git a/Mage.Sets/src/mage/cards/s/Stonewright.java b/Mage.Sets/src/mage/cards/s/Stonewright.java index d8291dd4b5..6cc3f81bf5 100644 --- a/Mage.Sets/src/mage/cards/s/Stonewright.java +++ b/Mage.Sets/src/mage/cards/s/Stonewright.java @@ -36,7 +36,7 @@ public final class Stonewright extends CardImpl { this.addAbility(new SoulbondAbility()); // As long as Stonewright is paired with another creature, each of those creatures has "{R}: This creature gets +1/+0 until end of turn." - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityPairedEffect(ability, ruleText))); } diff --git a/Mage.Sets/src/mage/cards/s/StonybrookAngler.java b/Mage.Sets/src/mage/cards/s/StonybrookAngler.java index f5b7aa3e22..987f179e7d 100644 --- a/Mage.Sets/src/mage/cards/s/StonybrookAngler.java +++ b/Mage.Sets/src/mage/cards/s/StonybrookAngler.java @@ -30,7 +30,7 @@ public final class StonybrookAngler extends CardImpl { this.toughness = new MageInt(2); // {1}{U}, {tap}: You may tap or untap target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl("{1}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{1}{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StormElemental.java b/Mage.Sets/src/mage/cards/s/StormElemental.java index f9ac6e9ba9..f4e5f32940 100644 --- a/Mage.Sets/src/mage/cards/s/StormElemental.java +++ b/Mage.Sets/src/mage/cards/s/StormElemental.java @@ -44,13 +44,13 @@ public final class StormElemental extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {U}, Exile the top card of your library: Tap target creature with flying. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{U}")); ability.addCost(new ExileTopCardLibraryCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); // {U}, Exile the top card of your library: If the exiled card is a snow land, Storm Elemental gets +1/+1 until end of turn. - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StormElementalEffect(), new ManaCostsImpl("{U}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new StormElementalEffect(), new ManaCostsImpl<>("{U}")); ability2.addCost(new ExileTopCardLibraryCost()); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/s/StormFront.java b/Mage.Sets/src/mage/cards/s/StormFront.java index 309ec3fae3..5c88d0bf64 100644 --- a/Mage.Sets/src/mage/cards/s/StormFront.java +++ b/Mage.Sets/src/mage/cards/s/StormFront.java @@ -31,7 +31,7 @@ public final class StormFront extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{G}"); // {G}{G}: Tap target creature with flying. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{G}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{G}{G}")); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StormShaman.java b/Mage.Sets/src/mage/cards/s/StormShaman.java index 474c4aaac0..15afdf8a97 100644 --- a/Mage.Sets/src/mage/cards/s/StormShaman.java +++ b/Mage.Sets/src/mage/cards/s/StormShaman.java @@ -29,7 +29,7 @@ public final class StormShaman extends CardImpl { this.toughness = new MageInt(4); // {R}: Storm Shaman gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}"))); } private StormShaman(final StormShaman card) { diff --git a/Mage.Sets/src/mage/cards/s/Stormbind.java b/Mage.Sets/src/mage/cards/s/Stormbind.java index c21d47d7f1..fcde28f945 100644 --- a/Mage.Sets/src/mage/cards/s/Stormbind.java +++ b/Mage.Sets/src/mage/cards/s/Stormbind.java @@ -24,7 +24,7 @@ public final class Stormbind extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{R}{G}"); // {2}, Discard a card at random: Stormbind deals 2 damage to any target. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{2}")); ability.addCost(new DiscardCardCost(true)); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StormcallerOfKeranos.java b/Mage.Sets/src/mage/cards/s/StormcallerOfKeranos.java index bb87931e40..9f0845fecd 100644 --- a/Mage.Sets/src/mage/cards/s/StormcallerOfKeranos.java +++ b/Mage.Sets/src/mage/cards/s/StormcallerOfKeranos.java @@ -30,7 +30,7 @@ public final class StormcallerOfKeranos extends CardImpl { // Haste this.addAbility(HasteAbility.getInstance()); // {1}{U}: Scry 1. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1), new ManaCostsImpl("{1}{U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1), new ManaCostsImpl<>("{1}{U}"))); } private StormcallerOfKeranos(final StormcallerOfKeranos card) { diff --git a/Mage.Sets/src/mage/cards/s/StormchaserChimera.java b/Mage.Sets/src/mage/cards/s/StormchaserChimera.java index 176ce12367..c4314d2762 100644 --- a/Mage.Sets/src/mage/cards/s/StormchaserChimera.java +++ b/Mage.Sets/src/mage/cards/s/StormchaserChimera.java @@ -40,7 +40,7 @@ public final class StormchaserChimera extends CardImpl { // Flying this.addAbility(FlyingAbility.getInstance()); // {2}{U}{R}: Scry 1, then reveal the top card of your library. Stormchaser Chimera gets +X/+0 until end of turn, where X is that card's converted mana cost. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1, false), new ManaCostsImpl("{2}{U}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1, false), new ManaCostsImpl<>("{2}{U}{R}")); ability.addEffect(new StormchaserChimeraEffect()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StormcloudDjinn.java b/Mage.Sets/src/mage/cards/s/StormcloudDjinn.java index 0e04d1e819..b3aa559488 100644 --- a/Mage.Sets/src/mage/cards/s/StormcloudDjinn.java +++ b/Mage.Sets/src/mage/cards/s/StormcloudDjinn.java @@ -36,7 +36,7 @@ public final class StormcloudDjinn extends CardImpl { this.addAbility(new CanBlockOnlyFlyingAbility()); // {R}{R}: Stormcloud Djinn gets +2/+0 until end of turn and deals 1 damage to you. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), - new ManaCostsImpl("{R}{R}")); + new ManaCostsImpl<>("{R}{R}")); Effect effect = new DamageControllerEffect(1); effect.setText("and deals 1 damage to you"); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/s/StormcragElemental.java b/Mage.Sets/src/mage/cards/s/StormcragElemental.java index d2d26275ae..717b6b270f 100644 --- a/Mage.Sets/src/mage/cards/s/StormcragElemental.java +++ b/Mage.Sets/src/mage/cards/s/StormcragElemental.java @@ -27,7 +27,7 @@ public final class StormcragElemental extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Megamorph {4}{R}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{R}{R}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{R}{R}"), true)); } private StormcragElemental(final StormcragElemental card) { diff --git a/Mage.Sets/src/mage/cards/s/StormscaleAnarch.java b/Mage.Sets/src/mage/cards/s/StormscaleAnarch.java index 52c2c9db45..969b0baf95 100644 --- a/Mage.Sets/src/mage/cards/s/StormscaleAnarch.java +++ b/Mage.Sets/src/mage/cards/s/StormscaleAnarch.java @@ -33,7 +33,7 @@ public final class StormscaleAnarch extends CardImpl { this.toughness = new MageInt(2); // {2}{R}, Discard a card at random: Stormscale Anarch deals 2 damage to any target. If the discarded card was multicolored, Stormscale Anarch deals 4 damage to that creature or player instead. - Ability ability = new SimpleActivatedAbility(new StormscaleAnarchEffect(), new ManaCostsImpl("{2}{R}")); + Ability ability = new SimpleActivatedAbility(new StormscaleAnarchEffect(), new ManaCostsImpl<>("{2}{R}")); ability.addCost(new DiscardCardCost(true)); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StormscapeApprentice.java b/Mage.Sets/src/mage/cards/s/StormscapeApprentice.java index 658d257a08..2090746f79 100644 --- a/Mage.Sets/src/mage/cards/s/StormscapeApprentice.java +++ b/Mage.Sets/src/mage/cards/s/StormscapeApprentice.java @@ -32,12 +32,12 @@ public final class StormscapeApprentice extends CardImpl { this.toughness = new MageInt(1); // {W}, {T}: Tap target creature. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl("{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {B}, {T}: Target player loses 1 life. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ManaCostsImpl("{B}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ManaCostsImpl<>("{B}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPlayer()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/StormscapeMaster.java b/Mage.Sets/src/mage/cards/s/StormscapeMaster.java index f0951fa077..f272e72bbe 100644 --- a/Mage.Sets/src/mage/cards/s/StormscapeMaster.java +++ b/Mage.Sets/src/mage/cards/s/StormscapeMaster.java @@ -37,13 +37,13 @@ public final class StormscapeMaster extends CardImpl { // {W}{W}, {T}: Target creature gains protection from the color of your choice until end of turn. Effect effect = new GainProtectionFromColorTargetEffect(Duration.EndOfTurn); effect.setText("Target creature gains protection from the color of your choice until end of turn."); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{W}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{W}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {B}{B}, {T}: Target player loses 2 life and you gain 2 life. - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl("{B}{B}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{B}{B}")); ability.addEffect(new GainLifeEffect(2).setText("and you gain 2 life")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPlayer()); diff --git a/Mage.Sets/src/mage/cards/s/StormwingDragon.java b/Mage.Sets/src/mage/cards/s/StormwingDragon.java index 0a1b7d52d9..4d39ce2588 100644 --- a/Mage.Sets/src/mage/cards/s/StormwingDragon.java +++ b/Mage.Sets/src/mage/cards/s/StormwingDragon.java @@ -43,7 +43,7 @@ public final class StormwingDragon extends CardImpl { this.addAbility(FirstStrikeAbility.getInstance()); // Megamorph {5}{R}{R} - this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{R}{R}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{R}{R}"), true)); // When Stormwing Dragon is turned face up, put a +1/+1 counter on each other Dragon creature you control. this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), false, false)); diff --git a/Mage.Sets/src/mage/cards/s/StormwingEntity.java b/Mage.Sets/src/mage/cards/s/StormwingEntity.java index 076af362ea..d8b1c2bcc4 100644 --- a/Mage.Sets/src/mage/cards/s/StormwingEntity.java +++ b/Mage.Sets/src/mage/cards/s/StormwingEntity.java @@ -41,7 +41,7 @@ public final class StormwingEntity extends CardImpl { // This spell costs {2}{U} less to cast if you've cast an instant or sorcery spell this turn. this.addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect( - new ManaCostsImpl("{2}{U}"), StormwingEntityCondition.instance + new ManaCostsImpl<>("{2}{U}"), StormwingEntityCondition.instance )).setRuleAtTheTop(true).addHint(hint), new SpellsCastWatcher()); // Flying diff --git a/Mage.Sets/src/mage/cards/s/StoryCircle.java b/Mage.Sets/src/mage/cards/s/StoryCircle.java index d28b341b9e..140a0a2cd3 100644 --- a/Mage.Sets/src/mage/cards/s/StoryCircle.java +++ b/Mage.Sets/src/mage/cards/s/StoryCircle.java @@ -32,7 +32,7 @@ public final class StoryCircle extends CardImpl { // As Story Circle enters the battlefield, choose a color. this.addAbility(new EntersBattlefieldAbility(new ChooseColorEffect(Outcome.Neutral))); // {W}: The next time a source of your choice of the chosen color would deal damage to you this turn, prevent that damage. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new StoryCircleEffect(), new ManaCostsImpl("{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new StoryCircleEffect(), new ManaCostsImpl<>("{W}"))); } private StoryCircle(final StoryCircle card) { diff --git a/Mage.Sets/src/mage/cards/s/StrandsOfNight.java b/Mage.Sets/src/mage/cards/s/StrandsOfNight.java index 66628c2803..f507cf8325 100644 --- a/Mage.Sets/src/mage/cards/s/StrandsOfNight.java +++ b/Mage.Sets/src/mage/cards/s/StrandsOfNight.java @@ -34,7 +34,7 @@ public final class StrandsOfNight extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}{B}"); // {B}{B}, Pay 2 life, Sacrifice a Swamp: Return target creature card from your graveyard to the battlefield. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl("{B}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl<>("{B}{B}")); ability.addCost(new PayLifeCost(2)); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter))); ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD)); diff --git a/Mage.Sets/src/mage/cards/s/StrandsOfUndeath.java b/Mage.Sets/src/mage/cards/s/StrandsOfUndeath.java index 275ddae657..3e7c06cc3d 100644 --- a/Mage.Sets/src/mage/cards/s/StrandsOfUndeath.java +++ b/Mage.Sets/src/mage/cards/s/StrandsOfUndeath.java @@ -38,7 +38,7 @@ public final class StrandsOfUndeath extends CardImpl { this.getSpellAbility().addTarget(auraTarget); this.getSpellAbility().addEffect(new AttachEffect(Outcome.AddAbility)); this.addAbility(new EnchantAbility(auraTarget.getTargetName())); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new ManaCostsImpl<>("{B}"))); Ability abilityDiscard = new EntersBattlefieldTriggeredAbility(new DiscardTargetEffect(2)); abilityDiscard.addTarget(new TargetPlayer()); diff --git a/Mage.Sets/src/mage/cards/s/StranglingSoot.java b/Mage.Sets/src/mage/cards/s/StranglingSoot.java index b5061c16ab..e720e91b11 100644 --- a/Mage.Sets/src/mage/cards/s/StranglingSoot.java +++ b/Mage.Sets/src/mage/cards/s/StranglingSoot.java @@ -32,7 +32,7 @@ public final class StranglingSoot extends CardImpl { this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); this.getSpellAbility().addEffect(new DestroyTargetEffect()); // Flashback {5}{R} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{5}{R}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{5}{R}"))); } private StranglingSoot(final StranglingSoot card) { diff --git a/Mage.Sets/src/mage/cards/s/StratusDancer.java b/Mage.Sets/src/mage/cards/s/StratusDancer.java index 6e57901459..a32d05dd07 100644 --- a/Mage.Sets/src/mage/cards/s/StratusDancer.java +++ b/Mage.Sets/src/mage/cards/s/StratusDancer.java @@ -34,7 +34,7 @@ public final class StratusDancer extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // Megamorph {1}{U} - this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{U}"), true)); + this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{U}"), true)); // When Stratus Dancer is turned face up, counter target instant or sorcery spell Effect effect = new CounterTargetEffect(); diff --git a/Mage.Sets/src/mage/cards/s/StreamHopper.java b/Mage.Sets/src/mage/cards/s/StreamHopper.java index fc41137ea9..68bdd5c3e0 100644 --- a/Mage.Sets/src/mage/cards/s/StreamHopper.java +++ b/Mage.Sets/src/mage/cards/s/StreamHopper.java @@ -27,7 +27,7 @@ public final class StreamHopper extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{U/R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{U/R}"))); } private StreamHopper(final StreamHopper card) { diff --git a/Mage.Sets/src/mage/cards/s/StreetSpasm.java b/Mage.Sets/src/mage/cards/s/StreetSpasm.java index a14e0760a2..fd6410f189 100644 --- a/Mage.Sets/src/mage/cards/s/StreetSpasm.java +++ b/Mage.Sets/src/mage/cards/s/StreetSpasm.java @@ -39,7 +39,7 @@ public final class StreetSpasm extends CardImpl { this.getSpellAbility().addEffect(new DamageTargetEffect(ManacostVariableValue.REGULAR)); // Overload {X}{X}{R}{R} (You may cast this spell for its overload cost. If you do, change its text by replacing all instances of "target" with "each.") - this.addAbility(new OverloadAbility(this, new DamageAllEffect(ManacostVariableValue.REGULAR, filter), new ManaCostsImpl("{X}{X}{R}{R}"))); + this.addAbility(new OverloadAbility(this, new DamageAllEffect(ManacostVariableValue.REGULAR, filter), new ManaCostsImpl<>("{X}{X}{R}{R}"))); } private StreetSpasm(final StreetSpasm card) { diff --git a/Mage.Sets/src/mage/cards/s/StrengthOfIsolation.java b/Mage.Sets/src/mage/cards/s/StrengthOfIsolation.java index 7382dda0dd..82cd1896bf 100644 --- a/Mage.Sets/src/mage/cards/s/StrengthOfIsolation.java +++ b/Mage.Sets/src/mage/cards/s/StrengthOfIsolation.java @@ -47,7 +47,7 @@ public final class StrengthOfIsolation extends CardImpl { ability.addEffect(effect); this.addAbility(ability); // Madness {W} - this.addAbility(new MadnessAbility(new ManaCostsImpl("{W}"))); + this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{W}"))); } private StrengthOfIsolation(final StrengthOfIsolation card) { diff --git a/Mage.Sets/src/mage/cards/s/StrengthOfLunacy.java b/Mage.Sets/src/mage/cards/s/StrengthOfLunacy.java index a2d2fea2ce..f218b0ad07 100644 --- a/Mage.Sets/src/mage/cards/s/StrengthOfLunacy.java +++ b/Mage.Sets/src/mage/cards/s/StrengthOfLunacy.java @@ -47,7 +47,7 @@ public final class StrengthOfLunacy extends CardImpl { ability.addEffect(effect); this.addAbility(ability); // Madness {B} - this.addAbility(new MadnessAbility(new ManaCostsImpl("{B}"))); + this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{B}"))); } private StrengthOfLunacy(final StrengthOfLunacy card) { diff --git a/Mage.Sets/src/mage/cards/s/StringOfDisappearances.java b/Mage.Sets/src/mage/cards/s/StringOfDisappearances.java index ecbe6e9db0..ce004b3d13 100644 --- a/Mage.Sets/src/mage/cards/s/StringOfDisappearances.java +++ b/Mage.Sets/src/mage/cards/s/StringOfDisappearances.java @@ -73,7 +73,7 @@ class StringOfDisappearancesEffect extends OneShotEffect { if (!affectedPlayer.chooseUse(Outcome.Copy, "Pay {U}{U} to copy the spell?", source, game)) { return true; } - Cost cost = new ManaCostsImpl("{U}{U}"); + Cost cost = new ManaCostsImpl<>("{U}{U}"); if (!cost.pay(source, game, source, affectedPlayer.getId(), false, null)) { return true; } diff --git a/Mage.Sets/src/mage/cards/s/StripedRiverwinder.java b/Mage.Sets/src/mage/cards/s/StripedRiverwinder.java index e5d902ee01..0a0c58c9df 100644 --- a/Mage.Sets/src/mage/cards/s/StripedRiverwinder.java +++ b/Mage.Sets/src/mage/cards/s/StripedRiverwinder.java @@ -28,7 +28,7 @@ public final class StripedRiverwinder extends CardImpl { this.addAbility(HexproofAbility.getInstance()); // Cycling {U} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{U}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{U}"))); } diff --git a/Mage.Sets/src/mage/cards/s/StromgaldCrusader.java b/Mage.Sets/src/mage/cards/s/StromgaldCrusader.java index f3d613d8c7..bdde6f6bef 100644 --- a/Mage.Sets/src/mage/cards/s/StromgaldCrusader.java +++ b/Mage.Sets/src/mage/cards/s/StromgaldCrusader.java @@ -35,10 +35,10 @@ public final class StromgaldCrusader extends CardImpl { this.addAbility(ProtectionAbility.from(ObjectColor.WHITE)); // {B}: Stromgald Crusader gains flying until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{B}"))); // {B}{B}: Stromgald Crusader gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl("{B}{B}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl<>("{B}{B}"))); } private StromgaldCrusader(final StromgaldCrusader card) { diff --git a/Mage.Sets/src/mage/cards/s/StromkirkOccultist.java b/Mage.Sets/src/mage/cards/s/StromkirkOccultist.java index 275548de47..618f6d74f9 100644 --- a/Mage.Sets/src/mage/cards/s/StromkirkOccultist.java +++ b/Mage.Sets/src/mage/cards/s/StromkirkOccultist.java @@ -33,7 +33,7 @@ public final class StromkirkOccultist extends CardImpl { this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new ExileTopXMayPlayUntilEndOfTurnEffect(1), false)); // Madness {1}{R} - this.addAbility(new MadnessAbility(new ManaCostsImpl("{1}{R}"))); + this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{1}{R}"))); } private StromkirkOccultist(final StromkirkOccultist card) { diff --git a/Mage.Sets/src/mage/cards/s/StrongholdBiologist.java b/Mage.Sets/src/mage/cards/s/StrongholdBiologist.java index 547272ec27..cf831cf5ad 100644 --- a/Mage.Sets/src/mage/cards/s/StrongholdBiologist.java +++ b/Mage.Sets/src/mage/cards/s/StrongholdBiologist.java @@ -31,7 +31,7 @@ public final class StrongholdBiologist extends CardImpl { this.toughness = new MageInt(1); // {U}{U}, {tap}, Discard a card: Counter target creature spell. - Ability ability = new SimpleActivatedAbility(new CounterTargetEffect(), new ManaCostsImpl("{U}{U}")); + Ability ability = new SimpleActivatedAbility(new CounterTargetEffect(), new ManaCostsImpl<>("{U}{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); ability.addTarget(new TargetSpell(new FilterCreatureSpell())); diff --git a/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java b/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java index a403daf089..34dbe63064 100644 --- a/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java +++ b/Mage.Sets/src/mage/cards/s/StrongholdMachinist.java @@ -32,7 +32,7 @@ public final class StrongholdMachinist extends CardImpl { this.toughness = new MageInt(1); // {U}{U}, {tap}, Discard a card: Counter target noncreature spell. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl("{U}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{U}{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardCardCost()); ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_NON_CREATURE)); diff --git a/Mage.Sets/src/mage/cards/s/StrongholdOverseer.java b/Mage.Sets/src/mage/cards/s/StrongholdOverseer.java index 1972a7470f..1ad200544c 100644 --- a/Mage.Sets/src/mage/cards/s/StrongholdOverseer.java +++ b/Mage.Sets/src/mage/cards/s/StrongholdOverseer.java @@ -45,7 +45,7 @@ public final class StrongholdOverseer extends CardImpl { // Shadow this.addAbility(ShadowAbility.getInstance()); // {B}{B}: Creatures with shadow get +1/+0 until end of turn and creatures without shadow get -1/-0 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false), new ManaCostsImpl("{B}{B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false), new ManaCostsImpl<>("{B}{B}")); Effect effect = new BoostAllEffect(-1, 0, Duration.EndOfTurn, filter2, false); effect.setText("and creatures without shadow get -1/-0 until end of turn"); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/s/StudentOfWarfare.java b/Mage.Sets/src/mage/cards/s/StudentOfWarfare.java index ec094ae4c2..a696841e35 100644 --- a/Mage.Sets/src/mage/cards/s/StudentOfWarfare.java +++ b/Mage.Sets/src/mage/cards/s/StudentOfWarfare.java @@ -31,7 +31,7 @@ public final class StudentOfWarfare extends LevelerCard { this.power = new MageInt(1); this.toughness = new MageInt(1); - this.addAbility(new LevelUpAbility(new ManaCostsImpl("{W}"))); + this.addAbility(new LevelUpAbility(new ManaCostsImpl<>("{W}"))); Abilities abilities1 = new AbilitiesImpl<>(); abilities1.add(FirstStrikeAbility.getInstance()); diff --git a/Mage.Sets/src/mage/cards/s/SturdyHatchling.java b/Mage.Sets/src/mage/cards/s/SturdyHatchling.java index d4875e3c46..1dd0a756fc 100644 --- a/Mage.Sets/src/mage/cards/s/SturdyHatchling.java +++ b/Mage.Sets/src/mage/cards/s/SturdyHatchling.java @@ -46,7 +46,7 @@ public final class SturdyHatchling extends CardImpl { // Sturdy Hatchling enters the battlefield with four -1/-1 counters on it. this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.M1M1.createInstance(4)),"with four -1/-1 counters on it")); // {G/U}: Sturdy Hatchling gains shroud until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{G/U}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{G/U}"))); // Whenever you cast a green spell, remove a -1/-1 counter from Sturdy Hatchling. this.addAbility(new SpellCastControllerTriggeredAbility(new RemoveCounterSourceEffect(CounterType.M1M1.createInstance(1)), filterGreenSpell, false)); // Whenever you cast a blue spell, remove a -1/-1 counter from Sturdy Hatchling. diff --git a/Mage.Sets/src/mage/cards/s/SubiraTulzidiCaravanner.java b/Mage.Sets/src/mage/cards/s/SubiraTulzidiCaravanner.java index f7bfca6bd7..6c6a3e5d13 100644 --- a/Mage.Sets/src/mage/cards/s/SubiraTulzidiCaravanner.java +++ b/Mage.Sets/src/mage/cards/s/SubiraTulzidiCaravanner.java @@ -63,7 +63,7 @@ public final class SubiraTulzidiCaravanner extends CardImpl { // {1}{R}, {T}, Discard your hand: Until end of turn, whenever a creature you control with power 2 or less deals combat damage to a player, draw a card. ability = new SimpleActivatedAbility(new CreateDelayedTriggeredAbilityEffect( new SubiraTulzidiCaravannerAbility() - ), new ManaCostsImpl("{1}{R}")); + ), new ManaCostsImpl<>("{1}{R}")); ability.addCost(new TapSourceCost()); ability.addCost(new DiscardHandCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SultaiBanner.java b/Mage.Sets/src/mage/cards/s/SultaiBanner.java index c86f244f85..ec098570bc 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiBanner.java +++ b/Mage.Sets/src/mage/cards/s/SultaiBanner.java @@ -31,7 +31,7 @@ public final class SultaiBanner extends CardImpl { this.addAbility(new BlueManaAbility()); // {B}{G}{U}, {T}, Sacrifice Sultai Banner: Draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{B}{G}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{B}{G}{U}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SummonersPact.java b/Mage.Sets/src/mage/cards/s/SummonersPact.java index 2ea7c5aaee..23fe2f6872 100644 --- a/Mage.Sets/src/mage/cards/s/SummonersPact.java +++ b/Mage.Sets/src/mage/cards/s/SummonersPact.java @@ -33,7 +33,7 @@ public final class SummonersPact extends CardImpl { // Search your library for a green creature card, reveal it, and put it into your hand. Then shuffle your library. this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true)); // At the beginning of your next upkeep, pay {2}{G}{G}. If you don't, you lose the game. - this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new PactDelayedTriggeredAbility(new ManaCostsImpl("{2}{G}{G}")))); + this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new PactDelayedTriggeredAbility(new ManaCostsImpl<>("{2}{G}{G}")))); } private SummonersPact(final SummonersPact card) { diff --git a/Mage.Sets/src/mage/cards/s/SummoningTrap.java b/Mage.Sets/src/mage/cards/s/SummoningTrap.java index 4339ce56ba..0b6ac70ec7 100644 --- a/Mage.Sets/src/mage/cards/s/SummoningTrap.java +++ b/Mage.Sets/src/mage/cards/s/SummoningTrap.java @@ -34,7 +34,7 @@ public final class SummoningTrap extends CardImpl { this.subtype.add(SubType.TRAP); // If a creature spell you cast this turn was countered by a spell or ability an opponent controlled, you may pay {0} rather than pay Summoning Trap's mana cost. - this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{0}"), SummoningTrapCondition.instance), new SummoningTrapWatcher()); + this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl<>("{0}"), SummoningTrapCondition.instance), new SummoningTrapWatcher()); // Look at the top seven cards of your library. You may put a creature card from among them onto the battlefield. // Put the rest on the bottom of your library in any order. diff --git a/Mage.Sets/src/mage/cards/s/SunCollaredRaptor.java b/Mage.Sets/src/mage/cards/s/SunCollaredRaptor.java index deb517edec..7ad67d508b 100644 --- a/Mage.Sets/src/mage/cards/s/SunCollaredRaptor.java +++ b/Mage.Sets/src/mage/cards/s/SunCollaredRaptor.java @@ -34,7 +34,7 @@ public final class SunCollaredRaptor extends CardImpl { this.addAbility(new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(3, 0, Duration.EndOfTurn), - new ManaCostsImpl("{2}{R}")) + new ManaCostsImpl<>("{2}{R}")) ); } diff --git a/Mage.Sets/src/mage/cards/s/SunbladeElf.java b/Mage.Sets/src/mage/cards/s/SunbladeElf.java index 7fcde80074..939de6e681 100644 --- a/Mage.Sets/src/mage/cards/s/SunbladeElf.java +++ b/Mage.Sets/src/mage/cards/s/SunbladeElf.java @@ -40,7 +40,7 @@ public final class SunbladeElf extends CardImpl { // Sunblade Elf gets +1/+1 as long as you control a Plains. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceWhileControlsEffect(filter, 1, 1))); // {4}{W}: Creatures you control get +1/+1 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false), new ManaCostsImpl("{4}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false), new ManaCostsImpl<>("{4}{W}"))); } diff --git a/Mage.Sets/src/mage/cards/s/SunfireBalm.java b/Mage.Sets/src/mage/cards/s/SunfireBalm.java index ad765d1fda..c1a1726433 100644 --- a/Mage.Sets/src/mage/cards/s/SunfireBalm.java +++ b/Mage.Sets/src/mage/cards/s/SunfireBalm.java @@ -26,7 +26,7 @@ public final class SunfireBalm extends CardImpl { this.getSpellAbility().addEffect(new PreventDamageToTargetEffect(Duration.EndOfTurn, 4)); this.getSpellAbility().addTarget(new TargetAnyTarget()); // Cycling {1}{W} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{W}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{W}"))); // When you cycle Sunfire Balm, you may prevent the next 1 damage that would be dealt to any target this turn. Ability ability = new CycleTriggeredAbility(new PreventDamageToTargetEffect(Duration.EndOfTurn, 1), true); ability.addTarget(new TargetAnyTarget()); diff --git a/Mage.Sets/src/mage/cards/s/SunflareShaman.java b/Mage.Sets/src/mage/cards/s/SunflareShaman.java index 16c7eb1377..3cbe4343c0 100644 --- a/Mage.Sets/src/mage/cards/s/SunflareShaman.java +++ b/Mage.Sets/src/mage/cards/s/SunflareShaman.java @@ -35,7 +35,7 @@ public final class SunflareShaman extends CardImpl { this.toughness = new MageInt(1); // {1}{R}, {tap}: Sunflare Shaman deals X damage to any target and X damage to itself, where X is the number of Elemental cards in your graveyard. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SunflareShamanEffect(), new ManaCostsImpl("{1}{R}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SunflareShamanEffect(), new ManaCostsImpl<>("{1}{R}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Sunforger.java b/Mage.Sets/src/mage/cards/s/Sunforger.java index 85e47c4ec4..323cef247d 100644 --- a/Mage.Sets/src/mage/cards/s/Sunforger.java +++ b/Mage.Sets/src/mage/cards/s/Sunforger.java @@ -51,7 +51,7 @@ public final class Sunforger extends CardImpl { // instant card with converted mana cost 4 or less and cast that card // without paying its mana cost. Then shuffle your library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new SunforgerEffect(), new ManaCostsImpl("{R}{W}")); + new SunforgerEffect(), new ManaCostsImpl<>("{R}{W}")); ability.addCost(new SunforgerUnattachCost(this.getName())); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SungrassEgg.java b/Mage.Sets/src/mage/cards/s/SungrassEgg.java index f4aa9bf141..44a4efe07d 100644 --- a/Mage.Sets/src/mage/cards/s/SungrassEgg.java +++ b/Mage.Sets/src/mage/cards/s/SungrassEgg.java @@ -24,7 +24,7 @@ public final class SungrassEgg extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}"); // {2}, {tap}, Sacrifice Sungrass Egg: Add {G}{W}. Draw a card. - ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 0, 0, 0, 1, 0, 0, 0), new ManaCostsImpl("{2}")); + ActivatedManaAbilityImpl ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 0, 0, 0, 1, 0, 0, 0), new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addEffect(new DrawCardSourceControllerEffect(1)); diff --git a/Mage.Sets/src/mage/cards/s/SungrassPrairie.java b/Mage.Sets/src/mage/cards/s/SungrassPrairie.java index a99c16cfd7..8a9183e0f2 100644 --- a/Mage.Sets/src/mage/cards/s/SungrassPrairie.java +++ b/Mage.Sets/src/mage/cards/s/SungrassPrairie.java @@ -22,7 +22,7 @@ public final class SungrassPrairie extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // {1}, {tap}: Add {G}{W}. - Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 0, 0, 0, 1, 0, 0, 0), new ManaCostsImpl("{1}")); + Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 0, 0, 0, 1, 0, 0, 0), new ManaCostsImpl<>("{1}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SunhomeEnforcer.java b/Mage.Sets/src/mage/cards/s/SunhomeEnforcer.java index 3c794f83ec..38c607a07d 100644 --- a/Mage.Sets/src/mage/cards/s/SunhomeEnforcer.java +++ b/Mage.Sets/src/mage/cards/s/SunhomeEnforcer.java @@ -36,7 +36,7 @@ public final class SunhomeEnforcer extends CardImpl { this.addAbility(new SunhomeEnforcerTriggeredAbility()); // {1}{R}: Sunhome Enforcer gets +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}"))); } private SunhomeEnforcer(final SunhomeEnforcer card) { diff --git a/Mage.Sets/src/mage/cards/s/SunhomeFortressOfTheLegion.java b/Mage.Sets/src/mage/cards/s/SunhomeFortressOfTheLegion.java index b74a48f223..21e5cfcea5 100644 --- a/Mage.Sets/src/mage/cards/s/SunhomeFortressOfTheLegion.java +++ b/Mage.Sets/src/mage/cards/s/SunhomeFortressOfTheLegion.java @@ -25,7 +25,7 @@ public final class SunhomeFortressOfTheLegion extends CardImpl { public SunhomeFortressOfTheLegion(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.addAbility(new ColorlessManaAbility()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{2}{R}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{R}{W}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SunhomeGuildmage.java b/Mage.Sets/src/mage/cards/s/SunhomeGuildmage.java index 30ab1ffbc1..189b02df32 100644 --- a/Mage.Sets/src/mage/cards/s/SunhomeGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SunhomeGuildmage.java @@ -29,10 +29,10 @@ public final class SunhomeGuildmage extends CardImpl { this.toughness = new MageInt(2); //{1}{R}{W}: Creatures you control get +1/+0 until end of turn. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}{W}"))); //{2}{R}{W}: Create a 1/1 red and white Soldier creature token with haste. - this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SoldierTokenWithHaste()), new ManaCostsImpl("{2}{R}{W}"))); + this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SoldierTokenWithHaste()), new ManaCostsImpl<>("{2}{R}{W}"))); } private SunhomeGuildmage(final SunhomeGuildmage card) { diff --git a/Mage.Sets/src/mage/cards/s/SunkenCity.java b/Mage.Sets/src/mage/cards/s/SunkenCity.java index 27100937f7..07f55e4cd3 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenCity.java +++ b/Mage.Sets/src/mage/cards/s/SunkenCity.java @@ -33,7 +33,7 @@ public final class SunkenCity extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{U}{U}"); // At the beginning of your upkeep, sacrifice Sunken City unless you pay {U}{U}. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{U}{U}")), TargetController.YOU, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{U}{U}")), TargetController.YOU, false)); // Blue creatures get +1/+1. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, false))); } diff --git a/Mage.Sets/src/mage/cards/s/SunkenField.java b/Mage.Sets/src/mage/cards/s/SunkenField.java index d65a21d865..7bfbc2bf97 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenField.java +++ b/Mage.Sets/src/mage/cards/s/SunkenField.java @@ -40,7 +40,7 @@ public final class SunkenField extends CardImpl { Ability ability = new EnchantAbility(auraTarget.getTargetName()); this.addAbility(ability); // Enchanted land has "{T}: Counter target spell unless its controller pays {1}." - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(new ManaCostsImpl("{1}")), new TapSourceCost()); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(new ManaCostsImpl<>("{1}")), new TapSourceCost()); ability.addTarget(new TargetSpell()); Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA); effect.setText("Enchanted land has \"{T}: Counter target spell unless its controller pays {1}.\""); diff --git a/Mage.Sets/src/mage/cards/s/SunkenRuins.java b/Mage.Sets/src/mage/cards/s/SunkenRuins.java index 309857c65e..aca1cfd306 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenRuins.java +++ b/Mage.Sets/src/mage/cards/s/SunkenRuins.java @@ -24,15 +24,15 @@ public final class SunkenRuins extends CardImpl { // {tap}: Add {C}. this.addAbility(new ColorlessManaAbility()); // {UB}, {tap}: Add {U}{U}, {U}{B}, or {B}{B}. - SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlueMana(2), new ManaCostsImpl("{U/B}")); + SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlueMana(2), new ManaCostsImpl<>("{U/B}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); - ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 1, 1, 0, 0, 0, 0, 0), new ManaCostsImpl("{U/B}")); + ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 1, 1, 0, 0, 0, 0, 0), new ManaCostsImpl<>("{U/B}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); - ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(2), new ManaCostsImpl("{U/B}")); + ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(2), new ManaCostsImpl<>("{U/B}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SunmanePegasus.java b/Mage.Sets/src/mage/cards/s/SunmanePegasus.java index b1ffbb30e8..d0d2f46b16 100644 --- a/Mage.Sets/src/mage/cards/s/SunmanePegasus.java +++ b/Mage.Sets/src/mage/cards/s/SunmanePegasus.java @@ -34,7 +34,7 @@ public final class SunmanePegasus extends CardImpl { // {1}{W}: Sunmane Pegasus gains vigilance and lifelink until end of turn. Ability ability = new SimpleActivatedAbility(new GainAbilitySourceEffect( VigilanceAbility.getInstance(), Duration.EndOfTurn - ).setText("{this} gains vigilance"), new ManaCostsImpl("{1}{W}")); + ).setText("{this} gains vigilance"), new ManaCostsImpl<>("{1}{W}")); ability.addEffect(new GainAbilitySourceEffect( LifelinkAbility.getInstance(), Duration.EndOfTurn ).setText("and lifelink until end of turn")); diff --git a/Mage.Sets/src/mage/cards/s/SunsBounty.java b/Mage.Sets/src/mage/cards/s/SunsBounty.java index 0357740670..3e37c88d01 100644 --- a/Mage.Sets/src/mage/cards/s/SunsBounty.java +++ b/Mage.Sets/src/mage/cards/s/SunsBounty.java @@ -22,7 +22,7 @@ public final class SunsBounty extends CardImpl { this.getSpellAbility().addEffect(new GainLifeEffect(4)); // Recover {1}{W} - this.addAbility(new RecoverAbility(new ManaCostsImpl("{1}{W}"), this)); + this.addAbility(new RecoverAbility(new ManaCostsImpl<>("{1}{W}"), this)); } private SunsBounty(final SunsBounty card) { diff --git a/Mage.Sets/src/mage/cards/s/SunscapeApprentice.java b/Mage.Sets/src/mage/cards/s/SunscapeApprentice.java index 531b937800..80bd1d8ebe 100644 --- a/Mage.Sets/src/mage/cards/s/SunscapeApprentice.java +++ b/Mage.Sets/src/mage/cards/s/SunscapeApprentice.java @@ -34,13 +34,13 @@ public final class SunscapeApprentice extends CardImpl { // {G}, {tap}: Target creature gets +1/+1 until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), - new ManaCostsImpl("{G}")); + new ManaCostsImpl<>("{G}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // {U}, {tap}: Put target creature you control on top of its owner's library. ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibraryTargetEffect(true), - new ManaCostsImpl("{U}")); + new ManaCostsImpl<>("{U}")); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SunscapeMaster.java b/Mage.Sets/src/mage/cards/s/SunscapeMaster.java index deea61ff93..8dfa9c11c6 100644 --- a/Mage.Sets/src/mage/cards/s/SunscapeMaster.java +++ b/Mage.Sets/src/mage/cards/s/SunscapeMaster.java @@ -34,14 +34,14 @@ public final class SunscapeMaster extends CardImpl { // {G}{G}, {tap}: Creatures you control get +2/+2 until end of turn. Effect effect1 = new BoostControlledEffect(2, 2, Duration.EndOfTurn); effect1.setText("Creatures you control get +2/+2 until end of turn"); - Ability ability1 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect1, new ManaCostsImpl("{G}{G}")); + Ability ability1 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect1, new ManaCostsImpl<>("{G}{G}")); ability1.addCost(new TapSourceCost()); this.addAbility(ability1); // {U}{U}, {tap}: Return target creature to its owner's hand. Effect effect2 = new ReturnToHandTargetEffect(); effect2.setText("Return target creature to its owner's hand."); - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect2, new ManaCostsImpl("{U}{U}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect2, new ManaCostsImpl<>("{U}{U}")); ability2.addTarget(new TargetCreaturePermanent()); ability2.addCost(new TapSourceCost()); this.addAbility(ability2); diff --git a/Mage.Sets/src/mage/cards/s/Sunstone.java b/Mage.Sets/src/mage/cards/s/Sunstone.java index 5e3df1dcb0..0f526ac568 100644 --- a/Mage.Sets/src/mage/cards/s/Sunstone.java +++ b/Mage.Sets/src/mage/cards/s/Sunstone.java @@ -35,7 +35,7 @@ public final class Sunstone extends CardImpl { // {2}, Sacrifice a snow land: Prevent all combat damage that would be dealt this turn. Effect effect = new PreventAllDamageByAllPermanentsEffect(Duration.EndOfTurn, true); effect.setText("Prevent all combat damage that would be dealt this turn"); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SurgeMare.java b/Mage.Sets/src/mage/cards/s/SurgeMare.java index faf14a0e0e..cd11baa5f3 100644 --- a/Mage.Sets/src/mage/cards/s/SurgeMare.java +++ b/Mage.Sets/src/mage/cards/s/SurgeMare.java @@ -58,7 +58,7 @@ public final class SurgeMare extends CardImpl { this.addAbility(new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(2, -2, Duration.EndOfTurn), - new ManaCostsImpl("{1}{U}") + new ManaCostsImpl<>("{1}{U}") )); } diff --git a/Mage.Sets/src/mage/cards/s/Surgespanner.java b/Mage.Sets/src/mage/cards/s/Surgespanner.java index 735a28683e..6348776038 100644 --- a/Mage.Sets/src/mage/cards/s/Surgespanner.java +++ b/Mage.Sets/src/mage/cards/s/Surgespanner.java @@ -29,7 +29,7 @@ public final class Surgespanner extends CardImpl { this.toughness = new MageInt(2); // Whenever Surgespanner becomes tapped, you may pay {1}{U}. If you do, return target permanent to its owner's hand. - Ability ability = new BecomesTappedSourceTriggeredAbility(new DoIfCostPaid(new ReturnToHandTargetEffect(), new ManaCostsImpl("{1}{U}"))); + Ability ability = new BecomesTappedSourceTriggeredAbility(new DoIfCostPaid(new ReturnToHandTargetEffect(), new ManaCostsImpl<>("{1}{U}"))); ability.addTarget(new TargetPermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SurvivorOfTheUnseen.java b/Mage.Sets/src/mage/cards/s/SurvivorOfTheUnseen.java index f7e7ca917e..640c282da7 100644 --- a/Mage.Sets/src/mage/cards/s/SurvivorOfTheUnseen.java +++ b/Mage.Sets/src/mage/cards/s/SurvivorOfTheUnseen.java @@ -35,7 +35,7 @@ public final class SurvivorOfTheUnseen extends CardImpl { this.toughness = new MageInt(1); // Cumulative upkeep {2} - this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{2}"))); // {T}: Draw two cards, then put a card from your hand on top of your library. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SurvivorOfTheUnseenEffect(), new TapSourceCost())); diff --git a/Mage.Sets/src/mage/cards/s/SustainingSpirit.java b/Mage.Sets/src/mage/cards/s/SustainingSpirit.java index 5bb0322233..09d7bdd941 100644 --- a/Mage.Sets/src/mage/cards/s/SustainingSpirit.java +++ b/Mage.Sets/src/mage/cards/s/SustainingSpirit.java @@ -31,7 +31,7 @@ public final class SustainingSpirit extends CardImpl { this.toughness = new MageInt(3); // Cumulative upkeep {1}{W} - this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{1}{W}"))); + this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{1}{W}"))); // Damage that would reduce your life total to less than 1 reduces it to 1 instead. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SustainingSpiritReplacementEffect())); diff --git a/Mage.Sets/src/mage/cards/s/Sustenance.java b/Mage.Sets/src/mage/cards/s/Sustenance.java index 0212bfeaf5..2cbe843c8e 100644 --- a/Mage.Sets/src/mage/cards/s/Sustenance.java +++ b/Mage.Sets/src/mage/cards/s/Sustenance.java @@ -26,7 +26,7 @@ public final class Sustenance extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{G}"); // {1}, Sacrifice a land: Target creature gets +1/+1 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}")); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(new FilterControlledLandPermanent("land")))); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SutureSpirit.java b/Mage.Sets/src/mage/cards/s/SutureSpirit.java index 6fb029e9cd..012c14d69b 100644 --- a/Mage.Sets/src/mage/cards/s/SutureSpirit.java +++ b/Mage.Sets/src/mage/cards/s/SutureSpirit.java @@ -28,7 +28,7 @@ public final class SutureSpirit extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(FlyingAbility.getInstance()); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl("{W/B}{W/B}{W/B}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{W/B}{W/B}{W/B}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SvyelunitePriest.java b/Mage.Sets/src/mage/cards/s/SvyelunitePriest.java index 8a28fce99a..8aa108fdba 100644 --- a/Mage.Sets/src/mage/cards/s/SvyelunitePriest.java +++ b/Mage.Sets/src/mage/cards/s/SvyelunitePriest.java @@ -33,7 +33,7 @@ public final class SvyelunitePriest extends CardImpl { this.toughness = new MageInt(1); // {U}{U}, {tap}: Target creature gains shroud until end of turn. Activate this ability only during your upkeep. - Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{U}{U}"), + Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(ShroudAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{U}{U}"), new IsStepCondition(PhaseStep.UPKEEP), null); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); diff --git a/Mage.Sets/src/mage/cards/s/SwarmGuildmage.java b/Mage.Sets/src/mage/cards/s/SwarmGuildmage.java index 8f514a0bd8..396bf2305f 100644 --- a/Mage.Sets/src/mage/cards/s/SwarmGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SwarmGuildmage.java @@ -35,7 +35,7 @@ public final class SwarmGuildmage extends CardImpl { Ability ability = new SimpleActivatedAbility( new BoostControlledEffect(1, 0, Duration.EndOfTurn) .setText("creatures you control get +1/+0"), - new ManaCostsImpl("{4}{B}") + new ManaCostsImpl<>("{4}{B}") ); ability.addEffect(new GainAbilityControlledEffect( new MenaceAbility(), Duration.EndOfTurn, @@ -48,7 +48,7 @@ public final class SwarmGuildmage extends CardImpl { // {1}{G}, {T}: You gain 2 life. ability = new SimpleActivatedAbility( new GainLifeEffect(2), - new ManaCostsImpl("{1}{G}") + new ManaCostsImpl<>("{1}{G}") ); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Swat.java b/Mage.Sets/src/mage/cards/s/Swat.java index 992bfc5ffe..336201fd61 100644 --- a/Mage.Sets/src/mage/cards/s/Swat.java +++ b/Mage.Sets/src/mage/cards/s/Swat.java @@ -33,7 +33,7 @@ public final class Swat extends CardImpl { this.getSpellAbility().addEffect(new DestroyTargetEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); // Cycling {2} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}"))); } private Swat(final Swat card) { diff --git a/Mage.Sets/src/mage/cards/s/SwellOfCourage.java b/Mage.Sets/src/mage/cards/s/SwellOfCourage.java index 3b1980287c..fbaf108b9a 100644 --- a/Mage.Sets/src/mage/cards/s/SwellOfCourage.java +++ b/Mage.Sets/src/mage/cards/s/SwellOfCourage.java @@ -24,7 +24,7 @@ public final class SwellOfCourage extends CardImpl { // Creatures you control get +2/+2 until end of turn. this.getSpellAbility().addEffect(new BoostControlledEffect(2,2, Duration.EndOfTurn)); // Reinforce X-{X}{W}{W} - this.addAbility(new ReinforceAbility(ManacostVariableValue.REGULAR, new ManaCostsImpl("{X}{W}{W}"))); + this.addAbility(new ReinforceAbility(ManacostVariableValue.REGULAR, new ManaCostsImpl<>("{X}{W}{W}"))); } private SwellOfCourage(final SwellOfCourage card) { diff --git a/Mage.Sets/src/mage/cards/s/SwelteringSuns.java b/Mage.Sets/src/mage/cards/s/SwelteringSuns.java index 06f3751800..e692b1a276 100644 --- a/Mage.Sets/src/mage/cards/s/SwelteringSuns.java +++ b/Mage.Sets/src/mage/cards/s/SwelteringSuns.java @@ -24,7 +24,7 @@ public final class SwelteringSuns extends CardImpl { this.getSpellAbility().addEffect(new DamageAllEffect(3, new FilterCreaturePermanent())); //Cycling {3} - this.addAbility(new CyclingAbility(new ManaCostsImpl("{3}"))); + this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{3}"))); } private SwelteringSuns(final SwelteringSuns card) { diff --git a/Mage.Sets/src/mage/cards/s/SwirlingSpriggan.java b/Mage.Sets/src/mage/cards/s/SwirlingSpriggan.java index 15b5ee2d62..314fca9ee0 100644 --- a/Mage.Sets/src/mage/cards/s/SwirlingSpriggan.java +++ b/Mage.Sets/src/mage/cards/s/SwirlingSpriggan.java @@ -30,7 +30,7 @@ public final class SwirlingSpriggan extends CardImpl { this.toughness = new MageInt(3); // {GU}{GU}: Target creature you control becomes the color or colors of your choice until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorOrColorsTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{G/U}{G/U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorOrColorsTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{G/U}{G/U}")); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SwoopingTalon.java b/Mage.Sets/src/mage/cards/s/SwoopingTalon.java index c1963bbce9..07dc579602 100644 --- a/Mage.Sets/src/mage/cards/s/SwoopingTalon.java +++ b/Mage.Sets/src/mage/cards/s/SwoopingTalon.java @@ -32,7 +32,7 @@ public final class SwoopingTalon extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {1}: Swooping Talon loses flying until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseAbilitySourceEffect( - FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}"))); + FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}"))); // Provoke this.addAbility(new ProvokeAbility()); } diff --git a/Mage.Sets/src/mage/cards/s/SwordDancer.java b/Mage.Sets/src/mage/cards/s/SwordDancer.java index e5a09dcfa9..cfe99b2eb8 100644 --- a/Mage.Sets/src/mage/cards/s/SwordDancer.java +++ b/Mage.Sets/src/mage/cards/s/SwordDancer.java @@ -30,7 +30,7 @@ public final class SwordDancer extends CardImpl { this.toughness = new MageInt(2); // {W}{W}: Target attacking creature gets -1/-0 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-1, 0, Duration.EndOfTurn), new ManaCostsImpl("{W}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{W}{W}")); ability.addTarget(new TargetAttackingCreature()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SwordOfKaldra.java b/Mage.Sets/src/mage/cards/s/SwordOfKaldra.java index 85702677c7..15c61fc6f5 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfKaldra.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfKaldra.java @@ -31,7 +31,7 @@ public final class SwordOfKaldra extends CardImpl { // Whenever equipped creature deals damage to a creature, exile that creature. this.addAbility(new SwordOfKaldraTriggeredAbility()); // Equip {4} - this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl("{4}"))); + this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{4}"))); } private SwordOfKaldra(final SwordOfKaldra card) { diff --git a/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java b/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java index a07f21e6e7..2197d820a4 100644 --- a/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java +++ b/Mage.Sets/src/mage/cards/s/SydriGalvanicGenius.java @@ -46,13 +46,13 @@ public final class SydriGalvanicGenius extends CardImpl { this.toughness = new MageInt(2); // {U}: Target noncreature artifact becomes an artifact creature with power and toughness each equal to its converted mana cost until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SydriGalvanicGeniusEffect(), new ManaCostsImpl("{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SydriGalvanicGeniusEffect(), new ManaCostsImpl<>("{U}")); ability.addTarget(new TargetPermanent(filterNonCreature)); this.addAbility(ability); // {W}{B}: Target artifact creature gains deathtouch and lifelink until end of turn. Effect effect = new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn, "Target artifact creature gains deathtouch"); - ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{W}{B}")); + ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{W}{B}")); ability.addEffect(new GainAbilityTargetEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn, "and lifelink until end of turn")); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SyggRiverGuide.java b/Mage.Sets/src/mage/cards/s/SyggRiverGuide.java index a7ffd9acf7..8a570022ac 100644 --- a/Mage.Sets/src/mage/cards/s/SyggRiverGuide.java +++ b/Mage.Sets/src/mage/cards/s/SyggRiverGuide.java @@ -39,7 +39,7 @@ public final class SyggRiverGuide extends CardImpl { // Islandwalk this.addAbility(new IslandwalkAbility()); // {1}{W}: Target Merfolk you control gains protection from the color of your choice until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainProtectionFromColorTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainProtectionFromColorTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")); Target target = new TargetControlledCreaturePermanent(1,1,filter, false); ability.addTarget(target); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SylvanBounty.java b/Mage.Sets/src/mage/cards/s/SylvanBounty.java index 883a3a160c..174c1817ab 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanBounty.java +++ b/Mage.Sets/src/mage/cards/s/SylvanBounty.java @@ -23,7 +23,7 @@ public final class SylvanBounty extends CardImpl { // Target player gains 8 life. this.getSpellAbility().addEffect(new GainLifeTargetEffect(8)); this.getSpellAbility().addTarget(new TargetPlayer()); - this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl("{1}{G}"))); + this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl<>("{1}{G}"))); } private SylvanBounty(final SylvanBounty card) { diff --git a/Mage.Sets/src/mage/cards/s/SylvanMight.java b/Mage.Sets/src/mage/cards/s/SylvanMight.java index 8345379ada..587ac6b214 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanMight.java +++ b/Mage.Sets/src/mage/cards/s/SylvanMight.java @@ -33,7 +33,7 @@ public final class SylvanMight extends CardImpl { this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); // Flashback {2}{G}{G} - this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{2}{G}{G}"))); + this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{2}{G}{G}"))); } private SylvanMight(final SylvanMight card) { diff --git a/Mage.Sets/src/mage/cards/s/SylvanReclamation.java b/Mage.Sets/src/mage/cards/s/SylvanReclamation.java index 5bb5facd02..98c6c993a2 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanReclamation.java +++ b/Mage.Sets/src/mage/cards/s/SylvanReclamation.java @@ -37,7 +37,7 @@ public final class SylvanReclamation extends CardImpl { this.getSpellAbility().addEffect(effect); // Basic landcycling {2} - this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl("{2}"))); + this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl<>("{2}"))); } private SylvanReclamation(final SylvanReclamation card) { diff --git a/Mage.Sets/src/mage/cards/s/SylvokReplica.java b/Mage.Sets/src/mage/cards/s/SylvokReplica.java index 42280b212a..f7f0e1a387 100644 --- a/Mage.Sets/src/mage/cards/s/SylvokReplica.java +++ b/Mage.Sets/src/mage/cards/s/SylvokReplica.java @@ -30,7 +30,7 @@ public final class SylvokReplica extends CardImpl { this.toughness = new MageInt(3); // {G}, Sacrifice Sylvok Replica: Destroy target artifact or enchantment. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{G}")); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_ENCHANTMENT)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java b/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java index 7cecb89eb9..1079be0735 100644 --- a/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java +++ b/Mage.Sets/src/mage/cards/s/SymbioticDeployment.java @@ -36,7 +36,7 @@ public final class SymbioticDeployment extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect())); // {1}, Tap two untapped creatures you control: Draw a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{1}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{1}")); ability.addCost(new TapTargetCost(new TargetControlledCreaturePermanent(2, 2, filter, false))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SyndicateGuildmage.java b/Mage.Sets/src/mage/cards/s/SyndicateGuildmage.java index 2103a1c94a..c7cad70702 100644 --- a/Mage.Sets/src/mage/cards/s/SyndicateGuildmage.java +++ b/Mage.Sets/src/mage/cards/s/SyndicateGuildmage.java @@ -41,7 +41,7 @@ public final class SyndicateGuildmage extends CardImpl { // {1}{W}, {T}: Tap target creature with power 4 or greater. Ability ability = new SimpleActivatedAbility( - new TapTargetEffect(), new ManaCostsImpl("{1}{W}") + new TapTargetEffect(), new ManaCostsImpl<>("{1}{W}") ); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent(filter)); @@ -49,7 +49,7 @@ public final class SyndicateGuildmage extends CardImpl { // {4}{B}, {T}: Syndicate Guildmage deals 2 damage to target opponent or planeswalker. ability = new SimpleActivatedAbility( - new DamageTargetEffect(2), new ManaCostsImpl("{4}{B}") + new DamageTargetEffect(2), new ManaCostsImpl<>("{4}{B}") ); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetOpponentOrPlaneswalker()); diff --git a/Mage.Sets/src/mage/cards/s/SynodArtificer.java b/Mage.Sets/src/mage/cards/s/SynodArtificer.java index ab4faa884e..639f71839f 100644 --- a/Mage.Sets/src/mage/cards/s/SynodArtificer.java +++ b/Mage.Sets/src/mage/cards/s/SynodArtificer.java @@ -42,7 +42,7 @@ public final class SynodArtificer extends CardImpl { // {X}, {tap}: Tap X target noncreature artifacts. Effect tapEffect = new TapTargetEffect(); tapEffect.setText("Tap X target noncreature artifacts."); - Ability tapAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, tapEffect, new ManaCostsImpl("{X}")); + Ability tapAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, tapEffect, new ManaCostsImpl<>("{X}")); tapAbility.addCost(new TapSourceCost()); tapAbility.setTargetAdjuster(XTargetsAdjuster.instance); tapAbility.addTarget(new TargetPermanent(filter)); @@ -51,7 +51,7 @@ public final class SynodArtificer extends CardImpl { // {X}, {tap}: Untap X target noncreature artifacts. Effect untapEffect = new UntapTargetEffect(); untapEffect.setText("Untap X target noncreature artifacts."); - Ability untapAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, untapEffect, new ManaCostsImpl("{X}")); + Ability untapAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, untapEffect, new ManaCostsImpl<>("{X}")); untapAbility.addCost(new TapSourceCost()); untapAbility.setTargetAdjuster(XTargetsAdjuster.instance); untapAbility.addTarget(new TargetPermanent(filter)); diff --git a/Mage.Sets/src/mage/cards/s/SynodSanctum.java b/Mage.Sets/src/mage/cards/s/SynodSanctum.java index 77eb9f2cfe..268cb11b5d 100644 --- a/Mage.Sets/src/mage/cards/s/SynodSanctum.java +++ b/Mage.Sets/src/mage/cards/s/SynodSanctum.java @@ -41,7 +41,7 @@ public final class SynodSanctum extends CardImpl { // {2}, {tap}: Exile target permanent you control. SynodSanctumEffect effect = new SynodSanctumEffect(); - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}")); ability.addCost(new TapSourceCost()); Target target = new TargetPermanent(filter); ability.addTarget(target); @@ -49,7 +49,7 @@ public final class SynodSanctum extends CardImpl { // {2}, Sacrifice Synod Sanctum: Return all cards exiled with Synod Sanctum to the battlefield under your control. SynodSanctumEffect2 effect2 = new SynodSanctumEffect2(); - Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect2, new ManaCostsImpl("{2}")); + Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect2, new ManaCostsImpl<>("{2}")); ability2.addCost(new SacrificeSourceCost()); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/s/SyrKonradTheGrim.java b/Mage.Sets/src/mage/cards/s/SyrKonradTheGrim.java index ad96561c21..f468f997bd 100644 --- a/Mage.Sets/src/mage/cards/s/SyrKonradTheGrim.java +++ b/Mage.Sets/src/mage/cards/s/SyrKonradTheGrim.java @@ -37,7 +37,7 @@ public final class SyrKonradTheGrim extends CardImpl { // {1}{B}: Each player puts the top card of their library into their graveyard. this.addAbility(new SimpleActivatedAbility(new MillCardsEachPlayerEffect( 1, TargetController.ANY - ), new ManaCostsImpl("{1}{B}"))); + ), new ManaCostsImpl<>("{1}{B}"))); } private SyrKonradTheGrim(final SyrKonradTheGrim card) {