From 15b08c110e9ab73ec156a96b580816dbb624bab1 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Wed, 13 Aug 2014 21:59:09 +0200 Subject: [PATCH] Some minor fixes to tooltip texts. --- .../src/mage/sets/innistrad/RangersGuile.java | 9 +++-- .../sets/magic2010/GarrukWildspeaker.java | 34 ++++++++++++------- .../src/mage/sets/magic2010/ProteanHydra.java | 13 +++++-- .../mage/sets/magic2011/HoardingDragon.java | 12 +++---- .../src/mage/sets/magic2015/LifesLegacy.java | 3 +- .../mage/abilities/TriggeredAbilityImpl.java | 3 +- 6 files changed, 48 insertions(+), 26 deletions(-) diff --git a/Mage.Sets/src/mage/sets/innistrad/RangersGuile.java b/Mage.Sets/src/mage/sets/innistrad/RangersGuile.java index 006606126dc..e5c33457666 100644 --- a/Mage.Sets/src/mage/sets/innistrad/RangersGuile.java +++ b/Mage.Sets/src/mage/sets/innistrad/RangersGuile.java @@ -28,6 +28,7 @@ package mage.sets.innistrad; import java.util.UUID; +import mage.abilities.effects.Effect; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Rarity; @@ -51,8 +52,12 @@ public class RangersGuile extends CardImpl { // Target creature you control gets +1/+1 and gains hexproof until end of turn. this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent()); - this.getSpellAbility().addEffect(new BoostTargetEffect(1, 1, Duration.EndOfTurn)); - this.getSpellAbility().addEffect(new GainAbilityTargetEffect(HexproofAbility.getInstance(), Duration.EndOfTurn)); + Effect effect = new BoostTargetEffect(1, 1, Duration.EndOfTurn); + effect.setText("Target creature you control gets +1/+1"); + this.getSpellAbility().addEffect(effect); + effect = new GainAbilityTargetEffect(HexproofAbility.getInstance(), Duration.EndOfTurn); + effect.setText("and gains hexproof until end of turn"); + this.getSpellAbility().addEffect(effect); } public RangersGuile(final RangersGuile card) { diff --git a/Mage.Sets/src/mage/sets/magic2010/GarrukWildspeaker.java b/Mage.Sets/src/mage/sets/magic2010/GarrukWildspeaker.java index 991ad4ecf6e..54b47b19681 100644 --- a/Mage.Sets/src/mage/sets/magic2010/GarrukWildspeaker.java +++ b/Mage.Sets/src/mage/sets/magic2010/GarrukWildspeaker.java @@ -29,19 +29,20 @@ package mage.sets.magic2010; import java.util.UUID; +import mage.abilities.LoyaltyAbility; +import mage.abilities.common.EntersBattlefieldAbility; +import mage.abilities.effects.Effect; +import mage.abilities.effects.Effects; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.effects.common.UntapTargetEffect; +import mage.abilities.effects.common.continious.BoostControlledEffect; +import mage.abilities.effects.common.continious.GainAbilityControlledEffect; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Rarity; -import mage.abilities.LoyaltyAbility; -import mage.abilities.common.EntersBattlefieldAbility; -import mage.abilities.effects.Effects; -import mage.abilities.effects.common.continious.BoostControlledEffect; -import mage.abilities.effects.common.CreateTokenEffect; -import mage.abilities.effects.common.continious.GainAbilityControlledEffect; -import mage.abilities.effects.common.counter.AddCountersSourceEffect; -import mage.abilities.effects.common.UntapTargetEffect; -import mage.abilities.keyword.TrampleAbility; -import mage.cards.CardImpl; import mage.counters.CounterType; import mage.filter.common.FilterCreaturePermanent; import mage.game.permanent.token.BeastToken; @@ -60,18 +61,25 @@ public class GarrukWildspeaker extends CardImpl { this.expansionSetCode = "M10"; this.subtype.add("Garruk"); this.color.setGreen(true); + this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.LOYALTY.createInstance(3)), false)); - + // +1: Untap two target lands. LoyaltyAbility ability1 = new LoyaltyAbility(new UntapTargetEffect(), 1); ability1.addTarget(new TargetLandPermanent(2)); this.addAbility(ability1); + // −1: Put a 3/3 green Beast creature token onto the battlefield. this.addAbility(new LoyaltyAbility(new CreateTokenEffect(beastToken), -1)); + // −4: Creatures you control get +3/+3 and gain trample until end of turn. Effects effects1 = new Effects(); - effects1.add(new BoostControlledEffect(3, 3, Duration.EndOfTurn)); - effects1.add(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, new FilterCreaturePermanent())); + Effect effect = new BoostControlledEffect(3, 3, Duration.EndOfTurn); + effect.setText("Creatures you control get +3/+3"); + effects1.add(effect); + effect = new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, new FilterCreaturePermanent()); + effect.setText("and gain trample until end of turn"); + effects1.add(effect); this.addAbility(new LoyaltyAbility(effects1, -4)); } diff --git a/Mage.Sets/src/mage/sets/magic2010/ProteanHydra.java b/Mage.Sets/src/mage/sets/magic2010/ProteanHydra.java index 6161184e91c..9c6eba26107 100644 --- a/Mage.Sets/src/mage/sets/magic2010/ProteanHydra.java +++ b/Mage.Sets/src/mage/sets/magic2010/ProteanHydra.java @@ -64,9 +64,16 @@ public class ProteanHydra extends CardImpl { this.power = new MageInt(0); this.toughness = new MageInt(0); + + // Protean Hydra enters the battlefield with X +1/+1 counters on it. this.addAbility(new EntersBattlefieldAbility(new ProteanHydraEffect1(), "with X +1/+1 counters on it")); - this.addAbility(new ProteanHydraAbility()); + + // If damage would be dealt to Protean Hydra, prevent that damage and remove that many +1/+1 counters from it. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ProteanHydraEffect2())); + + // Whenever a +1/+1 counter is removed from Protean Hydra, put two +1/+1 counters on it at the beginning of the next end step. + this.addAbility(new ProteanHydraAbility()); + } public ProteanHydra(final ProteanHydra card) { @@ -115,11 +122,11 @@ public class ProteanHydra extends CardImpl { public ProteanHydraEffect2() { super(Duration.WhileOnBattlefield); + staticText = "If damage would be dealt to {this}, prevent that damage and remove that many +1/+1 counters from it"; } public ProteanHydraEffect2(final ProteanHydraEffect2 effect) { - super(effect); - staticText = "If damage would be dealt to {this}, prevent that damage and remove that many +1/+1 counters from it"; + super(effect); } @Override diff --git a/Mage.Sets/src/mage/sets/magic2011/HoardingDragon.java b/Mage.Sets/src/mage/sets/magic2011/HoardingDragon.java index bcdf6e685e2..dd00c4ac96d 100644 --- a/Mage.Sets/src/mage/sets/magic2011/HoardingDragon.java +++ b/Mage.Sets/src/mage/sets/magic2011/HoardingDragon.java @@ -100,18 +100,18 @@ class HoardingDragonEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { - Player player = game.getPlayer(source.getControllerId()); - if (player != null) { + Player controller = game.getPlayer(source.getControllerId()); + if (controller != null) { TargetCardInLibrary target = new TargetCardInLibrary(new FilterArtifactCard()); - if (player.searchLibrary(target, game)) { + if (controller.searchLibrary(target, game)) { if (target.getTargets().size() > 0) { - Card card = player.getLibrary().getCard(target.getFirstTarget(), game); + Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); if (card != null) { - card.moveToExile(exileId, "Hoarding Dragon", source.getSourceId(), game); + controller.moveCardToExileWithInfo(card, exileId, "Hoarding Dragon", source.getSourceId(), game, Zone.LIBRARY); } } } - player.shuffleLibrary(game); + controller.shuffleLibrary(game); return true; } return false; diff --git a/Mage.Sets/src/mage/sets/magic2015/LifesLegacy.java b/Mage.Sets/src/mage/sets/magic2015/LifesLegacy.java index 4b1150fe6a2..77d7e1b265d 100644 --- a/Mage.Sets/src/mage/sets/magic2015/LifesLegacy.java +++ b/Mage.Sets/src/mage/sets/magic2015/LifesLegacy.java @@ -36,6 +36,7 @@ import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Rarity; +import mage.filter.common.FilterControlledCreaturePermanent; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetControlledCreaturePermanent; @@ -53,7 +54,7 @@ public class LifesLegacy extends CardImpl { this.color.setGreen(true); // As an additional cost to cast Life's Legacy, sacrifice a creature. - this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent())); + this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(new FilterControlledCreaturePermanent("a creature")))); // Draw cards equal to the sacrificed creature's power. this.getSpellAbility().addEffect(new LifesLegacyEffect()); diff --git a/Mage/src/mage/abilities/TriggeredAbilityImpl.java b/Mage/src/mage/abilities/TriggeredAbilityImpl.java index 7d1166a732c..1e0b1054e55 100644 --- a/Mage/src/mage/abilities/TriggeredAbilityImpl.java +++ b/Mage/src/mage/abilities/TriggeredAbilityImpl.java @@ -136,7 +136,8 @@ public abstract class TriggeredAbilityImpl extends AbilityImpl implements Trigge || ruleLow.startsWith("destroy") || ruleLow.startsWith("return") || ruleLow.startsWith("tap") - || ruleLow.startsWith("untap")) { + || ruleLow.startsWith("untap") + || ruleLow.startsWith("put")) { sb.append("you may "); } else { if (!ruleLow.startsWith("its controller may")) {