diff --git a/Mage.Sets/src/mage/cards/a/Agility.java b/Mage.Sets/src/mage/cards/a/Agility.java
index 27b094df38d..3a9f1ab4c0f 100644
--- a/Mage.Sets/src/mage/cards/a/Agility.java
+++ b/Mage.Sets/src/mage/cards/a/Agility.java
@@ -1,4 +1,3 @@
-
package mage.cards.a;
import java.util.UUID;
@@ -25,7 +24,6 @@ public final class Agility extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{R}");
this.subtype.add(SubType.AURA);
-
// Enchant creature
TargetPermanent auraTarget = new TargetCreaturePermanent();
this.getSpellAbility().addTarget(auraTarget);
@@ -33,8 +31,10 @@ public final class Agility extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets +1/+1 and has flanking.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1)));
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(new FlankingAbility(), AttachmentType.AURA)));
+ Ability boostAbility = new SimpleStaticAbility(new BoostEnchantedEffect(1, 1));
+ boostAbility.addEffect(new GainAbilityAttachedEffect(new FlankingAbility(), AttachmentType.AURA)
+ .setText("and has flanking"));
+ this.addAbility(boostAbility);
}
diff --git a/Mage.Sets/src/mage/cards/a/AugmenterPugilist.java b/Mage.Sets/src/mage/cards/a/AugmenterPugilist.java
index dfc2eb5e361..7b39f2b48fd 100644
--- a/Mage.Sets/src/mage/cards/a/AugmenterPugilist.java
+++ b/Mage.Sets/src/mage/cards/a/AugmenterPugilist.java
@@ -78,7 +78,7 @@ class EchoingEquationEffect extends OneShotEffect {
public EchoingEquationEffect() {
super(Outcome.Benefit);
- staticText = "choose target creature you control. Each other creature you control becomes a copy of it until end of turn, except those creatures aren't legendary if the chosen creature is legendary";
+ staticText = "choose target creature you control. Each other creature you control becomes a copy of it until end of turn, except those creatures aren't legendary";
}
private EchoingEquationEffect(final EchoingEquationEffect effect) {
@@ -107,4 +107,4 @@ class EchoingEquationEffect extends OneShotEffect {
}
return false;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/b/BestialFury.java b/Mage.Sets/src/mage/cards/b/BestialFury.java
index 9f7ee4f8f2f..65173bdfbe7 100644
--- a/Mage.Sets/src/mage/cards/b/BestialFury.java
+++ b/Mage.Sets/src/mage/cards/b/BestialFury.java
@@ -47,8 +47,10 @@ public final class BestialFury extends CardImpl {
.setText("draw a card at the beginning of the next turn's upkeep"), false));
// Whenever enchanted creature becomes blocked, it gets +4/+0 and gains trample until end of turn.
- Ability pumpAbility = new BecomesBlockedAttachedTriggeredAbility(new BoostEnchantedEffect(4, 0, Duration.EndOfTurn), false);
- pumpAbility.addEffect(new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA, Duration.EndOfTurn));
+ Ability pumpAbility = new BecomesBlockedAttachedTriggeredAbility(new BoostEnchantedEffect(4, 0, Duration.EndOfTurn)
+ .setText("it gets +4/+0"), false);
+ pumpAbility.addEffect(new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA, Duration.EndOfTurn)
+ .setText("and gains trample until end of turn"));
this.addAbility(pumpAbility);
diff --git a/Mage.Sets/src/mage/cards/c/CloakOfFeathers.java b/Mage.Sets/src/mage/cards/c/CloakOfFeathers.java
index 5c21ba6a27a..28a14002a7a 100644
--- a/Mage.Sets/src/mage/cards/c/CloakOfFeathers.java
+++ b/Mage.Sets/src/mage/cards/c/CloakOfFeathers.java
@@ -25,7 +25,7 @@ public final class CloakOfFeathers extends CardImpl {
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
// Draw a card.
- this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1));
+ this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1).concatBy("
"));
}
private CloakOfFeathers(final CloakOfFeathers card) {
diff --git a/Mage.Sets/src/mage/cards/c/CometStellarPup.java b/Mage.Sets/src/mage/cards/c/CometStellarPup.java
index e4e864ab3f8..a971fb75333 100644
--- a/Mage.Sets/src/mage/cards/c/CometStellarPup.java
+++ b/Mage.Sets/src/mage/cards/c/CometStellarPup.java
@@ -73,7 +73,7 @@ class CometStellarPupAbility extends OneShotEffect {
CometStellarPupAbility() {
super(Outcome.Benefit);
staticText = "Roll a six-sided die.
"
- + "1 or 2 — [+2] , then create two 1/1 green Squirrel creature tokens. They gain haste until end of turn.
"
+ + "1 or 2 — [+2], then create two 1/1 green Squirrel creature tokens. They gain haste until end of turn.
"
+ "3 — [-1], then return a card with mana value 2 or less from your graveyard to your hand.
"
+ "4 or 5 — {this} deals damage equal to the number of loyalty counters on him to a creature or player, then [-2].
"
+ "6 — [+1], and you may activate Comet, Stellar Pup's loyalty ability two more times this turn.";
@@ -186,4 +186,4 @@ class CometStellarPupContinuousEffect extends ContinuousEffectImpl {
}
return false;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/e/EnergyArc.java b/Mage.Sets/src/mage/cards/e/EnergyArc.java
index 87c6253e2be..6beee13d4b5 100644
--- a/Mage.Sets/src/mage/cards/e/EnergyArc.java
+++ b/Mage.Sets/src/mage/cards/e/EnergyArc.java
@@ -1,4 +1,3 @@
-
package mage.cards.e;
import java.util.UUID;
@@ -22,8 +21,8 @@ public final class EnergyArc extends CardImpl {
// Untap any number of target creatures. Prevent all combat damage that would be dealt to and dealt by those creatures this turn.
this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE));
- this.getSpellAbility().addEffect(new UntapTargetEffect().setText("Untap any number of target creatures. "));
- this.getSpellAbility().addEffect(new PreventDamageByTargetEffect(Duration.EndOfTurn, true).setText("Prevent all combat damage that would be dealt to "));
+ this.getSpellAbility().addEffect(new UntapTargetEffect().setText("Untap any number of target creatures"));
+ this.getSpellAbility().addEffect(new PreventDamageByTargetEffect(Duration.EndOfTurn, true).setText("Prevent all combat damage that would be dealt to"));
this.getSpellAbility().addEffect(new PreventDamageToTargetEffect(Duration.EndOfTurn, true).setText("and dealt by those creatures this turn."));
}
diff --git a/Mage.Sets/src/mage/cards/e/ExemplarOfStrength.java b/Mage.Sets/src/mage/cards/e/ExemplarOfStrength.java
index 9525abb0634..1db0b8ea437 100644
--- a/Mage.Sets/src/mage/cards/e/ExemplarOfStrength.java
+++ b/Mage.Sets/src/mage/cards/e/ExemplarOfStrength.java
@@ -39,7 +39,7 @@ public final class ExemplarOfStrength extends CardImpl {
// Whenever Exemplar of Strength attacks, remove a -1/-1 counter from it. If you do, you gain 1 life.
this.addAbility(new AttacksTriggeredAbility(new DoIfCostPaid(
new GainLifeEffect(1),
- new RemoveCountersSourceCost(CounterType.M1M1.createInstance()),
+ new RemoveCountersSourceCost(CounterType.M1M1.createInstance()).setText("remove a -1/-1 counter from it"),
null, false
), false));
}
diff --git a/Mage.Sets/src/mage/cards/f/FlameElemental.java b/Mage.Sets/src/mage/cards/f/FlameElemental.java
index d31525ed2e2..50ecaa63bce 100644
--- a/Mage.Sets/src/mage/cards/f/FlameElemental.java
+++ b/Mage.Sets/src/mage/cards/f/FlameElemental.java
@@ -1,4 +1,3 @@
-
package mage.cards.f;
import java.util.UUID;
@@ -30,7 +29,8 @@ public final class FlameElemental extends CardImpl {
this.toughness = new MageInt(2);
// {R}, {tap}, Sacrifice Flame Elemental: Flame Elemental deals damage equal to its power to target creature.
- Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(new SourcePermanentPowerCount(false)), new ManaCostsImpl<>("{R}"));
+ Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(new SourcePermanentPowerCount(false))
+ .setText("It deals damage equal to its power to target creature"), new ManaCostsImpl<>("{R}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/g/GoblinDynamo.java b/Mage.Sets/src/mage/cards/g/GoblinDynamo.java
index 799a745d617..aa66c0f606d 100644
--- a/Mage.Sets/src/mage/cards/g/GoblinDynamo.java
+++ b/Mage.Sets/src/mage/cards/g/GoblinDynamo.java
@@ -36,7 +36,7 @@ public final class GoblinDynamo extends CardImpl {
this.addAbility(ability);
//{X}{R}, {T}, Sacrifice Goblin Dynamo: Goblin Dynamo deals X damage to any target.
- ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,new DamageTargetEffect(ManacostVariableValue.REGULAR), new ManaCostsImpl<>("{X}{R}"));
+ ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,new DamageTargetEffect(ManacostVariableValue.REGULAR, "it"), new ManaCostsImpl<>("{X}{R}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetAnyTarget());
diff --git a/Mage.Sets/src/mage/cards/h/HailStorm.java b/Mage.Sets/src/mage/cards/h/HailStorm.java
index 037e12fe723..8668f420724 100644
--- a/Mage.Sets/src/mage/cards/h/HailStorm.java
+++ b/Mage.Sets/src/mage/cards/h/HailStorm.java
@@ -21,7 +21,7 @@ public final class HailStorm extends CardImpl {
// Hail Storm deals 2 damage to each attacking creature and 1 damage to you and each creature you control.
this.getSpellAbility().addEffect(new DamageAllEffect(2, new FilterAttackingCreature()));
- this.getSpellAbility().addEffect(new DamageControllerEffect(1).setText("and 1 damage to you "));
+ this.getSpellAbility().addEffect(new DamageControllerEffect(1).setText("and 1 damage to you"));
this.getSpellAbility().addEffect(new DamageAllEffect(1, StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED).setText("and each creature you control."));
}
diff --git a/Mage.Sets/src/mage/cards/i/InvasionPlans.java b/Mage.Sets/src/mage/cards/i/InvasionPlans.java
index cfb6ffecda6..a849b31e86a 100644
--- a/Mage.Sets/src/mage/cards/i/InvasionPlans.java
+++ b/Mage.Sets/src/mage/cards/i/InvasionPlans.java
@@ -43,7 +43,7 @@ class InvasionPlansEffect extends ContinuousRuleModifyingEffectImpl {
public InvasionPlansEffect() {
super(Duration.WhileOnBattlefield, Outcome.Benefit, false, false);
- staticText = "The attacking player chooses how each creature blocks each turn";
+ staticText = "The attacking player chooses how each creature blocks each combat";
}
private InvasionPlansEffect(final InvasionPlansEffect effect) {
diff --git a/Mage.Sets/src/mage/cards/k/KjeldoranPride.java b/Mage.Sets/src/mage/cards/k/KjeldoranPride.java
index 27f47ff8b24..9a6e243c9b6 100644
--- a/Mage.Sets/src/mage/cards/k/KjeldoranPride.java
+++ b/Mage.Sets/src/mage/cards/k/KjeldoranPride.java
@@ -1,4 +1,3 @@
-
package mage.cards.k;
import java.util.UUID;
@@ -48,7 +47,7 @@ public final class KjeldoranPride extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 2)));
// 2U: Attach Kjeldoran Pride to target creature other than enchanted creature.
- Ability ability = new SimpleActivatedAbility(new AttachEffect(Outcome.Benefit), new ManaCostsImpl<>("{2}{U}"));
+ Ability ability = new SimpleActivatedAbility(new AttachEffect(Outcome.Benefit, "attach {this} to target " + filter.getMessage()), new ManaCostsImpl<>("{2}{U}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/k/KrovikanHorror.java b/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
index 1f7e96699a0..921fba65ef0 100644
--- a/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
+++ b/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
@@ -21,7 +21,6 @@ import mage.constants.Zone;
import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
-import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
/**
@@ -41,7 +40,7 @@ public final class KrovikanHorror extends CardImpl {
// At the beginning of the end step, if Krovikan Horror is in your graveyard with a creature card directly above it, you may return Krovikan Horror to your hand.
this.addAbility(new BeginningOfEndStepTriggeredAbility(
Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(),
- TargetController.ANY, KrovikanHorrorCondition.instance, true
+ TargetController.NEXT, KrovikanHorrorCondition.instance, true
));
// {1}, Sacrifice a creature: Krovikan Horror deals 1 damage to any target.
diff --git a/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java b/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
index 7c27c79b250..62ff09684ab 100644
--- a/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
+++ b/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
@@ -31,7 +31,7 @@ public final class LiegeOfTheAxe extends CardImpl {
// Morph {1}{W}
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{W}")));
// When Liege of the Axe is turned face up, untap it.
- this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new UntapSourceEffect()));
+ this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new UntapSourceEffect().setText("untap it")));
}
private LiegeOfTheAxe(final LiegeOfTheAxe card) {
diff --git a/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java b/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
index cdfbeaed9cb..ed5bafbfa90 100644
--- a/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
+++ b/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
@@ -1,4 +1,3 @@
-
package mage.cards.l;
import java.util.UUID;
@@ -37,7 +36,7 @@ public final class LordOfTresserhorn extends CardImpl {
// When Lord of Tresserhorn enters the battlefield, you lose 2 life, you sacrifice two creatures, and target opponent draws two cards.
Ability ability = new EntersBattlefieldTriggeredAbility(new LoseLifeSourceControllerEffect(2), false);
- ability.addEffect(new SacrificeControllerEffect(new FilterControlledCreaturePermanent("creatures"), 2, "you"));
+ ability.addEffect(new SacrificeControllerEffect(new FilterControlledCreaturePermanent("creatures"), 2, ", you"));
Effect effect = new DrawCardTargetEffect(2);
effect.setText(", and target opponent draws two cards");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/n/NaturesChosen.java b/Mage.Sets/src/mage/cards/n/NaturesChosen.java
index 052cb634ac5..8b4cc8b09c4 100644
--- a/Mage.Sets/src/mage/cards/n/NaturesChosen.java
+++ b/Mage.Sets/src/mage/cards/n/NaturesChosen.java
@@ -43,7 +43,7 @@ public final class NaturesChosen extends CardImpl {
CardType.LAND.getPredicate()));
}
- private static final FilterCreaturePermanent filterWhiteUntappedCreature = new FilterCreaturePermanent(" if enchanted creature is white and is untapped");
+ private static final FilterCreaturePermanent filterWhiteUntappedCreature = new FilterCreaturePermanent("enchanted creature is white and untapped");
static {
filterWhiteUntappedCreature.add(new ColorPredicate(ObjectColor.WHITE));
diff --git a/Mage.Sets/src/mage/cards/s/ShrineOfBurningRage.java b/Mage.Sets/src/mage/cards/s/ShrineOfBurningRage.java
index 5e99ee121d9..00f449fb00c 100644
--- a/Mage.Sets/src/mage/cards/s/ShrineOfBurningRage.java
+++ b/Mage.Sets/src/mage/cards/s/ShrineOfBurningRage.java
@@ -45,7 +45,8 @@ public final class ShrineOfBurningRage extends CardImpl {
new SpellCastControllerTriggeredAbility(null, filter, false)));
//{3}, {T}, Sacrifice Shrine of Burning Rage: It deals damage equal to the number of charge counters on it to any target.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(new CountersSourceCount(CounterType.CHARGE)), new GenericManaCost(3));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(new CountersSourceCount(CounterType.CHARGE))
+ .setText("it deals damage equal to the number of charge counters on it to any target"), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetAnyTarget());
diff --git a/Mage.Sets/src/mage/cards/u/UnstableHulk.java b/Mage.Sets/src/mage/cards/u/UnstableHulk.java
index ad26fa347bf..a8d47702898 100644
--- a/Mage.Sets/src/mage/cards/u/UnstableHulk.java
+++ b/Mage.Sets/src/mage/cards/u/UnstableHulk.java
@@ -1,4 +1,3 @@
-
package mage.cards.u;
import java.util.UUID;
@@ -6,7 +5,6 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
-import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.effects.common.turn.SkipNextTurnSourceEffect;
@@ -33,15 +31,14 @@ public final class UnstableHulk extends CardImpl {
this.toughness = new MageInt(2);
// Morph {3}{R}{R}
- this.addAbility(new MorphAbility(new ManaCostsImpl<>("{R}{R}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{R}{R}")));
- //When Unstable Hulk is turned face up, it gets +6/+6 and gains trample until end of turn. You skip your next turn.
- Effect effect = new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn);
- Ability ability = new TurnedFaceUpSourceTriggeredAbility(effect);
- effect = new BoostSourceEffect(6,6,Duration.EndOfTurn);
- ability.addEffect(effect);
- effect = new SkipNextTurnSourceEffect();
- ability.addEffect(effect);
+ // When Unstable Hulk is turned face up, it gets +6/+6 and gains trample until end of turn. You skip your next turn.
+ Ability ability = new TurnedFaceUpSourceTriggeredAbility(new BoostSourceEffect(6,6,Duration.EndOfTurn)
+ .setText("it gets +6/+6"));
+ ability.addEffect(new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)
+ .setText("and gains trample until end of turn"));
+ ability.addEffect(new SkipNextTurnSourceEffect());
this.addAbility(ability);
}
@@ -54,4 +51,4 @@ public final class UnstableHulk extends CardImpl {
public UnstableHulk copy() {
return new UnstableHulk(this);
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/w/WalkerOfTheWastes.java b/Mage.Sets/src/mage/cards/w/WalkerOfTheWastes.java
index 05898cb0613..53b6d772d7c 100644
--- a/Mage.Sets/src/mage/cards/w/WalkerOfTheWastes.java
+++ b/Mage.Sets/src/mage/cards/w/WalkerOfTheWastes.java
@@ -23,7 +23,7 @@ import mage.filter.predicate.mageobject.NamePredicate;
*/
public final class WalkerOfTheWastes extends CardImpl {
- private static final FilterLandPermanent filter = new FilterLandPermanent("each land you control named Wastes");
+ private static final FilterLandPermanent filter = new FilterLandPermanent("land you control named Wastes");
static {
filter.add(new NamePredicate("Wastes"));