From 9eeaf9cae1fab568986d25e585849e01e7349913 Mon Sep 17 00:00:00 2001 From: xenohedron Date: Thu, 9 Nov 2023 00:27:30 -0500 Subject: [PATCH] fix text fix Jade Seedstones craft cost --- Mage.Sets/src/mage/cards/b/BatColony.java | 10 +++++----- Mage.Sets/src/mage/cards/d/DuskLegionSergeant.java | 2 +- Mage.Sets/src/mage/cards/e/ElendasHierophant.java | 3 ++- Mage.Sets/src/mage/cards/e/ExtricatorOfFlesh.java | 10 +++++----- Mage.Sets/src/mage/cards/j/JadeSeedstones.java | 2 +- Mage.Sets/src/mage/cards/m/MalametBattleGlyph.java | 2 +- .../common/continuous/GainAbilityControlledEffect.java | 7 ++++--- 7 files changed, 19 insertions(+), 17 deletions(-) diff --git a/Mage.Sets/src/mage/cards/b/BatColony.java b/Mage.Sets/src/mage/cards/b/BatColony.java index f41429c7bf3..fc932b06b36 100644 --- a/Mage.Sets/src/mage/cards/b/BatColony.java +++ b/Mage.Sets/src/mage/cards/b/BatColony.java @@ -37,7 +37,7 @@ import java.util.UUID; */ public final class BatColony extends CardImpl { - private static final FilterControlledPermanent filter = new FilterControlledPermanent(SubType.CAVE, "a Cave you control"); + private static final FilterControlledPermanent filter = new FilterControlledPermanent(SubType.CAVE, "a Cave"); private static final Hint hint = new ValueHint("Mana spent from a Cave", BatColonyValue.instance); @@ -86,12 +86,12 @@ enum BatColonyValue implements DynamicValue { @Override public String toString() { - return "X"; + return "1"; } @Override public String getMessage() { - return ""; + return "mana from a Cave spent to cast it"; } } @@ -100,7 +100,7 @@ enum BatColonyValue implements DynamicValue { /** * Inspired by {@link mage.watchers.common.ManaPaidSourceWatcher} * If more cards like Bat Colony care for mana spent by Caves in the future, best to refactor the tracking there. - * For now the assumpting is that it is a 1of, so don't want to track it in any game. + * For now the assumption is that it is a 1of, so don't want to track it in any game. */ class BatColonyWatcher extends Watcher { private static final class CaveManaPaidTracker implements Serializable, Copyable { @@ -162,4 +162,4 @@ class BatColonyWatcher extends Watcher { BatColonyWatcher watcher = game.getState().getWatcher(BatColonyWatcher.class); return watcher == null ? 0 : watcher.manaMap.getOrDefault(sourceId, emptyTracker).caveMana; } -} \ No newline at end of file +} diff --git a/Mage.Sets/src/mage/cards/d/DuskLegionSergeant.java b/Mage.Sets/src/mage/cards/d/DuskLegionSergeant.java index 6360dde2fd2..46ebd301ceb 100644 --- a/Mage.Sets/src/mage/cards/d/DuskLegionSergeant.java +++ b/Mage.Sets/src/mage/cards/d/DuskLegionSergeant.java @@ -25,7 +25,7 @@ import java.util.UUID; public final class DuskLegionSergeant extends CardImpl { private static final FilterPermanent filter - = new FilterControlledCreaturePermanent(SubType.VAMPIRE, "nontoken Vampire creature you control"); + = new FilterControlledCreaturePermanent(SubType.VAMPIRE, "each nontoken Vampire creature you control"); static { filter.add(TokenPredicate.FALSE); diff --git a/Mage.Sets/src/mage/cards/e/ElendasHierophant.java b/Mage.Sets/src/mage/cards/e/ElendasHierophant.java index b95c2d7b9a6..4c80c7b0d82 100644 --- a/Mage.Sets/src/mage/cards/e/ElendasHierophant.java +++ b/Mage.Sets/src/mage/cards/e/ElendasHierophant.java @@ -39,7 +39,8 @@ public final class ElendasHierophant extends CardImpl { this.addAbility(new GainLifeControllerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()))); // When Elenda's Hierophant dies, create X 1/1 white Vampire creature tokens with lifelink, where X is its power. - this.addAbility(new DiesSourceTriggeredAbility(new CreateTokenEffect(new IxalanVampireToken(), xValue))); + this.addAbility(new DiesSourceTriggeredAbility(new CreateTokenEffect(new IxalanVampireToken(), xValue) + .setText("create X 1/1 white Vampire creature tokens with lifelink, where X is its power"))); } private ElendasHierophant(final ElendasHierophant card) { diff --git a/Mage.Sets/src/mage/cards/e/ExtricatorOfFlesh.java b/Mage.Sets/src/mage/cards/e/ExtricatorOfFlesh.java index b32f8438631..859aef869f3 100644 --- a/Mage.Sets/src/mage/cards/e/ExtricatorOfFlesh.java +++ b/Mage.Sets/src/mage/cards/e/ExtricatorOfFlesh.java @@ -21,7 +21,6 @@ import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; import mage.game.permanent.token.EldraziHorrorToken; -import mage.target.common.TargetControlledCreaturePermanent; /** * @@ -29,10 +28,11 @@ import mage.target.common.TargetControlledCreaturePermanent; */ public final class ExtricatorOfFlesh extends CardImpl { - private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("non-Eldrazi creature"); + private static final FilterControlledCreaturePermanent filterNonEldrazi = new FilterControlledCreaturePermanent("non-Eldrazi creature"); + private static final FilterControlledCreaturePermanent filterEldrazi = new FilterControlledCreaturePermanent(SubType.ELDRAZI, "Eldrazi"); static { - filter.add(Predicates.not(SubType.ELDRAZI.getPredicate())); + filterNonEldrazi.add(Predicates.not(SubType.ELDRAZI.getPredicate())); } public ExtricatorOfFlesh(UUID ownerId, CardSetInfo setInfo) { @@ -47,12 +47,12 @@ public final class ExtricatorOfFlesh extends CardImpl { // Eldrazi you control have vigilance this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect( - VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, new FilterControlledCreaturePermanent(SubType.ELDRAZI, "Eldrazi you control ")))); + VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, filterEldrazi))); // {2}, {T}, Sacrifice a non-Eldrazi creature: Create a 3/2 colorless Eldrazi Horror creature token. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new EldraziHorrorToken()), new GenericManaCost(2)); ability.addCost(new TapSourceCost()); - ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, true))); + ability.addCost(new SacrificeTargetCost(filterNonEldrazi)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/j/JadeSeedstones.java b/Mage.Sets/src/mage/cards/j/JadeSeedstones.java index be343ff3ab6..837679c29fa 100644 --- a/Mage.Sets/src/mage/cards/j/JadeSeedstones.java +++ b/Mage.Sets/src/mage/cards/j/JadeSeedstones.java @@ -33,7 +33,7 @@ public final class JadeSeedstones extends CardImpl { // Craft with creature {5}{G}{G} this.addAbility(new CraftAbility( - "{4}{B}", "creature", "another creature you control " + + "{5}{G}{G}", "creature", "another creature you control " + "or a creature card in your graveyard", CardType.CREATURE.getPredicate()) ); } diff --git a/Mage.Sets/src/mage/cards/m/MalametBattleGlyph.java b/Mage.Sets/src/mage/cards/m/MalametBattleGlyph.java index bb4f86d0799..a28bb19304c 100644 --- a/Mage.Sets/src/mage/cards/m/MalametBattleGlyph.java +++ b/Mage.Sets/src/mage/cards/m/MalametBattleGlyph.java @@ -26,7 +26,7 @@ public final class MalametBattleGlyph extends CardImpl { // Choose target creature you control and target creature you don't control. If the creature you control entered the battlefield this turn, put a +1/+1 counter on it. Then those creatures fight each other. this.getSpellAbility().addEffect(new MalametBattleGlyphEffect()); - this.getSpellAbility().addEffect(new FightTargetsEffect().setText("then those creatures fight each other")); + this.getSpellAbility().addEffect(new FightTargetsEffect().setText("Then those creatures fight each other")); this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent()); this.getSpellAbility().addTarget(new TargetPermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL)); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java index 2dbd6db6bfc..bcc35060f39 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java @@ -127,13 +127,14 @@ public class GainAbilityControlledEffect extends ContinuousEffectImpl { } String gainedAbility = CardUtil.stripReminderText(ability.getRule()); sb.append(filter.getMessage()); - if (!filter.getMessage().endsWith("you control")) { + if (!filter.getMessage().contains("you control")) { sb.append(" you control"); } + boolean singular = filter.getMessage().toLowerCase().startsWith("each"); if (duration == Duration.WhileOnBattlefield || duration == Duration.EndOfGame) { - sb.append(" have "); + sb.append(singular ? " has " : " have "); } else { - sb.append(" gain "); + sb.append(singular ? " gains " : " gain "); } if (forceQuotes || gainedAbility.startsWith("When") || gainedAbility.startsWith("{T}")) { gainedAbility = '"' + gainedAbility + '"';