text errata updates: various "enters the battlefield" -> "enters" (#12626)

* enters the battlefield, -> enters,

* {this} enters the battlefield -> {this} enters

* EntersBattlefieldAbility

* , it enters

* enters the battlefield under your control -> you control enters

* rework some trigger phrase logic

* fix tests
This commit is contained in:
xenohedron 2024-08-02 18:43:59 -04:00 committed by GitHub
parent ab803079b9
commit b78956d286
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
1137 changed files with 1403 additions and 1395 deletions

View file

@ -33,7 +33,7 @@ public class ConstellationAbility extends TriggeredAbilityImpl {
this.thisOr = thisOr;
setAbilityWord(AbilityWord.CONSTELLATION);
setTriggerPhrase("Whenever " + (thisOr ? "{this} or another" : "an")
+ " enchantment enters the battlefield under your control, ");
+ " enchantment you control enters, ");
}
protected ConstellationAbility(final ConstellationAbility ability) {

View file

@ -18,7 +18,7 @@ public class AllyEntersBattlefieldTriggeredAbility extends TriggeredAbilityImpl
public AllyEntersBattlefieldTriggeredAbility(Effect effect, boolean optional) {
super(Zone.BATTLEFIELD, effect, optional);
this.setAbilityWord(AbilityWord.RALLY);
setTriggerPhrase("Whenever {this} or another Ally enters the battlefield under your control, ");
setTriggerPhrase("Whenever {this} or another Ally you control enters, ");
}
public AllyEntersBattlefieldTriggeredAbility(AllyEntersBattlefieldTriggeredAbility ability) {

View file

@ -44,7 +44,7 @@ public class AnimateDeadTriggeredAbility extends EntersBattlefieldTriggeredAbili
super(new AnimateDeadReplaceAbilityEffect(becomesAura));
addEffect(new AnimateDeadPutOntoBattlefieldEffect(becomesAura, tapped));
addWatcher(new AnimateDeadWatcher());
setTriggerPhrase("When {this} enters the battlefield, if it's on the battlefield, ");
setTriggerPhrase("When {this} enters, if it's on the battlefield, ");
}
private AnimateDeadTriggeredAbility(final AnimateDeadTriggeredAbility ability) {

View file

@ -47,6 +47,6 @@ public class AsEntersBattlefieldAbility extends StaticAbility {
@Override
public String getRule() {
return "As {this} enters the battlefield, " + super.getRule();
return "As {this} enters, " + super.getRule();
}
}

View file

@ -27,7 +27,7 @@ public class BecomeDayAsEntersAbility extends EntersBattlefieldAbility {
@Override
public String getRule() {
return "If it's neither day nor night, it becomes day as {this} enters the battlefield.";
return "If it's neither day nor night, it becomes day as {this} enters.";
}
}

View file

@ -74,7 +74,7 @@ public class CaseAbility extends SimpleStaticAbility {
super(Zone.ALL, null);
if (initialAbility instanceof EntersBattlefieldTriggeredAbility) {
((EntersBattlefieldTriggeredAbility) initialAbility).setTriggerPhrase("When this Case enters the battlefield, ");
((EntersBattlefieldTriggeredAbility) initialAbility).setTriggerPhrase("When this Case enters, ");
}
addSubAbility(initialAbility);

View file

@ -89,8 +89,8 @@ public class EntersBattlefieldAbility extends StaticAbility {
} else {
prefix = null;
}
String rule = (optional ? "you may have " : "") + "{this} enter" + (optional ? "" : "s") +
" the battlefield" + (!superRule.isEmpty() && superRule.charAt(0) == ' ' ? "" : " ") + superRule;
String rule = (optional ? "you may have " : "") + "{this} enter" + (optional ? "" : "s")
+ (!superRule.isEmpty() && superRule.charAt(0) == ' ' ? "" : " ") + superRule;
if (prefix != null) {
return prefix + CardUtil.getTextWithFirstCharUpperCase(rule);
}

View file

@ -34,7 +34,7 @@ public class EntersBattlefieldAllTriggeredAbility extends TriggeredAbilityImpl {
super(zone, effect, optional);
this.filter = filter;
this.setTargetPointer = setTargetPointer;
setTriggerPhrase(getTriggerPhraseFromFilter() + ", ");
makeTriggerPhrase();
}
protected EntersBattlefieldAllTriggeredAbility(final EntersBattlefieldAllTriggeredAbility ability) {
@ -68,12 +68,12 @@ public class EntersBattlefieldAllTriggeredAbility extends TriggeredAbilityImpl {
return true;
}
protected final String getTriggerPhraseFromFilter() {
private void makeTriggerPhrase() {
String filterMessage = filter.getMessage();
if (filterMessage.startsWith("one or more")) {
return getWhen() + filterMessage + " enter";
setTriggerPhrase(getWhen() + filterMessage + " enter, ");
}
return getWhen() + CardUtil.addArticle(filterMessage) + " enters";
setTriggerPhrase(getWhen() + CardUtil.addArticle(filterMessage) + " enters, ");
}
@Override

View file

@ -6,6 +6,7 @@ import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.util.CardUtil;
import mage.watchers.common.PermanentWasCastWatcher;
/**
@ -22,7 +23,8 @@ public class EntersBattlefieldCastTriggeredAbility extends EntersBattlefieldCont
super(zone, effect, filter, optional, setTargetPointer);
this.mustCast = mustCast;
this.addWatcher(new PermanentWasCastWatcher());
setTriggerPhrase(getTriggerPhraseFromFilter() + " under your control, if it " + (mustCast ? "was" : "wasn't") + " cast, " );
setTriggerPhrase(getWhen() + CardUtil.addArticle(filter.getMessage()) +
" you control enters, if it " + (mustCast ? "was" : "wasn't") + " cast, " );
}
protected EntersBattlefieldCastTriggeredAbility(final EntersBattlefieldCastTriggeredAbility ability) {

View file

@ -7,6 +7,7 @@ import mage.filter.FilterPermanent;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.util.CardUtil;
/**
*
@ -27,7 +28,7 @@ public class EntersBattlefieldControlledTriggeredAbility extends EntersBattlefie
public EntersBattlefieldControlledTriggeredAbility(Zone zone, Effect effect, FilterPermanent filter, boolean optional, SetTargetPointer setTargetPointer) {
super(zone, effect, filter, optional, setTargetPointer);
setTriggerPhrase(getTriggerPhraseFromFilter() + " under your control, ");
makeTriggerPhrase();
}
protected EntersBattlefieldControlledTriggeredAbility(final EntersBattlefieldControlledTriggeredAbility ability) {
@ -43,6 +44,14 @@ public class EntersBattlefieldControlledTriggeredAbility extends EntersBattlefie
return super.checkTrigger(event, game);
}
private void makeTriggerPhrase() {
String filterMessage = filter.getMessage();
if (filterMessage.startsWith("one or more")) {
setTriggerPhrase(getWhen() + filterMessage + " you control enter, ");
}
setTriggerPhrase(getWhen() + CardUtil.addArticle(filterMessage) + " you control enters, ");
}
@Override
public EntersBattlefieldControlledTriggeredAbility copy() {
return new EntersBattlefieldControlledTriggeredAbility(this);

View file

@ -50,7 +50,7 @@ public class EntersBattlefieldFromGraveyardTriggeredAbility extends TriggeredAbi
}
private String generateTriggerPhrase() {
StringBuilder sb = new StringBuilder("When {this} enters the battlefield from ");
StringBuilder sb = new StringBuilder("When {this} enters from ");
switch (targetController) {
case YOU:
sb.append("your");

View file

@ -7,6 +7,7 @@ import mage.filter.FilterPermanent;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.util.CardUtil;
/**
* @author xenohedron
@ -19,7 +20,7 @@ public class EntersBattlefieldOpponentTriggeredAbility extends EntersBattlefield
public EntersBattlefieldOpponentTriggeredAbility(Zone zone, Effect effect, FilterPermanent filter, boolean optional, SetTargetPointer setTargetPointer) {
super(zone, effect, filter, optional, setTargetPointer);
setTriggerPhrase(getTriggerPhraseFromFilter() + " under an opponent's control, ");
setTriggerPhrase(getWhen() + CardUtil.addArticle(filter.getMessage()) + " an opponent controls enters, ");
}
protected EntersBattlefieldOpponentTriggeredAbility(final EntersBattlefieldOpponentTriggeredAbility ability) {

View file

@ -18,7 +18,7 @@ public class EntersBattlefieldOrAttacksSourceTriggeredAbility extends TriggeredA
public EntersBattlefieldOrAttacksSourceTriggeredAbility(Effect effect, boolean optional) {
super(Zone.BATTLEFIELD, effect, optional);
setTriggerPhrase("Whenever {this} enters the battlefield or attacks, ");
setTriggerPhrase("Whenever {this} enters or attacks, ");
}
protected EntersBattlefieldOrAttacksSourceTriggeredAbility(final EntersBattlefieldOrAttacksSourceTriggeredAbility ability) {

View file

@ -22,7 +22,7 @@ public class EntersBattlefieldOrDiesSourceTriggeredAbility extends TriggeredAbil
super(Zone.BATTLEFIELD, effect, optional);
this.diesText = diesText;
setLeavesTheBattlefieldTrigger(true);
setTriggerPhrase("When {this} enters the battlefield or " +
setTriggerPhrase("When {this} enters or " +
(diesText ? "dies" : "is put into a graveyard from the battlefield") + ", ");
}

View file

@ -21,7 +21,7 @@ public class EntersBattlefieldOrTurnedFaceUpTriggeredAbility extends TriggeredAb
public EntersBattlefieldOrTurnedFaceUpTriggeredAbility(Effect effect, boolean optional) {
super(Zone.BATTLEFIELD, effect, optional);
this.setWorksFaceDown(true);
this.setTriggerPhrase("When {this} enters the battlefield or is turned face up, ");
this.setTriggerPhrase("When {this} enters or is turned face up, ");
}
private EntersBattlefieldOrTurnedFaceUpTriggeredAbility(final EntersBattlefieldOrTurnedFaceUpTriggeredAbility ability) {

View file

@ -42,6 +42,6 @@ public class EntersBattlefieldTappedAsItEntersChooseColorAbility extends StaticA
@Override
public String getRule() {
return "{this} enters the battlefield tapped. As it enters, choose a color.";
return "{this} enters tapped. As it enters, choose a color.";
}
}
}

View file

@ -12,7 +12,7 @@ public class EntersBattlefieldUntappedTriggeredAbility extends EntersBattlefield
public EntersBattlefieldUntappedTriggeredAbility(Effect effect, boolean optional) {
super(effect, optional);
setTriggerPhrase("When {this} enters the battlefield untapped, ");
setTriggerPhrase("When {this} enters untapped, ");
}
private EntersBattlefieldUntappedTriggeredAbility(final EntersBattlefieldUntappedTriggeredAbility ability) {

View file

@ -34,7 +34,7 @@ public class LandfallAbility extends TriggeredAbilityImpl {
super(zone, effect, optional);
this.setTargetPointer = setTargetPointer;
this.setAbilityWord(AbilityWord.LANDFALL);
setTriggerPhrase("Whenever a land enters the battlefield under your control, ");
setTriggerPhrase("Whenever a land you control enters, ");
}
protected LandfallAbility(final LandfallAbility ability) {

View file

@ -17,7 +17,7 @@ import mage.game.permanent.Permanent;
* 702.98. Evolve
* <p>
* 702.98a Evolve is a triggered ability. "Evolve" means "Whenever a creature
* enters the battlefield under your control, if that creature's power is
* you control enters, if that creature's power is
* greater than this creature's power and/or that creature's toughness is
* greater than this creature's toughness, put a +1/+1 counter on this
* creature."
@ -91,7 +91,7 @@ public class EvolveAbility extends EntersBattlefieldAllTriggeredAbility {
@Override
public String getRule() {
return "Evolve <i>(Whenever a creature enters the battlefield under your control, if that creature has greater power or toughness than this creature, put a +1/+1 counter on this creature.)</i>";
return "Evolve <i>(Whenever a creature you control enters, if that creature has greater power or toughness than this creature, put a +1/+1 counter on this creature.)</i>";
}
@Override

View file

@ -20,7 +20,7 @@ public class ForMirrodinAbility extends EntersBattlefieldTriggeredAbility {
@Override
public String getRule() {
return "For Mirrodin! <i>(When this Equipment enters the battlefield, " +
return "For Mirrodin! <i>(When this Equipment enters, " +
"create a 2/2 red Rebel creature token, then attach this to it.)</i>";
}

View file

@ -44,7 +44,7 @@ public class HauntAbility extends TriggeredAbilityImpl {
super(Zone.ALL, effect, false);
boolean creatureHaunt = card.isCreature();
addSubAbility(new HauntExileAbility(creatureHaunt));
setTriggerPhrase((creatureHaunt ? "When {this} enters the battlefield or the creature it haunts dies, "
setTriggerPhrase((creatureHaunt ? "When {this} enters or the creature it haunts dies, "
: "When the creature {this} haunts dies, ")
);
}

View file

@ -16,7 +16,7 @@ public class LivingWeaponAbility extends EntersBattlefieldTriggeredAbility {
@Override
public String getRule() {
return "Living weapon <i>(When this Equipment enters the battlefield, " +
return "Living weapon <i>(When this Equipment enters, " +
"create a 0/0 black Phyrexian Germ creature token, then attach this to it.)</i>";
}

View file

@ -20,7 +20,7 @@ public class RavenousAbility extends EntersBattlefieldAbility {
super(new EntersBattlefieldWithXCountersEffect(CounterType.P1P1.createInstance()));
Ability ability = new ConditionalInterveningIfTriggeredAbility(
new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)),
RavenousAbilityCondition.instance, "When this creature enters the battlefield, " +
RavenousAbilityCondition.instance, "When this creature enters, " +
"if X is 5 or more, draw a card"
);
ability.setRuleVisible(false);
@ -50,4 +50,4 @@ enum RavenousAbilityCondition implements Condition {
public boolean apply(Game game, Ability source) {
return GetXValue.instance.calculate(game, source, null) >= 5;
}
}
}

View file

@ -29,7 +29,7 @@ import mage.util.GameLog;
* both this creature and another creature and both are unpaired, you may pair
* this creature with another unpaired creature you control for as long as both
* remain creatures on the battlefield under your control and Whenever another
* creature enters the battlefield under your control, if you control both that
* creature you control enters, if you control both that
* creature and this one and both are unpaired, you may pair that creature with
* this creature for as long as both remain creatures on the battlefield under
* your control.
@ -159,7 +159,7 @@ class SoulboundEntersSelfEffect extends OneShotEffect {
}
/**
* Whenever another creature enters the battlefield under your control, if you
* Whenever another creature you control enters, if you
* control both that creature and this one and both are unpaired, you may pair
* that creature with this creature for as long as both remain creatures on the
* battlefield under your control.

View file

@ -112,7 +112,7 @@ public class SquadAbility extends StaticAbility implements OptionalAdditionalSou
@Override
public String getRule() {
return "Squad " + cost.getText() + " <i>(As an additional cost to cast this spell, you may pay " +
cost.getText() + "any number of times. When this creature enters the battlefield, " +
cost.getText() + "any number of times. When this creature enters, " +
"create that many tokens that are copies of it.)</i>";
}
}

View file

@ -15,7 +15,7 @@ public final class HuatliRadiantChampionEmblem extends Emblem {
public HuatliRadiantChampionEmblem() {
super("Emblem Huatli");
// Whenever a creature enters the battlefield under your control, you may draw a card.
// Whenever a creature you control enters, you may draw a card.
Ability ability = new EntersBattlefieldControlledTriggeredAbility(Zone.COMMAND,
new DrawCardSourceControllerEffect(1), StaticFilters.FILTER_CONTROLLED_A_CREATURE, true);
this.getAbilities().add(ability);

View file

@ -20,7 +20,7 @@ public final class KothFireOfResistanceEmblem extends Emblem {
filterMountain.add(SubType.MOUNTAIN.getPredicate());
}
// 7: You get an emblem with "Whenever a Mountain enters the battlefield under your control, this emblem deals 4 damage to any target."
// 7: You get an emblem with "Whenever a Mountain you control enters, this emblem deals 4 damage to any target."
public KothFireOfResistanceEmblem() {
super("Emblem Koth");

View file

@ -17,7 +17,7 @@ import mage.target.common.TargetAnyTarget;
*/
public final class LukkaWaywardBonderEmblem extends Emblem {
// 7: You get an emblem with "Whenever a creature enters the battlefield under your control, it deals damage equal to its power to any target."
// 7: You get an emblem with "Whenever a creature you control enters, it deals damage equal to its power to any target."
public LukkaWaywardBonderEmblem() {
super("Emblem Lukka");
Ability ability = new EntersBattlefieldControlledTriggeredAbility(

View file

@ -11,7 +11,7 @@ import mage.game.command.Emblem;
* @author spjspj
*/
public final class NissaVitalForceEmblem extends Emblem {
// You get an emblem with "Whenever a land enters the battlefield under your control, you may draw a card."
// You get an emblem with "Whenever a land you control enters, you may draw a card."
public NissaVitalForceEmblem() {
super("Emblem Nissa");

View file

@ -26,7 +26,7 @@ public final class OutlawsMerrimentRogueToken extends TokenImpl {
this.addAbility(HasteAbility.getInstance());
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1, "it"))
.setTriggerPhrase("When this creature enters the battlefield, ");
.setTriggerPhrase("When this creature enters, ");
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}