From 05a7c83a771b71bf264feeaaabd97b39c4735367 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sun, 18 Apr 2021 18:17:38 -0400 Subject: [PATCH] if you're having text problems I feel bad for you son, I've got 99 problems and they're all text-related and I've only dealt with a small amount of them --- Mage.Sets/src/mage/cards/a/AngrathsFury.java | 2 +- Mage.Sets/src/mage/cards/a/ArachnusSpinner.java | 2 +- Mage.Sets/src/mage/cards/a/ArtificersIntuition.java | 13 +++++++------ Mage.Sets/src/mage/cards/a/AshlingsPrerogative.java | 8 ++++---- Mage.Sets/src/mage/cards/a/AvatarOfGrowth.java | 2 +- Mage.Sets/src/mage/cards/a/AyliEternalPilgrim.java | 2 +- Mage.Sets/src/mage/cards/b/BeetleformMage.java | 4 ++-- Mage.Sets/src/mage/cards/b/BlackCarriage.java | 2 +- Mage.Sets/src/mage/cards/b/BlastOfGenius.java | 2 +- Mage.Sets/src/mage/cards/b/BlastZone.java | 6 +++--- Mage.Sets/src/mage/cards/b/BloodScrivener.java | 2 +- Mage.Sets/src/mage/cards/b/BloodshotTrainee.java | 2 +- Mage.Sets/src/mage/cards/b/BoggartHarbinger.java | 2 +- Mage.Sets/src/mage/cards/b/BoonweaverGiant.java | 2 +- Mage.Sets/src/mage/cards/b/BraidwoodSextant.java | 2 +- Mage.Sets/src/mage/cards/c/CabalInquisitor.java | 2 +- Mage.Sets/src/mage/cards/c/Carrionette.java | 2 +- Mage.Sets/src/mage/cards/c/CharmedPendant.java | 2 +- Mage.Sets/src/mage/cards/c/CleansingWildfire.java | 2 +- Mage.Sets/src/mage/cards/c/CropSigil.java | 2 +- Mage.Sets/src/mage/cards/d/DarkSupplicant.java | 2 +- Mage.Sets/src/mage/cards/d/DeathsOasis.java | 4 ++-- Mage.Sets/src/mage/cards/d/DementiaSliver.java | 2 +- Mage.Sets/src/mage/cards/d/DrJuliusJumblemorph.java | 2 +- Mage.Sets/src/mage/cards/d/DreadWanderer.java | 2 +- Mage.Sets/src/mage/cards/d/DreadhordeArcanist.java | 2 +- Mage.Sets/src/mage/cards/e/EdificeOfAuthority.java | 2 +- Mage.Sets/src/mage/cards/e/EmissaryOfGrudges.java | 2 +- Mage.Sets/src/mage/cards/e/EverythingamajigC.java | 2 +- Mage.Sets/src/mage/cards/e/ExtinctionEvent.java | 2 +- Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java | 2 +- Mage.Sets/src/mage/cards/g/Glory.java | 2 +- Mage.Sets/src/mage/cards/g/Granulate.java | 4 ++-- Mage.Sets/src/mage/cards/g/GreaterGargadon.java | 2 +- Mage.Sets/src/mage/cards/g/GreenhiltTrainee.java | 2 +- Mage.Sets/src/mage/cards/g/GrimReminder.java | 3 ++- Mage.Sets/src/mage/cards/g/GroundlingPouncer.java | 2 +- Mage.Sets/src/mage/cards/g/GryffsBoon.java | 2 +- Mage.Sets/src/mage/cards/h/HauntedPlateMail.java | 2 +- Mage.Sets/src/mage/cards/i/ImminentDoom.java | 2 +- Mage.Sets/src/mage/cards/j/JeweledAmulet.java | 4 ++-- Mage.Sets/src/mage/cards/j/JourneyOfDiscovery.java | 2 +- Mage.Sets/src/mage/cards/l/LammastideWeave.java | 2 +- Mage.Sets/src/mage/cards/l/LavabrinkVenturer.java | 2 +- Mage.Sets/src/mage/cards/l/LeoninSquire.java | 2 +- Mage.Sets/src/mage/cards/l/LifeMatrix.java | 2 +- .../src/mage/cards/l/LilianaDefiantNecromancer.java | 2 +- Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java | 2 +- Mage.Sets/src/mage/cards/l/LongTermPlans.java | 2 +- Mage.Sets/src/mage/cards/l/LuminarchAscension.java | 2 +- Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java | 2 +- Mage.Sets/src/mage/cards/m/MaddeningImp.java | 2 +- Mage.Sets/src/mage/cards/m/ManaScrew.java | 2 +- Mage.Sets/src/mage/cards/m/ManipulateFate.java | 2 +- .../src/mage/cards/m/MetallurgicSummonings.java | 4 ++-- Mage.Sets/src/mage/cards/m/MindwhipSliver.java | 2 +- .../src/mage/cards/m/MishraArtificerProdigy.java | 4 ++-- Mage.Sets/src/mage/cards/n/NettlingImp.java | 2 +- Mage.Sets/src/mage/cards/n/NimDevourer.java | 4 ++-- Mage.Sets/src/mage/cards/n/Norritt.java | 2 +- Mage.Sets/src/mage/cards/o/OraclesVault.java | 2 +- Mage.Sets/src/mage/cards/o/Overload.java | 2 +- Mage.Sets/src/mage/cards/p/Prophecy.java | 2 +- Mage.Sets/src/mage/cards/p/PsychicBattle.java | 2 +- .../src/mage/cards/r/ReaperOfFlightMoonsilver.java | 2 +- Mage.Sets/src/mage/cards/r/RelicSeeker.java | 2 +- Mage.Sets/src/mage/cards/r/Renewal.java | 2 +- Mage.Sets/src/mage/cards/r/RhysticCave.java | 2 +- Mage.Sets/src/mage/cards/r/Ringskipper.java | 3 ++- Mage.Sets/src/mage/cards/r/RotFarmSkeleton.java | 2 +- Mage.Sets/src/mage/cards/r/RunedCrown.java | 2 +- Mage.Sets/src/mage/cards/r/RuneforgeChampion.java | 2 +- Mage.Sets/src/mage/cards/s/SalvagingStation.java | 4 ++-- Mage.Sets/src/mage/cards/s/ScoutingTrek.java | 10 +++++----- Mage.Sets/src/mage/cards/s/SeedguideAsh.java | 4 ++-- Mage.Sets/src/mage/cards/s/SeersVision.java | 2 +- Mage.Sets/src/mage/cards/s/ShadowsVerdict.java | 2 +- Mage.Sets/src/mage/cards/s/SkarrganHellkite.java | 2 +- Mage.Sets/src/mage/cards/s/Skygames.java | 2 +- Mage.Sets/src/mage/cards/s/SliverHive.java | 2 +- Mage.Sets/src/mage/cards/s/SmolderingTar.java | 2 +- Mage.Sets/src/mage/cards/s/StalkingLeonin.java | 2 +- Mage.Sets/src/mage/cards/s/SteelshapersGift.java | 2 +- Mage.Sets/src/mage/cards/t/TIEBomber.java | 2 +- Mage.Sets/src/mage/cards/t/TectonicEdge.java | 2 +- Mage.Sets/src/mage/cards/t/Timesifter.java | 2 +- Mage.Sets/src/mage/cards/t/Tolaria.java | 2 +- Mage.Sets/src/mage/cards/t/TradeCaravan.java | 2 +- Mage.Sets/src/mage/cards/t/TriassicEgg.java | 2 +- .../src/mage/cards/v/VerazolTheSplitCurrent.java | 2 +- Mage.Sets/src/mage/cards/v/ViviensJaguar.java | 2 +- Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java | 2 +- Mage.Sets/src/mage/cards/v/VraskasScorn.java | 2 +- .../src/mage/cards/w/WallOfForgottenPharaohs.java | 2 +- Mage.Sets/src/mage/cards/w/WoodlandGuidance.java | 2 +- .../common/LimitedTimesPerTurnActivatedAbility.java | 2 +- .../common/SpellCastAllTriggeredAbility.java | 3 ++- .../costs/common/ControlPermanentCost.java | 2 +- .../SearchLibraryGraveyardPutInHandEffect.java | 2 +- ...rchLibraryGraveyardPutOntoBattlefieldEffect.java | 2 +- .../java/mage/abilities/keyword/BoastAbility.java | 2 +- .../java/mage/abilities/keyword/ChannelAbility.java | 2 +- .../mage/abilities/keyword/ForecastAbility.java | 2 +- .../mana/ActivateIfConditionManaAbility.java | 2 +- .../mana/ActivateOncePerTurnManaAbility.java | 2 +- .../emblems/NissaWhoShakesTheWorldEmblem.java | 2 +- 106 files changed, 133 insertions(+), 129 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AngrathsFury.java b/Mage.Sets/src/mage/cards/a/AngrathsFury.java index 4d40f188b6..3e43be2837 100644 --- a/Mage.Sets/src/mage/cards/a/AngrathsFury.java +++ b/Mage.Sets/src/mage/cards/a/AngrathsFury.java @@ -40,7 +40,7 @@ public final class AngrathsFury extends CardImpl { // You may search your library and/or graveyard for a card named Angrath, Minotaur Pirate, reveal it, and put it into your hand. If you search your library this way, shuffle it. this.getSpellAbility().addEffect(new SearchLibraryGraveyardPutInHandEffect(filter) - .setText("You may search your library and/or graveyard for a card named Angrath, Minotaur Pirate, reveal it, and put it into your hand. If you search your library this way, shuffle it")); + .setText("You may search your library and/or graveyard for a card named Angrath, Minotaur Pirate, reveal it, and put it into your hand. If you search your library this way, shuffle")); } diff --git a/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java b/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java index 5eb67c64b1..73798802e1 100644 --- a/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java +++ b/Mage.Sets/src/mage/cards/a/ArachnusSpinner.java @@ -74,7 +74,7 @@ class ArachnusSpinnerEffect extends OneShotEffect { super(Outcome.PutCardInPlay); this.staticText = "Search your graveyard and/or library for a card named Arachnus Web " + "and put it onto the battlefield attached to target creature. " - + "If you search your library this way, shuffle it"; + + "If you search your library this way, shuffle"; } public ArachnusSpinnerEffect(final ArachnusSpinnerEffect effect) { diff --git a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java index 4324859274..1ff0807b76 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java @@ -1,7 +1,5 @@ - package mage.cards.a; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardCardCost; @@ -12,27 +10,30 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.ComparisonType; import mage.constants.Zone; +import mage.filter.StaticFilters; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.mageobject.ManaValuePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** - * * @author Plopman */ public final class ArtificersIntuition extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with mana value 1 or less"); + static { filter.add(new ManaValuePredicate(ComparisonType.FEWER_THAN, 2)); } - public ArtificersIntuition(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); + public ArtificersIntuition(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}"); // {U}, Discard an artifact card: Search your library for an artifact card with converted mana cost 1 or less, reveal that card, and put it into your hand. Then shuffle your library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true), new ManaCostsImpl("{U}")); - ability.addCost(new DiscardCardCost(new FilterArtifactCard())); + ability.addCost(new DiscardCardCost(StaticFilters.FILTER_CARD_ARTIFACT_AN)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/a/AshlingsPrerogative.java b/Mage.Sets/src/mage/cards/a/AshlingsPrerogative.java index 4e65e0558d..12f5d0c75a 100644 --- a/Mage.Sets/src/mage/cards/a/AshlingsPrerogative.java +++ b/Mage.Sets/src/mage/cards/a/AshlingsPrerogative.java @@ -53,12 +53,12 @@ public final class AshlingsPrerogative extends CardImpl { class AshlingsPrerogativeIncorrectOddityEffect extends PermanentsEnterBattlefieldTappedEffect { - private static final FilterCreaturePermanent creaturefilter = new FilterCreaturePermanent("Each creature without mana value of the chosen value"); + private static final FilterCreaturePermanent creaturefilter = new FilterCreaturePermanent("Each creature without mana value of the chosen quality"); private static final ModeChoiceSourceCondition oddCondition = new ModeChoiceSourceCondition("Odd"); public AshlingsPrerogativeIncorrectOddityEffect() { super(creaturefilter); - staticText = "Each creature without mana value of the chosen value enters the battlefield tapped."; + staticText = "Each creature without mana value of the chosen quality enters the battlefield tapped."; } public AshlingsPrerogativeIncorrectOddityEffect(final AshlingsPrerogativeIncorrectOddityEffect effect) { @@ -88,12 +88,12 @@ class AshlingsPrerogativeIncorrectOddityEffect extends PermanentsEnterBattlefiel class AshlingsPrerogativeCorrectOddityEffect extends GainAbilityAllEffect { - private static final FilterCreaturePermanent creaturefilter = new FilterCreaturePermanent("Each creature with mana value of the chosen value"); + private static final FilterCreaturePermanent creaturefilter = new FilterCreaturePermanent("Each creature with mana value of the chosen quality"); private static final ModeChoiceSourceCondition oddCondition = new ModeChoiceSourceCondition("Odd"); public AshlingsPrerogativeCorrectOddityEffect() { super(HasteAbility.getInstance(), Duration.WhileOnBattlefield, creaturefilter); - staticText = "Each creature with mana value of the chosen value has haste."; + staticText = "Each creature with mana value of the chosen quality has haste."; } public AshlingsPrerogativeCorrectOddityEffect(final AshlingsPrerogativeCorrectOddityEffect effect) { super(effect); diff --git a/Mage.Sets/src/mage/cards/a/AvatarOfGrowth.java b/Mage.Sets/src/mage/cards/a/AvatarOfGrowth.java index e65b1cf4eb..0470a84d7e 100644 --- a/Mage.Sets/src/mage/cards/a/AvatarOfGrowth.java +++ b/Mage.Sets/src/mage/cards/a/AvatarOfGrowth.java @@ -63,7 +63,7 @@ class AvatarOfGrowthSearchEffect extends OneShotEffect { public AvatarOfGrowthSearchEffect() { super(Outcome.Detriment); - this.staticText = "each player searches their library for up to two basic land cards, puts them onto the battlefield, then shuffles their libarary"; + this.staticText = "each player searches their library for up to two basic land cards, puts them onto the battlefield, then shuffles"; } public AvatarOfGrowthSearchEffect(final AvatarOfGrowthSearchEffect effect) { diff --git a/Mage.Sets/src/mage/cards/a/AyliEternalPilgrim.java b/Mage.Sets/src/mage/cards/a/AyliEternalPilgrim.java index 3a67ffe577..1caf9edea1 100644 --- a/Mage.Sets/src/mage/cards/a/AyliEternalPilgrim.java +++ b/Mage.Sets/src/mage/cards/a/AyliEternalPilgrim.java @@ -57,7 +57,7 @@ public final class AyliEternalPilgrim extends CardImpl { new ExileTargetEffect(), new ManaCostsImpl("{1}{W}{B}"), new AyliEternalPilgrimCondition(), - "{1}{W}{B}, Sacrifice another creature: Exile target nonland permanent. Activate this ability only if you have at least 10 life more than your starting life total"); + "{1}{W}{B}, Sacrifice another creature: Exile target nonland permanent. Activate only if you have at least 10 life more than your starting life total"); ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(StaticFilters.FILTER_CONTROLLED_ANOTHER_CREATURE))); ability.addTarget(new TargetNonlandPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/b/BeetleformMage.java b/Mage.Sets/src/mage/cards/b/BeetleformMage.java index 3615ac7a80..bc53065519 100644 --- a/Mage.Sets/src/mage/cards/b/BeetleformMage.java +++ b/Mage.Sets/src/mage/cards/b/BeetleformMage.java @@ -33,8 +33,8 @@ public final class BeetleformMage extends CardImpl { this.toughness = new MageInt(2); // {G}{U}: Beetleform Mage gets +2/+2 and gains flying until end of turn. Activate this ability only once each turn. - Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,2, Duration.EndOfTurn), new ManaCostsImpl("{G}{U}")); - ability.addEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn)); + Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,2, Duration.EndOfTurn).setText("{this} gets +2/+2"), new ManaCostsImpl("{G}{U}")); + ability.addEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn).setText("and gains flying until end of turn")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/b/BlackCarriage.java b/Mage.Sets/src/mage/cards/b/BlackCarriage.java index 91670c7f1a..fee00bb8ab 100644 --- a/Mage.Sets/src/mage/cards/b/BlackCarriage.java +++ b/Mage.Sets/src/mage/cards/b/BlackCarriage.java @@ -40,7 +40,7 @@ public final class BlackCarriage extends CardImpl { // Sacrifice a creature: Untap Black Carriage. Activate this ability only during your upkeep. this.addAbility(new ConditionalActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)), - new IsStepCondition(PhaseStep.UPKEEP), "Sacrifice a creature: Untap {this}. Activate this ability only during your upkeep.")); + new IsStepCondition(PhaseStep.UPKEEP), "Sacrifice a creature: Untap {this}. Activate only during your upkeep.")); } private BlackCarriage(final BlackCarriage card) { diff --git a/Mage.Sets/src/mage/cards/b/BlastOfGenius.java b/Mage.Sets/src/mage/cards/b/BlastOfGenius.java index f85e4f6254..3bdc32a064 100644 --- a/Mage.Sets/src/mage/cards/b/BlastOfGenius.java +++ b/Mage.Sets/src/mage/cards/b/BlastOfGenius.java @@ -42,7 +42,7 @@ class BlastOfGeniusEffect extends OneShotEffect { public BlastOfGeniusEffect() { super(Outcome.Benefit); - this.staticText = "Choose any target. Draw three cards and discard a card. {this} deals damage equal to the mana value of the discard card to that permanent or player"; + this.staticText = "Choose any target. Draw three cards, then discard a card. {this} deals damage equal to the discard card's mana value to that permanent or player"; } public BlastOfGeniusEffect(final BlastOfGeniusEffect effect) { diff --git a/Mage.Sets/src/mage/cards/b/BlastZone.java b/Mage.Sets/src/mage/cards/b/BlastZone.java index b3ba7544dd..94a9728508 100644 --- a/Mage.Sets/src/mage/cards/b/BlastZone.java +++ b/Mage.Sets/src/mage/cards/b/BlastZone.java @@ -37,9 +37,9 @@ public final class BlastZone extends CardImpl { // Blast Zone enters the battlefield with a charge counter on it. this.addAbility(new EntersBattlefieldAbility( - new AddCountersSourceEffect(CounterType.CHARGE.createInstance(1)) - ,"with a charge counter") - ); + new AddCountersSourceEffect(CounterType.CHARGE.createInstance(1)), + "with a charge counter on it" + )); // {T}: Add {C}. this.addAbility(new ColorlessManaAbility()); diff --git a/Mage.Sets/src/mage/cards/b/BloodScrivener.java b/Mage.Sets/src/mage/cards/b/BloodScrivener.java index a19d7fa718..39d3f785cb 100644 --- a/Mage.Sets/src/mage/cards/b/BloodScrivener.java +++ b/Mage.Sets/src/mage/cards/b/BloodScrivener.java @@ -49,7 +49,7 @@ class BloodScrivenerReplacementEffect extends ReplacementEffectImpl { public BloodScrivenerReplacementEffect() { super(Duration.WhileOnBattlefield, Outcome.Benefit); - staticText = "If you would draw a card while you have no cards in hand, instead draw two cards and lose 1 life"; + staticText = "If you would draw a card while you have no cards in hand, instead you draw two cards and you lose 1 life"; } public BloodScrivenerReplacementEffect(final BloodScrivenerReplacementEffect effect) { diff --git a/Mage.Sets/src/mage/cards/b/BloodshotTrainee.java b/Mage.Sets/src/mage/cards/b/BloodshotTrainee.java index 18b6712b38..b17c4d7223 100644 --- a/Mage.Sets/src/mage/cards/b/BloodshotTrainee.java +++ b/Mage.Sets/src/mage/cards/b/BloodshotTrainee.java @@ -51,7 +51,7 @@ public final class BloodshotTrainee extends CardImpl { class BloodshotTraineeCost extends CostImpl { public BloodshotTraineeCost() { - this.text = "Activate this ability only if Bloodshot Trainee's power is 4 or greater"; + this.text = "Activate only if Bloodshot Trainee's power is 4 or greater"; } public BloodshotTraineeCost(final BloodshotTraineeCost cost) { diff --git a/Mage.Sets/src/mage/cards/b/BoggartHarbinger.java b/Mage.Sets/src/mage/cards/b/BoggartHarbinger.java index 21193efdee..2e86ea73f3 100644 --- a/Mage.Sets/src/mage/cards/b/BoggartHarbinger.java +++ b/Mage.Sets/src/mage/cards/b/BoggartHarbinger.java @@ -34,7 +34,7 @@ public final class BoggartHarbinger extends CardImpl { // When Boggart Harbinger enters the battlefield, you may search your library for a Goblin card, reveal it, // then shuffle your library and put that card on top of it. TargetCardInLibrary target = new TargetCardInLibrary(filter); - this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutOnLibraryEffect(target, true, true))); + this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutOnLibraryEffect(target, true, true),true)); } private BoggartHarbinger(final BoggartHarbinger card) { diff --git a/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java b/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java index c7bd5ffb2a..24766e3eca 100644 --- a/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java +++ b/Mage.Sets/src/mage/cards/b/BoonweaverGiant.java @@ -54,7 +54,7 @@ class BoonweaverGiantEffect extends OneShotEffect { public BoonweaverGiantEffect() { super(Outcome.UnboostCreature); - this.staticText = "you may search your graveyard, hand, and/or library for an Aura card and put it onto the battlefield attached to {this}. If you search your library this way, shuffle it."; + this.staticText = "you may search your graveyard, hand, and/or library for an Aura card and put it onto the battlefield attached to {this}. If you search your library this way, shuffle."; } public BoonweaverGiantEffect(final BoonweaverGiantEffect effect) { diff --git a/Mage.Sets/src/mage/cards/b/BraidwoodSextant.java b/Mage.Sets/src/mage/cards/b/BraidwoodSextant.java index 7587ec8672..8de89920eb 100644 --- a/Mage.Sets/src/mage/cards/b/BraidwoodSextant.java +++ b/Mage.Sets/src/mage/cards/b/BraidwoodSextant.java @@ -27,7 +27,7 @@ public final class BraidwoodSextant extends CardImpl { // {2}, {tap}, Sacrifice Braidwood Sextant: Search your library for a basic land card, reveal that card, and put it into your hand. Then shuffle your library. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new SearchLibraryPutInHandEffect(new TargetCardInLibrary(0, 1, StaticFilters.FILTER_CARD_BASIC_LAND), true, true), + new SearchLibraryPutInHandEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND), true, true), new ManaCostsImpl("{2}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); diff --git a/Mage.Sets/src/mage/cards/c/CabalInquisitor.java b/Mage.Sets/src/mage/cards/c/CabalInquisitor.java index 3247c5c10d..b10990d0e8 100644 --- a/Mage.Sets/src/mage/cards/c/CabalInquisitor.java +++ b/Mage.Sets/src/mage/cards/c/CabalInquisitor.java @@ -84,6 +84,6 @@ class ActivateAsSorceryConditionalActivatedAbility extends ActivatedAbilityImpl @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast a sorcery, and only if seven or more cards are in your graveyard."; + return super.getRule() + " Activate only as a sorcery, and only if seven or more cards are in your graveyard."; } } diff --git a/Mage.Sets/src/mage/cards/c/Carrionette.java b/Mage.Sets/src/mage/cards/c/Carrionette.java index 27186f20f2..b9ce4c55d2 100644 --- a/Mage.Sets/src/mage/cards/c/Carrionette.java +++ b/Mage.Sets/src/mage/cards/c/Carrionette.java @@ -31,7 +31,7 @@ public final class Carrionette extends CardImpl { // {2}{B}{B}: Exile Carrionette and target creature unless that creature's controller pays {2}. Activate this ability only if Carrionette is in your graveyard. DoUnlessTargetPlayerOrTargetsControllerPaysEffect effect = new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(new ExileTargetEffect(), new ManaCostsImpl("{2}")); effect.addEffect(new ExileSourceEffect()); - effect.setText("Exile {this} and target creature unless that creature's controller pays {2}. Activate this ability only if {this} is in your graveyard"); + effect.setText("Exile {this} and target creature unless that creature's controller pays {2}. Activate only if {this} is in your graveyard"); Ability ability = new SimpleActivatedAbility(Zone.GRAVEYARD, effect, new ManaCostsImpl("{2}{B}{B}")); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/c/CharmedPendant.java b/Mage.Sets/src/mage/cards/c/CharmedPendant.java index 88192e7181..087d309d8c 100644 --- a/Mage.Sets/src/mage/cards/c/CharmedPendant.java +++ b/Mage.Sets/src/mage/cards/c/CharmedPendant.java @@ -80,7 +80,7 @@ class CharmedPendantAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast an instant."; + return super.getRule() + " Activate only as an instant."; } } diff --git a/Mage.Sets/src/mage/cards/c/CleansingWildfire.java b/Mage.Sets/src/mage/cards/c/CleansingWildfire.java index 2dd1f58004..c42493fa97 100644 --- a/Mage.Sets/src/mage/cards/c/CleansingWildfire.java +++ b/Mage.Sets/src/mage/cards/c/CleansingWildfire.java @@ -33,7 +33,7 @@ public final class CleansingWildfire extends CardImpl { this.getSpellAbility().addTarget(new TargetLandPermanent()); // Draw a card. - this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); + this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1).concatBy("
")); } private CleansingWildfire(final CleansingWildfire card) { diff --git a/Mage.Sets/src/mage/cards/c/CropSigil.java b/Mage.Sets/src/mage/cards/c/CropSigil.java index afce57106d..ec6b258ce8 100644 --- a/Mage.Sets/src/mage/cards/c/CropSigil.java +++ b/Mage.Sets/src/mage/cards/c/CropSigil.java @@ -43,7 +43,7 @@ public final class CropSigil extends CardImpl { Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(true), new ManaCostsImpl<>("{2}{G}"), DeliriumCondition.instance, "Delirium — {2}{G}, Sacrifice {this}: Return up to one target creature card and up to one target land card from your graveyard to your hand. " - + "Activate this ability only if there are four or more card types among cards in your graveyard"); + + "Activate only if there are four or more card types among cards in your graveyard"); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCardInYourGraveyard(0, 1, filterCreature)); ability.addTarget(new TargetCardInYourGraveyard(0, 1, filterLand)); diff --git a/Mage.Sets/src/mage/cards/d/DarkSupplicant.java b/Mage.Sets/src/mage/cards/d/DarkSupplicant.java index 5122c2d3ae..779092d018 100644 --- a/Mage.Sets/src/mage/cards/d/DarkSupplicant.java +++ b/Mage.Sets/src/mage/cards/d/DarkSupplicant.java @@ -65,7 +65,7 @@ class DarkSupplicantEffect extends OneShotEffect { public DarkSupplicantEffect() { super(Outcome.PutCardInPlay); - this.staticText = "Search your graveyard, hand, and/or library for a card named Scion of Darkness and put it onto the battlefield. If you search your library this way, shuffle it"; + this.staticText = "Search your graveyard, hand, and/or library for a card named Scion of Darkness and put it onto the battlefield. If you search your library this way, shuffle"; } public DarkSupplicantEffect(final DarkSupplicantEffect effect) { diff --git a/Mage.Sets/src/mage/cards/d/DeathsOasis.java b/Mage.Sets/src/mage/cards/d/DeathsOasis.java index 8f32e43df5..4a9e357222 100644 --- a/Mage.Sets/src/mage/cards/d/DeathsOasis.java +++ b/Mage.Sets/src/mage/cards/d/DeathsOasis.java @@ -102,8 +102,8 @@ class DeathsOasisTriggeredAbility extends DiesCreatureTriggeredAbility { @Override public String getRule() { - return "Whenever a nontoken creature you control dies, put the top two cards of your library " + - "into your graveyard. Then return a creature card with lesser mana value " + + return "Whenever a nontoken creature you control dies, mill two cards. " + + "Then return a creature card with lesser mana value " + "than the creature that died from your graveyard to your hand."; } } diff --git a/Mage.Sets/src/mage/cards/d/DementiaSliver.java b/Mage.Sets/src/mage/cards/d/DementiaSliver.java index c3783a8d8c..85284e1503 100644 --- a/Mage.Sets/src/mage/cards/d/DementiaSliver.java +++ b/Mage.Sets/src/mage/cards/d/DementiaSliver.java @@ -48,7 +48,7 @@ public final class DementiaSliver extends CardImpl { "All Slivers have \"{T}: Choose a card name. " + "Target opponent reveals a card at random from their hand." + " If that card has the chosen name, that player discards it." - + " Activate this ability only during your turn.\"" + + " Activate only during your turn.\"" ) )); } diff --git a/Mage.Sets/src/mage/cards/d/DrJuliusJumblemorph.java b/Mage.Sets/src/mage/cards/d/DrJuliusJumblemorph.java index e335a1dade..44fe88863f 100644 --- a/Mage.Sets/src/mage/cards/d/DrJuliusJumblemorph.java +++ b/Mage.Sets/src/mage/cards/d/DrJuliusJumblemorph.java @@ -38,7 +38,7 @@ public final class DrJuliusJumblemorph extends CardImpl { // TODO: Host currently isn't implemented, so this ability currently would never trigger this.addAbility(new EntersBattlefieldControlledTriggeredAbility( new InfoEffect("you may search your library and/or graveyard for a card with augment " + - "and combine it with that host. If you search your library this way, shuffle it."), filter + "and combine it with that host. If you search your library this way, shuffle."), filter )); } diff --git a/Mage.Sets/src/mage/cards/d/DreadWanderer.java b/Mage.Sets/src/mage/cards/d/DreadWanderer.java index b0f2fb7121..c23799d484 100644 --- a/Mage.Sets/src/mage/cards/d/DreadWanderer.java +++ b/Mage.Sets/src/mage/cards/d/DreadWanderer.java @@ -39,7 +39,7 @@ public final class DreadWanderer extends CardImpl { new ManaCostsImpl("{2}{B}"), HeckbentCondition.instance, "{2}{B}: Return {this} from your graveyard to the battlefield. " - + "Activate this ability only any time you could cast a sorcery " + + "Activate only as a sorcery " + "and only if you have one or fewer cards in hand." ); ability.setTiming(TimingRule.SORCERY); diff --git a/Mage.Sets/src/mage/cards/d/DreadhordeArcanist.java b/Mage.Sets/src/mage/cards/d/DreadhordeArcanist.java index e472ef97f5..5c1f0edb6d 100644 --- a/Mage.Sets/src/mage/cards/d/DreadhordeArcanist.java +++ b/Mage.Sets/src/mage/cards/d/DreadhordeArcanist.java @@ -86,7 +86,7 @@ class DreadhordeArcanistEffect extends OneShotEffect { super(Outcome.PlayForFree); this.staticText = "you may cast target instant or sorcery card with mana value " + "less than or equal to {this}'s power from your graveyard without paying its mana cost. " - + "If that card would be put into your graveyard this turn, exile it instead."; + + "If that spell would be put into your graveyard this turn, exile it instead."; } private DreadhordeArcanistEffect(final DreadhordeArcanistEffect effect) { diff --git a/Mage.Sets/src/mage/cards/e/EdificeOfAuthority.java b/Mage.Sets/src/mage/cards/e/EdificeOfAuthority.java index 9ecc32d100..543deb527d 100644 --- a/Mage.Sets/src/mage/cards/e/EdificeOfAuthority.java +++ b/Mage.Sets/src/mage/cards/e/EdificeOfAuthority.java @@ -27,7 +27,7 @@ import java.util.UUID; */ public final class EdificeOfAuthority extends CardImpl { - private static final String rule = "{1}, {T}: Until your next turn, target creature can't attack or block and its activated abilities can't be activated. Activate this ability only if there are three or more brick counter on {this}."; + private static final String rule = "{1}, {T}: Until your next turn, target creature can't attack or block and its activated abilities can't be activated. Activate only if there are three or more brick counter on {this}."; public EdificeOfAuthority(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); diff --git a/Mage.Sets/src/mage/cards/e/EmissaryOfGrudges.java b/Mage.Sets/src/mage/cards/e/EmissaryOfGrudges.java index 36d5d9fc8d..e0c64e50a1 100644 --- a/Mage.Sets/src/mage/cards/e/EmissaryOfGrudges.java +++ b/Mage.Sets/src/mage/cards/e/EmissaryOfGrudges.java @@ -67,7 +67,7 @@ class EmissaryOfGrudgesEffect extends OneShotEffect { public EmissaryOfGrudgesEffect() { super(Outcome.Neutral); this.staticText = "Choose new targets for target spell or ability if it's controlled by the chosen player and" + - " if it targets you or a permanent you control. Activate this ability only once."; + " if it targets you or a permanent you control. Activate only once."; } public EmissaryOfGrudgesEffect(final EmissaryOfGrudgesEffect effect) { diff --git a/Mage.Sets/src/mage/cards/e/EverythingamajigC.java b/Mage.Sets/src/mage/cards/e/EverythingamajigC.java index 477d2896fe..bb42334f4a 100644 --- a/Mage.Sets/src/mage/cards/e/EverythingamajigC.java +++ b/Mage.Sets/src/mage/cards/e/EverythingamajigC.java @@ -86,7 +86,7 @@ class ManaScrewAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast an instant."; + return super.getRule() + " Activate only as an instant."; } } diff --git a/Mage.Sets/src/mage/cards/e/ExtinctionEvent.java b/Mage.Sets/src/mage/cards/e/ExtinctionEvent.java index 98319601c1..875a24b820 100644 --- a/Mage.Sets/src/mage/cards/e/ExtinctionEvent.java +++ b/Mage.Sets/src/mage/cards/e/ExtinctionEvent.java @@ -50,7 +50,7 @@ class ExtinctionEventEffect extends OneShotEffect { ExtinctionEventEffect() { super(Outcome.Benefit); - staticText = "Choose odd or even. Exile each creature with mana value of the chosen value. (Zero is even.)"; + staticText = "Choose odd or even. Exile each creature with mana value of the chosen quality. (Zero is even.)"; } private ExtinctionEventEffect(final ExtinctionEventEffect effect) { diff --git a/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java b/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java index df641cdfd4..0a0bd474bb 100644 --- a/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java +++ b/Mage.Sets/src/mage/cards/g/GateToTheAfterlife.java @@ -81,7 +81,7 @@ class GateToTheAfterlifeEffect extends OneShotEffect { super(Outcome.Benefit); this.staticText = "Search your graveyard, hand, and/or library for a card named " + cardName - + " and put it onto the battlefield. If you search your library this way, shuffle it"; + + " and put it onto the battlefield. If you search your library this way, shuffle"; } public GateToTheAfterlifeEffect(final GateToTheAfterlifeEffect effect) { diff --git a/Mage.Sets/src/mage/cards/g/Glory.java b/Mage.Sets/src/mage/cards/g/Glory.java index 7e433cc65a..29504d9622 100644 --- a/Mage.Sets/src/mage/cards/g/Glory.java +++ b/Mage.Sets/src/mage/cards/g/Glory.java @@ -32,7 +32,7 @@ public final class Glory extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // {2}{W}: Choose a color. Creatures you control gain protection from the chosen color until end of turn. Activate this ability only if Glory is in your graveyard. Effect effect = new GainProtectionFromColorAllEffect(Duration.EndOfTurn, new FilterControlledCreaturePermanent("Creatures you control")); - effect.setText("Choose a color. Creatures you control gain protection from the chosen color until end of turn. Activate this ability only if {this} is in your graveyard."); + effect.setText("Choose a color. Creatures you control gain protection from the chosen color until end of turn. Activate only if {this} is in your graveyard."); this.addAbility(new SimpleActivatedAbility(Zone.GRAVEYARD, effect, new ManaCostsImpl("{2}{W}"))); } diff --git a/Mage.Sets/src/mage/cards/g/Granulate.java b/Mage.Sets/src/mage/cards/g/Granulate.java index 13866ad1be..a940961d24 100644 --- a/Mage.Sets/src/mage/cards/g/Granulate.java +++ b/Mage.Sets/src/mage/cards/g/Granulate.java @@ -16,7 +16,7 @@ import mage.filter.predicate.mageobject.ManaValuePredicate; */ public final class Granulate extends CardImpl { - private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland artifact with mana value 4 or less"); + private static final FilterNonlandPermanent filter = new FilterNonlandPermanent(); static { filter.add(CardType.ARTIFACT.getPredicate()); filter.add(new ManaValuePredicate(ComparisonType.FEWER_THAN, 5)); @@ -26,7 +26,7 @@ public final class Granulate extends CardImpl { // Destroy each nonland artifact with converted mana cost 4 or less. - this.getSpellAbility().addEffect(new DestroyAllEffect(filter)); + this.getSpellAbility().addEffect(new DestroyAllEffect(filter).setText("destroy each nonland artifact with mana value 4 or less")); } private Granulate(final Granulate card) { diff --git a/Mage.Sets/src/mage/cards/g/GreaterGargadon.java b/Mage.Sets/src/mage/cards/g/GreaterGargadon.java index db0ba60824..e1dd9917d1 100644 --- a/Mage.Sets/src/mage/cards/g/GreaterGargadon.java +++ b/Mage.Sets/src/mage/cards/g/GreaterGargadon.java @@ -81,6 +81,6 @@ class GreaterGargadonAbility extends ActivatedAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only if Greater Gargadon is suspended."; + return super.getRule() + " Activate only if Greater Gargadon is suspended."; } } diff --git a/Mage.Sets/src/mage/cards/g/GreenhiltTrainee.java b/Mage.Sets/src/mage/cards/g/GreenhiltTrainee.java index 61276ca121..cd86915782 100644 --- a/Mage.Sets/src/mage/cards/g/GreenhiltTrainee.java +++ b/Mage.Sets/src/mage/cards/g/GreenhiltTrainee.java @@ -52,7 +52,7 @@ public final class GreenhiltTrainee extends CardImpl { class GreenhiltTraineeCost extends CostImpl { public GreenhiltTraineeCost() { - this.text = "Activate this ability only if Greenhilt Trainee's power is 4 or greater"; + this.text = "Activate only if Greenhilt Trainee's power is 4 or greater"; } public GreenhiltTraineeCost(final GreenhiltTraineeCost cost) { diff --git a/Mage.Sets/src/mage/cards/g/GrimReminder.java b/Mage.Sets/src/mage/cards/g/GrimReminder.java index 82f5102998..40699dcfa6 100644 --- a/Mage.Sets/src/mage/cards/g/GrimReminder.java +++ b/Mage.Sets/src/mage/cards/g/GrimReminder.java @@ -12,6 +12,7 @@ import mage.abilities.condition.common.IsStepCondition; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.decorator.ConditionalActivatedAbility; import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.ReturnSourceFromGraveyardToHandEffect; import mage.abilities.effects.common.ReturnToHandSourceEffect; import mage.cards.Card; import mage.cards.CardImpl; @@ -46,7 +47,7 @@ public final class GrimReminder extends CardImpl { // {B}{B}: Return Grim Reminder from your graveyard to your hand. Activate this ability only during your upkeep. this.addAbility(new ConditionalActivatedAbility( Zone.GRAVEYARD, - new ReturnToHandSourceEffect(), + new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl("{B}{B}"), new IsStepCondition(PhaseStep.UPKEEP), null diff --git a/Mage.Sets/src/mage/cards/g/GroundlingPouncer.java b/Mage.Sets/src/mage/cards/g/GroundlingPouncer.java index 8eec92d262..0a8d43381e 100644 --- a/Mage.Sets/src/mage/cards/g/GroundlingPouncer.java +++ b/Mage.Sets/src/mage/cards/g/GroundlingPouncer.java @@ -51,7 +51,7 @@ public final class GroundlingPouncer extends CardImpl { new BoostSourceEffect(1, 3, Duration.EndOfTurn), new ManaCostsImpl("{G/U}"), new OpponentControlsPermanentCondition(filter), - "{G/U}: {this} gets +1/+3 and gains flying until end of turn. Activate this ability only once each turn and only if an opponent controls a creature with flying."); + "{G/U}: {this} gets +1/+3 and gains flying until end of turn. Activate only once each turn and only if an opponent controls a creature with flying."); ability.addEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, false, true)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/g/GryffsBoon.java b/Mage.Sets/src/mage/cards/g/GryffsBoon.java index d74c17ddbd..b88fef5ba1 100644 --- a/Mage.Sets/src/mage/cards/g/GryffsBoon.java +++ b/Mage.Sets/src/mage/cards/g/GryffsBoon.java @@ -66,7 +66,7 @@ class GryffsBoonEffect extends OneShotEffect { public GryffsBoonEffect() { super(Outcome.PutCardInPlay); - staticText = "Return {this} from your graveyard to the battlefield attached to target creature. Activate this ability only any time you could cast a sorcery."; + staticText = "Return {this} from your graveyard to the battlefield attached to target creature. Activate only as a sorcery."; } public GryffsBoonEffect(final GryffsBoonEffect effect) { diff --git a/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java b/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java index ce0b49416e..d26a3fd03e 100644 --- a/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java +++ b/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java @@ -40,7 +40,7 @@ public final class HauntedPlateMail extends CardImpl { new BecomesCreatureSourceEffect(new HauntedPlateMailToken(), "", Duration.EndOfTurn), new ManaCostsImpl("{0}"), new PermanentsOnTheBattlefieldCondition(StaticFilters.FILTER_PERMANENT_CREATURE, ComparisonType.EQUAL_TO, 0), - "{0}: Until end of turn, Haunted Plate Mail becomes a 4/4 Spirit artifact creature that's no longer an Equipment. Activate this ability only if you control no creatures."); + "{0}: Until end of turn, Haunted Plate Mail becomes a 4/4 Spirit artifact creature that's no longer an Equipment. Activate only if you control no creatures."); this.addAbility(ability); // Equip {4} this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl("{4}"))); diff --git a/Mage.Sets/src/mage/cards/i/ImminentDoom.java b/Mage.Sets/src/mage/cards/i/ImminentDoom.java index e68e7df762..f12f45763c 100644 --- a/Mage.Sets/src/mage/cards/i/ImminentDoom.java +++ b/Mage.Sets/src/mage/cards/i/ImminentDoom.java @@ -31,7 +31,7 @@ public final class ImminentDoom extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}"); // Imminent Doom enters the battlefield with a doom counter on it. - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.DOOM.createInstance(1)))); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.DOOM.createInstance(1)), "with a doom counter on it")); // Whenever you cast a spell with converted mana cost equal to the number of doom counters on Imminent Doom, Imminent Doom deals that much damage to any target. Then put a doom counter on Imminent Doom. Ability ability = new ImminentDoomTriggeredAbility(); diff --git a/Mage.Sets/src/mage/cards/j/JeweledAmulet.java b/Mage.Sets/src/mage/cards/j/JeweledAmulet.java index eb7dee7cee..9c879362d7 100644 --- a/Mage.Sets/src/mage/cards/j/JeweledAmulet.java +++ b/Mage.Sets/src/mage/cards/j/JeweledAmulet.java @@ -29,7 +29,7 @@ import java.util.UUID; */ public final class JeweledAmulet extends CardImpl { - private static final String rule = "{1}, {T}: Put a charge counter on {this}. Note the type of mana spent to pay this activation cost. Activate this ability only if there are no charge counters on {this}"; + private static final String rule = "{1}, {T}: Put a charge counter on {this}. Note the type of mana spent to pay this activation cost. Activate only if there are no charge counters on {this}"; public JeweledAmulet(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{0}"); @@ -63,7 +63,7 @@ class JeweledAmuletAddCounterEffect extends OneShotEffect { public JeweledAmuletAddCounterEffect() { super(Outcome.Benefit); - this.staticText = "Note the type of mana spent to pay this activation cost. Activate this ability only if there are no charge counters on {this}"; + this.staticText = "Note the type of mana spent to pay this activation cost. Activate only if there are no charge counters on {this}"; } public JeweledAmuletAddCounterEffect(final JeweledAmuletAddCounterEffect effect) { diff --git a/Mage.Sets/src/mage/cards/j/JourneyOfDiscovery.java b/Mage.Sets/src/mage/cards/j/JourneyOfDiscovery.java index 5f4b072b33..abb12e8360 100644 --- a/Mage.Sets/src/mage/cards/j/JourneyOfDiscovery.java +++ b/Mage.Sets/src/mage/cards/j/JourneyOfDiscovery.java @@ -24,7 +24,7 @@ public final class JourneyOfDiscovery extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{G}"); // Choose one - Search your library for up to two basic land cards, reveal them, put them into your hand, then shuffle your library; - this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(0, 2, StaticFilters.FILTER_CARD_BASIC_LAND))); + this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(0, 2, StaticFilters.FILTER_CARD_BASIC_LAND), true)); // or you may play up to two additional lands this turn. Mode mode = new Mode(); diff --git a/Mage.Sets/src/mage/cards/l/LammastideWeave.java b/Mage.Sets/src/mage/cards/l/LammastideWeave.java index 5c49206133..8512c0eb0d 100644 --- a/Mage.Sets/src/mage/cards/l/LammastideWeave.java +++ b/Mage.Sets/src/mage/cards/l/LammastideWeave.java @@ -30,7 +30,7 @@ public final class LammastideWeave extends CardImpl { this.getSpellAbility().addTarget(new TargetPlayer()); // Draw a card. - this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); + this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1).concatBy("
")); } diff --git a/Mage.Sets/src/mage/cards/l/LavabrinkVenturer.java b/Mage.Sets/src/mage/cards/l/LavabrinkVenturer.java index 5a29acbd2e..3b11d4b467 100644 --- a/Mage.Sets/src/mage/cards/l/LavabrinkVenturer.java +++ b/Mage.Sets/src/mage/cards/l/LavabrinkVenturer.java @@ -66,7 +66,7 @@ class LavabrinkVenturerEffect extends GainAbilitySourceEffect { LavabrinkVenturerEffect() { super(new ProtectionAbility(nullFilter)); this.ability.setRuleVisible(false); - staticText = "{this} has protection from each mana value of the chosen value. (Zero is even.)"; + staticText = "{this} has protection from each mana value of the chosen quality. (Zero is even.)"; } private LavabrinkVenturerEffect(final LavabrinkVenturerEffect effect) { diff --git a/Mage.Sets/src/mage/cards/l/LeoninSquire.java b/Mage.Sets/src/mage/cards/l/LeoninSquire.java index b8febb7018..eac7cfde6b 100644 --- a/Mage.Sets/src/mage/cards/l/LeoninSquire.java +++ b/Mage.Sets/src/mage/cards/l/LeoninSquire.java @@ -21,7 +21,7 @@ import mage.target.common.TargetCardInYourGraveyard; */ public final class LeoninSquire extends CardImpl { - private static final FilterArtifactCard filter = new FilterArtifactCard("target artifact card with mana value 1 or less from your graveyard"); + private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with mana value 1 or less from your graveyard"); static { filter.add(new ManaValuePredicate(ComparisonType.FEWER_THAN, 2)); } diff --git a/Mage.Sets/src/mage/cards/l/LifeMatrix.java b/Mage.Sets/src/mage/cards/l/LifeMatrix.java index 13c5bf2b1d..842430660a 100644 --- a/Mage.Sets/src/mage/cards/l/LifeMatrix.java +++ b/Mage.Sets/src/mage/cards/l/LifeMatrix.java @@ -38,7 +38,7 @@ public final class LifeMatrix extends CardImpl { new GenericManaCost(4), new IsStepCondition(PhaseStep.UPKEEP), "Put a matrix counter on target creature and " + "that creature gains “Remove a matrix counter from this creature: " - + "Regenerate this creature.” Activate this ability only during your upkeep."); + + "Regenerate this creature.” Activate only during your upkeep."); Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new RemoveCountersSourceCost(CounterType.MATRIX.createInstance())); diff --git a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java index 9efcd1fd6f..5ccf70cad9 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java @@ -27,7 +27,7 @@ import mage.target.targetadjustment.TargetAdjuster; */ public final class LilianaDefiantNecromancer extends CardImpl { - protected static final FilterCreatureCard filter = new FilterCreatureCard("nonlegendary creature with mana value X from your graveyard"); + protected static final FilterCreatureCard filter = new FilterCreatureCard("nonlegendary creature card with mana value X from your graveyard"); static { filter.add(Predicates.not(SuperType.LEGENDARY.getPredicate())); diff --git a/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java b/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java index cc0079c35e..e286be2390 100644 --- a/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java +++ b/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java @@ -72,6 +72,6 @@ class LionsEyeDiamondAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast an instant."; + return super.getRule() + " Activate only as an instant."; } } diff --git a/Mage.Sets/src/mage/cards/l/LongTermPlans.java b/Mage.Sets/src/mage/cards/l/LongTermPlans.java index da2dc88ec5..3b799b4e2a 100644 --- a/Mage.Sets/src/mage/cards/l/LongTermPlans.java +++ b/Mage.Sets/src/mage/cards/l/LongTermPlans.java @@ -40,7 +40,7 @@ class LongTermPlansEffect extends OneShotEffect { LongTermPlansEffect() { super(Outcome.Benefit); - this.staticText = "Search your library for a card, shuffle your library, then put that card third from the top"; + this.staticText = "Search your library for a card, then shuffle and put that card third from the top"; } LongTermPlansEffect(final LongTermPlansEffect effect) { diff --git a/Mage.Sets/src/mage/cards/l/LuminarchAscension.java b/Mage.Sets/src/mage/cards/l/LuminarchAscension.java index 59e7e32706..cfa569ee21 100644 --- a/Mage.Sets/src/mage/cards/l/LuminarchAscension.java +++ b/Mage.Sets/src/mage/cards/l/LuminarchAscension.java @@ -87,7 +87,7 @@ class SourceHasCountersCost extends CostImpl { public SourceHasCountersCost(int counters, CounterType counterType) { this.counters = counters; this.counterType = counterType; - this.text = "Activate this ability only if Luminarch Ascension has 4 or more quest counters on it"; + this.text = "Activate only if Luminarch Ascension has 4 or more quest counters on it"; } public SourceHasCountersCost(final SourceHasCountersCost cost) { diff --git a/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java b/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java index ae8b142bb6..2c05b67606 100644 --- a/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java +++ b/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java @@ -23,7 +23,7 @@ import mage.counters.CounterType; */ public final class LuxaRiverShrine extends CardImpl { - private static final String rule = "{T}: You gain 2 life. Activate this ability only if there are three or more brick counters on {this}."; + private static final String rule = "{T}: You gain 2 life. Activate only if there are three or more brick counters on {this}."; public LuxaRiverShrine(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); diff --git a/Mage.Sets/src/mage/cards/m/MaddeningImp.java b/Mage.Sets/src/mage/cards/m/MaddeningImp.java index 87f97513ec..59d88458f8 100644 --- a/Mage.Sets/src/mage/cards/m/MaddeningImp.java +++ b/Mage.Sets/src/mage/cards/m/MaddeningImp.java @@ -54,7 +54,7 @@ public final class MaddeningImp extends CardImpl { new TapSourceCost(), new MaddeningImpTurnCondition(), "{T}: Non-Wall creatures the active player controls attack this turn if able. " + "At the beginning of the next end step, destroy each of those creatures that didn't attack this turn. " - + "Activate this ability only during an opponent's turn and only before combat."); + + "Activate only during an opponent's turn and only before combat."); ability.addEffect(new MaddeningImpCreateDelayedTriggeredAbilityEffect()); this.addAbility(ability, new AttackedThisTurnWatcher()); diff --git a/Mage.Sets/src/mage/cards/m/ManaScrew.java b/Mage.Sets/src/mage/cards/m/ManaScrew.java index 6b10614892..b77ee4d178 100644 --- a/Mage.Sets/src/mage/cards/m/ManaScrew.java +++ b/Mage.Sets/src/mage/cards/m/ManaScrew.java @@ -66,7 +66,7 @@ class ManaScrewAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast an instant."; + return super.getRule() + " Activate only as an instant."; } } diff --git a/Mage.Sets/src/mage/cards/m/ManipulateFate.java b/Mage.Sets/src/mage/cards/m/ManipulateFate.java index 3d6a919d85..ead32c27eb 100644 --- a/Mage.Sets/src/mage/cards/m/ManipulateFate.java +++ b/Mage.Sets/src/mage/cards/m/ManipulateFate.java @@ -42,7 +42,7 @@ class ManipulateFateEffect extends SearchEffect { ManipulateFateEffect() { super(new TargetCardInLibrary(3, StaticFilters.FILTER_CARD), Outcome.Benefit); staticText = "Search your library for three cards, exile them, " - + "then shuffle. Draw a card"; + + "then shuffle.
Draw a card"; } private ManipulateFateEffect(final ManipulateFateEffect effect) { diff --git a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java index 0834887424..c3916cadfe 100644 --- a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java +++ b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java @@ -50,7 +50,7 @@ public final class MetallurgicSummonings extends CardImpl { new MetallurgicSummoningsReturnEffect(), new ManaCostsImpl("{3}{U}{U}"), new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), ComparisonType.MORE_THAN, 5), "{3}{U}{U}, Exile {this}: Return all instant and sorcery cards from your graveyard to your hand." - + " Activate this ability only if you control six or more artifacts."); + + " Activate only if you control six or more artifacts."); ability.addCost(new ExileSourceCost()); this.addAbility(ability); } @@ -99,7 +99,7 @@ class MetallurgicSummoningsReturnEffect extends OneShotEffect { MetallurgicSummoningsReturnEffect() { super(Outcome.PutCardInPlay); - this.staticText = "Return all instant and sorcery cards from your graveyard to your hand. Activate this ability only if you control six or more artifacts"; + this.staticText = "Return all instant and sorcery cards from your graveyard to your hand. Activate only if you control six or more artifacts"; } MetallurgicSummoningsReturnEffect(final MetallurgicSummoningsReturnEffect effect) { diff --git a/Mage.Sets/src/mage/cards/m/MindwhipSliver.java b/Mage.Sets/src/mage/cards/m/MindwhipSliver.java index 980a80d9ab..949d6c0494 100644 --- a/Mage.Sets/src/mage/cards/m/MindwhipSliver.java +++ b/Mage.Sets/src/mage/cards/m/MindwhipSliver.java @@ -41,7 +41,7 @@ public final class MindwhipSliver extends CardImpl { gainedAbility.addCost(new SacrificeSourceCost()); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(gainedAbility, Duration.WhileOnBattlefield, filter, - "All Slivers have \"{2}, Sacrifice this permanent: Target player discards a card at random. Activate this ability only any time you could cast a sorcery.\""))); + "All Slivers have \"{2}, Sacrifice this permanent: Target player discards a card at random. Activate only as a sorcery.\""))); } private MindwhipSliver(final MindwhipSliver card) { diff --git a/Mage.Sets/src/mage/cards/m/MishraArtificerProdigy.java b/Mage.Sets/src/mage/cards/m/MishraArtificerProdigy.java index cd737ee571..8ac2cbe56d 100644 --- a/Mage.Sets/src/mage/cards/m/MishraArtificerProdigy.java +++ b/Mage.Sets/src/mage/cards/m/MishraArtificerProdigy.java @@ -87,7 +87,7 @@ class MishraArtificerProdigyTriggeredAbility extends TriggeredAbilityImpl { @Override public String getRule() { - return "Whenever you cast an artifact spell, you may search your graveyard, hand, and/or library for a card with the same name as that spell and put it onto the battlefield. If you search your library this way, shuffle it."; + return "Whenever you cast an artifact spell, you may search your graveyard, hand, and/or library for a card with the same name as that spell and put it onto the battlefield. If you search your library this way, shuffle."; } } @@ -97,7 +97,7 @@ class MishraArtificerProdigyEffect extends OneShotEffect { MishraArtificerProdigyEffect() { super(Outcome.PutCardInPlay); - this.staticText = "Search your graveyard, hand, and/or library for a card named " + cardName + " and put it onto the battlefield. If you search your library this way, shuffle it."; + this.staticText = "Search your graveyard, hand, and/or library for a card named " + cardName + " and put it onto the battlefield. If you search your library this way, shuffle."; } MishraArtificerProdigyEffect(final MishraArtificerProdigyEffect effect) { diff --git a/Mage.Sets/src/mage/cards/n/NettlingImp.java b/Mage.Sets/src/mage/cards/n/NettlingImp.java index d054646eea..8bd273d6ce 100644 --- a/Mage.Sets/src/mage/cards/n/NettlingImp.java +++ b/Mage.Sets/src/mage/cards/n/NettlingImp.java @@ -52,7 +52,7 @@ public final class NettlingImp extends CardImpl { new TapSourceCost(), new NettlingImpTurnCondition(), "{T}: Choose target non-Wall creature the active player has controlled continuously since the beginning of the turn. " + "That creature attacks this turn if able. If it doesn't, destroy it at the beginning of the next end step. " - + "Activate this ability only during an opponent's turn, before attackers are declared."); + + "Activate only during an opponent's turn, before attackers are declared."); ability.addEffect(new NettlingImpDelayedDestroyEffect()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability, new AttackedThisTurnWatcher()); diff --git a/Mage.Sets/src/mage/cards/n/NimDevourer.java b/Mage.Sets/src/mage/cards/n/NimDevourer.java index 42c05673aa..fafc11ca96 100644 --- a/Mage.Sets/src/mage/cards/n/NimDevourer.java +++ b/Mage.Sets/src/mage/cards/n/NimDevourer.java @@ -43,7 +43,7 @@ public final class NimDevourer extends CardImpl { // {B}{B}: Return Nim Devourer from your graveyard to the battlefield, then sacrifice a creature. Activate this ability only during your upkeep. Ability ability = new ConditionalActivatedAbility(Zone.GRAVEYARD, - new ReturnSourceFromGraveyardToBattlefieldEffect(), + new ReturnSourceFromGraveyardToBattlefieldEffect(false, false), new ManaCostsImpl("{B}{B}"), new IsStepCondition(PhaseStep.UPKEEP), null); ability.addEffect(new NimDevourerEffect()); @@ -64,7 +64,7 @@ class NimDevourerEffect extends OneShotEffect { public NimDevourerEffect() { super(Outcome.Sacrifice); - this.staticText = "then sacrifice a creature"; + this.staticText = ", then sacrifice a creature"; } public NimDevourerEffect(final NimDevourerEffect effect) { diff --git a/Mage.Sets/src/mage/cards/n/Norritt.java b/Mage.Sets/src/mage/cards/n/Norritt.java index 49e8b06a19..ae6f04d6f6 100644 --- a/Mage.Sets/src/mage/cards/n/Norritt.java +++ b/Mage.Sets/src/mage/cards/n/Norritt.java @@ -66,7 +66,7 @@ public final class Norritt extends CardImpl { new TapSourceCost(), BeforeAttackersAreDeclaredCondition.instance, "{T}: Choose target non-Wall creature the active player has controlled continuously since the beginning of the turn. " + "That creature attacks this turn if able. If it doesn't, destroy it at the beginning of the next end step. " - + "Activate this ability only before attackers are declared."); + + "Activate only before attackers are declared."); ability2.addEffect(new NorrittDelayedDestroyEffect()); ability2.addTarget(new TargetCreaturePermanent(filterCreature)); this.addAbility(ability2, new AttackedThisTurnWatcher()); diff --git a/Mage.Sets/src/mage/cards/o/OraclesVault.java b/Mage.Sets/src/mage/cards/o/OraclesVault.java index ceb1b33020..5802c4b584 100644 --- a/Mage.Sets/src/mage/cards/o/OraclesVault.java +++ b/Mage.Sets/src/mage/cards/o/OraclesVault.java @@ -42,7 +42,7 @@ public final class OraclesVault extends CardImpl { this.addAbility(new ConditionalActivatedAbility(Zone.BATTLEFIELD, new OraclesVaultFreeEffect(), new TapSourceCost(), new SourceHasCounterCondition(CounterType.BRICK, 3, Integer.MAX_VALUE), "{T}: Exile the top card of your library. Until end of turn, you may play that card without paying its mana cost. " - + "Activate this ability only if there are three or more brick counters on {this}")); + + "Activate only if there are three or more brick counters on {this}")); } private OraclesVault(final OraclesVault card) { diff --git a/Mage.Sets/src/mage/cards/o/Overload.java b/Mage.Sets/src/mage/cards/o/Overload.java index d730e9a504..fa1b1fbd81 100644 --- a/Mage.Sets/src/mage/cards/o/Overload.java +++ b/Mage.Sets/src/mage/cards/o/Overload.java @@ -46,7 +46,7 @@ class OverloadEffect extends OneShotEffect { OverloadEffect() { super(Outcome.DestroyPermanent); - this.staticText = "Destroy target artifact if its mana value is 2 or less. if this spell was kicked, destroy that artifact if its mana value is 5 or less instead."; + this.staticText = "Destroy target artifact if its mana value is 2 or less. If this spell was kicked, destroy that artifact if its mana value is 5 or less instead."; } OverloadEffect(final OverloadEffect effect) { diff --git a/Mage.Sets/src/mage/cards/p/Prophecy.java b/Mage.Sets/src/mage/cards/p/Prophecy.java index a4dc7f5ba2..466fab7f20 100644 --- a/Mage.Sets/src/mage/cards/p/Prophecy.java +++ b/Mage.Sets/src/mage/cards/p/Prophecy.java @@ -33,7 +33,7 @@ public final class Prophecy extends CardImpl { this.getSpellAbility().addTarget(new TargetOpponent()); // Draw a card at the beginning of the next turn's upkeep. - this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1)), false)); + this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1)), false).concatBy("
")); } private Prophecy(final Prophecy card) { diff --git a/Mage.Sets/src/mage/cards/p/PsychicBattle.java b/Mage.Sets/src/mage/cards/p/PsychicBattle.java index bfe222fe63..bfe4b53f17 100644 --- a/Mage.Sets/src/mage/cards/p/PsychicBattle.java +++ b/Mage.Sets/src/mage/cards/p/PsychicBattle.java @@ -88,7 +88,7 @@ class PsychicBattleEffect extends OneShotEffect { public PsychicBattleEffect() { super(Outcome.Benefit); - this.staticText = "each player reveals the top card of their library. The player who reveals the card with the highest mana value may change the target or targets. If two or more cards are tied for highest cost, the target or targets remain unchanged"; + this.staticText = "each player reveals the top card of their library. The player who reveals the card with the highest mana value may change the target or targets. If two or more cards are tied for highest, the target or targets remain unchanged"; } public PsychicBattleEffect(final PsychicBattleEffect effect) { diff --git a/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java b/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java index cf93894871..552cf304ee 100644 --- a/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java +++ b/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java @@ -41,7 +41,7 @@ public final class ReaperOfFlightMoonsilver extends CardImpl { new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)), DeliriumCondition.instance, "Delirium — Sacrifice another creature: Reaper of Flight Moonsilver gets +2/+1 until end of turn. " - + "Activate this ability only if there are four or more card types among cards in your graveyard") + + "Activate only if there are four or more card types among cards in your graveyard") .addHint(DeliriumHint.instance)); } diff --git a/Mage.Sets/src/mage/cards/r/RelicSeeker.java b/Mage.Sets/src/mage/cards/r/RelicSeeker.java index 9c542affb7..67fd2daef8 100644 --- a/Mage.Sets/src/mage/cards/r/RelicSeeker.java +++ b/Mage.Sets/src/mage/cards/r/RelicSeeker.java @@ -19,7 +19,7 @@ import mage.target.common.TargetCardInLibrary; */ public final class RelicSeeker extends CardImpl { - private static final FilterCard filter = new FilterCard("Equipment card"); + private static final FilterCard filter = new FilterCard("an Equipment card"); static { filter.add(CardType.ARTIFACT.getPredicate()); diff --git a/Mage.Sets/src/mage/cards/r/Renewal.java b/Mage.Sets/src/mage/cards/r/Renewal.java index 495a2e36a5..a0900a49d8 100644 --- a/Mage.Sets/src/mage/cards/r/Renewal.java +++ b/Mage.Sets/src/mage/cards/r/Renewal.java @@ -32,7 +32,7 @@ public final class Renewal extends CardImpl { this.getSpellAbility().addEffect(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND))); // Draw a card at the beginning of the next turn's upkeep. - this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1)), false)); + this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1)), false).concatBy("
")); } private Renewal(final Renewal card) { diff --git a/Mage.Sets/src/mage/cards/r/RhysticCave.java b/Mage.Sets/src/mage/cards/r/RhysticCave.java index 670904d5f7..5b6f885f5e 100644 --- a/Mage.Sets/src/mage/cards/r/RhysticCave.java +++ b/Mage.Sets/src/mage/cards/r/RhysticCave.java @@ -77,7 +77,7 @@ class RhysticCaveManaAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only any time you could cast an instant."; + return super.getRule() + " Activate only as an instant."; } } diff --git a/Mage.Sets/src/mage/cards/r/Ringskipper.java b/Mage.Sets/src/mage/cards/r/Ringskipper.java index ac7541c74e..0d33a2bcc2 100644 --- a/Mage.Sets/src/mage/cards/r/Ringskipper.java +++ b/Mage.Sets/src/mage/cards/r/Ringskipper.java @@ -1,6 +1,7 @@ package mage.cards.r; import mage.MageInt; +import mage.abilities.common.DiesSourceTriggeredAbility; import mage.abilities.common.PutIntoGraveFromBattlefieldSourceTriggeredAbility; import mage.abilities.effects.common.DoIfClashWonEffect; import mage.abilities.effects.common.ReturnToHandSourceEffect; @@ -29,7 +30,7 @@ public final class Ringskipper extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // When {this} is put into graveyard from play, clash with an opponent. If you win return {this} to its owner's hand - this.addAbility(new PutIntoGraveFromBattlefieldSourceTriggeredAbility(new DoIfClashWonEffect(new ReturnToHandSourceEffect()))); + this.addAbility(new DiesSourceTriggeredAbility(new DoIfClashWonEffect(new ReturnToHandSourceEffect(false,true)))); } private Ringskipper(final Ringskipper card) { diff --git a/Mage.Sets/src/mage/cards/r/RotFarmSkeleton.java b/Mage.Sets/src/mage/cards/r/RotFarmSkeleton.java index 031ffa3cb8..07cee3eb97 100644 --- a/Mage.Sets/src/mage/cards/r/RotFarmSkeleton.java +++ b/Mage.Sets/src/mage/cards/r/RotFarmSkeleton.java @@ -35,7 +35,7 @@ public final class RotFarmSkeleton extends CardImpl { this.addAbility(new CantBlockAbility()); // 2{B}{G}, Put the top four cards of your library into your graveyard: Return Rot Farm Skeleton from your graveyard to the battlefield. Activate this ability only any time you could cast a sorcery. - Ability ability = new ActivateAsSorceryActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToBattlefieldEffect(), new ManaCostsImpl("{2}{B}{G}")); + Ability ability = new ActivateAsSorceryActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToBattlefieldEffect(false,false), new ManaCostsImpl("{2}{B}{G}")); ability.addCost(new MillCardsCost(4)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/r/RunedCrown.java b/Mage.Sets/src/mage/cards/r/RunedCrown.java index 635889f9d7..133504f0b7 100644 --- a/Mage.Sets/src/mage/cards/r/RunedCrown.java +++ b/Mage.Sets/src/mage/cards/r/RunedCrown.java @@ -64,7 +64,7 @@ class RunedCrownEffect extends OneShotEffect { RunedCrownEffect() { super(Outcome.Benefit); staticText = "you may search your library, hand, and/or graveyard for a Rune card " + - "and put it onto the battlefield attached to {this}. If you search your library this way, shuffle it"; + "and put it onto the battlefield attached to {this}. If you search your library this way, shuffle"; } private RunedCrownEffect(final RunedCrownEffect effect) { diff --git a/Mage.Sets/src/mage/cards/r/RuneforgeChampion.java b/Mage.Sets/src/mage/cards/r/RuneforgeChampion.java index 37a9e95f27..2886ed9417 100644 --- a/Mage.Sets/src/mage/cards/r/RuneforgeChampion.java +++ b/Mage.Sets/src/mage/cards/r/RuneforgeChampion.java @@ -41,7 +41,7 @@ public final class RuneforgeChampion extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryGraveyardPutInHandEffect( filter, false, false ).setText("search your library and/or graveyard for a Rune card, reveal it, " + - "and put it into your hand. If you search your library this way, shuffle it"), true)); + "and put it into your hand. If you search your library this way, shuffle"), true)); // You may pay {1} rather than pay the mana cost for Rune spells you cast. this.addAbility(new SimpleStaticAbility(new RuneforgeChampionEffect())); diff --git a/Mage.Sets/src/mage/cards/s/SalvagingStation.java b/Mage.Sets/src/mage/cards/s/SalvagingStation.java index cf34e85981..f6c1c25102 100644 --- a/Mage.Sets/src/mage/cards/s/SalvagingStation.java +++ b/Mage.Sets/src/mage/cards/s/SalvagingStation.java @@ -24,7 +24,7 @@ import mage.target.common.TargetCardInYourGraveyard; */ public final class SalvagingStation extends CardImpl { - private static final FilterCard filter = new FilterCard("noncreature artifact card with mana value 1 or less"); + private static final FilterCard filter = new FilterCard("noncreature artifact card with mana value 1 or less from your graveyard"); static { filter.add(CardType.ARTIFACT.getPredicate()); @@ -36,7 +36,7 @@ public final class SalvagingStation extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{6}"); // {tap}: Return target noncreature artifact card with converted mana cost 1 or less from your graveyard to the battlefield. - Ability secondAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(), new TapSourceCost()); + Ability secondAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(false, false), new TapSourceCost()); secondAbility.addTarget(new TargetCardInYourGraveyard(filter)); this.addAbility(secondAbility); // Whenever a creature dies, you may untap Salvaging Station. diff --git a/Mage.Sets/src/mage/cards/s/ScoutingTrek.java b/Mage.Sets/src/mage/cards/s/ScoutingTrek.java index b7959b6fc9..04d531a4df 100644 --- a/Mage.Sets/src/mage/cards/s/ScoutingTrek.java +++ b/Mage.Sets/src/mage/cards/s/ScoutingTrek.java @@ -1,24 +1,24 @@ package mage.cards.s; -import java.util.UUID; import mage.abilities.effects.common.RecruiterEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.common.FilterBasicLandCard; +import mage.filter.StaticFilters; + +import java.util.UUID; /** - * * @author LoneFox */ public final class ScoutingTrek extends CardImpl { public ScoutingTrek(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{G}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{G}"); // Search your library for any number of basic land cards. Reveal those cards, then shuffle your library and put them on top of it. - this.getSpellAbility().addEffect(new RecruiterEffect(new FilterBasicLandCard("basic land cards"))); + this.getSpellAbility().addEffect(new RecruiterEffect(StaticFilters.FILTER_CARD_BASIC_LANDS).setText("search your library for any number of basic land cards, reveal those cards, then shuffle and put them on top")); } private ScoutingTrek(final ScoutingTrek card) { diff --git a/Mage.Sets/src/mage/cards/s/SeedguideAsh.java b/Mage.Sets/src/mage/cards/s/SeedguideAsh.java index bc423956d0..497605895f 100644 --- a/Mage.Sets/src/mage/cards/s/SeedguideAsh.java +++ b/Mage.Sets/src/mage/cards/s/SeedguideAsh.java @@ -19,7 +19,7 @@ import mage.target.common.TargetCardInLibrary; */ public final class SeedguideAsh extends CardImpl { - private static final FilterCard filter = new FilterCard("Forest"); + private static final FilterCard filter = new FilterCard("Forest cards"); static { filter.add(SubType.FOREST.getPredicate()); @@ -33,7 +33,7 @@ public final class SeedguideAsh extends CardImpl { this.power = new MageInt(4); this.toughness = new MageInt(4); // When Seedguide Ash dies, you may search your library for up to three Forest cards and put them onto the battlefield tapped. If you do, shuffle your library. - this.addAbility(new DiesSourceTriggeredAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 3, filter), true, false, Outcome.PutLandInPlay), true)); + this.addAbility(new DiesSourceTriggeredAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 3, filter), true, true, Outcome.PutLandInPlay), true)); } private SeedguideAsh(final SeedguideAsh card) { diff --git a/Mage.Sets/src/mage/cards/s/SeersVision.java b/Mage.Sets/src/mage/cards/s/SeersVision.java index 41a425bd0b..ce8c726b3c 100644 --- a/Mage.Sets/src/mage/cards/s/SeersVision.java +++ b/Mage.Sets/src/mage/cards/s/SeersVision.java @@ -27,7 +27,7 @@ public final class SeersVision extends CardImpl { // Your opponents play with their hands revealed. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayWithHandRevealedEffect(TargetController.OPPONENT))); // Sacrifice Seer's Vision: Look at target player's hand and choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. - Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardCardYouChooseTargetEffect(TargetController.ANY), new SacrificeSourceCost()); + Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardCardYouChooseTargetEffect(TargetController.ANY).setText("look at target player's hand and choose a card from it. That player discards that card"), new SacrificeSourceCost()); ability.addTarget(new TargetPlayer()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShadowsVerdict.java b/Mage.Sets/src/mage/cards/s/ShadowsVerdict.java index cafcdc0dd8..f8ef523afa 100644 --- a/Mage.Sets/src/mage/cards/s/ShadowsVerdict.java +++ b/Mage.Sets/src/mage/cards/s/ShadowsVerdict.java @@ -64,7 +64,7 @@ class ShadowsVerdictEffect extends OneShotEffect { ShadowsVerdictEffect() { super(Outcome.Benefit); - staticText = "exile all creatures and all planeswalkers with mana value 3 or less from the battlefield " + + staticText = "exile all creatures and planeswalkers with mana value 3 or less from the battlefield " + "and all creature and planeswalker cards with mana value 3 or less from all graveyards"; } diff --git a/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java b/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java index 91818d5cc2..778f98de68 100644 --- a/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java +++ b/Mage.Sets/src/mage/cards/s/SkarrganHellkite.java @@ -41,7 +41,7 @@ public final class SkarrganHellkite extends CardImpl { Zone.BATTLEFIELD, new DamageMultiEffect(2), new ManaCostsImpl("{3}{R}"), new SourceHasCounterCondition(CounterType.P1P1), "{3}{R}: {this} deals 2 damage divided as you choose among one or two targets. " + - "Activate this ability only if {this} has a +1/+1 counter on it." + "Activate only if {this} has a +1/+1 counter on it." ); ability.addTarget(new TargetAnyTargetAmount(2)); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Skygames.java b/Mage.Sets/src/mage/cards/s/Skygames.java index b546a36548..b2a05fc675 100644 --- a/Mage.Sets/src/mage/cards/s/Skygames.java +++ b/Mage.Sets/src/mage/cards/s/Skygames.java @@ -40,7 +40,7 @@ public final class Skygames extends CardImpl { Ability gainAbility = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new TapSourceCost()); gainAbility.addTarget(new TargetCreaturePermanent()); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(gainAbility, AttachmentType.AURA, - Duration.WhileOnBattlefield, "Enchanted land has \"{T}: Target creature gains flying until end of turn. Activate this ability only any time you could cast a sorcery.\""))); + Duration.WhileOnBattlefield, "Enchanted land has \"{T}: Target creature gains flying until end of turn. Activate only as a sorcery.\""))); } private Skygames(final Skygames card) { diff --git a/Mage.Sets/src/mage/cards/s/SliverHive.java b/Mage.Sets/src/mage/cards/s/SliverHive.java index 5c64dd8dc8..3a6ecaf21d 100644 --- a/Mage.Sets/src/mage/cards/s/SliverHive.java +++ b/Mage.Sets/src/mage/cards/s/SliverHive.java @@ -50,7 +50,7 @@ public final class SliverHive extends CardImpl { // {5}, {T}: Create a 1/1 colorless Sliver creature token. Activate this ability only if you control a Sliver. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SliverToken()), new TapSourceCost(), new PermanentsOnTheBattlefieldCondition(filter), - "{5}, {T}: Create a 1/1 colorless Sliver creature token. Activate this ability only if you control a Sliver."); + "{5}, {T}: Create a 1/1 colorless Sliver creature token. Activate only if you control a Sliver."); ability.addCost(new GenericManaCost(5)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SmolderingTar.java b/Mage.Sets/src/mage/cards/s/SmolderingTar.java index 266ff45bf4..64362a07f1 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderingTar.java +++ b/Mage.Sets/src/mage/cards/s/SmolderingTar.java @@ -31,7 +31,7 @@ public final class SmolderingTar extends CardImpl { ability.addTarget(new TargetPlayer()); this.addAbility(ability); // Sacrifice Smoldering Tar: Smoldering Tar deals 4 damage to target creature. Activate this ability only any time you could cast a sorcery. - ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(4), new SacrificeSourceCost()); + ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(4, "it"), new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/StalkingLeonin.java b/Mage.Sets/src/mage/cards/s/StalkingLeonin.java index eba6bb6fca..6a30a9b01a 100644 --- a/Mage.Sets/src/mage/cards/s/StalkingLeonin.java +++ b/Mage.Sets/src/mage/cards/s/StalkingLeonin.java @@ -57,7 +57,7 @@ class StalkingLeoninEffect extends OneShotEffect { public StalkingLeoninEffect() { super(Outcome.Exile); - this.staticText = "Exile target creature that's attacking you if it's controlled by the chosen player. Activate this ability only once"; + this.staticText = "Exile target creature that's attacking you if it's controlled by the chosen player. Activate only once"; } public StalkingLeoninEffect(final StalkingLeoninEffect effect) { diff --git a/Mage.Sets/src/mage/cards/s/SteelshapersGift.java b/Mage.Sets/src/mage/cards/s/SteelshapersGift.java index 6da393e440..c2fd1457c9 100644 --- a/Mage.Sets/src/mage/cards/s/SteelshapersGift.java +++ b/Mage.Sets/src/mage/cards/s/SteelshapersGift.java @@ -28,7 +28,7 @@ public final class SteelshapersGift extends CardImpl { // Search your library for an Equipment card, reveal that card, and put it into your hand. Then shuffle your library. - this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(1, 1, filter), true)); + this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true)); } private SteelshapersGift(final SteelshapersGift card) { diff --git a/Mage.Sets/src/mage/cards/t/TIEBomber.java b/Mage.Sets/src/mage/cards/t/TIEBomber.java index b977be83de..72ef2bae09 100644 --- a/Mage.Sets/src/mage/cards/t/TIEBomber.java +++ b/Mage.Sets/src/mage/cards/t/TIEBomber.java @@ -37,7 +37,7 @@ public final class TIEBomber extends CardImpl { new LoseAbilitySourceEffect(SpaceflightAbility.getInstance(), Duration.EndOfTurn), new GenericManaCost(1), new IsPhaseCondition(TurnPhase.COMBAT), - "{1}: {this} loses Spaceflight until end od turn. Activate this ability only during combat.")); + "{1}: {this} loses Spaceflight until end od turn. Activate only during combat.")); } private TIEBomber(final TIEBomber card) { diff --git a/Mage.Sets/src/mage/cards/t/TectonicEdge.java b/Mage.Sets/src/mage/cards/t/TectonicEdge.java index bc0be33e6b..7169132472 100644 --- a/Mage.Sets/src/mage/cards/t/TectonicEdge.java +++ b/Mage.Sets/src/mage/cards/t/TectonicEdge.java @@ -64,7 +64,7 @@ class TectonicEdgeCost extends CostImpl { public TectonicEdgeCost() { - this.text = "Activate this ability only if an opponent controls four or more lands"; + this.text = "Activate only if an opponent controls four or more lands"; } public TectonicEdgeCost(final TectonicEdgeCost cost) { diff --git a/Mage.Sets/src/mage/cards/t/Timesifter.java b/Mage.Sets/src/mage/cards/t/Timesifter.java index ed6e5bbb6b..58b45fc7e6 100644 --- a/Mage.Sets/src/mage/cards/t/Timesifter.java +++ b/Mage.Sets/src/mage/cards/t/Timesifter.java @@ -29,7 +29,7 @@ public final class Timesifter extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{5}"); // At the beginning of each upkeep, each player exiles the top card of their library. The player who exiled the card with the highest converted mana cost takes an extra turn after this one. If two or more players' cards are tied for highest cost, the tied players repeat this process until the tie is broken. - this.addAbility(new BeginningOfUpkeepTriggeredAbility(new TimesifterEffect(), TargetController.ANY, false)); + this.addAbility(new BeginningOfUpkeepTriggeredAbility(new TimesifterEffect(), TargetController.EACH_PLAYER, false)); } private Timesifter(final Timesifter card) { diff --git a/Mage.Sets/src/mage/cards/t/Tolaria.java b/Mage.Sets/src/mage/cards/t/Tolaria.java index d497cb55e9..7f5d345110 100644 --- a/Mage.Sets/src/mage/cards/t/Tolaria.java +++ b/Mage.Sets/src/mage/cards/t/Tolaria.java @@ -35,7 +35,7 @@ public final class Tolaria extends CardImpl { // {T}: Target creature loses banding and all "bands with other" abilities until end of turn. Activate this ability only during any upkeep step. ActivatedAbilityImpl ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new LoseAbilityTargetEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new TapSourceCost(), new IsStepCondition(PhaseStep.UPKEEP, false), - "{T}: Target creature loses banding and all \"bands with other\" abilities until end of turn. Activate this ability only during any upkeep step."); + "{T}: Target creature loses banding and all \"bands with other\" abilities until end of turn. Activate only during any upkeep step."); ability.addEffect(new LoseAbilityTargetEffect(new BandsWithOtherAbility(), Duration.EndOfTurn)); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/t/TradeCaravan.java b/Mage.Sets/src/mage/cards/t/TradeCaravan.java index a050d67007..ccf70657fd 100644 --- a/Mage.Sets/src/mage/cards/t/TradeCaravan.java +++ b/Mage.Sets/src/mage/cards/t/TradeCaravan.java @@ -48,7 +48,7 @@ public final class TradeCaravan extends CardImpl { // Remove two currency counters from Trade Caravan: Untap target basic land. Activate this ability only during an opponent's upkeep. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new RemoveCountersSourceCost(CounterType.CURRENCY.createInstance(2)), new CompoundCondition(OnOpponentsTurnCondition.instance, new IsStepCondition(PhaseStep.UPKEEP, false)), - "Remove two currency counters from {this}: Untap target basic land. Activate this ability only during an opponent's upkeep."); + "Remove two currency counters from {this}: Untap target basic land. Activate only during an opponent's upkeep."); ability.addTarget(new TargetPermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/t/TriassicEgg.java b/Mage.Sets/src/mage/cards/t/TriassicEgg.java index 85b38fdf7d..926ed0ec1d 100644 --- a/Mage.Sets/src/mage/cards/t/TriassicEgg.java +++ b/Mage.Sets/src/mage/cards/t/TriassicEgg.java @@ -43,7 +43,7 @@ public final class TriassicEgg extends CardImpl { new PutCardFromHandOntoBattlefieldEffect(StaticFilters.FILTER_CARD_CREATURE_A), new SacrificeSourceCost(), new SourceHasCounterCondition(CounterType.HATCHLING, 2, Integer.MAX_VALUE), - "Sacrifice Triassic Egg: Choose one - You may put a creature card from your hand onto the battlefield; or return target creature card from your graveyard to the battlefield. Activate this ability only if two or more hatchling counters are on {this}."); + "Sacrifice Triassic Egg: Choose one - You may put a creature card from your hand onto the battlefield; or return target creature card from your graveyard to the battlefield. Activate only if two or more hatchling counters are on {this}."); // or return target creature card from your graveyard to the battlefield. Activate this ability only if two or more hatchling counters are on Triassic Egg. Mode mode = new Mode(); diff --git a/Mage.Sets/src/mage/cards/v/VerazolTheSplitCurrent.java b/Mage.Sets/src/mage/cards/v/VerazolTheSplitCurrent.java index 287f964d6a..9e09018679 100644 --- a/Mage.Sets/src/mage/cards/v/VerazolTheSplitCurrent.java +++ b/Mage.Sets/src/mage/cards/v/VerazolTheSplitCurrent.java @@ -40,7 +40,7 @@ public final class VerazolTheSplitCurrent extends CardImpl { this.addAbility(new SpellCastControllerTriggeredAbility( new DoIfCostPaid( new CopyTargetSpellEffect(false, true) - .setText("copy that spell. You may choose new targets for that copy"), + .setText("copy that spell. You may choose new targets for the copy"), new RemoveCountersSourceCost(CounterType.P1P1.createInstance(2)) ), StaticFilters.FILTER_SPELL_KICKED_A, false, true )); diff --git a/Mage.Sets/src/mage/cards/v/ViviensJaguar.java b/Mage.Sets/src/mage/cards/v/ViviensJaguar.java index 626f9e9c58..9f83feb3dd 100644 --- a/Mage.Sets/src/mage/cards/v/ViviensJaguar.java +++ b/Mage.Sets/src/mage/cards/v/ViviensJaguar.java @@ -44,7 +44,7 @@ public final class ViviensJaguar extends CardImpl { new ManaCostsImpl("{2}{G}"), new PermanentsOnTheBattlefieldCondition(filter), "{2}{G}: Return {this} from your graveyard to your hand. " - + "Activate this ability only if you control a Vivien planeswalker" + + "Activate only if you control a Vivien planeswalker" )); } diff --git a/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java b/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java index 8e3f85a7ae..c72bfbaf33 100644 --- a/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java +++ b/Mage.Sets/src/mage/cards/v/VizierOfTheAnointed.java @@ -133,7 +133,7 @@ class SearchLibraryPutInGraveyard extends SearchEffect { public SearchLibraryPutInGraveyard(FilterCard filter) { super(new TargetCardInLibrary(filter), Outcome.Neutral); - staticText = "search for a creature card with eternalize or embalm, put that card into your graveyard, then shuffle."; + staticText = "search your library for a creature card with eternalize or embalm, put that card into your graveyard, then shuffle."; } public SearchLibraryPutInGraveyard(final SearchLibraryPutInGraveyard effect) { diff --git a/Mage.Sets/src/mage/cards/v/VraskasScorn.java b/Mage.Sets/src/mage/cards/v/VraskasScorn.java index f71b5bdf4c..aaf1a1274d 100644 --- a/Mage.Sets/src/mage/cards/v/VraskasScorn.java +++ b/Mage.Sets/src/mage/cards/v/VraskasScorn.java @@ -32,7 +32,7 @@ public final class VraskasScorn extends CardImpl { // You may search your library and/or graveyard for a card named Vraska, Scheming Gorgon, reveal it, and put it into your hand. If you search your library this way, shuffle it. this.getSpellAbility().addEffect(new SearchLibraryGraveyardPutInHandEffect(filter) - .setText("You may search your library and/or graveyard for a card named Vraska, Scheming Gorgon, reveal it, and put it into your hand. If you search your library this way, shuffle it")); + .setText("You may search your library and/or graveyard for a card named Vraska, Scheming Gorgon, reveal it, and put it into your hand. If you search your library this way, shuffle")); } private VraskasScorn(final VraskasScorn card) { diff --git a/Mage.Sets/src/mage/cards/w/WallOfForgottenPharaohs.java b/Mage.Sets/src/mage/cards/w/WallOfForgottenPharaohs.java index 33a104d8e0..87eebd0b6f 100644 --- a/Mage.Sets/src/mage/cards/w/WallOfForgottenPharaohs.java +++ b/Mage.Sets/src/mage/cards/w/WallOfForgottenPharaohs.java @@ -50,7 +50,7 @@ public final class WallOfForgottenPharaohs extends CardImpl { new DamageTargetEffect(1), new TapSourceCost(), new OrCondition( - "only if you control a Desert or there is a Desert card in your graveyard", + "you control a Desert or there is a Desert card in your graveyard", new PermanentsOnTheBattlefieldCondition(new FilterControlledPermanent(filterDesertPermanent)), new CardsInControllerGraveyardCondition(1, filterDesertCard) ) diff --git a/Mage.Sets/src/mage/cards/w/WoodlandGuidance.java b/Mage.Sets/src/mage/cards/w/WoodlandGuidance.java index 216d51d54b..10b34414b0 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandGuidance.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandGuidance.java @@ -30,7 +30,7 @@ public final class WoodlandGuidance extends CardImpl { this.getSpellAbility().addEffect(new DoIfClashWonEffect(new UntapAllLandsControllerEffect(new FilterLandPermanent(SubType.FOREST, "Forests")))); // Remove WoodlandGuidance from the game - this.getSpellAbility().addEffect(new ExileSpellEffect()); + this.getSpellAbility().addEffect(new ExileSpellEffect().concatBy("
")); } private WoodlandGuidance(final WoodlandGuidance card) { diff --git a/Mage/src/main/java/mage/abilities/common/LimitedTimesPerTurnActivatedAbility.java b/Mage/src/main/java/mage/abilities/common/LimitedTimesPerTurnActivatedAbility.java index 8f43b20284..5692c5c6a2 100644 --- a/Mage/src/main/java/mage/abilities/common/LimitedTimesPerTurnActivatedAbility.java +++ b/Mage/src/main/java/mage/abilities/common/LimitedTimesPerTurnActivatedAbility.java @@ -44,7 +44,7 @@ public class LimitedTimesPerTurnActivatedAbility extends ActivatedAbilityImpl { public String getRule() { StringBuilder sb = new StringBuilder(super.getRule()).append(" Activate "); if (condition != null) { - sb.append("only ").append(condition.toString()).append(" and "); + sb.append("only if ").append(condition.toString()).append(" and "); } if (getTiming() == TimingRule.SORCERY) { sb.append("only as a sorcery and "); diff --git a/Mage/src/main/java/mage/abilities/common/SpellCastAllTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/SpellCastAllTriggeredAbility.java index 783e7d0041..80a049d40b 100644 --- a/Mage/src/main/java/mage/abilities/common/SpellCastAllTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/SpellCastAllTriggeredAbility.java @@ -10,6 +10,7 @@ import mage.game.Game; import mage.game.events.GameEvent; import mage.game.stack.Spell; import mage.target.targetpointer.FixedTarget; +import mage.util.CardUtil; /** * @author LevelX2 @@ -78,7 +79,7 @@ public class SpellCastAllTriggeredAbility extends TriggeredAbilityImpl { if (rule != null && !rule.isEmpty()) { return rule; } - return "Whenever a player casts " + filter.getMessage() + ", " + super.getRule(); + return "Whenever a player casts " + CardUtil.addArticle(filter.getMessage()) + ", " + super.getRule(); } @Override diff --git a/Mage/src/main/java/mage/abilities/costs/common/ControlPermanentCost.java b/Mage/src/main/java/mage/abilities/costs/common/ControlPermanentCost.java index c557d3b7d8..ad5d3f5083 100644 --- a/Mage/src/main/java/mage/abilities/costs/common/ControlPermanentCost.java +++ b/Mage/src/main/java/mage/abilities/costs/common/ControlPermanentCost.java @@ -13,7 +13,7 @@ public class ControlPermanentCost extends CostImpl { public ControlPermanentCost(FilterControlledPermanent filter) { this.filter = filter.copy(); - this.text = "Activate this ability only if you control " + filter.getMessage(); + this.text = "Activate only if you control " + filter.getMessage(); } public ControlPermanentCost(final ControlPermanentCost cost) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutInHandEffect.java b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutInHandEffect.java index 21cd0a5468..94449d5c19 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutInHandEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutInHandEffect.java @@ -35,7 +35,7 @@ public class SearchLibraryGraveyardPutInHandEffect extends OneShotEffect { this.filter = filter; this.forceToSearchBoth = forceToSearchBoth; staticText = (youMay ? "you may " : "") + "search your library and" + (forceToSearchBoth ? "" : "/or") + " graveyard for a card named " + filter.getMessage() - + ", reveal it, and put it into your hand. " + (forceToSearchBoth ? "Then shuffle" : "If you search your library this way, shuffle"); + + ", reveal it, then put it into your hand. " + (forceToSearchBoth ? "Then shuffle" : "If you search your library this way, shuffle"); } public SearchLibraryGraveyardPutInHandEffect(final SearchLibraryGraveyardPutInHandEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutOntoBattlefieldEffect.java b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutOntoBattlefieldEffect.java index 9185d49d96..464d4ab10d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutOntoBattlefieldEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryGraveyardPutOntoBattlefieldEffect.java @@ -34,7 +34,7 @@ public class SearchLibraryGraveyardPutOntoBattlefieldEffect extends OneShotEffec this.filter = filter; this.forceToSearchBoth = forceToSearchBoth; staticText = (youMay ? "You may " : "") + "search your library and" + (forceToSearchBoth ? "" : "/or") + " graveyard for a " + filter.getMessage() - + " and put it onto the battlefield. " + (forceToSearchBoth ? "Then shuffle" : "If you search your library this way, shuffle it"); + + " and put it onto the battlefield. " + (forceToSearchBoth ? "Then shuffle" : "If you search your library this way, shuffle"); } public SearchLibraryGraveyardPutOntoBattlefieldEffect(final SearchLibraryGraveyardPutOntoBattlefieldEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java b/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java index 003a5af3ad..f6dfc680aa 100644 --- a/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/BoastAbility.java @@ -69,7 +69,7 @@ public class BoastAbility extends ActivatedAbilityImpl { @Override public String getRule() { - return "Boast — " + super.getRule() + " (Activate this ability only if this creature attacked this turn and only once each turn.)"; + return "Boast — " + super.getRule() + " (Activate only if this creature attacked this turn and only once each turn.)"; } private static final class BoastTwiceAbility extends SimpleStaticAbility { diff --git a/Mage/src/main/java/mage/abilities/keyword/ChannelAbility.java b/Mage/src/main/java/mage/abilities/keyword/ChannelAbility.java index cb32349f5b..0f1ecf8654 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ChannelAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ChannelAbility.java @@ -37,7 +37,7 @@ public class ChannelAbility extends ActivatedAbilityImpl { StringBuilder sb = new StringBuilder("Channel — "); sb.append(super.getRule()); if(this.timing == TimingRule.SORCERY) { - sb.append(" Activate this ability only any time you could cast a sorcery."); + sb.append(" Activate only as a sorcery."); } return sb.toString(); } diff --git a/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java b/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java index 5cb06f17dc..c1a7c99fdd 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java @@ -46,6 +46,6 @@ public class ForecastAbility extends ActivatedAbilityImpl { @Override public String getRule() { - return "Forecast — " + super.getRule() + " (Activate this ability only during your upkeep and only once each turn)"; + return "Forecast — " + super.getRule() + " (Activate only during your upkeep and only once each turn)"; } } diff --git a/Mage/src/main/java/mage/abilities/mana/ActivateIfConditionManaAbility.java b/Mage/src/main/java/mage/abilities/mana/ActivateIfConditionManaAbility.java index 9aa0f3389e..abf4e1e38a 100644 --- a/Mage/src/main/java/mage/abilities/mana/ActivateIfConditionManaAbility.java +++ b/Mage/src/main/java/mage/abilities/mana/ActivateIfConditionManaAbility.java @@ -33,7 +33,7 @@ public class ActivateIfConditionManaAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only if " + condition.toString() + '.'; + return super.getRule() + " Activate only if " + condition.toString() + '.'; } @Override diff --git a/Mage/src/main/java/mage/abilities/mana/ActivateOncePerTurnManaAbility.java b/Mage/src/main/java/mage/abilities/mana/ActivateOncePerTurnManaAbility.java index 91a5264429..9f729d3780 100644 --- a/Mage/src/main/java/mage/abilities/mana/ActivateOncePerTurnManaAbility.java +++ b/Mage/src/main/java/mage/abilities/mana/ActivateOncePerTurnManaAbility.java @@ -40,7 +40,7 @@ public class ActivateOncePerTurnManaAbility extends ActivatedManaAbilityImpl { @Override public String getRule() { - return super.getRule() + " Activate this ability only once each turn."; + return super.getRule() + " Activate only once each turn."; } @Override diff --git a/Mage/src/main/java/mage/game/command/emblems/NissaWhoShakesTheWorldEmblem.java b/Mage/src/main/java/mage/game/command/emblems/NissaWhoShakesTheWorldEmblem.java index e00b2a2480..163298dd41 100644 --- a/Mage/src/main/java/mage/game/command/emblems/NissaWhoShakesTheWorldEmblem.java +++ b/Mage/src/main/java/mage/game/command/emblems/NissaWhoShakesTheWorldEmblem.java @@ -20,7 +20,7 @@ public final class NissaWhoShakesTheWorldEmblem extends Emblem { Zone.COMMAND, new GainAbilityAllEffect( IndestructibleAbility.getInstance(), Duration.WhileOnBattlefield, - StaticFilters.FILTER_CONTROLLED_PERMANENT_LAND, false + StaticFilters.FILTER_CONTROLLED_PERMANENT_LANDS, false ) )); this.setExpansionSetCodeForImage("WAR");