[NEC] various text fixes

This commit is contained in:
Evan Kranzler 2022-02-14 20:49:07 -05:00
parent 21dd720336
commit a2a0466212
14 changed files with 37 additions and 33 deletions

View file

@ -1,7 +1,5 @@
package mage.cards.b; package mage.cards.b;
import java.util.UUID;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.SimpleStaticAbility;
@ -13,32 +11,35 @@ import mage.abilities.keyword.EnchantAbility;
import mage.abilities.keyword.TotemArmorAbility; import mage.abilities.keyword.TotemArmorAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.*; import mage.constants.AttachmentType;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.target.TargetPermanent; import mage.target.TargetPermanent;
import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/** /**
*
* @author jeffwadsworth * @author jeffwadsworth
*/ */
public final class BearUmbra extends CardImpl { public final class BearUmbra extends CardImpl {
public BearUmbra(UUID ownerId, CardSetInfo setInfo) { public BearUmbra(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}{G}"); super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}{G}");
this.subtype.add(SubType.AURA); this.subtype.add(SubType.AURA);
// Enchant creature // Enchant creature
TargetPermanent auraTarget = new TargetCreaturePermanent(); TargetPermanent auraTarget = new TargetCreaturePermanent();
this.getSpellAbility().addTarget(auraTarget); this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
Ability ability = new EnchantAbility(auraTarget.getTargetName()); this.addAbility(new EnchantAbility(auraTarget.getTargetName()));
this.addAbility(ability);
// Enchanted creature gets +2/+2 and has "Whenever this creature attacks, untap all lands you control." // Enchanted creature gets +2/+2 and has "Whenever this creature attacks, untap all lands you control."
Ability attachedAbility = new AttacksTriggeredAbility(new UntapAllLandsControllerEffect(), false); Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(2, 2));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); ability.addEffect(new GainAbilityAttachedEffect(new AttacksTriggeredAbility(
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(attachedAbility, AttachmentType.AURA))); new UntapAllLandsControllerEffect(), false
), AttachmentType.AURA).setText("and has \"Whenever this creature attacks, untap all lands you control.\""));
// Totem armor // Totem armor
this.addAbility(new TotemArmorAbility()); this.addAbility(new TotemArmorAbility());

View file

@ -41,7 +41,7 @@ public final class CyberdriveAwakener extends CardImpl {
// Other artifact creatures you control have flying. // Other artifact creatures you control have flying.
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect( this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
FlyingAbility.getInstance(), Duration.WhileOnBattlefield, FlyingAbility.getInstance(), Duration.WhileOnBattlefield,
StaticFilters.FILTER_PERMANENTS_ARTIFACT_CREATURE StaticFilters.FILTER_PERMANENTS_ARTIFACT_CREATURE, true
))); )));
// When Cyberdrive Awakener enters the battlefield, until end of turn, each noncreature artifact you control becomes an artifact creature with base power and toughness 4/4. // When Cyberdrive Awakener enters the battlefield, until end of turn, each noncreature artifact you control becomes an artifact creature with base power and toughness 4/4.

View file

@ -44,7 +44,7 @@ public final class GoblinRazerunners extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// At the beginning of your end step, you may have Goblin Razerunners deal damage equal to the number of +1/+1 counters on it to target player. // At the beginning of your end step, you may have Goblin Razerunners deal damage equal to the number of +1/+1 counters on it to target player.
ability = new BeginningOfYourEndStepTriggeredAbility(new DamageTargetEffect(new CountersSourceCount(CounterType.P1P1)), true); ability = new BeginningOfYourEndStepTriggeredAbility(new DamageTargetEffect(new CountersSourceCount(CounterType.P1P1)).setText("you may have {this} deal damage equal to the number of +1/+1 counters on it to target player or planeswalker"), true);
ability.addTarget(new TargetPlayerOrPlaneswalker()); ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -40,10 +40,11 @@ public final class ImposterMech extends CardImpl {
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// You may have Imposter Mech enter the battlefield as a copy of a creature an opponent controls, except its a Vehicle artifact with crew 3 and it loses all other card types. // You may have Imposter Mech enter the battlefield as a copy of a creature an opponent controls, except its a Vehicle artifact with crew 3 and it loses all other card types.
this.addAbility(new EntersBattlefieldAbility(new CopyPermanentEffect( this.addAbility(new EntersBattlefieldAbility(
StaticFilters.FILTER_OPPONENTS_PERMANENT_A_CREATURE, applier new CopyPermanentEffect(StaticFilters.FILTER_OPPONENTS_PERMANENT_A_CREATURE, applier),
).setText("You may have {this} enter the battlefield as a copy of a creature an opponent controls, " + null, "You may have {this} enter the battlefield as a copy of a creature " +
"except its a Vehicle artifact with crew 3 and it loses all other card types."))); "an opponent controls, except its a Vehicle artifact with crew 3 and it loses all other card types.", null
));
// Crew 3 // Crew 3
this.addAbility(new CrewAbility(3)); this.addAbility(new CrewAbility(3));

View file

@ -59,7 +59,9 @@ public final class KatsumasaTheAnimator extends CardImpl {
// At the beginning of your upkeep, put a +1/+1 counter on each of up to three target noncreature artifacts. // At the beginning of your upkeep, put a +1/+1 counter on each of up to three target noncreature artifacts.
ability = new BeginningOfUpkeepTriggeredAbility( ability = new BeginningOfUpkeepTriggeredAbility(
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), TargetController.YOU, false new AddCountersTargetEffect(CounterType.P1P1.createInstance())
.setText("put a +1/+1 counter on each of up to three target noncreature artifacts"),
TargetController.YOU, false
); );
ability.addTarget(new TargetPermanent(0, 3, filter2)); ability.addTarget(new TargetPermanent(0, 3, filter2));
this.addAbility(ability); this.addAbility(ability);

View file

@ -47,7 +47,7 @@ class MageSlayerEffect extends OneShotEffect {
public MageSlayerEffect() { public MageSlayerEffect() {
super(Outcome.Damage); super(Outcome.Damage);
staticText = "it deals damage equal to the player or planeswalker it's attacking"; staticText = "it deals damage equal to its power to the player or planeswalker it's attacking";
} }
public MageSlayerEffect(final MageSlayerEffect effect) { public MageSlayerEffect(final MageSlayerEffect effect) {

View file

@ -30,7 +30,7 @@ import java.util.UUID;
public final class OneWithTheKami extends CardImpl { public final class OneWithTheKami extends CardImpl {
private static final FilterPermanent filter private static final FilterPermanent filter
= new FilterControlledCreaturePermanent("{this} or another modified creature you control"); = new FilterControlledCreaturePermanent("enchanted creature or another modified creature you control");
static { static {
filter.add(ModifiedPredicate.instance); filter.add(ModifiedPredicate.instance);

View file

@ -43,7 +43,7 @@ public final class RishkarPeemaRenegade extends CardImpl {
// When Rishkar, Peema Renegade enters the battlefield, put a +1/+1 counter on each of up to two target creatures. // When Rishkar, Peema Renegade enters the battlefield, put a +1/+1 counter on each of up to two target creatures.
Effect effect = new AddCountersTargetEffect(CounterType.P1P1.createInstance()); Effect effect = new AddCountersTargetEffect(CounterType.P1P1.createInstance());
effect.setText("Put a +1/+1 counter on each of up to two target creatures"); effect.setText("put a +1/+1 counter on each of up to two target creatures");
Ability ability = new EntersBattlefieldTriggeredAbility(effect, false); Ability ability = new EntersBattlefieldTriggeredAbility(effect, false);
ability.addTarget(new TargetCreaturePermanent(0, 2)); ability.addTarget(new TargetCreaturePermanent(0, 2));
this.addAbility(ability); this.addAbility(ability);

View file

@ -52,8 +52,8 @@ public final class RuthlessTechnomancer extends CardImpl {
// {2}{B}, Sacrifice X artifacts: Return target creature card with power X or less from your graveyard to the battlefield. X can't be 0. // {2}{B}, Sacrifice X artifacts: Return target creature card with power X or less from your graveyard to the battlefield. X can't be 0.
Ability ability = new SimpleActivatedAbility( Ability ability = new SimpleActivatedAbility(
new ReturnFromGraveyardToBattlefieldTargetEffect() new ReturnFromGraveyardToBattlefieldTargetEffect()
.setText("return target creature card with power X " + .setText("return target creature card with power X or less " +
"or less from your graveyard to the battlefield"), "from your graveyard to the battlefield. X can't be 0"),
new ManaCostsImpl<>("{2}{B}") new ManaCostsImpl<>("{2}{B}")
); );
ability.addCost(new SacrificeXTargetCost(filter, false, 1)); ability.addCost(new SacrificeXTargetCost(filter, false, 1));
@ -90,7 +90,7 @@ class RuthlessTechnomancerEffect extends OneShotEffect {
RuthlessTechnomancerEffect() { RuthlessTechnomancerEffect() {
super(Outcome.Benefit); super(Outcome.Benefit);
staticText = "you may sacrifice another creature you control. If you do, " + staticText = "you may sacrifice another creature you control. If you do, " +
"create a number of Treasure tokens equal to that creature's power. X can't be 0"; "create a number of Treasure tokens equal to that creature's power";
} }
private RuthlessTechnomancerEffect(final RuthlessTechnomancerEffect effect) { private RuthlessTechnomancerEffect(final RuthlessTechnomancerEffect effect) {

View file

@ -26,7 +26,7 @@ import java.util.UUID;
public final class Silkguard extends CardImpl { public final class Silkguard extends CardImpl {
private static final FilterPermanent filter private static final FilterPermanent filter
= new FilterControlledPermanent("Auras, Equipment, and modified creatures you control"); = new FilterControlledPermanent("Auras, Equipment, and modified creatures");
static { static {
filter.add(Predicates.or( filter.add(Predicates.or(
@ -50,7 +50,7 @@ public final class Silkguard extends CardImpl {
// Auras, Equipment, and modified creatures you control gain hexproof until end of turn. // Auras, Equipment, and modified creatures you control gain hexproof until end of turn.
this.getSpellAbility().addEffect(new GainAbilityControlledEffect( this.getSpellAbility().addEffect(new GainAbilityControlledEffect(
HexproofAbility.getInstance(), Duration.EndOfTurn, filter HexproofAbility.getInstance(), Duration.EndOfTurn, filter
)); ).concatBy("<br>"));
} }
private Silkguard(final Silkguard card) { private Silkguard(final Silkguard card) {

View file

@ -76,7 +76,7 @@ class ThopterSpyNetworkUpkeepTriggeredAbility extends TriggeredAbilityImpl {
@Override @Override
public String getRule() { public String getRule() {
return "At the beginning of your upkeep, if you control an artifact, create a 1/1 colorless Thopter artifact creature token with flying"; return "At the beginning of your upkeep, if you control an artifact, create a 1/1 colorless Thopter artifact creature token with flying.";
} }
} }
@ -123,6 +123,6 @@ class ThopterSpyNetworkDamageTriggeredAbility extends TriggeredAbilityImpl {
@Override @Override
public String getRule() { public String getRule() {
return "Whenever one or more artifact creatures you control deal combat damage to a player, draw a card"; return "Whenever one or more artifact creatures you control deal combat damage to a player, draw a card.";
} }
} }

View file

@ -60,7 +60,7 @@ class WhiptongueHydraEffect extends OneShotEffect {
public WhiptongueHydraEffect() { public WhiptongueHydraEffect() {
super(Outcome.DestroyPermanent); super(Outcome.DestroyPermanent);
this.staticText = "destroy all creatures with flying. " this.staticText = "destroy all creatures with flying. "
+ "Put a +1/+1 counter on {this} for each permanent destroyed this way"; + "Put a +1/+1 counter on {this} for each creature destroyed this way";
} }
public WhiptongueHydraEffect(final WhiptongueHydraEffect effect) { public WhiptongueHydraEffect(final WhiptongueHydraEffect effect) {

View file

@ -59,7 +59,7 @@ public class VerifyCardDataTest {
private static final Logger logger = Logger.getLogger(VerifyCardDataTest.class); private static final Logger logger = Logger.getLogger(VerifyCardDataTest.class);
private static final String FULL_ABILITIES_CHECK_SET_CODE = "NEO"; // check all abilities and output cards with wrong abilities texts; private static final String FULL_ABILITIES_CHECK_SET_CODE = "NEC"; // check all abilities and output cards with wrong abilities texts;
private static final boolean AUTO_FIX_SAMPLE_DECKS = false; // debug only: auto-fix sample decks by test_checkSampleDecks test run private static final boolean AUTO_FIX_SAMPLE_DECKS = false; // debug only: auto-fix sample decks by test_checkSampleDecks test run
private static final boolean ONLY_TEXT = false; // use when checking text locally, suppresses unnecessary checks and output messages private static final boolean ONLY_TEXT = false; // use when checking text locally, suppresses unnecessary checks and output messages

View file

@ -61,7 +61,7 @@ public class CrewAbility extends SimpleActivatedAbility {
@Override @Override
public String getRule() { public String getRule() {
return "Crew " + value + " <i>(Tap any number of creatures you control with total power " return "crew " + value + " <i>(Tap any number of creatures you control with total power "
+ value + " or more: This Vehicle becomes an artifact creature until end of turn.)</i>"; + value + " or more: This Vehicle becomes an artifact creature until end of turn.)</i>";
} }
} }