diff --git a/Mage.Sets/src/mage/sets/alarareborn/Terminate.java b/Mage.Sets/src/mage/sets/alarareborn/Terminate.java index 0114828aded..99dcecaa233 100644 --- a/Mage.Sets/src/mage/sets/alarareborn/Terminate.java +++ b/Mage.Sets/src/mage/sets/alarareborn/Terminate.java @@ -31,7 +31,7 @@ package mage.sets.alarareborn; import java.util.UUID; import mage.Constants.CardType; import mage.Constants.Rarity; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.target.common.TargetCreaturePermanent; @@ -48,7 +48,7 @@ public class Terminate extends CardImpl { this.color.setBlack(true); this.color.setRed(true); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); - this.getSpellAbility().addEffect(new DestroyNoRegenTargetEffect()); + this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); } public Terminate(final Terminate card) { diff --git a/Mage.Sets/src/mage/sets/dissension/SealOfDoom.java b/Mage.Sets/src/mage/sets/dissension/SealOfDoom.java index 4d5c1d56578..12f9cfd0171 100644 --- a/Mage.Sets/src/mage/sets/dissension/SealOfDoom.java +++ b/Mage.Sets/src/mage/sets/dissension/SealOfDoom.java @@ -32,14 +32,12 @@ import java.util.UUID; import mage.Constants; import mage.Constants.CardType; import mage.Constants.Rarity; -import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.target.common.TargetCreaturePermanent; @@ -60,7 +58,7 @@ public class SealOfDoom extends CardImpl { super(ownerId, 53, "Seal of Doom", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}"); this.expansionSetCode = "DIS"; this.color.setBlack(true); - Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new DestroyNoRegenTargetEffect(), new SacrificeSourceCost()); + Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new DestroyTargetEffect(true), new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent(filter)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/sets/ravnika/Putrefy.java b/Mage.Sets/src/mage/sets/ravnika/Putrefy.java index e5a23a7f6d8..a639c808011 100644 --- a/Mage.Sets/src/mage/sets/ravnika/Putrefy.java +++ b/Mage.Sets/src/mage/sets/ravnika/Putrefy.java @@ -30,10 +30,8 @@ package mage.sets.ravnika; import java.util.UUID; import mage.Constants.CardType; -import mage.Constants.Duration; import mage.Constants.Rarity; -import mage.Constants.Zone; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.filter.Filter.ComparisonScope; import mage.filter.FilterPermanent; @@ -58,7 +56,7 @@ public class Putrefy extends CardImpl { this.color.setBlack(true); this.color.setGreen(true); this.getSpellAbility().addTarget(new TargetPermanent(filter)); - this.getSpellAbility().addEffect(new DestroyNoRegenTargetEffect()); + this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); } public Putrefy (final Putrefy card) { diff --git a/Mage.Sets/src/mage/sets/riseoftheeldrazi/Vendetta.java b/Mage.Sets/src/mage/sets/riseoftheeldrazi/Vendetta.java index 0c0975b4137..9d5a2553546 100644 --- a/Mage.Sets/src/mage/sets/riseoftheeldrazi/Vendetta.java +++ b/Mage.Sets/src/mage/sets/riseoftheeldrazi/Vendetta.java @@ -28,13 +28,15 @@ package mage.sets.riseoftheeldrazi; import java.util.UUID; + +import mage.Constants; import mage.Constants.CardType; import mage.Constants.Outcome; import mage.Constants.Rarity; import mage.ObjectColor; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.filter.common.FilterCreaturePermanent; import mage.game.Game; @@ -44,7 +46,7 @@ import mage.target.common.TargetCreaturePermanent; /** * - * @author North + * @author North, Loki */ public class Vendetta extends CardImpl { @@ -62,7 +64,7 @@ public class Vendetta extends CardImpl { this.color.setBlack(true); this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); - this.getSpellAbility().addEffect(new DestroyNoRegenTargetEffect()); + this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); this.getSpellAbility().addEffect(new VendettaEffect()); } @@ -95,7 +97,7 @@ class VendettaEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); - Permanent target = game.getPermanent(source.getFirstTarget()); + Permanent target = (Permanent) game.getLastKnownInformation(source.getFirstTarget(), Constants.Zone.BATTLEFIELD); if (player != null && target != null) { player.loseLife(target.getToughness().getValue(), game); return true; diff --git a/Mage.Sets/src/mage/sets/tempest/DarkBanishing.java b/Mage.Sets/src/mage/sets/tempest/DarkBanishing.java index c5033e5163b..884080f6464 100644 --- a/Mage.Sets/src/mage/sets/tempest/DarkBanishing.java +++ b/Mage.Sets/src/mage/sets/tempest/DarkBanishing.java @@ -30,7 +30,7 @@ package mage.sets.tempest; import java.util.UUID; import mage.Constants.CardType; import mage.Constants.Rarity; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.filter.common.FilterCreaturePermanent; import mage.target.common.TargetCreaturePermanent; @@ -53,7 +53,7 @@ public class DarkBanishing extends CardImpl { super(ownerId, 11, "Dark Banishing", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{2}{B}"); this.expansionSetCode = "TMP"; this.color.setBlack(true); - this.getSpellAbility().addEffect(new DestroyNoRegenTargetEffect()); + this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); } diff --git a/Mage.Sets/src/mage/sets/worldwake/Smother.java b/Mage.Sets/src/mage/sets/worldwake/Smother.java index 3008109c8aa..ca013496652 100644 --- a/Mage.Sets/src/mage/sets/worldwake/Smother.java +++ b/Mage.Sets/src/mage/sets/worldwake/Smother.java @@ -30,7 +30,7 @@ package mage.sets.worldwake; import java.util.UUID; import mage.Constants.CardType; import mage.Constants.Rarity; -import mage.abilities.effects.common.DestroyNoRegenTargetEffect; +import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; @@ -56,7 +56,7 @@ public class Smother extends CardImpl { this.color.setBlack(true); this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); - this.getSpellAbility().addEffect(new DestroyNoRegenTargetEffect()); + this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); } public Smother(final Smother card) { diff --git a/Mage/src/mage/abilities/effects/common/DestroyTargetEffect.java b/Mage/src/mage/abilities/effects/common/DestroyTargetEffect.java index c777135f1bd..e50f85fea26 100644 --- a/Mage/src/mage/abilities/effects/common/DestroyTargetEffect.java +++ b/Mage/src/mage/abilities/effects/common/DestroyTargetEffect.java @@ -81,12 +81,16 @@ public class DestroyTargetEffect extends OneShotEffect { @Override public String getText(Mode mode) { + StringBuffer sb = new StringBuffer(); if (mode.getTargets().size() == 0) { - return "destroy that creature"; //TODO add possibility to specify text with targetPointer usage + sb.append("destroy that creature"); //TODO add possibility to specify text with targetPointer usage } else if (mode.getTargets().get(0).getNumberOfTargets() == 1) - return "Destroy target " + mode.getTargets().get(0).getTargetName(); + sb.append("Destroy target ").append(mode.getTargets().get(0).getTargetName()); else - return "Destroy " + mode.getTargets().get(0).getNumberOfTargets() + " target " + mode.getTargets().get(0).getTargetName(); + sb.append("Destroy ").append(mode.getTargets().get(0).getNumberOfTargets()).append(" target ").append(mode.getTargets().get(0).getTargetName()); + if (noRegen) + sb.append(". It can't be regenerated"); + return sb.toString(); } }