Another batch of text fixes (#10317)

* Fix text: Blind Hunter

* Fix text: cards with bloodrush ability

* Fix text: populate ability

* Fix Goblin Pyromancer to boost all

* Fix text: Wellwisher; Kamahl, Fist of Krosa; Snapping Thragg

* Fix text: "you may prevent"

* Fix text: Elvish Guidance, Elvish Pathcutter

* Fix text: [search library for cards named]
This commit is contained in:
xenohedron 2023-05-07 13:30:55 -04:00 committed by GitHub
parent 67ec9d64bf
commit 35bb7d513b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 35 additions and 23 deletions

View file

@ -41,7 +41,7 @@ public final class ArchaeomancersMap extends CardImpl {
// When Archaeomancer's Map enters the battlefield, search your library for up to two basic Plains cards, reveal them, put them into your hand, then shuffle. // When Archaeomancer's Map enters the battlefield, search your library for up to two basic Plains cards, reveal them, put them into your hand, then shuffle.
this.addAbility(new EntersBattlefieldTriggeredAbility( this.addAbility(new EntersBattlefieldTriggeredAbility(
new SearchLibraryPutInHandEffect(new TargetCardInLibrary(2, filter), true) new SearchLibraryPutInHandEffect(new TargetCardInLibrary(0, 2, filter), true)
)); ));
// Whenever a land enters the battlefield under an opponent's control, if that player controls more lands than you, you may put a land card from your hand onto the battlefield. // Whenever a land enters the battlefield under an opponent's control, if that player controls more lands than you, you may put a land card from your hand onto the battlefield.

View file

@ -33,7 +33,7 @@ public final class BlindHunter extends CardImpl {
// When Blind Hunter enters the battlefield or the creature it haunts dies, target player loses 2 life and you gain 2 life. // When Blind Hunter enters the battlefield or the creature it haunts dies, target player loses 2 life and you gain 2 life.
Ability ability = new HauntAbility(this, new LoseLifeTargetEffect(2)); Ability ability = new HauntAbility(this, new LoseLifeTargetEffect(2));
ability.addTarget(new TargetPlayer()); ability.addTarget(new TargetPlayer());
ability.addEffect(new GainLifeEffect(2)); ability.addEffect(new GainLifeEffect(2).concatBy("and"));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -24,7 +24,7 @@ import java.util.UUID;
*/ */
public final class ElvishGuidance extends CardImpl { public final class ElvishGuidance extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent(SubType.ELF, ""); private static final FilterPermanent filter = new FilterPermanent(SubType.ELF, "Elf on the battlefield");
private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter); private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter);
public ElvishGuidance(UUID ownerId, CardSetInfo setInfo) { public ElvishGuidance(UUID ownerId, CardSetInfo setInfo) {
@ -41,7 +41,7 @@ public final class ElvishGuidance extends CardImpl {
// Whenever enchanted land is tapped for mana, its controller adds {G} for each Elf on the battlefield. // Whenever enchanted land is tapped for mana, its controller adds {G} for each Elf on the battlefield.
this.addAbility(new EnchantedTappedTriggeredManaAbility(new DynamicManaEffect( this.addAbility(new EnchantedTappedTriggeredManaAbility(new DynamicManaEffect(
Mana.GreenMana(1), xValue Mana.GreenMana(1), xValue
).setText("its controller adds {G} for each Elf on the battlefield"))); )));
} }
private ElvishGuidance(final ElvishGuidance card) { private ElvishGuidance(final ElvishGuidance card) {

View file

@ -37,7 +37,7 @@ public final class ElvishPathcutter extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// {2}{G}: Target Elf creature gains forestwalk until end of turn. // {2}{G}: Target Elf creature gains forestwalk until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new ForestwalkAbility(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}")); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new ForestwalkAbility(false), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}"));
ability.addTarget(new TargetCreaturePermanent(filter)); ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -40,7 +40,7 @@ public final class EmbermageGoblin extends CardImpl {
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// When Embermage Goblin enters the battlefield, you may search your library for a card named Embermage Goblin, reveal it, and put it into your hand. If you do, shuffle your library. // When Embermage Goblin enters the battlefield, you may search your library for a card named Embermage Goblin, reveal it, and put it into your hand. If you do, shuffle your library.
TargetCardInLibrary target = new TargetCardInLibrary(0, 1, filter); TargetCardInLibrary target = new TargetCardInLibrary(1, 1, filter);
this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(target, true, true), true)); this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(target, true, true), true));
// {tap}: Embermage Goblin deals 1 damage to any target. // {tap}: Embermage Goblin deals 1 damage to any target.

View file

@ -30,8 +30,10 @@ public final class GhorClanRampager extends CardImpl {
// Trample // Trample
this.addAbility(TrampleAbility.getInstance()); this.addAbility(TrampleAbility.getInstance());
// Bloodrush - {R}{G}, Discard Ghor-Clan Rampager: Target attacking creature gets +4/+4 and gains trample until end of turn. // Bloodrush - {R}{G}, Discard Ghor-Clan Rampager: Target attacking creature gets +4/+4 and gains trample until end of turn.
Ability ability = new BloodrushAbility("{R}{G}",new BoostTargetEffect(4,4, Duration.EndOfTurn)); Ability ability = new BloodrushAbility("{R}{G}",new BoostTargetEffect(4,4, Duration.EndOfTurn)
ability.addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)); .setText("target attacking creature gets +4/+4"));
ability.addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)
.setText("and gains trample until end of turn"));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.BeginningOfEndStepTriggeredAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.DestroyAllEffect; import mage.abilities.effects.common.DestroyAllEffect;
import mage.abilities.effects.common.continuous.BoostControlledEffect; import mage.abilities.effects.common.continuous.BoostAllEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
@ -37,7 +37,7 @@ public final class GoblinPyromancer extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// When Goblin Pyromancer enters the battlefield, Goblin creatures get +3/+0 until end of turn. // When Goblin Pyromancer enters the battlefield, Goblin creatures get +3/+0 until end of turn.
this.addAbility(new EntersBattlefieldTriggeredAbility(new BoostControlledEffect(3, 0, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE_GOBLINS))); this.addAbility(new EntersBattlefieldTriggeredAbility(new BoostAllEffect(3, 0, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE_GOBLINS, false)));
// At the beginning of the end step, destroy all Goblins. // At the beginning of the end step, destroy all Goblins.
this.addAbility(new BeginningOfEndStepTriggeredAbility(new DestroyAllEffect(filterPermanent, false), TargetController.ANY, false)); this.addAbility(new BeginningOfEndStepTriggeredAbility(new DestroyAllEffect(filterPermanent, false), TargetController.ANY, false));

View file

@ -45,9 +45,9 @@ public final class KamahlFistOfKrosa extends CardImpl {
// {2}{G}{G}{G}: Creatures you control get +3/+3 and gain trample until end of turn. // {2}{G}{G}{G}: Creatures you control get +3/+3 and gain trample until end of turn.
SimpleActivatedAbility boostAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, SimpleActivatedAbility boostAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new BoostControlledEffect(3, 3, Duration.EndOfTurn), new BoostControlledEffect(3, 3, Duration.EndOfTurn).setText("Creatures you control get +3/+3"),
new ManaCostsImpl<>("{2}{G}{G}{G}")); new ManaCostsImpl<>("{2}{G}{G}{G}"));
boostAbility.addEffect(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); boostAbility.addEffect(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES).setText("and gain trample until end of turn"));
this.addAbility(boostAbility); this.addAbility(boostAbility);
} }

View file

@ -36,7 +36,8 @@ public final class Rubblehulk extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetBasePowerToughnessSourceEffect(controlledLands))); this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetBasePowerToughnessSourceEffect(controlledLands)));
// Bloodrush - 1{R}{G}, Discard Rubblehulk: Target attacking creature gets +X/+X until end of turn, where X is the number of lands you control. // Bloodrush - 1{R}{G}, Discard Rubblehulk: Target attacking creature gets +X/+X until end of turn, where X is the number of lands you control.
this.addAbility(new BloodrushAbility("{1}{R}{G}", new BoostTargetEffect(controlledLands, controlledLands, Duration.EndOfTurn))); this.addAbility(new BloodrushAbility("{1}{R}{G}", new BoostTargetEffect(controlledLands, controlledLands, Duration.EndOfTurn)
.setText("target attacking creature gets +X/+X until end of turn, where X is the number of lands you control")));
} }
private Rubblehulk(final Rubblehulk card) { private Rubblehulk(final Rubblehulk card) {

View file

@ -37,7 +37,7 @@ public final class ScreamingSeahawk extends CardImpl {
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());
// When Screaming Seahawk enters the battlefield, you may search your library for a card named Screaming Seahawk, reveal it, and put it into your hand. If you do, shuffle your library. // When Screaming Seahawk enters the battlefield, you may search your library for a card named Screaming Seahawk, reveal it, and put it into your hand. If you do, shuffle your library.
TargetCardInLibrary target = new TargetCardInLibrary(0, 1, filter); TargetCardInLibrary target = new TargetCardInLibrary(1, 1, filter);
this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(target, true, true), true)); this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(target, true, true), true));
} }

View file

@ -32,8 +32,10 @@ public final class SkarrgGoliath extends CardImpl {
this.addAbility(TrampleAbility.getInstance()); this.addAbility(TrampleAbility.getInstance());
// Bloodrush - {5}{G}{G}, Discard Skarrg Goliath: Target attacking creature gets +9/+9 and gains trample until end of turn. // Bloodrush - {5}{G}{G}, Discard Skarrg Goliath: Target attacking creature gets +9/+9 and gains trample until end of turn.
Ability ability = new BloodrushAbility("{5}{G}{G}", new BoostTargetEffect(9,9, Duration.EndOfTurn)); Ability ability = new BloodrushAbility("{5}{G}{G}", new BoostTargetEffect(9,9, Duration.EndOfTurn)
ability.addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)); .setText("target attacking creature gets +9/+9"));
ability.addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)
.setText("and gains trample until end of turn"));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -86,6 +86,6 @@ class SnappingThraggTriggeredAbility extends TriggeredAbilityImpl {
@Override @Override
public String getRule() { public String getRule() {
return "Whenever {this} deals combat damage to a player, you may have it deal 3 damage to target creature that player controls"; return "Whenever {this} deals combat damage to a player, you may have it deal 3 damage to target creature that player controls.";
} }
} }

View file

@ -32,8 +32,10 @@ public final class ViashinoShanktail extends CardImpl {
this.addAbility(FirstStrikeAbility.getInstance()); this.addAbility(FirstStrikeAbility.getInstance());
// Bloodrush - 2{R}, Discard Viashino Shanktail: Target attacking creature gets +3/+1 and gains first strike until end of turn. // Bloodrush - 2{R}, Discard Viashino Shanktail: Target attacking creature gets +3/+1 and gains first strike until end of turn.
Ability ability = new BloodrushAbility("{2}{R}", new BoostTargetEffect(3,1, Duration.EndOfTurn)); Ability ability = new BloodrushAbility("{2}{R}", new BoostTargetEffect(3,1, Duration.EndOfTurn)
ability.addEffect(new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn)); .setText("target attacking creature gets +3/+1"));
ability.addEffect(new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn)
.setText("and gains first strike until end of turn"));
this.addAbility(ability); this.addAbility(ability);

View file

@ -30,8 +30,10 @@ public final class WastelandViper extends CardImpl {
// Deathtouch // Deathtouch
this.addAbility(DeathtouchAbility.getInstance()); this.addAbility(DeathtouchAbility.getInstance());
// Bloodrush - {G}, Discard Wasteland Viper: Target attacking creature gets +1/+2 and gains deathtouch until end of turn. // Bloodrush - {G}, Discard Wasteland Viper: Target attacking creature gets +1/+2 and gains deathtouch until end of turn.
Ability ability = new BloodrushAbility("{G}", new BoostTargetEffect(1, 2, Duration.EndOfTurn)); Ability ability = new BloodrushAbility("{G}", new BoostTargetEffect(1, 2, Duration.EndOfTurn)
ability.addEffect(new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn)); .setText("target attacking creature gets +1/+2"));
ability.addEffect(new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn)
.setText("and gains deathtouch until end of turn"));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -34,7 +34,8 @@ public final class Wellwisher extends CardImpl {
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// {tap}: You gain 1 life for each Elf on the battlefield. // {tap}: You gain 1 life for each Elf on the battlefield.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(new PermanentsOnBattlefieldCount(filter)), new TapSourceCost())); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(new PermanentsOnBattlefieldCount(filter))
.setText("you gain 1 life for each Elf on the battlefield"), new TapSourceCost()));
} }

View file

@ -210,6 +210,7 @@ public abstract class TriggeredAbilityImpl extends AbilityImpl implements Trigge
|| ruleLow.startsWith("exile") || ruleLow.startsWith("exile")
|| ruleLow.startsWith("gain") || ruleLow.startsWith("gain")
|| ruleLow.startsWith("goad") || ruleLow.startsWith("goad")
|| ruleLow.startsWith("prevent")
|| ruleLow.startsWith("put") || ruleLow.startsWith("put")
|| ruleLow.startsWith("remove") || ruleLow.startsWith("remove")
|| ruleLow.startsWith("return") || ruleLow.startsWith("return")

View file

@ -46,7 +46,8 @@ public class PopulateEffect extends OneShotEffect {
public PopulateEffect(String prefixText) { public PopulateEffect(String prefixText) {
this(false); this(false);
this.staticText = (!prefixText.isEmpty() ? prefixText + " p" : "P") + "opulate <i>(Create a token that's a copy of a creature token you control.)</i>"; this.staticText = (!prefixText.isEmpty() ? ", " + prefixText + " " : "")
+ "populate. <i>(Create a token that's a copy of a creature token you control.)</i>";
} }
public PopulateEffect(boolean tappedAndAttacking) { public PopulateEffect(boolean tappedAndAttacking) {