Fixed wrong ability texts with duplicated card name (see #4335)

This commit is contained in:
Oleg Agafonov 2018-01-04 20:49:18 +04:00
parent 56949414d1
commit ad6bdb33ad
28 changed files with 30 additions and 36 deletions

View file

@ -54,7 +54,7 @@ public class AcolyteOfTheInferno extends CardImpl {
this.addAbility(new RenownAbility(1)); this.addAbility(new RenownAbility(1));
// Whenever Acolyte of the Inferno becomes blocked by a creature, it deals 2 damage to that creature // Whenever Acolyte of the Inferno becomes blocked by a creature, it deals 2 damage to that creature
this.addAbility(new BecomesBlockedByCreatureTriggeredAbility(new DamageTargetEffect(2, true, "that creature"), false)); this.addAbility(new BecomesBlockedByCreatureTriggeredAbility(new DamageTargetEffect(2, true, "that creature", "it"), false));
} }
public AcolyteOfTheInferno(final AcolyteOfTheInferno card) { public AcolyteOfTheInferno(final AcolyteOfTheInferno card) {

View file

@ -63,7 +63,7 @@ public class Anathemancer extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// When Anathemancer enters the battlefield, it deals damage to target player equal to the number of nonbasic lands that player controls. // When Anathemancer enters the battlefield, it deals damage to target player equal to the number of nonbasic lands that player controls.
EntersBattlefieldTriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new AnathemancerCount())); EntersBattlefieldTriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new AnathemancerCount(), "it"));
ability.addTarget(new TargetPlayer()); ability.addTarget(new TargetPlayer());
this.addAbility(ability); this.addAbility(ability);
// Unearth {5}{B}{R} // Unearth {5}{B}{R}

View file

@ -58,7 +58,7 @@ public class AtarkaEfreet extends CardImpl {
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{R}"), true)); this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{R}"), true));
// When Atarka Efreet is turned face up, it deals 1 damage to target creature or player. // When Atarka Efreet is turned face up, it deals 1 damage to target creature or player.
Effect effect = new DamageTargetEffect(1); Effect effect = new DamageTargetEffect(1, "it");
effect.setText("it deals 1 damage to target creature or player"); effect.setText("it deals 1 damage to target creature or player");
Ability ability = new TurnedFaceUpSourceTriggeredAbility(effect, false, false); Ability ability = new TurnedFaceUpSourceTriggeredAbility(effect, false, false);
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());

View file

@ -53,9 +53,7 @@ public class BallistaCharger extends CardImpl {
this.toughness = new MageInt(6); this.toughness = new MageInt(6);
// Whenever Ballista Charger attacks, it deals 1 damage to target creature or player. // Whenever Ballista Charger attacks, it deals 1 damage to target creature or player.
Effect effect = new DamageTargetEffect(1); Ability ability = new AttacksTriggeredAbility(new DamageTargetEffect(1, "it"), false);
effect.setText("it deals 1 damage to target creature or player");
Ability ability = new AttacksTriggeredAbility(effect, false);
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);

View file

@ -56,7 +56,7 @@ public class CalderaHellion extends CardImpl {
this.addAbility(new DevourAbility(DevourFactor.Devour1)); this.addAbility(new DevourAbility(DevourFactor.Devour1));
// When Caldera Hellion enters the battlefield, it deals 3 damage to each creature. // When Caldera Hellion enters the battlefield, it deals 3 damage to each creature.
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, new FilterCreaturePermanent()))); this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, "it", new FilterCreaturePermanent())));
} }
public CalderaHellion(final CalderaHellion card) { public CalderaHellion(final CalderaHellion card) {

View file

@ -23,7 +23,7 @@ public class ChaosMaw extends CardImpl {
toughness = new MageInt(6); toughness = new MageInt(6);
// When Chaos Maw enters the battlefield, it deals 3 damage to each other creature // When Chaos Maw enters the battlefield, it deals 3 damage to each other creature
addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, filter))); addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, "it", filter)));
} }
public ChaosMaw(final ChaosMaw chaosMaw){ public ChaosMaw(final ChaosMaw chaosMaw){

View file

@ -55,7 +55,7 @@ public class CinderHellion extends CardImpl {
this.addAbility(TrampleAbility.getInstance()); this.addAbility(TrampleAbility.getInstance());
// When Cinder Hellion enters the battlefield, it deals 2 damage to target opponent. // When Cinder Hellion enters the battlefield, it deals 2 damage to target opponent.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"), false);
ability.addTarget(new TargetOpponent()); ability.addTarget(new TargetOpponent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -45,7 +45,7 @@ public class CityOfBrass extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.LAND},""); super(ownerId,setInfo,new CardType[]{CardType.LAND},"");
// Whenever City of Brass becomes tapped, it deals 1 damage to you. // Whenever City of Brass becomes tapped, it deals 1 damage to you.
this.addAbility(new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(1))); this.addAbility(new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(1, "it")));
// {tap}: Add one mana of any color to your mana pool. // {tap}: Add one mana of any color to your mana pool.
this.addAbility(new AnyColorManaAbility()); this.addAbility(new AnyColorManaAbility());

View file

@ -67,7 +67,7 @@ public class Cloudthresher extends CardImpl {
// Reach // Reach
this.addAbility(ReachAbility.getInstance()); this.addAbility(ReachAbility.getInstance());
// When Cloudthresher enters the battlefield, it deals 2 damage to each creature with flying and each player. // When Cloudthresher enters the battlefield, it deals 2 damage to each creature with flying and each player.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(2, filter)); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(2, "it", filter));
ability.addEffect(new DamagePlayersEffect(2)); ability.addEffect(new DamagePlayersEffect(2));
this.addAbility(ability); this.addAbility(ability);
// Evoke {2}{G}{G} // Evoke {2}{G}{G}

View file

@ -52,7 +52,7 @@ public class CorruptEunuchs extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// When Corrupt Eunuchs enters the battlefield, it deals 2 damage to target creature. // When Corrupt Eunuchs enters the battlefield, it deals 2 damage to target creature.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"), false);
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -65,7 +65,7 @@ public class DeadshotMinotaur extends CardImpl {
this.toughness = new MageInt(4); this.toughness = new MageInt(4);
// When Deadshot Minotaur enters the battlefield, it deals 3 damage to target creature with flying. // When Deadshot Minotaur enters the battlefield, it deals 3 damage to target creature with flying.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"), false);
ability.addTarget(new TargetCreaturePermanent(filter)); ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability); this.addAbility(ability);
// Cycling {RG} // Cycling {RG}

View file

@ -71,7 +71,7 @@ public class DragonlordAtarka extends CardImpl {
this.addAbility(TrampleAbility.getInstance()); this.addAbility(TrampleAbility.getInstance());
// When Dragonlord Atarka enters the battlefield, it deals 5 damage divided as you choose among any number of target creatures and/or planeswalkers your opponents control. // When Dragonlord Atarka enters the battlefield, it deals 5 damage divided as you choose among any number of target creatures and/or planeswalkers your opponents control.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageMultiEffect(5), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageMultiEffect(5, "it"), false);
ability.addTarget(new TargetCreatureOrPlaneswalkerAmount(5, filter)); ability.addTarget(new TargetCreatureOrPlaneswalkerAmount(5, filter));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -56,7 +56,7 @@ public class ElectricEel extends CardImpl {
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// When Electric Eel enters the battlefield, it deals 1 damage to you. // When Electric Eel enters the battlefield, it deals 1 damage to you.
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageControllerEffect(1), false)); this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageControllerEffect(1, "it"), false));
// {R}{R}: Electric Eel gets +2/+0 until end of turn and deals 1 damage to you. // {R}{R}: Electric Eel gets +2/+0 until end of turn and deals 1 damage to you.
Effect effect = new DamageControllerEffect(1); Effect effect = new DamageControllerEffect(1);

View file

@ -54,7 +54,7 @@ public class EliteJavelineer extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// Whenever Elite Javelineer blocks, it deals 1 damage to target attacking creature. // Whenever Elite Javelineer blocks, it deals 1 damage to target attacking creature.
Ability ability = new BlocksTriggeredAbility(new DamageTargetEffect(1), false); Ability ability = new BlocksTriggeredAbility(new DamageTargetEffect(1, "it"), false);
ability.addTarget(new TargetCreaturePermanent(new FilterAttackingCreature())); ability.addTarget(new TargetCreaturePermanent(new FilterAttackingCreature()));
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -56,9 +56,7 @@ public class EruptingDreadwolf extends CardImpl {
this.nightCard = true; this.nightCard = true;
// Whenever Erupting Dreadwolf attacks, it deals 2 damage to target creature or player. // Whenever Erupting Dreadwolf attacks, it deals 2 damage to target creature or player.
Effect effect = new DamageTargetEffect(2); Ability ability = new AttacksTriggeredAbility(new DamageTargetEffect(2, "it"), false);
effect.setText("it deals 2 damage to target creature or player");
Ability ability = new AttacksTriggeredAbility(effect, false);
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -61,7 +61,7 @@ public class ExtraArms extends CardImpl {
Ability ability = new EnchantAbility(auraTarget.getTargetName()); Ability ability = new EnchantAbility(auraTarget.getTargetName());
this.addAbility(ability); this.addAbility(ability);
// Whenever enchanted creature attacks, it deals 2 damage to target creature or player. // Whenever enchanted creature attacks, it deals 2 damage to target creature or player.
ability = new AttacksAttachedTriggeredAbility(new DamageTargetEffect(2), AttachmentType.AURA, false); ability = new AttacksAttachedTriggeredAbility(new DamageTargetEffect(2, "it"), AttachmentType.AURA, false);
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -62,7 +62,7 @@ public class FatalAttraction extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// When Fatal Attraction enters the battlefield, it deals 2 damage to enchanted creature. // When Fatal Attraction enters the battlefield, it deals 2 damage to enchanted creature.
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageAttachedEffect(2))); this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageAttachedEffect(2, "it")));
// At the beginning of your upkeep, Fatal Attraction deals 4 damage to enchanted creature. // At the beginning of your upkeep, Fatal Attraction deals 4 damage to enchanted creature.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new DamageAttachedEffect(4), TargetController.YOU, false)); this.addAbility(new BeginningOfUpkeepTriggeredAbility(new DamageAttachedEffect(4), TargetController.YOU, false));
} }

View file

@ -63,7 +63,7 @@ public class FerventPaincaster extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// {T}, Exert Fervent Paincaster: It deals 1 damage to target creature. // {T}, Exert Fervent Paincaster: It deals 1 damage to target creature.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost()); Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1, "It"), new TapSourceCost());
ability2.addCost(new ExertSourceCost()); ability2.addCost(new ExertSourceCost());
ability2.addTarget(new TargetCreaturePermanent()); ability2.addTarget(new TargetCreaturePermanent());
this.addAbility(ability2); this.addAbility(ability2);

View file

@ -52,7 +52,7 @@ public class FireImp extends CardImpl {
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// When Fire Imp enters the battlefield, it deals 2 damage to target creature. // When Fire Imp enters the battlefield, it deals 2 damage to target creature.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"), false);
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -51,15 +51,13 @@ public class FireforgersPuzzleknot extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}"); super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
// When Fireforger's Puzzleknot enters the battlefield, it deals 1 damage to target creature or player. // When Fireforger's Puzzleknot enters the battlefield, it deals 1 damage to target creature or player.
Effect effect = new DamageTargetEffect(1);
effect.setText("it deals 1 damage to target creature or player"); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1, "it"));
Ability ability = new EntersBattlefieldTriggeredAbility(effect);
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);
// {2}{R}, Sacrifice Fireforger's Puzzleknot: It deals 1 damage to target creature or player. // {2}{R}, Sacrifice Fireforger's Puzzleknot: It deals 1 damage to target creature or player.
effect.setText("It deals 1 damage to target creature or player"); ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1, "It"), new ManaCostsImpl<>("{2}{R}"));
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}{R}"));
ability.addCost(new SacrificeSourceCost()); ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);

View file

@ -65,7 +65,7 @@ public class GalvanicArc extends CardImpl {
Ability ability = new EnchantAbility(auraTarget.getTargetName()); Ability ability = new EnchantAbility(auraTarget.getTargetName());
this.addAbility(ability); this.addAbility(ability);
// When Galvanic Arc enters the battlefield, it deals 3 damage to target creature or player. // When Galvanic Arc enters the battlefield, it deals 3 damage to target creature or player.
Ability triggeredAbility = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3)); Ability triggeredAbility = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"));
triggeredAbility.addTarget(new TargetCreatureOrPlayer()); triggeredAbility.addTarget(new TargetCreatureOrPlayer());
this.addAbility(triggeredAbility); this.addAbility(triggeredAbility);
// Enchanted creature has first strike. // Enchanted creature has first strike.

View file

@ -54,7 +54,7 @@ public class GoretuskFirebeast extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// When Goretusk Firebeast enters the battlefield, it deals 4 damage to target player. // When Goretusk Firebeast enters the battlefield, it deals 4 damage to target player.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(4), false); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(4, "it"), false);
ability.addTarget(new TargetPlayer()); ability.addTarget(new TargetPlayer());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -68,7 +68,7 @@ public class HordeAmbusher extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// Whenever Horde Ambusher blocks, it deals 1 damage to you. // Whenever Horde Ambusher blocks, it deals 1 damage to you.
this.addAbility(new BlocksTriggeredAbility(new DamageControllerEffect(1), false)); this.addAbility(new BlocksTriggeredAbility(new DamageControllerEffect(1, "it"), false));
// Morph - Reveal a red card in your hand. // Morph - Reveal a red card in your hand.
this.addAbility(new MorphAbility(this, new RevealTargetFromHandCost(new TargetCardInHand(filter)))); this.addAbility(new MorphAbility(this, new RevealTargetFromHandCost(new TargetCardInHand(filter))));

View file

@ -61,7 +61,7 @@ public class Jilt extends CardImpl {
// Return target creature to its owner's hand. If Jilt was kicked, it deals 2 damage to another target creature. // Return target creature to its owner's hand. If Jilt was kicked, it deals 2 damage to another target creature.
this.getSpellAbility().addEffect(new ReturnToHandTargetEffect()); this.getSpellAbility().addEffect(new ReturnToHandTargetEffect());
Effect effect = new ConditionalOneShotEffect( Effect effect = new ConditionalOneShotEffect(
new DamageTargetEffect(2), new DamageTargetEffect(2, "it"),
KickedCondition.instance, KickedCondition.instance,
"If {this} was kicked, it deals 2 damage to another target creature"); "If {this} was kicked, it deals 2 damage to another target creature");
effect.setTargetPointer(new SecondTargetPointer()); effect.setTargetPointer(new SecondTargetPointer());

View file

@ -54,7 +54,7 @@ public class ResoundingThunder extends CardImpl {
// Cycling {5}{B}{R}{G} // Cycling {5}{B}{R}{G}
this.addAbility(new CyclingAbility(new ManaCostsImpl("{5}{B}{R}{G}"))); this.addAbility(new CyclingAbility(new ManaCostsImpl("{5}{B}{R}{G}")));
// When you cycle Resounding Thunder, it deals 6 damage to target creature or player. // When you cycle Resounding Thunder, it deals 6 damage to target creature or player.
Ability ability = new CycleTriggeredAbility(new DamageTargetEffect(6)); Ability ability = new CycleTriggeredAbility(new DamageTargetEffect(6, "it"));
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -50,7 +50,7 @@ public class SmolderingEfreet extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// When Smoldering Efreet dies, it deals 2 damage to you. // When Smoldering Efreet dies, it deals 2 damage to you.
this.addAbility(new DiesTriggeredAbility(new DamageControllerEffect(2), false)); this.addAbility(new DiesTriggeredAbility(new DamageControllerEffect(2, "it"), false));
} }
public SmolderingEfreet(final SmolderingEfreet card) { public SmolderingEfreet(final SmolderingEfreet card) {

View file

@ -74,7 +74,7 @@ public class SorrowsPath extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// Whenever Sorrow's Path becomes tapped, it deals 2 damage to you and each creature you control. // Whenever Sorrow's Path becomes tapped, it deals 2 damage to you and each creature you control.
Ability ability2 = new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(2)); Ability ability2 = new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(2 ));
ability2.addEffect(new DamageAllEffect(2, new FilterControlledCreaturePermanent()).setText("and each creature you control")); ability2.addEffect(new DamageAllEffect(2, new FilterControlledCreaturePermanent()).setText("and each creature you control"));
this.addAbility(ability2); this.addAbility(ability2);
} }

View file

@ -55,7 +55,7 @@ public class SteamcoreWeird extends CardImpl {
this.toughness = new MageInt(3); this.toughness = new MageInt(3);
// When Steamcore Weird enters the battlefield, if {R} was spent to cast Steamcore Weird, it deals 2 damage to target creature or player. // When Steamcore Weird enters the battlefield, if {R} was spent to cast Steamcore Weird, it deals 2 damage to target creature or player.
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2)); TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
ability.addTarget(new TargetCreatureOrPlayer()); ability.addTarget(new TargetCreatureOrPlayer());
this.addAbility(new ConditionalTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.R), this.addAbility(new ConditionalTriggeredAbility(ability, new ManaWasSpentCondition(ColoredManaSymbol.R),
"if {R} was spent to cast {this}, it deals 2 damage to target creature or player."), "if {R} was spent to cast {this}, it deals 2 damage to target creature or player."),