diff --git a/Mage.Sets/src/mage/cards/b/BlindingFlare.java b/Mage.Sets/src/mage/cards/b/BlindingFlare.java index 17ba789fc58..22f4db052eb 100644 --- a/Mage.Sets/src/mage/cards/b/BlindingFlare.java +++ b/Mage.Sets/src/mage/cards/b/BlindingFlare.java @@ -29,7 +29,6 @@ package mage.cards.b; import java.util.UUID; import mage.abilities.abilityword.StriveAbility; -import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantBlockTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -50,8 +49,6 @@ public class BlindingFlare extends CardImpl { // Strive — Blinding Flare costs {R} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{R}")); // Any number of target creatures can't block this turn. - Effect effect = new CantBlockTargetEffect(Duration.EndOfTurn); - effect.setText("Any number of target creatures can't block this turn"); this.getSpellAbility().addEffect(new CantBlockTargetEffect(Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); } diff --git a/Mage.Sets/src/mage/cards/c/CausticTar.java b/Mage.Sets/src/mage/cards/c/CausticTar.java index afa79f12788..049b6d81c7c 100644 --- a/Mage.Sets/src/mage/cards/c/CausticTar.java +++ b/Mage.Sets/src/mage/cards/c/CausticTar.java @@ -65,11 +65,11 @@ public class CausticTar extends CardImpl { Ability ability = new EnchantAbility(auraTarget.getTargetName()); this.addAbility(ability); - // Enchanted land has "{tap}: Target player loses 3 life." + // Enchanted land has "{T}: Target player loses 3 life." Ability tarAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(3), new TapSourceCost()); tarAbility.addTarget(new TargetPlayer()); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(tarAbility, AttachmentType.AURA, - Duration.WhileOnBattlefield,"Enchanted land has \"{t}: Target player loses 3 life.\""))); + Duration.WhileOnBattlefield,"Enchanted land has \"{T}: Target player loses 3 life.\""))); } diff --git a/Mage.Sets/src/mage/cards/c/Chainbreaker.java b/Mage.Sets/src/mage/cards/c/Chainbreaker.java index 541c8423ad0..242b6743796 100644 --- a/Mage.Sets/src/mage/cards/c/Chainbreaker.java +++ b/Mage.Sets/src/mage/cards/c/Chainbreaker.java @@ -57,7 +57,7 @@ public class Chainbreaker extends CardImpl { this.toughness = new MageInt(3); // Chainbreaker enters the battlefield with two -1/-1 counters on it. - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.M1M1.createInstance(2), false))); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.M1M1.createInstance(2), false), "with two -1/-1 counters on it")); // {3}, {tap}: Remove a -1/-1 counter from target creature. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RemoveCounterTargetEffect(CounterType.M1M1.createInstance()), new ManaCostsImpl("{3}")); diff --git a/Mage.Sets/src/mage/cards/c/ChokingSands.java b/Mage.Sets/src/mage/cards/c/ChokingSands.java index 76d552f34d5..4a26230a475 100644 --- a/Mage.Sets/src/mage/cards/c/ChokingSands.java +++ b/Mage.Sets/src/mage/cards/c/ChokingSands.java @@ -50,7 +50,7 @@ import mage.target.common.TargetLandPermanent; */ public class ChokingSands extends CardImpl { - private static final FilterLandPermanent filter = new FilterLandPermanent("non-Swamp"); + private static final FilterLandPermanent filter = new FilterLandPermanent("non-Swamp land"); static { filter.add(Predicates.not(new SubtypePredicate("Swamp"))); diff --git a/Mage.Sets/src/mage/cards/c/ClockworkBeetle.java b/Mage.Sets/src/mage/cards/c/ClockworkBeetle.java index c43219cc0b6..02ca0b368d9 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkBeetle.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkBeetle.java @@ -59,7 +59,7 @@ public class ClockworkBeetle extends CardImpl { this.toughness = new MageInt(0); // Clockwork Beetle enters the battlefield with two +1/+1 counters on it. - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)), "{this} enters the battlefield with two +1/+1 counters on it")); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)), "with two +1/+1 counters on it")); // Whenever Clockwork Beetle attacks or blocks, remove a +1/+1 counter from it at end of combat. this.addAbility(new AttacksOrBlocksTriggeredAbility(new ClockworkBeetleEffect(), false)); diff --git a/Mage.Sets/src/mage/cards/c/ClockworkCondor.java b/Mage.Sets/src/mage/cards/c/ClockworkCondor.java index 393e16c7d7f..3c84659583d 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkCondor.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkCondor.java @@ -57,7 +57,7 @@ public class ClockworkCondor extends CardImpl { this.power = new MageInt(0); this.toughness = new MageInt(0); this.addAbility(FlyingAbility.getInstance()); - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(3)), "{this} enters the battlefield with three +1/+1 counters on it")); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(3)), "with three +1/+1 counters on it")); this.addAbility(new AttacksOrBlocksTriggeredAbility(new ClockworkCondorEffect(), false)); } diff --git a/Mage.Sets/src/mage/cards/c/ClockworkDragon.java b/Mage.Sets/src/mage/cards/c/ClockworkDragon.java index 86fa5462144..93e09a59d23 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkDragon.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkDragon.java @@ -60,7 +60,7 @@ public class ClockworkDragon extends CardImpl { this.power = new MageInt(0); this.toughness = new MageInt(0); this.addAbility(FlyingAbility.getInstance()); - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(6)), "{this} enters the battlefield with six +1/+1 counters on it")); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(6)), "with six +1/+1 counters on it")); this.addAbility(new AttacksOrBlocksTriggeredAbility(new ClockworkDragonEffect(), false)); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new GenericManaCost(3))); } diff --git a/Mage.Sets/src/mage/cards/c/ClockworkHydra.java b/Mage.Sets/src/mage/cards/c/ClockworkHydra.java index f8b8785d914..50a66752573 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkHydra.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkHydra.java @@ -64,9 +64,7 @@ public class ClockworkHydra extends CardImpl { this.toughness = new MageInt(0); // Clockwork Hydra enters the battlefield with four +1/+1 counters on it. - Effect effect = new AddCountersSourceEffect(CounterType.P1P1.createInstance(4)); - effect.setText("with four +1/+1 counters on it"); - this.addAbility(new EntersBattlefieldAbility(effect)); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(4)), "with four +1/+1 counters on it")); // Whenever Clockwork Hydra attacks or blocks, remove a +1/+1 counter from it. If you do, Clockwork Hydra deals 1 damage to target creature or player. this.addAbility(new AttacksOrBlocksTriggeredAbility(new ClockworkHydraEffect(), false)); diff --git a/Mage.Sets/src/mage/cards/c/ClockworkVorrac.java b/Mage.Sets/src/mage/cards/c/ClockworkVorrac.java index c50c15167d6..38aa0d063f3 100644 --- a/Mage.Sets/src/mage/cards/c/ClockworkVorrac.java +++ b/Mage.Sets/src/mage/cards/c/ClockworkVorrac.java @@ -61,7 +61,7 @@ public class ClockworkVorrac extends CardImpl { this.power = new MageInt(0); this.toughness = new MageInt(0); this.addAbility(TrampleAbility.getInstance()); - this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(4)), "{this} enters the battlefield with four +1/+1 counters on it")); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(4)), "with four +1/+1 counters on it")); this.addAbility(new AttacksOrBlocksTriggeredAbility(new ClockworkVorracEffect(), false)); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new TapSourceCost())); } diff --git a/Mage.Sets/src/mage/cards/c/CloudKey.java b/Mage.Sets/src/mage/cards/c/CloudKey.java index 9832c93037d..fdbe0ecb9f7 100644 --- a/Mage.Sets/src/mage/cards/c/CloudKey.java +++ b/Mage.Sets/src/mage/cards/c/CloudKey.java @@ -36,11 +36,10 @@ public class CloudKey extends CardImpl { public CloudKey(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); - // As Cloud Key enters the battlefield, choose artifact, creature, - // enchantment, instant, or sorcery. + // As Cloud Key enters the battlefield, choose artifact, creature, enchantment, instant, or sorcery. this.addAbility(new AsEntersBattlefieldAbility(new CloudKeyChooseTypeEffect())); - // Spells of the chosen type cost {1} less to cast + // Spells you cast of the chosen type cost {1} less to cast. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CloudKeyCostModificationEffect())); } @@ -103,7 +102,7 @@ class CloudKeyCostModificationEffect extends CostModificationEffectImpl { public CloudKeyCostModificationEffect() { super(Duration.WhileOnBattlefield, Outcome.Benefit, CostModificationType.REDUCE_COST); - this.staticText = "Spells of the chosen type cost {1} less to cast."; + this.staticText = "Spells you cast of the chosen type cost {1} less to cast."; } public CloudKeyCostModificationEffect(final CloudKeyCostModificationEffect effect) { diff --git a/Mage.Sets/src/mage/cards/c/Confessor.java b/Mage.Sets/src/mage/cards/c/Confessor.java index c18680bfa95..759f18be1b4 100644 --- a/Mage.Sets/src/mage/cards/c/Confessor.java +++ b/Mage.Sets/src/mage/cards/c/Confessor.java @@ -53,7 +53,7 @@ public class Confessor extends CardImpl { // Whenever a player discards a card, you may gain 1 life. this.addAbility(new SimpleTriggeredAbility( - Zone.BATTLEFIELD, EventType.DISCARDED_CARD, new GainLifeEffect(1), "Whenever a player discards a card, you may", false, true)); + Zone.BATTLEFIELD, EventType.DISCARDED_CARD, new GainLifeEffect(1), "Whenever a player discards a card, ", false, true)); } public Confessor(final Confessor card) { diff --git a/Mage.Sets/src/mage/cards/c/CovetousDragon.java b/Mage.Sets/src/mage/cards/c/CovetousDragon.java index a2490caa877..a8bae47e676 100644 --- a/Mage.Sets/src/mage/cards/c/CovetousDragon.java +++ b/Mage.Sets/src/mage/cards/c/CovetousDragon.java @@ -55,7 +55,7 @@ public class CovetousDragon extends CardImpl { // When you control no artifacts, sacrifice Covetous Dragon. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterArtifactPermanent(), Filter.ComparisonType.Equal, 0, + new FilterArtifactPermanent("no artifacts"), Filter.ComparisonType.Equal, 0, new SacrificeSourceEffect())); } diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/DomainValue.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/DomainValue.java index 75311da6f6e..fc597b9fca9 100644 --- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/DomainValue.java +++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/DomainValue.java @@ -98,6 +98,6 @@ public class DomainValue implements DynamicValue { @Override public String getMessage() { - return "basic land type among lands you control"; + return "basic land type among lands " + (countTargetPlayer ? "he or she controls" : "you control"); } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java index 54dea779a5c..5cb76793a6a 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/LoseLifeControllerAttachedEffect.java @@ -86,7 +86,7 @@ public class LoseLifeControllerAttachedEffect extends OneShotEffect { private void setText() { StringBuilder sb = new StringBuilder(); - sb.append("it's controller loses ").append(amount.toString()).append(" life"); + sb.append("its controller loses ").append(amount.toString()).append(" life"); String message = amount.getMessage(); if (message.length() > 0) { sb.append(" for each "); diff --git a/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToTargetMultiAmountEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToTargetMultiAmountEffect.java index eefd50e9b5e..aff138d575f 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToTargetMultiAmountEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToTargetMultiAmountEffect.java @@ -132,7 +132,7 @@ public class PreventDamageToTargetMultiAmountEffect extends PreventionEffectImpl @Override public String getText(Mode mode) { StringBuilder sb = new StringBuilder(); - sb.append("Prevent the next ").append(amountToPrevent).append(" damage that would be dealt "); + sb.append("prevent the next ").append(amountToPrevent).append(" damage that would be dealt "); if (duration.equals(Duration.EndOfTurn)) { sb.append("this turn "); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/PutOnLibraryTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PutOnLibraryTargetEffect.java index c4a3edf16c9..d5638262cac 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PutOnLibraryTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PutOnLibraryTargetEffect.java @@ -149,7 +149,7 @@ public class PutOnLibraryTargetEffect extends OneShotEffect { StringBuilder sb = new StringBuilder(); Target target = mode.getTargets().get(0); sb.append("put "); - if (target.getMaxNumberOfTargets() == 0) { + if (target.getMaxNumberOfTargets() == 0 || target.getMaxNumberOfTargets() == Integer.MAX_VALUE) { sb.append("any number of "); } else if (target.getMaxNumberOfTargets() != 1 || target.getNumberOfTargets() != 1) { if (target.getMaxNumberOfTargets() > target.getNumberOfTargets()) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockTargetEffect.java index 79e3fa8cb4f..940ab26b097 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockTargetEffect.java @@ -75,7 +75,9 @@ public class CantBlockTargetEffect extends RestrictionEffect { } StringBuilder sb = new StringBuilder(); Target target = mode.getTargets().get(0); - if (target.getMaxNumberOfTargets() > 1) { + if (target.getMaxNumberOfTargets() == Integer.MAX_VALUE) { + sb.append("any number of "); + } else if (target.getMaxNumberOfTargets() > 1) { if (target.getMaxNumberOfTargets() != target.getNumberOfTargets()) { sb.append("up to "); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java index f30483595e7..ac019f328dc 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java @@ -162,9 +162,11 @@ public class GainAbilityTargetEffect extends ContinuousEffectImpl { } StringBuilder sb = new StringBuilder(); Target target = mode.getTargets().get(0); - if (target.getMaxNumberOfTargets() > 1) { + if (target.getMaxNumberOfTargets() == Integer.MAX_VALUE) { + sb.append("any number of target ").append(target.getTargetName()).append(" gain "); + } else if (target.getMaxNumberOfTargets() > 1) { if (target.getNumberOfTargets() < target.getMaxNumberOfTargets()) { - sb.append("Up to"); + sb.append("up to "); } sb.append(target.getMaxNumberOfTargets()).append(" target ").append(target.getTargetName()).append(" gain "); } else { diff --git a/Mage/src/main/java/mage/abilities/keyword/DelveAbility.java b/Mage/src/main/java/mage/abilities/keyword/DelveAbility.java index fa4ffdf3db5..69b0adcb46a 100644 --- a/Mage/src/main/java/mage/abilities/keyword/DelveAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/DelveAbility.java @@ -93,7 +93,7 @@ public class DelveAbility extends SimpleStaticAbility implements AlternateManaPa @Override public String getRule() { - return "Delve (Each card you exile from your graveyard while casting this spell pays for {1})"; + return "Delve (Each card you exile from your graveyard while casting this spell pays for {1}.)"; } @Override diff --git a/Mage/src/main/java/mage/abilities/keyword/MorphAbility.java b/Mage/src/main/java/mage/abilities/keyword/MorphAbility.java index 9369b1bb8a5..2738a548469 100644 --- a/Mage/src/main/java/mage/abilities/keyword/MorphAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/MorphAbility.java @@ -100,7 +100,7 @@ public class MorphAbility extends StaticAbility implements AlternativeSourceCost protected static final String ABILITY_KEYWORD = "Morph"; protected static final String ABILITY_KEYWORD_MEGA = "Megamorph"; protected static final String REMINDER_TEXT = "(You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)"; - protected static final String REMINDER_TEXT_MEGA = "(You may cast this card face down as a 2/2 creature for {3}. Turn it face up at any time for its megamorph cost and put a +1/+1 counter on it.)"; + protected static final String REMINDER_TEXT_MEGA = "(You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its megamorph cost and put a +1/+1 counter on it.)"; protected String ruleText; protected AlternativeCost2Impl alternateCosts = new AlternativeCost2Impl(ABILITY_KEYWORD, REMINDER_TEXT, new GenericManaCost(3)); protected Costs morphCosts; diff --git a/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java b/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java index 8c3deef0095..df70c1df60b 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ReinforceAbility.java @@ -10,6 +10,7 @@ import mage.abilities.effects.common.counter.AddCountersTargetEffect; import mage.constants.Zone; import mage.counters.CounterType; import mage.target.common.TargetCreaturePermanent; +import mage.util.CardUtil; public class ReinforceAbility extends SimpleActivatedAbility { private DynamicValue count; @@ -44,8 +45,13 @@ public class ReinforceAbility extends SimpleActivatedAbility { StringBuilder sb = new StringBuilder("Reinforce "); sb.append(count.toString()).append(" - "); sb.append(cost.getText()); - sb.append(" (").append(cost.getText()).append("Discard this card: Put "); - sb.append(count.toString()).append(" +1/+1 counters on target creature."); + sb.append(" (").append(cost.getText()).append(", Discard this card: Put "); + if (count.toString().equals("1")) { + sb.append("a +1/+1 counter"); + } else { + sb.append(CardUtil.numberToText(count.toString())).append(" +1/+1 counters"); + } + sb.append(" on target creature.)"); return sb.toString(); } }