Some minor fixes to tooltip texts.

This commit is contained in:
LevelX2 2014-08-13 21:59:09 +02:00
parent 98bfd16680
commit 15b08c110e
6 changed files with 48 additions and 26 deletions

View file

@ -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) {

View file

@ -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));
}

View file

@ -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

View file

@ -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;

View file

@ -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());

View file

@ -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")) {