some text fixes

This commit is contained in:
theelk801 2025-06-18 16:40:18 -04:00
parent d2b507650b
commit 7be454fb92
8 changed files with 31 additions and 21 deletions

View file

@ -1,12 +1,11 @@
package mage.cards.a; package mage.cards.a;
import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.Condition; import mage.abilities.condition.Condition;
import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.effects.common.ReturnSourceFromGraveyardToBattlefieldEffect; import mage.abilities.effects.common.ReturnSourceFromGraveyardToBattlefieldEffect;
import mage.abilities.keyword.HasteAbility; import mage.abilities.keyword.HasteAbility;
import mage.cards.Card; import mage.cards.Card;
@ -19,8 +18,9 @@ import mage.constants.Zone;
import mage.game.Game; import mage.game.Game;
import mage.players.Player; import mage.players.Player;
import java.util.UUID;
/** /**
*
* @author TheElk801 * @author TheElk801
*/ */
public final class AshenGhoul extends CardImpl { public final class AshenGhoul extends CardImpl {
@ -85,6 +85,6 @@ enum AshenGhoulCondition implements Condition {
@Override @Override
public String toString() { public String toString() {
return "only during your upkeep and only if three or more creature cards are above {this}"; return "during your upkeep and only if three or more creature cards are above this card";
} }
} }

View file

@ -46,7 +46,7 @@ class FracturedPowerstoneEffect extends OneShotEffect {
FracturedPowerstoneEffect() { FracturedPowerstoneEffect() {
super(Outcome.Benefit); super(Outcome.Benefit);
staticText = "Roll the planar"; staticText = "Roll the planar die";
} }
private FracturedPowerstoneEffect(final FracturedPowerstoneEffect effect) { private FracturedPowerstoneEffect(final FracturedPowerstoneEffect effect) {

View file

@ -2,10 +2,10 @@ package mage.cards.g;
import mage.MageInt; import mage.MageInt;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.Condition; import mage.abilities.condition.Condition;
import mage.abilities.condition.common.IsStepCondition; import mage.abilities.condition.common.IsStepCondition;
import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.OneShotEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
@ -59,7 +59,9 @@ class GeneralJarkeldSwitchBlockersEffect extends OneShotEffect {
GeneralJarkeldSwitchBlockersEffect() { GeneralJarkeldSwitchBlockersEffect() {
super(Outcome.Benefit); super(Outcome.Benefit);
this.staticText = "Switch the blocking creatures of two target attacking creatures"; this.staticText = "choose two target blocked attacking creatures. If each of those creatures could be " +
"blocked by all creatures that the other is blocked by, each creature that's blocking exactly one " +
"of those attacking creatures stops blocking it and is blocking the other attacking creature";
} }
private GeneralJarkeldSwitchBlockersEffect(final GeneralJarkeldSwitchBlockersEffect effect) { private GeneralJarkeldSwitchBlockersEffect(final GeneralJarkeldSwitchBlockersEffect effect) {

View file

@ -1,11 +1,11 @@
package mage.cards.i; package mage.cards.i;
import mage.MageInt; import mage.MageInt;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.common.EntersBattlefieldAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.condition.common.IsStepCondition; import mage.abilities.condition.common.IsStepCondition;
import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.common.SacrificeSourceCost;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.dynamicvalue.common.CountersSourceCount; import mage.abilities.dynamicvalue.common.CountersSourceCount;
import mage.abilities.effects.common.DamageControllerEffect; import mage.abilities.effects.common.DamageControllerEffect;
import mage.abilities.effects.common.GainLifeEffect; import mage.abilities.effects.common.GainLifeEffect;
@ -44,7 +44,8 @@ public final class IcatianMoneychanger extends CardImpl {
// Sacrifice Icatian Moneychanger: You gain 1 life for each credit counter on Icatian Moneychanger. Activate this ability only during your upkeep. // Sacrifice Icatian Moneychanger: You gain 1 life for each credit counter on Icatian Moneychanger. Activate this ability only during your upkeep.
this.addAbility(new ActivateIfConditionActivatedAbility( this.addAbility(new ActivateIfConditionActivatedAbility(
new GainLifeEffect(new CountersSourceCount(CounterType.CREDIT)), new GainLifeEffect(new CountersSourceCount(CounterType.CREDIT))
.setText("you gain 1 life for each credit counter on this creature"),
new SacrificeSourceCost(), IsStepCondition.getMyUpkeep() new SacrificeSourceCost(), IsStepCondition.getMyUpkeep()
)); ));
} }

View file

@ -78,7 +78,7 @@ class IceCauldronExileEffect extends OneShotEffect {
public IceCauldronExileEffect() { public IceCauldronExileEffect() {
super(Outcome.Benefit); super(Outcome.Benefit);
this.staticText = "and exile a nonland card from your hand. You may cast that card for as long as it remains exiled"; this.staticText = "you may exile a nonland card from your hand. You may cast that card for as long as it remains exiled";
} }
private IceCauldronExileEffect(final IceCauldronExileEffect effect) { private IceCauldronExileEffect(final IceCauldronExileEffect effect) {
@ -157,7 +157,7 @@ class IceCauldronNoteManaEffect extends OneShotEffect {
public IceCauldronNoteManaEffect() { public IceCauldronNoteManaEffect() {
super(Outcome.Benefit); super(Outcome.Benefit);
this.staticText = "Note the type and amount of mana spent to pay this activation cost"; this.staticText = "and note the type and amount of mana spent to pay this activation cost";
} }
private IceCauldronNoteManaEffect(final IceCauldronNoteManaEffect effect) { private IceCauldronNoteManaEffect(final IceCauldronNoteManaEffect effect) {

View file

@ -44,7 +44,7 @@ public final class InfiniteHourglass extends CardImpl {
// {3}: Remove a time counter from Infinite Hourglass. Any player may activate this ability but only during any upkeep step. // {3}: Remove a time counter from Infinite Hourglass. Any player may activate this ability but only during any upkeep step.
this.addAbility(new ActivateIfConditionActivatedAbility( this.addAbility(new ActivateIfConditionActivatedAbility(
new RemoveCounterSourceEffect(CounterType.TIME.createInstance()), new GenericManaCost(3), condition new RemoveCounterSourceEffect(CounterType.TIME.createInstance()), new GenericManaCost(3), condition
).setMayActivate(TargetController.ANY)); ).withConditionText("any player may activate this ability but only during any upkeep step").setMayActivate(TargetController.ANY));
} }
private InfiniteHourglass(final InfiniteHourglass card) { private InfiniteHourglass(final InfiniteHourglass card) {

View file

@ -39,7 +39,7 @@ public final class NemesisPhoenix extends CardImpl {
this.addAbility(new ActivateIfConditionActivatedAbility( this.addAbility(new ActivateIfConditionActivatedAbility(
Zone.GRAVEYARD, Zone.GRAVEYARD,
new ReturnToBattlefieldUnderOwnerControlSourceEffect(true, true, -1) new ReturnToBattlefieldUnderOwnerControlSourceEffect(true, true, -1)
.setText("return {this} from your graveyard to the battlefield tapped and attacking"), .setText("return this card from your graveyard to the battlefield tapped and attacking"),
new ManaCostsImpl<>("{2}{R}"), NemesisPhoenixCondition.instance new ManaCostsImpl<>("{2}{R}"), NemesisPhoenixCondition.instance
)); ));
} }

View file

@ -10,6 +10,7 @@ import mage.constants.EffectType;
import mage.constants.TimingRule; import mage.constants.TimingRule;
import mage.constants.Zone; import mage.constants.Zone;
import mage.game.Game; import mage.game.Game;
import mage.util.CardUtil;
/** /**
* @author LevelX2 * @author LevelX2
@ -53,22 +54,28 @@ public class ActivateIfConditionActivatedAbility extends ActivatedAbilityImpl {
@Override @Override
public String getRule() { public String getRule() {
StringBuilder sb = new StringBuilder(super.getRule()); if (conditionText != null) {
if (condition.toString().startsWith("You may also")) { if (conditionText.isEmpty()) {
sb.append(' ').append(condition.toString()).append('.'); return super.getRule();
return sb.toString();
} }
return super.getRule() + ' ' + CardUtil.getTextWithFirstCharUpperCase(conditionText) + '.';
}
String conditionText = condition.toString();
if (conditionText.startsWith("You may also")) {
return super.getRule() + ' ' + conditionText + '.';
}
StringBuilder sb = new StringBuilder(super.getRule());
if (condition instanceof InvertCondition) { if (condition instanceof InvertCondition) {
sb.append(" You can't activate this ability "); sb.append(" You can't activate this ability ");
} else { } else {
sb.append(" Activate only "); sb.append(" Activate only ");
} }
if (!condition.toString().startsWith("during") if (!conditionText.startsWith("during")
&& !condition.toString().startsWith("before") && !conditionText.startsWith("before")
&& !condition.toString().startsWith("if")) { && !conditionText.startsWith("if")) {
sb.append("if "); sb.append("if ");
} }
sb.append(condition.toString()); sb.append(conditionText);
if (timing == TimingRule.SORCERY) { if (timing == TimingRule.SORCERY) {
sb.append(" and only as a sorcery"); sb.append(" and only as a sorcery");
} }