fixed some more instances of ability words/em dashes

This commit is contained in:
Evan Kranzler 2022-03-09 16:51:38 -05:00
parent ef9d79e712
commit 2cc4a06f7c
8 changed files with 81 additions and 79 deletions

View file

@ -9,6 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.cards.Cards;
import mage.cards.CardsImpl;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
@ -46,7 +47,7 @@ class CleansingMeditationEffect extends OneShotEffect {
public CleansingMeditationEffect() {
super(Outcome.DestroyPermanent);
this.staticText = "Destroy all enchantments.<br>Threshold - If seven or more cards are in your graveyard, instead destroy all enchantments, then return all cards in your graveyard destroyed this way to the battlefield.";
this.staticText = "Destroy all enchantments.<br>" + AbilityWord.THRESHOLD.formatWord() + "If seven or more cards are in your graveyard, instead destroy all enchantments, then return all cards in your graveyard destroyed this way to the battlefield.";
}
public CleansingMeditationEffect(final CleansingMeditationEffect effect) {

View file

@ -1,15 +1,11 @@
package mage.cards.g;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.HellbentCondition;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.decorator.ConditionalContinuousRuleModifyingEffect;
import mage.abilities.effects.ContinuousRuleModifyingEffectImpl;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.abilities.effects.common.discard.DiscardTargetEffect;
import mage.abilities.keyword.MadnessAbility;
@ -18,32 +14,28 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import java.util.UUID;
/**
*
* @author emerald000
*/
public final class GibberingDescent extends CardImpl {
public GibberingDescent(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{4}{B}{B}");
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{4}{B}{B}");
// At the beginning of each player's upkeep, that player loses 1 life and discards a card.
Effect effect = new LoseLifeTargetEffect(1);
effect.setText("that player loses 1 life");
Ability ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, effect, TargetController.ANY, false, true);
effect = new DiscardTargetEffect(1);
effect.setText("and discards a card");
ability.addEffect(effect);
Ability ability = new BeginningOfUpkeepTriggeredAbility(
Zone.BATTLEFIELD, new LoseLifeTargetEffect(1).setText("that player loses 1 life"),
TargetController.ANY, false, true
);
ability.addEffect(new DiscardTargetEffect(1).setText("and discards a card"));
this.addAbility(ability);
// Hellbent - Skip your upkeep step if you have no cards in hand.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousRuleModifyingEffect(
new GibberingDescentSkipUpkeepEffect(),
HellbentCondition.instance)));
this.addAbility(new SimpleStaticAbility(new GibberingDescentSkipUpkeepEffect()).setAbilityWord(AbilityWord.HELLBENT));
// Madness {2}{B}{B}
this.addAbility(new MadnessAbility(this, new ManaCostsImpl<>("{2}{B}{B}")));
}
@ -62,7 +54,7 @@ class GibberingDescentSkipUpkeepEffect extends ContinuousRuleModifyingEffectImpl
GibberingDescentSkipUpkeepEffect() {
super(Duration.WhileOnBattlefield, Outcome.Neutral);
this.staticText = "Hellbent - Skip your upkeep step if you have no cards in hand";
this.staticText = "skip your upkeep step if you have no cards in hand";
}
GibberingDescentSkipUpkeepEffect(final GibberingDescentSkipUpkeepEffect effect) {
@ -78,9 +70,9 @@ class GibberingDescentSkipUpkeepEffect extends ContinuousRuleModifyingEffectImpl
public boolean checksEventType(GameEvent event, Game game) {
return event.getType() == GameEvent.EventType.UPKEEP_STEP;
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
return event.getPlayerId().equals(source.getControllerId());
return source.isControlledBy(event.getPlayerId()) && HellbentCondition.instance.apply(game, source);
}
}
}

View file

@ -1,12 +1,11 @@
package mage.cards.l;
import java.util.UUID;
import mage.ObjectColor;
import mage.abilities.Ability;
import mage.abilities.effects.OneShotEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.filter.FilterPermanent;
@ -14,6 +13,8 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetEnchantmentPermanent;
import java.util.UUID;
/**
* @author Loki
*/
@ -25,12 +26,12 @@ public final class LeaveNoTrace extends CardImpl {
}
public LeaveNoTrace(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{W}");
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{W}");
// Radiance - Destroy target enchantment and each other enchantment that shares a color with it.
this.getSpellAbility().addEffect(new LeaveNoTraceEffect());
this.getSpellAbility().addTarget(new TargetEnchantmentPermanent());
this.getSpellAbility().setAbilityWord(AbilityWord.RADIANCE);
}
private LeaveNoTrace(final LeaveNoTrace card) {
@ -52,7 +53,7 @@ class LeaveNoTraceEffect extends OneShotEffect {
LeaveNoTraceEffect() {
super(Outcome.DestroyPermanent);
staticText = "Radiance - Destroy target enchantment and each other enchantment that shares a color with it";
staticText = "Destroy target enchantment and each other enchantment that shares a color with it";
}
LeaveNoTraceEffect(final LeaveNoTraceEffect effect) {

View file

@ -1,8 +1,5 @@
package mage.cards.r;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.common.SimpleStaticAbility;
@ -15,39 +12,42 @@ import mage.abilities.keyword.DoubleStrikeAbility;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.SubType;
import java.util.UUID;
/**
*
* @author Loki
*/
public final class RakdosPitDragon extends CardImpl {
public RakdosPitDragon (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}{R}");
public RakdosPitDragon(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}");
this.subtype.add(SubType.DRAGON);
this.power = new MageInt(3);
this.toughness = new MageInt(3);
// {R}{R}: Rakdos Pit Dragon gains flying until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn),
new ManaCostsImpl("{R}{R}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
FlyingAbility.getInstance(), Duration.EndOfTurn
), new ManaCostsImpl<>("{R}{R}")));
// {R}: Rakdos Pit Dragon gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new BoostSourceEffect(1, 0, Duration.EndOfTurn),
new ManaCostsImpl("{R}")));
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")
));
// Hellbent Rakdos Pit Dragon has double strike as long as you have no cards in hand.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
new GainAbilitySourceEffect(DoubleStrikeAbility.getInstance(), Duration.WhileOnBattlefield),
HellbentCondition.instance,
"Hellbent - Rakdos Pit Dragon has double strike as long as you have no cards in hand")));
HellbentCondition.instance, "{this} has double strike as long as you have no cards in hand"
)).setAbilityWord(AbilityWord.HELLBENT));
}
public RakdosPitDragon (final RakdosPitDragon card) {
public RakdosPitDragon(final RakdosPitDragon card) {
super(card);
}
@ -55,5 +55,4 @@ public final class RakdosPitDragon extends CardImpl {
public RakdosPitDragon copy() {
return new RakdosPitDragon(this);
}
}

View file

@ -1,29 +1,34 @@
package mage.cards.r;
import java.util.UUID;
import mage.abilities.condition.common.LandfallCondition;
import mage.abilities.decorator.ConditionalOneShotEffect;
import mage.abilities.effects.common.GainLifeTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.target.TargetPlayer;
import mage.watchers.common.LandfallWatcher;
import java.util.UUID;
/**
*
* @author Loki
*/
public final class RestForTheWeary extends CardImpl {
public RestForTheWeary(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{W}");
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{W}");
// Target player gains 4 life.
// Landfall - If you had a land enter the battlefield under your control this turn, that player gains 8 life instead.
this.getSpellAbility().addWatcher(new LandfallWatcher());
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new GainLifeTargetEffect(8), new GainLifeTargetEffect(4), LandfallCondition.instance, "Target player gains 4 life. <br/>Landfall - If you had a land enter the battlefield under your control this turn, that player gains 8 life instead"));
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(
new GainLifeTargetEffect(8), new GainLifeTargetEffect(4),
LandfallCondition.instance, "Target player gains 4 life. <br/>" +
AbilityWord.LANDFALL.formatWord() + "If you had a land enter the battlefield " +
"under your control this turn, that player gains 8 life instead"
));
this.getSpellAbility().addTarget(new TargetPlayer());
}

View file

@ -1,14 +1,11 @@
package mage.cards.s;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.effects.OneShotEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.filter.StaticFilters;
@ -20,8 +17,11 @@ import mage.target.TargetPermanent;
import mage.target.common.TargetPlayerOrPlaneswalker;
import mage.watchers.common.LandfallWatcher;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
/**
*
* @author BetaSteward_at_googlemail.com
* @author North
*/
@ -53,7 +53,10 @@ class SearingBlazeEffect extends OneShotEffect {
public SearingBlazeEffect() {
super(Outcome.Damage);
staticText = "{this} deals 1 damage to target player or planeswalker and 1 damage to target creature that player or that planeswalker's controller controls. \nLandfall - If you had a land enter the battlefield under your control this turn, {this} deals 3 damage to that player or planeswalker and 3 damage to that creature instead.";
staticText = "{this} deals 1 damage to target player or planeswalker and 1 damage to target creature " +
"that player or that planeswalker's controller controls.<br>" + AbilityWord.LANDFALL.formatWord() +
"If you had a land enter the battlefield under your control this turn, {this} deals 3 damage " +
"to that player or planeswalker and 3 damage to that creature instead.";
}
public SearingBlazeEffect(final SearingBlazeEffect effect) {

View file

@ -1,7 +1,7 @@
package mage.cards.s;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.DiscardCardCost;
import mage.abilities.costs.mana.ManaCostsImpl;
@ -10,15 +10,16 @@ import mage.abilities.keyword.EternalizeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.SubType;
import java.util.UUID;
public final class SinuousStriker extends CardImpl {
private static String rule = "Eternalize - {3}{U}{U}, Discard a card <i>({3}{U}{U}, Discard a card, Exile this card from your graveyard: Create a token that's a copy of it, except it's a 4/4 black Zombie";
private static final String rule = "Eternalize &mdash; {3}{U}{U}, Discard a card. <i>({3}{U}{U}, Discard a card, Exile this card from your graveyard: Create a token that's a copy of it, except it's a 4/4 black Zombie)</i>";
public SinuousStriker(UUID ownerId, CardSetInfo cardSetInfo){
public SinuousStriker(UUID ownerId, CardSetInfo cardSetInfo) {
super(ownerId, cardSetInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
subtype.add(SubType.NAGA);
subtype.add(SubType.WARRIOR);
@ -27,19 +28,22 @@ public final class SinuousStriker extends CardImpl {
toughness = new MageInt(2);
//U : Sinious Striker gets +1/-1 until end of turn
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(+1, -1, Duration.EndOfTurn), new ManaCostsImpl("{U}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(
+1, -1, Duration.EndOfTurn
), new ManaCostsImpl<>("{U}")));
//Eternalize 3UU, Discard a card
EternalizeAbility ability = new EternalizeAbility(new ManaCostsImpl("{3}{U}{U}"), this, rule);
Ability ability = new EternalizeAbility(new ManaCostsImpl<>("{3}{U}{U}"), this, rule);
ability.addCost(new DiscardCardCost());
this.addAbility(ability);
}
public SinuousStriker(final SinuousStriker sinuousStriker){
private SinuousStriker(final SinuousStriker sinuousStriker) {
super(sinuousStriker);
}
public SinuousStriker copy(){
@Override
public SinuousStriker copy() {
return new SinuousStriker(this);
}
}

View file

@ -1,9 +1,6 @@
package mage.cards.s;
import java.util.UUID;
import mage.MageInt;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.costs.common.DiscardCardCost;
@ -13,19 +10,20 @@ import mage.abilities.keyword.EternalizeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
import java.util.UUID;
/**
*
* @author spjspj
*/
public final class SunscourgeChampion extends CardImpl {
private static String rule = "Eternalize - {2}{W}{W}, Discard a card <i>({2}{W}{W}, Discard a card, Exile this card from your graveyard: Create a token that's a copy of it, except it's a 4/4 black Zombie";
private static final String rule = "Eternalize &mdash; {2}{W}{W}, Discard a card. <i>({2}{W}{W}, Discard a card, Exile this card from your graveyard: Create a token that's a copy of it, except it's a 4/4 black Zombie)</i>";
public SunscourgeChampion(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{W}");
@ -39,7 +37,7 @@ public final class SunscourgeChampion extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new SunscourgeChampionEffect(), false));
// Eternalize - {2}{W}{W}, Discard a card.
EternalizeAbility ability = new EternalizeAbility(new ManaCostsImpl("{2}{W}{W}"), this, rule);
Ability ability = new EternalizeAbility(new ManaCostsImpl<>("{2}{W}{W}"), this, rule);
ability.addCost(new DiscardCardCost());
this.addAbility(ability);
}
@ -67,10 +65,9 @@ class SunscourgeChampionEffect extends OneShotEffect {
@Override
public boolean apply(Game game, Ability source) {
Permanent permanent = game.getPermanentOrLKIBattlefield(source.getSourceId());
Permanent permanent = source.getSourcePermanentIfItStillExists(game);
Player controller = game.getPlayer(source.getControllerId());
MageObject sourceObject = game.getObject(source.getSourceId());
if (controller != null && permanent != null && sourceObject != null) {
if (controller != null && permanent != null) {
controller.gainLife(permanent.getPower().getValue(), game, source);
return true;
}