[MH1] various text fixes

This commit is contained in:
Evan Kranzler 2021-06-18 19:13:46 -04:00
parent a1754d3905
commit 1701093d45
24 changed files with 65 additions and 76 deletions

View file

@ -30,7 +30,7 @@ public final class AnsweredPrayers extends CardImpl {
// Whenever a creature enters the battlefield under your control, you gain 1 life. If Answered Prayers isn't a creature, it becomes a 3/3 Angel creature with flying in addition to its other types until end of turn.
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(
new AnsweredPrayersEffect(), StaticFilters.FILTER_PERMANENT_CREATURE
new AnsweredPrayersEffect(), StaticFilters.FILTER_PERMANENT_CREATURE_A
));
}

View file

@ -27,7 +27,7 @@ public final class ArcumsAstrolabe extends CardImpl {
// ({S} can be paid with one mana from a snow permanent.)
this.addAbility(new SimpleStaticAbility(
new InfoEffect("<i>({S} can be paid with one mana from a snow permanent.)</i>")
new InfoEffect("<i>({S} can be paid with one mana from a snow source.)</i>")
));
// When Arcum's Astrolabe enters the battlefield, draw a card.

View file

@ -36,10 +36,10 @@ public final class AriaOfFlame extends CardImpl {
// Whenever you cast an instant or sorcery spell, put a verse counter on Aria of Flame, then it deals damage equal to the number of verse counters on it to target player or planeswalker.
Ability ability = new SpellCastControllerTriggeredAbility(
new AddCountersSourceEffect(CounterType.VERSE.createInstance()),
StaticFilters.FILTER_SPELL_AN_INSTANT_OR_SORCERY, false,
"Whenever you cast an instant or sorcery spell,put a verse counter on {this}, " +
"then it deals damage equal to the number of verse counters on it " +
"to target player or planeswalker."
StaticFilters.FILTER_SPELL_AN_INSTANT_OR_SORCERY,
false, "Whenever you cast an instant or sorcery spell, " +
"put a verse counter on {this}, then it deals damage equal to " +
"the number of verse counters on it to target player or planeswalker."
);
ability.addEffect(new DamageTargetEffect(xValue));
ability.addTarget(new TargetPlayerOrPlaneswalker());

View file

@ -1,5 +1,6 @@
package mage.cards.c;
import mage.ApprovingObject;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.effects.OneShotEffect;
@ -15,7 +16,6 @@ import mage.players.Player;
import mage.target.TargetCard;
import java.util.UUID;
import mage.ApprovingObject;
/**
* @author TheElk801
@ -44,8 +44,7 @@ public final class CollectedConjuring extends CardImpl {
class CollectedConjuringEffect extends OneShotEffect {
private static final FilterCard filter = new FilterCard(
"sorcery cards with mana value 3 or less");
private static final FilterCard filter = new FilterCard("sorcery cards with mana value 3 or less");
static {
filter.add(CardType.SORCERY.getPredicate());
@ -60,10 +59,9 @@ class CollectedConjuringEffect extends OneShotEffect {
CollectedConjuringEffect() {
super(Outcome.PlayForFree);
this.staticText = "Exile the top six cards of your library. "
+ "You may cast up to two sorcery cards with mana values 3 or less from among them "
+ "without paying their mana cost. Put the exiled cards not cast this way "
+ "on the bottom of your library in a random order.";
this.staticText = "exile the top six cards of your library. You may cast up to two sorcery spells " +
"with mana value 3 or less from among them without paying their mana costs. " +
"Put the exiled cards not cast this way on the bottom of your library in a random order";
}
private CollectedConjuringEffect(final CollectedConjuringEffect effect) {

View file

@ -48,7 +48,9 @@ public final class ConiferWurm extends CardImpl {
// {3}{G}: Conifer Wurm gets +X/+X until end of turn, where X is the number of snow permanents you control.
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(xValue, xValue, Duration.EndOfTurn), new ManaCostsImpl("{3}{G}")
new BoostSourceEffect(xValue, xValue, Duration.EndOfTurn)
.setText("{this} gets +X/+X until end of turn, where X is the number of snow permanents you control"),
new ManaCostsImpl<>("{3}{G}")
).addHint(hint));
}

View file

@ -9,7 +9,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.common.FilterControlledPermanent;
import java.util.UUID;
@ -19,7 +19,7 @@ import java.util.UUID;
public final class CordialVampire extends CardImpl {
private static final FilterPermanent filter
= new FilterControlledCreaturePermanent(SubType.VAMPIRE, "Vampire creature you control");
= new FilterControlledPermanent(SubType.VAMPIRE, "Vampire you control");
public CordialVampire(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{B}{B}");

View file

@ -37,34 +37,22 @@ public final class Endling extends CardImpl {
this.toughness = new MageInt(3);
// {B}: Endling gains menace until end of turn.
this.addAbility(new SimpleActivatedAbility(
new GainAbilitySourceEffect(
new MenaceAbility(),
Duration.EndOfTurn
), new ManaCostsImpl("{B}")
));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
new MenaceAbility(), Duration.EndOfTurn
), new ManaCostsImpl<>("{B}")));
// {B}: Endling gains deathtouch until end of turn.
this.addAbility(new SimpleActivatedAbility(
new GainAbilitySourceEffect(
DeathtouchAbility.getInstance(),
Duration.EndOfTurn
), new ManaCostsImpl("{B}")
));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
DeathtouchAbility.getInstance(), Duration.EndOfTurn
), new ManaCostsImpl<>("{B}")));
// {B}: Endling gains undying until end of turn.
this.addAbility(new SimpleActivatedAbility(
new GainAbilitySourceEffect(
new UndyingAbility(),
Duration.EndOfTurn
), new ManaCostsImpl("{B}")
));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
new UndyingAbility(), Duration.EndOfTurn
), new ManaCostsImpl<>("{B}")));
// {1}: Endling gets +1/-1 or -1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(
new EndlingEffect(),
new GenericManaCost(1)
));
this.addAbility(new SimpleActivatedAbility(new EndlingEffect(), new GenericManaCost(1)));
}
private Endling(final Endling card) {

View file

@ -27,13 +27,13 @@ public final class EnduringSliver extends CardImpl {
this.toughness = new MageInt(2);
// Outlast {2}
this.addAbility(new OutlastAbility(new ManaCostsImpl("{2}")));
this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{2}")));
// Other sliver creatures you control have outlast {2}.
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
new OutlastAbility(new ManaCostsImpl("{2}")), Duration.WhileOnBattlefield,
new OutlastAbility(new ManaCostsImpl<>("{2}")), Duration.WhileOnBattlefield,
StaticFilters.FILTER_PERMANENT_CREATURE_SLIVERS, true
).setText("Other sliver creatures you control have outlast {2}.")));
).setText("Other Sliver creatures you control have outlast {2}.")));
}
private EnduringSliver(final EnduringSliver card) {

View file

@ -52,7 +52,7 @@ class FallenShinobiEffect extends OneShotEffect {
FallenShinobiEffect() {
super(Outcome.Benefit);
staticText = "that player exiles the top two cards of their library. "
+ "Until end of turn, you may play those cards without paying their mana cost.";
+ "Until end of turn, you may play those cards without paying their mana costs.";
}
private FallenShinobiEffect(final FallenShinobiEffect effect) {

View file

@ -35,11 +35,11 @@ public final class FrostwalkBastion extends CardImpl {
// {1}{S}: Until end of turn, Frostwalk Bastion becomes a 2/3 Construct artifact creature. It's still a land.
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new FrostwalkBastionToken(), "land", Duration.EndOfTurn
), new ManaCostsImpl("{1}{S}")));
), new ManaCostsImpl<>("{1}{S}")));
// Whenever Frostwalk Bastion deals combat damage to a creature, tap that creature and it doesn't untap during its controller's next untap step.
Ability ability = new DealsDamageToACreatureTriggeredAbility(
new TapTargetEffect().setText("tap that creature"),
new TapTargetEffect().setText("that creature"),
true, false, true
);
ability.addEffect(new DontUntapInControllersNextUntapStepTargetEffect()

View file

@ -3,7 +3,7 @@ package mage.cards.g;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect;
import mage.abilities.keyword.ChangelingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -30,7 +30,7 @@ public final class Graveshifter extends CardImpl {
this.addAbility(new ChangelingAbility());
// When Graveshifter enters the battlefield, you may return target creature card from your graveyard to your hand.
Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect(), true);
Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnFromGraveyardToHandTargetEffect(), true);
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD));
this.addAbility(ability);
}

View file

@ -26,7 +26,7 @@ public final class IcehideGolem extends CardImpl {
// ({S} can be paid with one mana from a snow permanent.)
this.addAbility(new SimpleStaticAbility(
new InfoEffect("<i>({S} can be paid with one mana from a snow permanent.)</i>")
new InfoEffect("<i>({S} can be paid with one mana from a snow source.)</i>")
));
}

View file

@ -41,9 +41,7 @@ public final class IgneousElemental extends CardImpl {
// When Igneous Elemental enters the battlefield, you may have it deal 2 damage to target creature.
ability = new EntersBattlefieldTriggeredAbility(
new DamageTargetEffect(2)
.setText("have it deal 2 damage to target creature"),
true
new DamageTargetEffect(2).setText("it deal 2 damage to target creature"), true
);
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -36,7 +36,7 @@ public final class KayasGuile extends CardImpl {
// Exile all cards from each opponent's graveyard.
this.getSpellAbility().addMode(new Mode(new ExileGraveyardAllPlayersEffect(
StaticFilters.FILTER_CARD_CARDS, TargetController.OPPONENT
)));
).setText("exile all cards from each opponent's graveyard")));
// Create a 1/1 white and black Spirit creature token with flying.
this.getSpellAbility().addMode(new Mode(new CreateTokenEffect(new WhiteBlackSpiritToken())));
@ -45,7 +45,7 @@ public final class KayasGuile extends CardImpl {
this.getSpellAbility().addMode(new Mode(new GainLifeEffect(4)));
// Entwine {3}
this.addAbility(new EntwineAbility(new ManaCostsImpl("{3}"), "Choose all if you pay the entwine cost."));
this.addAbility(new EntwineAbility(new ManaCostsImpl<>("{3}"), "Choose all if you pay the entwine cost."));
}
private KayasGuile(final KayasGuile card) {

View file

@ -49,7 +49,7 @@ public final class MartyrsSoul extends CardImpl {
new EntersBattlefieldTriggeredAbility(new AddCountersSourceEffect(
CounterType.P1P1.createInstance(2)
)), condition, "When {this} enters the battlefield, " +
"if you control no tapped lands, put two +1/+1 counters on it"
"if you control no tapped lands, put two +1/+1 counters on it."
));
}

View file

@ -42,7 +42,10 @@ public final class MunitionsExpert extends CardImpl {
// When Munitions Expert enters the battlefield, you may have it deal damage to target creature or planeswalker equal to the number of Goblins you control.
Ability ability = new EntersBattlefieldTriggeredAbility(
new DamageTargetEffect(xValue, "it"), true
new DamageTargetEffect(xValue)
.setText("it deal damage to target creature or planeswalker " +
"equal to the number of Goblins you control"),
true
);
ability.addTarget(new TargetCreatureOrPlaneswalker());
this.addAbility(ability);

View file

@ -38,10 +38,10 @@ public final class Reprobation extends CardImpl {
// Enchanted creature loses all abilities and is a Coward creature with base power and toughness 0/1.
// (It keeps all supertypes but loses all other types and creature types.)
this.addAbility(new SimpleStaticAbility(new BecomesCreatureAttachedEffect(
new ReprobationToken(), "Enchanted creature loses all abilities and is a Coward creature with base power and toughness 0/1"
+ " <i>(It keeps all supertypes but loses all other types and creature types.)</i>",
Duration.WhileOnBattlefield,
BecomesCreatureAttachedEffect.LoseType.ABILITIES_SUBTYPE
new ReprobationToken(), "Enchanted creature loses all abilities " +
"and is a Coward creature with base power and toughness 0/1. " +
"<i>(It keeps all supertypes but loses all other types and creature types.)</i>",
Duration.WhileOnBattlefield, BecomesCreatureAttachedEffect.LoseType.ABILITIES_SUBTYPE
)));
}

View file

@ -50,7 +50,7 @@ class ReturnFromExtinctionTarget extends TargetCardInYourGraveyard {
ReturnFromExtinctionTarget() {
super(2, 2, StaticFilters.FILTER_CARD_CREATURE, false);
targetName = "creature cards that share a creature type";
targetName = "creature cards that share a creature type from your graveyard";
}
private ReturnFromExtinctionTarget(final ReturnFromExtinctionTarget target) {

View file

@ -42,12 +42,10 @@ public final class RotwidowPack extends CardImpl {
// {3}{B}{G}, Exile a creature card from your graveyard: Create a 1/2 green Spider creature token with reach, then each opponent loses 1 life for each Spider you control.
Ability ability = new SimpleActivatedAbility(
new CreateTokenEffect(new SpiderToken())
.setText("create a 1/2 green Spider creature token with reach, then"),
new ManaCostsImpl("{3}{B}{G}")
new CreateTokenEffect(new SpiderToken()), new ManaCostsImpl<>("{3}{B}{G}")
);
ability.addEffect(new LoseLifeOpponentsEffect(xValue)
.setText("each opponent loses 1 life for each Spider you control.")
.setText(", then each opponent loses 1 life for each Spider you control.")
);
ability.addCost(new ExileFromGraveCost(
new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD)

View file

@ -10,7 +10,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.target.common.TargetCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
@ -34,7 +34,7 @@ public final class TreetopAmbusher extends CardImpl {
Ability ability = new AttacksTriggeredAbility(new BoostTargetEffect(
1, 1, Duration.EndOfTurn
), false);
ability.addTarget(new TargetCreaturePermanent());
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}

View file

@ -2,8 +2,9 @@ package mage.cards.w;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.CardsInControllerGraveyardCondition;
import mage.abilities.decorator.ConditionalOneShotEffect;
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.keyword.ChangelingAbility;
import mage.abilities.keyword.ReachAbility;
@ -20,6 +21,9 @@ import java.util.UUID;
*/
public final class WebweaverChangeling extends CardImpl {
private static final Condition condition
= new CardsInControllerGraveyardCondition(3, StaticFilters.FILTER_CARD_CREATURE);
public WebweaverChangeling(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{G}{G}");
@ -34,13 +38,11 @@ public final class WebweaverChangeling extends CardImpl {
this.addAbility(ReachAbility.getInstance());
// When Webweaver Changeling enters the battlefield, if there are three or more creature cards in your graveyard, you gain 5 life.
this.addAbility(new EntersBattlefieldTriggeredAbility(new ConditionalOneShotEffect(
new GainLifeEffect(5),
new CardsInControllerGraveyardCondition(
3, StaticFilters.FILTER_CARD_CREATURE
), "When {this} enters the battlefield, if there are three or more " +
"creature cards in your graveyard, you gain 5 life."
)));
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
new EntersBattlefieldTriggeredAbility(new GainLifeEffect(5)), condition,
"When {this} enters the battlefield, if there are three or more " +
"creature cards in your graveyard, you gain 5 life."
));
}
private WebweaverChangeling(final WebweaverChangeling card) {

View file

@ -49,7 +49,7 @@ public class EntwineAbility extends StaticAbility implements OptionalAdditionalM
public EntwineAbility(Cost cost, String reminderText) {
super(Zone.STACK, null);
this.additionalCost = new OptionalAdditionalCostImpl(keywordText, "-", reminderText, cost);
this.additionalCost = new OptionalAdditionalCostImpl(keywordText, "&mdash;", reminderText, cost);
setRuleAtTheTop(true);
}

View file

@ -46,7 +46,7 @@ public class ExaltedAbility extends TriggeredAbilityImpl {
@Override
public String getRule() {
return "Exalted <i>(Whenever a creature you control attacks alone, that creature gets +1/+1 until end of turn.)</i>";
return "exalted <i>(Whenever a creature you control attacks alone, that creature gets +1/+1 until end of turn.)</i>";
}
}

View file

@ -44,7 +44,7 @@ public class UndyingAbility extends DiesSourceTriggeredAbility {
@Override
public String getRule() {
return "Undying <i>(When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)</i>";
return "undying <i>(When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)</i>";
}
}