mirror of
https://github.com/magefree/mage.git
synced 2025-12-24 12:31:59 -08:00
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:
parent
ab803079b9
commit
b78956d286
1137 changed files with 1403 additions and 1395 deletions
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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.";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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");
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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") + ", ");
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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.";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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>";
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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, ")
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>";
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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.”
|
||||
|
|
|
|||
|
|
@ -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>";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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");
|
||||
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
|
|||
|
|
@ -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");
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue