From df80856e795e6d16a8e464fb1fa24487ca14e4c1 Mon Sep 17 00:00:00 2001 From: xenohedron Date: Fri, 13 Sep 2024 21:37:33 -0400 Subject: [PATCH] fix a few text discrepancies --- Mage.Sets/src/mage/cards/b/BloodSeeker.java | 2 +- Mage.Sets/src/mage/cards/f/FoundFootage.java | 2 +- Mage.Sets/src/mage/cards/s/SeasonOfTheBold.java | 3 ++- Mage.Sets/src/mage/cards/s/SeasonOfWeaving.java | 3 ++- Mage.Sets/src/mage/cards/s/SuturePriest.java | 3 +-- Mage.Sets/src/mage/cards/v/ViolentUrge.java | 2 +- .../EntersBattlefieldOrAttacksSourceTriggeredAbility.java | 1 + .../main/java/mage/abilities/costs/AlternativeCostImpl.java | 5 ++++- 8 files changed, 13 insertions(+), 8 deletions(-) diff --git a/Mage.Sets/src/mage/cards/b/BloodSeeker.java b/Mage.Sets/src/mage/cards/b/BloodSeeker.java index bd2e6f1b7bd..f730bb572ce 100644 --- a/Mage.Sets/src/mage/cards/b/BloodSeeker.java +++ b/Mage.Sets/src/mage/cards/b/BloodSeeker.java @@ -81,6 +81,6 @@ class BloodSeekerTriggeredAbility extends TriggeredAbilityImpl { @Override public String getRule() { - return "Whenever a creature enters the battlefield under an opponent's control, you may have that player lose 1 life."; + return "Whenever a creature an opponent controls enters, you may have that player lose 1 life."; } } diff --git a/Mage.Sets/src/mage/cards/f/FoundFootage.java b/Mage.Sets/src/mage/cards/f/FoundFootage.java index 299600caf3e..f3f425f863f 100644 --- a/Mage.Sets/src/mage/cards/f/FoundFootage.java +++ b/Mage.Sets/src/mage/cards/f/FoundFootage.java @@ -33,7 +33,7 @@ public final class FoundFootage extends CardImpl { )); // {2}, Sacrifice Found Footage: Surveil 2, then draw a card. - Ability ability = new SimpleActivatedAbility(new SurveilEffect(2), new GenericManaCost(2)); + Ability ability = new SimpleActivatedAbility(new SurveilEffect(2, false), new GenericManaCost(2)); ability.addCost(new SacrificeSourceCost()); ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy(", then")); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/SeasonOfTheBold.java b/Mage.Sets/src/mage/cards/s/SeasonOfTheBold.java index ba56af51cb7..3a285a0a450 100644 --- a/Mage.Sets/src/mage/cards/s/SeasonOfTheBold.java +++ b/Mage.Sets/src/mage/cards/s/SeasonOfTheBold.java @@ -37,7 +37,8 @@ public final class SeasonOfTheBold extends CardImpl { this.getSpellAbility().getModes().getMode().withPawPrintValue(1); // {P}{P} -- Exile the top two cards of your library. Until the end of your next turn, you may play them. - Mode mode2 = new Mode(new ExileTopXMayPlayUntilEffect(2, Duration.UntilEndOfYourNextTurn)); + Mode mode2 = new Mode(new ExileTopXMayPlayUntilEffect(2, Duration.UntilEndOfYourNextTurn) + .withTextOptions("them", false)); this.getSpellAbility().addMode(mode2.withPawPrintValue(2)); // {P}{P}{P} -- Until the end of your next turn, whenever you cast a spell, Season of the Bold deals 2 damage to up to one target creature. diff --git a/Mage.Sets/src/mage/cards/s/SeasonOfWeaving.java b/Mage.Sets/src/mage/cards/s/SeasonOfWeaving.java index b5999376830..0b34b7a8755 100644 --- a/Mage.Sets/src/mage/cards/s/SeasonOfWeaving.java +++ b/Mage.Sets/src/mage/cards/s/SeasonOfWeaving.java @@ -51,7 +51,8 @@ public final class SeasonOfWeaving extends CardImpl { this.getSpellAbility().addMode(mode2.withPawPrintValue(2)); // {P}{P}{P} -- Return each nonland, nontoken permanent to its owner's hand. - Mode mode3 = new Mode(new ReturnToHandFromBattlefieldAllEffect(filter)); + Mode mode3 = new Mode(new ReturnToHandFromBattlefieldAllEffect(filter) + .setText("return each nonland, nontoken permanent to its owner's hand")); this.getSpellAbility().addMode(mode3.withPawPrintValue(3)); } diff --git a/Mage.Sets/src/mage/cards/s/SuturePriest.java b/Mage.Sets/src/mage/cards/s/SuturePriest.java index 32b5435e573..7e3a63bf8d6 100644 --- a/Mage.Sets/src/mage/cards/s/SuturePriest.java +++ b/Mage.Sets/src/mage/cards/s/SuturePriest.java @@ -1,4 +1,3 @@ - package mage.cards.s; import java.util.UUID; @@ -90,6 +89,6 @@ class SuturePriestSecondTriggeredAbility extends TriggeredAbilityImpl { @Override public String getRule() { - return "Whenever a creature enters the battlefield under an opponent's control, you may have that player lose 1 life."; + return "Whenever a creature an opponent controls enters, you may have that player lose 1 life."; } } diff --git a/Mage.Sets/src/mage/cards/v/ViolentUrge.java b/Mage.Sets/src/mage/cards/v/ViolentUrge.java index 5f4c6814789..dda8d7c1cdf 100644 --- a/Mage.Sets/src/mage/cards/v/ViolentUrge.java +++ b/Mage.Sets/src/mage/cards/v/ViolentUrge.java @@ -39,7 +39,7 @@ public final class ViolentUrge extends CardImpl { new AddContinuousEffectToGame(new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance())), DeliriumCondition.instance, AbilityWord.DELIRIUM.formatWord() + "If there are four or more " + "card types among cards in your graveyard, that creature gains double strike until end of turn" - )); + ).concatBy("
")); this.getSpellAbility().addHint(CardTypesInGraveyardHint.YOU); } diff --git a/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksSourceTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksSourceTriggeredAbility.java index c073bc3e6d8..b18b1f29b2a 100644 --- a/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksSourceTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksSourceTriggeredAbility.java @@ -19,6 +19,7 @@ public class EntersBattlefieldOrAttacksSourceTriggeredAbility extends TriggeredA public EntersBattlefieldOrAttacksSourceTriggeredAbility(Effect effect, boolean optional) { super(Zone.BATTLEFIELD, effect, optional); setTriggerPhrase("Whenever {this} enters or attacks, "); + this.withRuleTextReplacement(true); } protected EntersBattlefieldOrAttacksSourceTriggeredAbility(final EntersBattlefieldOrAttacksSourceTriggeredAbility ability) { diff --git a/Mage/src/main/java/mage/abilities/costs/AlternativeCostImpl.java b/Mage/src/main/java/mage/abilities/costs/AlternativeCostImpl.java index 1bccc0d6348..3d86769ed51 100644 --- a/Mage/src/main/java/mage/abilities/costs/AlternativeCostImpl.java +++ b/Mage/src/main/java/mage/abilities/costs/AlternativeCostImpl.java @@ -51,7 +51,10 @@ public class AlternativeCostImpl> extends Costs if (onlyCost) { return getText(); } else { - return (name != null ? name : "") + (isMana ? " " : "—") + getText() + (isMana ? "" : '.'); + String costName = (name != null ? name : ""); + String delimiter = (!isMana || (!costName.isEmpty() && costName.substring(costName.length() - 1).matches("\\d"))) + ? "—" : " "; + return costName + delimiter + getText() + (isMana ? "" : '.'); } }