diff --git a/Mage.Sets/src/mage/cards/e/ExoticCurse.java b/Mage.Sets/src/mage/cards/e/ExoticCurse.java
index 17e1fc0cf0b..f9439ca8bd7 100644
--- a/Mage.Sets/src/mage/cards/e/ExoticCurse.java
+++ b/Mage.Sets/src/mage/cards/e/ExoticCurse.java
@@ -1,7 +1,5 @@
-
package mage.cards.e;
-import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.dynamicvalue.DynamicValue;
@@ -12,16 +10,13 @@ import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
import mage.abilities.keyword.EnchantAbility;
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.Outcome;
-import mage.constants.Zone;
+import mage.constants.*;
import mage.target.TargetPermanent;
+import mage.target.common.TargetCreaturePermanent;
+
+import java.util.UUID;
/**
- *
* @author FenrisulfrX
*/
public final class ExoticCurse extends CardImpl {
@@ -31,7 +26,7 @@ public final class ExoticCurse extends CardImpl {
this.subtype.add(SubType.AURA);
// Enchant creature
- TargetPermanent auraTarget = new TargetPermanent();
+ TargetPermanent auraTarget = new TargetCreaturePermanent();
this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.UnboostCreature));
this.addAbility(new EnchantAbility(auraTarget.getTargetName()));
diff --git a/Mage.Sets/src/mage/cards/f/FirecannonBlast.java b/Mage.Sets/src/mage/cards/f/FirecannonBlast.java
index 6e7a4d2affd..9a443bb3110 100644
--- a/Mage.Sets/src/mage/cards/f/FirecannonBlast.java
+++ b/Mage.Sets/src/mage/cards/f/FirecannonBlast.java
@@ -6,7 +6,6 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.hint.common.RaidHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
-import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.target.common.TargetCreaturePermanent;
import mage.watchers.common.PlayerAttackedWatcher;
@@ -30,7 +29,6 @@ public final class FirecannonBlast extends CardImpl {
"{this} deals 3 damage to target creature.
Raid — {this} deals 6 damage instead if you attacked this turn"));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
this.getSpellAbility().addWatcher(new PlayerAttackedWatcher());
- this.getSpellAbility().setAbilityWord(AbilityWord.RAID);
this.getSpellAbility().addHint(RaidHint.instance);
}
diff --git a/Mage.Sets/src/mage/cards/h/HuntingKavu.java b/Mage.Sets/src/mage/cards/h/HuntingKavu.java
index 10d6a9e9871..809e35332ac 100644
--- a/Mage.Sets/src/mage/cards/h/HuntingKavu.java
+++ b/Mage.Sets/src/mage/cards/h/HuntingKavu.java
@@ -42,7 +42,7 @@ public final class HuntingKavu extends CardImpl {
// {1}{R}{G}, {tap}: Exile Hunting Kavu and target creature without flying that's attacking you.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileSourceEffect(), new ManaCostsImpl("{1}{R}{G}"));
ability.addCost(new TapSourceCost());
- ability.addEffect(new ExileTargetEffect().setText("nd target creature without flying that's attacking you"));
+ ability.addEffect(new ExileTargetEffect().setText("and target creature without flying that's attacking you"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HypnoticCloud.java b/Mage.Sets/src/mage/cards/h/HypnoticCloud.java
index b92805acd22..78f54f299f6 100644
--- a/Mage.Sets/src/mage/cards/h/HypnoticCloud.java
+++ b/Mage.Sets/src/mage/cards/h/HypnoticCloud.java
@@ -27,7 +27,7 @@ public final class HypnoticCloud extends CardImpl {
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DiscardTargetEffect(3), new DiscardTargetEffect(1), KickedCondition.instance,
- "Target player discards a card. if this spell was kicked, that player discards three cards instead"));
+ "Target player discards a card. If this spell was kicked, that player discards three cards instead"));
}
diff --git a/Mage.Sets/src/mage/cards/t/Twinflame.java b/Mage.Sets/src/mage/cards/t/Twinflame.java
index 5dc10c22399..17c768d9c52 100644
--- a/Mage.Sets/src/mage/cards/t/Twinflame.java
+++ b/Mage.Sets/src/mage/cards/t/Twinflame.java
@@ -54,7 +54,7 @@ class TwinflameCopyEffect extends OneShotEffect {
public TwinflameCopyEffect() {
super(Outcome.PutCreatureInPlay);
- this.staticText = "Choose any number of target creatures you control. For each of them, create a token that's a copy of that creature, except it has haste. Exile them at the beginning of the next end step";
+ this.staticText = "choose any number of target creatures you control. For each of them, create a token that's a copy of that creature, except it has haste. Exile those tokens at the beginning of the next end step";
}
public TwinflameCopyEffect(final TwinflameCopyEffect effect) {
diff --git a/Mage.Sets/src/mage/cards/w/WurmcoilEngine.java b/Mage.Sets/src/mage/cards/w/WurmcoilEngine.java
index f73a0a73480..0f55124dcf9 100644
--- a/Mage.Sets/src/mage/cards/w/WurmcoilEngine.java
+++ b/Mage.Sets/src/mage/cards/w/WurmcoilEngine.java
@@ -32,7 +32,7 @@ public final class WurmcoilEngine extends CardImpl {
// When Wurmcoil Engine dies, create a 3/3 colorless Wurm artifact creature token with deathtouch and a 3/3 colorless Wurm artifact creature token with lifelink.
Ability ability = new DiesSourceTriggeredAbility(new CreateTokenEffect(new WurmWithDeathtouchToken()), false);
- ability.addEffect(new CreateTokenEffect(new WurmWithLifelinkToken()));
+ ability.addEffect(new CreateTokenEffect(new WurmWithLifelinkToken()).setText("and a 3/3 colorless Wurm artifact creature token with lifelink"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/x/XathridGorgon.java b/Mage.Sets/src/mage/cards/x/XathridGorgon.java
index adae2d237cb..86c6a2febbf 100644
--- a/Mage.Sets/src/mage/cards/x/XathridGorgon.java
+++ b/Mage.Sets/src/mage/cards/x/XathridGorgon.java
@@ -50,9 +50,9 @@ public final class XathridGorgon extends CardImpl {
effect.setText("It gains defender");
ability.addEffect(effect);
effect = new AddCardTypeTargetEffect(Duration.Custom, CardType.ARTIFACT);
- effect.setText("and becomes a colorless artifact in addition to its other types");
+ effect.setText("and becomes a colorless");
ability.addEffect(effect);
- ability.addEffect(new BecomesColorTargetEffect(new ObjectColor(), Duration.Custom, ""));
+ ability.addEffect(new BecomesColorTargetEffect(new ObjectColor(), Duration.Custom, "artifact in addition to its other types"));
ability.addEffect(new XathridGorgonCantActivateEffect());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/y/YennettCrypticSovereign.java b/Mage.Sets/src/mage/cards/y/YennettCrypticSovereign.java
index 863105418b8..e87432c7cd4 100644
--- a/Mage.Sets/src/mage/cards/y/YennettCrypticSovereign.java
+++ b/Mage.Sets/src/mage/cards/y/YennettCrypticSovereign.java
@@ -1,27 +1,27 @@
package mage.cards.y;
-import java.util.UUID;
import mage.ApprovingObject;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.effects.OneShotEffect;
-import mage.constants.SubType;
-import mage.constants.SuperType;
import mage.abilities.keyword.FlyingAbility;
-import mage.abilities.keyword.VigilanceAbility;
import mage.abilities.keyword.MenaceAbility;
+import mage.abilities.keyword.VigilanceAbility;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.cards.CardsImpl;
import mage.constants.CardType;
import mage.constants.Outcome;
+import mage.constants.SubType;
+import mage.constants.SuperType;
import mage.game.Game;
import mage.players.Player;
+import java.util.UUID;
+
/**
- *
* @author TheElk801
*/
public final class YennettCrypticSovereign extends CardImpl {
@@ -64,10 +64,10 @@ class YennettCrypticSovereignEffect extends OneShotEffect {
public YennettCrypticSovereignEffect() {
super(Outcome.Benefit);
- this.staticText = "reveal the top card of your library. "
- + "If that card's converted mana cost is odd, "
- + "you may cast it without paying its mana cost. "
- + "Otherwise, draw a card";
+ this.staticText = "reveal the top card of your library. " +
+ "You may cast it without paying its mana cost " +
+ "if its converted mana cost is odd. " +
+ "If you don't cast it, draw a card.";
}
public YennettCrypticSovereignEffect(final YennettCrypticSovereignEffect effect) {
diff --git a/Mage.Sets/src/mage/cards/y/YuanShaosInfantry.java b/Mage.Sets/src/mage/cards/y/YuanShaosInfantry.java
index 2c290d14e46..052148cc420 100644
--- a/Mage.Sets/src/mage/cards/y/YuanShaosInfantry.java
+++ b/Mage.Sets/src/mage/cards/y/YuanShaosInfantry.java
@@ -27,7 +27,7 @@ public final class YuanShaosInfantry extends CardImpl {
// Whenever Yuan Shao's Infantry attacks alone, Yuan Shao's Infantry can't be blocked this combat.
Effect effect = new CantBeBlockedSourceEffect(Duration.EndOfCombat);
- effect.setText("it can't be blocked this combat");
+ effect.setText("{this} can't be blocked this combat");
this.addAbility(new AttacksAloneTriggeredAbility(effect));
}
diff --git a/Mage.Sets/src/mage/cards/z/ZealotIlVec.java b/Mage.Sets/src/mage/cards/z/ZealotIlVec.java
index d76667d2b17..eefa277cf00 100644
--- a/Mage.Sets/src/mage/cards/z/ZealotIlVec.java
+++ b/Mage.Sets/src/mage/cards/z/ZealotIlVec.java
@@ -31,7 +31,7 @@ public final class ZealotIlVec extends CardImpl {
// Shadow
this.addAbility(ShadowAbility.getInstance());
// Whenever Zealot il-Vec attacks and isn't blocked, you may have it deal 1 damage to target creature. If you do, prevent all combat damage Zealot il-Vec would deal this turn.
- Ability ability = new AttacksAndIsNotBlockedTriggeredAbility(new DamageTargetEffect(1), true);
+ Ability ability = new AttacksAndIsNotBlockedTriggeredAbility(new DamageTargetEffect(1).setText("it deal 1 damage to target creature"), true);
Effect effect = new PreventCombatDamageBySourceEffect(Duration.EndOfTurn);
effect.setText("if you do, prevent all combat damage {this} would deal this turn");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/z/ZealousConscripts.java b/Mage.Sets/src/mage/cards/z/ZealousConscripts.java
index 460ce890b6a..b7847da54a5 100644
--- a/Mage.Sets/src/mage/cards/z/ZealousConscripts.java
+++ b/Mage.Sets/src/mage/cards/z/ZealousConscripts.java
@@ -33,7 +33,7 @@ public final class ZealousConscripts extends CardImpl {
// When Zealous Conscripts enters the battlefield, gain control of target permanent until end of turn. Untap that permanent. It gains haste until end of turn.
Ability ability = new EntersBattlefieldTriggeredAbility(new GainControlTargetEffect(Duration.EndOfTurn));
ability.addTarget(new TargetPermanent());
- ability.addEffect(new UntapTargetEffect());
+ ability.addEffect(new UntapTargetEffect().setText("Untap that permanent."));
ability.addEffect(new GainAbilityTargetEffect(HasteAbility.getInstance(), Duration.EndOfTurn, "It gains haste until end of turn"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/z/ZealousPersecution.java b/Mage.Sets/src/mage/cards/z/ZealousPersecution.java
index 4f52c132645..b5b2c4712ad 100644
--- a/Mage.Sets/src/mage/cards/z/ZealousPersecution.java
+++ b/Mage.Sets/src/mage/cards/z/ZealousPersecution.java
@@ -1,7 +1,5 @@
-
package mage.cards.z;
-import java.util.UUID;
import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.abilities.effects.common.continuous.BoostOpponentsEffect;
import mage.cards.CardImpl;
@@ -9,17 +7,22 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
+import java.util.UUID;
+
/**
- *
* @author North
*/
public final class ZealousPersecution extends CardImpl {
public ZealousPersecution(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{W}{B}");
+ super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{W}{B}");
- this.getSpellAbility().addEffect(new BoostControlledEffect(1, 1, Duration.EndOfTurn));
- this.getSpellAbility().addEffect(new BoostOpponentsEffect(-1, -1, Duration.EndOfTurn));
+ this.getSpellAbility().addEffect(new BoostControlledEffect(
+ 1, 1, Duration.EndOfTurn
+ ).setText("until end of turn, creatures you control get +1/+1"));
+ this.getSpellAbility().addEffect(new BoostOpponentsEffect(
+ -1, -1, Duration.EndOfTurn
+ ).setText("and creatures your opponents control get -1/-1"));
}
public ZealousPersecution(final ZealousPersecution card) {
diff --git a/Mage.Sets/src/mage/cards/z/ZealousStrike.java b/Mage.Sets/src/mage/cards/z/ZealousStrike.java
index 4d0963174fb..9169d840b63 100644
--- a/Mage.Sets/src/mage/cards/z/ZealousStrike.java
+++ b/Mage.Sets/src/mage/cards/z/ZealousStrike.java
@@ -1,7 +1,5 @@
-
package mage.cards.z;
-import java.util.UUID;
import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.FirstStrikeAbility;
@@ -11,18 +9,23 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.target.common.TargetCreaturePermanent;
+import java.util.UUID;
+
/**
- *
* @author Loki
*/
public final class ZealousStrike extends CardImpl {
public ZealousStrike(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{W}");
+ super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{W}");
// Target creature gets +2/+2 and gains first strike until end of turn.
- this.getSpellAbility().addEffect(new BoostTargetEffect(2, 2, Duration.EndOfTurn));
- this.getSpellAbility().addEffect(new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn));
+ this.getSpellAbility().addEffect(new BoostTargetEffect(
+ 2, 2, Duration.EndOfTurn
+ ).setText("target creature gets +2/+2"));
+ this.getSpellAbility().addEffect(new GainAbilityTargetEffect(
+ FirstStrikeAbility.getInstance(), Duration.EndOfTurn
+ ).setText("and gains first strike until end of turn"));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
}
diff --git a/Mage.Sets/src/mage/cards/z/ZephyrNet.java b/Mage.Sets/src/mage/cards/z/ZephyrNet.java
index 24aa3ceae7b..486c4181eb0 100644
--- a/Mage.Sets/src/mage/cards/z/ZephyrNet.java
+++ b/Mage.Sets/src/mage/cards/z/ZephyrNet.java
@@ -1,7 +1,5 @@
-
package mage.cards.z;
-import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.AttachEffect;
@@ -11,18 +9,22 @@ import mage.abilities.keyword.EnchantAbility;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
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.common.TargetCreaturePermanent;
+import java.util.UUID;
+
/**
- *
* @author Loki
*/
public final class ZephyrNet extends CardImpl {
public ZephyrNet(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}");
+ super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}");
this.subtype.add(SubType.AURA);
// Enchant creature
@@ -31,9 +33,15 @@ public final class ZephyrNet extends CardImpl {
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
Ability ability = new EnchantAbility(auraTarget.getTargetName());
this.addAbility(ability);
+
// Enchanted creature has defender and flying.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(DefenderAbility.getInstance(), AttachmentType.AURA)));
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA)));
+ ability = new SimpleStaticAbility(new GainAbilityAttachedEffect(
+ DefenderAbility.getInstance(), AttachmentType.AURA
+ ));
+ ability.addEffect(new GainAbilityAttachedEffect(
+ FlyingAbility.getInstance(), AttachmentType.AURA
+ ).setText("and flying"));
+ this.addAbility(ability);
}
public ZephyrNet(final ZephyrNet card) {
diff --git a/Mage.Sets/src/mage/cards/z/ZhurTaaDruid.java b/Mage.Sets/src/mage/cards/z/ZhurTaaDruid.java
index ffeae4d28e2..19c4de2d36b 100644
--- a/Mage.Sets/src/mage/cards/z/ZhurTaaDruid.java
+++ b/Mage.Sets/src/mage/cards/z/ZhurTaaDruid.java
@@ -49,7 +49,7 @@ public final class ZhurTaaDruid extends CardImpl {
class ZhurTaaDruidAbility extends TriggeredAbilityImpl {
public ZhurTaaDruidAbility() {
- super(Zone.BATTLEFIELD, new DamagePlayersEffect(1, TargetController.OPPONENT));
+ super(Zone.BATTLEFIELD, new DamagePlayersEffect(1, TargetController.OPPONENT, "it"));
}
public ZhurTaaDruidAbility(final ZhurTaaDruidAbility ability) {
diff --git a/Mage.Sets/src/mage/cards/z/ZombieCannibal.java b/Mage.Sets/src/mage/cards/z/ZombieCannibal.java
index d871dff4fda..6f2e613ce66 100644
--- a/Mage.Sets/src/mage/cards/z/ZombieCannibal.java
+++ b/Mage.Sets/src/mage/cards/z/ZombieCannibal.java
@@ -84,6 +84,6 @@ class ZombieCannibalTriggeredAbility extends TriggeredAbilityImpl {
@Override
public String getRule() {
return "Whenever {this} deals combat damage to a player, "
- + "you may exile target card from that player's graveyard";
+ + "you may exile target card from that player's graveyard.";
}
}
diff --git a/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java b/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java
index 48d4d112c8f..75c7be0ffc5 100644
--- a/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java
+++ b/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java
@@ -39,7 +39,7 @@ public class StriveAbility extends SimpleStaticAbility {
@Override
public String getRule() {
- return new StringBuilder("Strive — {this} costs ").append(striveCost).append(" more to cast for each target beyond the first.").toString();
+ return new StringBuilder("Strive — this spell costs ").append(striveCost).append(" more to cast for each target beyond the first.").toString();
}
}
diff --git a/Mage/src/main/java/mage/abilities/effects/common/AmplifyEffect.java b/Mage/src/main/java/mage/abilities/effects/common/AmplifyEffect.java
index 857a7f93c97..808f5430362 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/AmplifyEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/AmplifyEffect.java
@@ -141,7 +141,7 @@ public class AmplifyEffect extends ReplacementEffectImpl {
@Override
public String getText(Mode mode) {
StringBuilder sb = new StringBuilder(amplifyFactor.toString());
- sb.append("(As this enter the battlefield, ");
+ sb.append(" (As this enter the battlefield, ");
sb.append(amplifyFactor.getRuleText()).append(" for each card"
+ " you reveal that shares a type with it in your hand.)");
return sb.toString();
diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/AdaptEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/AdaptEffect.java
index c3c0056a810..0a2f47b7eee 100644
--- a/Mage/src/main/java/mage/abilities/effects/keyword/AdaptEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/keyword/AdaptEffect.java
@@ -22,7 +22,7 @@ public class AdaptEffect extends OneShotEffect {
super(Outcome.BoostCreature);
this.adaptNumber = adaptNumber;
staticText = "Adapt " + adaptNumber
- + " (If this creature has no +1/+1 counters on it, put "
+ + ". (If this creature has no +1/+1 counters on it, put "
+ CardUtil.numberToText(adaptNumber) + " +1/+1 counter"
+ (adaptNumber > 1 ? "s" : "") + " on it.)";
}
diff --git a/Mage/src/main/java/mage/abilities/keyword/MonstrosityAbility.java b/Mage/src/main/java/mage/abilities/keyword/MonstrosityAbility.java
index f9ce9c616fe..43d4f9b5394 100644
--- a/Mage/src/main/java/mage/abilities/keyword/MonstrosityAbility.java
+++ b/Mage/src/main/java/mage/abilities/keyword/MonstrosityAbility.java
@@ -112,7 +112,7 @@ class BecomeMonstrousSourceEffect extends OneShotEffect {
private String setText(int monstrosityValue) {
StringBuilder sb = new StringBuilder("Monstrosity ");
sb.append(monstrosityValue == Integer.MAX_VALUE ? "X":monstrosityValue)
- .append(". (If this creature isn't monstrous, put ")
+ .append(". (If this creature isn't monstrous, put ")
.append(monstrosityValue == Integer.MAX_VALUE ? "X":CardUtil.numberToText(monstrosityValue))
.append(" +1/+1 counters on it and it becomes monstrous.)").toString();
return sb.toString();