mirror of
https://github.com/correl/mage.git
synced 2025-01-11 11:05:23 +00:00
this is a big one - fixed modal targetting and refactored getText()
This commit is contained in:
parent
1b6e78c489
commit
84b9cbb16b
373 changed files with 912 additions and 1814 deletions
|
@ -574,7 +574,7 @@ public class HumanPlayer extends PlayerImpl<HumanPlayer> {
|
|||
MageObject obj = game.getObject(source.getSourceId());
|
||||
Map<UUID, String> modeMap = new HashMap<UUID, String>();
|
||||
for (Mode mode: modes.values()) {
|
||||
String modeText = mode.getEffects().getText(source);
|
||||
String modeText = mode.getEffects().getText(mode);
|
||||
if (obj != null)
|
||||
modeText = modeText.replace("{source}", obj.getName());
|
||||
modeMap.put(mode.getId(), modeText);
|
||||
|
|
Binary file not shown.
|
@ -84,6 +84,7 @@ class FiligreeAngelEffect extends OneShotEffect<FiligreeAngelEffect> {
|
|||
|
||||
public FiligreeAngelEffect() {
|
||||
super(Constants.Outcome.GainLife);
|
||||
staticText = "you gain 3 life for each artifact you control";
|
||||
}
|
||||
|
||||
public FiligreeAngelEffect(final FiligreeAngelEffect effect) {
|
||||
|
@ -105,8 +106,4 @@ class FiligreeAngelEffect extends OneShotEffect<FiligreeAngelEffect> {
|
|||
return new FiligreeAngelEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "you gain 3 life for each artifact you control";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -70,6 +70,7 @@ public class IdentityCrisis extends CardImpl<IdentityCrisis> {
|
|||
class IdentityCrisisEffect extends OneShotEffect<IdentityCrisisEffect> {
|
||||
IdentityCrisisEffect() {
|
||||
super(Constants.Outcome.Exile);
|
||||
staticText = "Exile all cards from target player's hand and graveyard";
|
||||
}
|
||||
|
||||
IdentityCrisisEffect(final IdentityCrisisEffect effect) {
|
||||
|
@ -102,8 +103,4 @@ class IdentityCrisisEffect extends OneShotEffect<IdentityCrisisEffect> {
|
|||
return new IdentityCrisisEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Exile all cards from target player's hand and graveyard";
|
||||
}
|
||||
}
|
||||
}
|
|
@ -77,6 +77,7 @@ class VengefulRebirthEffect extends OneShotEffect<VengefulRebirthEffect> {
|
|||
|
||||
public VengefulRebirthEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "Return target card from your graveyard to your hand. If you return a nonland card to your hand this way, Vengeful Rebirth deals damage equal to that card's converted mana cost to target creature or player";
|
||||
}
|
||||
|
||||
public VengefulRebirthEffect(final VengefulRebirthEffect effect) {
|
||||
|
@ -112,9 +113,4 @@ class VengefulRebirthEffect extends OneShotEffect<VengefulRebirthEffect> {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Return target card from your graveyard to your hand. If you return a nonland card to your hand this way, Vengeful Rebirth deals damage equal to that card's converted mana cost to target creature or player";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -97,6 +97,7 @@ class DesolationAngelDummyEffect extends OneShotEffect<DesolationAngelDummyEffec
|
|||
class DesolationAngelEntersBattlefieldEffect extends OneShotEffect<DesolationAngelEntersBattlefieldEffect> {
|
||||
DesolationAngelEntersBattlefieldEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "destroy all lands you control. If it was kicked, destroy all lands instead";
|
||||
}
|
||||
|
||||
DesolationAngelEntersBattlefieldEffect(final DesolationAngelEntersBattlefieldEffect effect) {
|
||||
|
@ -128,8 +129,4 @@ class DesolationAngelEntersBattlefieldEffect extends OneShotEffect<DesolationAng
|
|||
return new DesolationAngelEntersBattlefieldEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "destroy all lands you control. If it was kicked, destroy all lands instead";
|
||||
}
|
||||
}
|
|
@ -81,6 +81,7 @@ class ManaclesOfDecayFirstEffect extends RestrictionEffect<ManaclesOfDecayFirstE
|
|||
|
||||
public ManaclesOfDecayFirstEffect() {
|
||||
super(Constants.Duration.WhileOnBattlefield);
|
||||
staticText = "Enchanted creature can't attack";
|
||||
}
|
||||
|
||||
public ManaclesOfDecayFirstEffect(final ManaclesOfDecayFirstEffect effect) {
|
||||
|
@ -105,17 +106,13 @@ class ManaclesOfDecayFirstEffect extends RestrictionEffect<ManaclesOfDecayFirstE
|
|||
return new ManaclesOfDecayFirstEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't attack";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class ManaclesOfDecaySecondEffect extends RestrictionEffect<ManaclesOfDecaySecondEffect> {
|
||||
|
||||
public ManaclesOfDecaySecondEffect() {
|
||||
super(Constants.Duration.EndOfTurn);
|
||||
staticText = "Enchanted creature can't block until end of turn";
|
||||
}
|
||||
|
||||
public ManaclesOfDecaySecondEffect(final ManaclesOfDecaySecondEffect effect) {
|
||||
|
@ -140,9 +137,4 @@ class ManaclesOfDecaySecondEffect extends RestrictionEffect<ManaclesOfDecaySecon
|
|||
return new ManaclesOfDecaySecondEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't block until end of turn";
|
||||
}
|
||||
|
||||
}
|
|
@ -32,7 +32,6 @@ import java.util.UUID;
|
|||
import mage.Constants;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.DrawCardControllerEffect;
|
||||
|
@ -77,6 +76,7 @@ class TranquilPathEffect extends OneShotEffect<TranquilPathEffect> {
|
|||
|
||||
public TranquilPathEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "Destroy all enchantments";
|
||||
}
|
||||
|
||||
public TranquilPathEffect(final TranquilPathEffect effect) {
|
||||
|
@ -96,8 +96,4 @@ class TranquilPathEffect extends OneShotEffect<TranquilPathEffect> {
|
|||
return new TranquilPathEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Destroy all enchantments";
|
||||
}
|
||||
}
|
|
@ -113,6 +113,7 @@ class TokTokVolcanoBornEffect extends ReplacementEffectImpl<TokTokVolcanoBornEff
|
|||
|
||||
TokTokVolcanoBornEffect() {
|
||||
super(Constants.Duration.WhileOnBattlefield, Constants.Outcome.Benefit);
|
||||
staticText = "If a red source would deal damage to a player, it deals that much damage plus 1 to that player instead";
|
||||
}
|
||||
|
||||
TokTokVolcanoBornEffect(final TokTokVolcanoBornEffect effect) {
|
||||
|
@ -145,8 +146,4 @@ class TokTokVolcanoBornEffect extends ReplacementEffectImpl<TokTokVolcanoBornEff
|
|||
return new TokTokVolcanoBornEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "If a red source would deal damage to a player, it deals that much damage plus 1 to that player instead";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -91,6 +91,7 @@ public class AuraOfDominion extends CardImpl<AuraOfDominion> {
|
|||
class AuraOfDominionEffect extends OneShotEffect<AuraOfDominionEffect> {
|
||||
AuraOfDominionEffect() {
|
||||
super(Constants.Outcome.Untap);
|
||||
staticText = "untap enchanted creature";
|
||||
}
|
||||
|
||||
AuraOfDominionEffect(final AuraOfDominionEffect effect) {
|
||||
|
@ -115,8 +116,4 @@ class AuraOfDominionEffect extends OneShotEffect<AuraOfDominionEffect> {
|
|||
return new AuraOfDominionEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "untap enchanted creature";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -87,6 +87,7 @@ public class BudokaGardener extends CardImpl<BudokaGardener> {
|
|||
class BudokaGardenerEffect extends OneShotEffect<BudokaGardenerEffect> {
|
||||
BudokaGardenerEffect() {
|
||||
super(Constants.Outcome.PutLandInPlay);
|
||||
staticText = "You may put a land card from your hand onto the battlefield. If you control ten or more lands, flip Budoka Gardener.";
|
||||
}
|
||||
|
||||
BudokaGardenerEffect(final BudokaGardenerEffect effect) {
|
||||
|
@ -113,11 +114,7 @@ class BudokaGardenerEffect extends OneShotEffect<BudokaGardenerEffect> {
|
|||
return new BudokaGardenerEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "You may put a land card from your hand onto the battlefield. If you control ten or more lands, flip Budoka Gardener.";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class DokaiWeaverofLife extends Token {
|
||||
DokaiWeaverofLife() {
|
||||
|
|
|
@ -81,6 +81,7 @@ class CageOfHandsEffect extends RestrictionEffect<CageOfHandsEffect> {
|
|||
|
||||
public CageOfHandsEffect() {
|
||||
super(Constants.Duration.WhileOnBattlefield);
|
||||
staticText = "Enchanted creature can't attack or block";
|
||||
}
|
||||
|
||||
public CageOfHandsEffect(final CageOfHandsEffect effect) {
|
||||
|
@ -110,9 +111,4 @@ class CageOfHandsEffect extends RestrictionEffect<CageOfHandsEffect> {
|
|||
return new CageOfHandsEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't attack or block";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -80,6 +80,7 @@ class CalltoGloryFirstEffect extends OneShotEffect<CalltoGloryFirstEffect> {
|
|||
|
||||
public CalltoGloryFirstEffect() {
|
||||
super(Constants.Outcome.Untap);
|
||||
staticText = "Untap all creatures you control";
|
||||
}
|
||||
|
||||
public CalltoGloryFirstEffect(final CalltoGloryFirstEffect effect) {
|
||||
|
@ -103,8 +104,4 @@ class CalltoGloryFirstEffect extends OneShotEffect<CalltoGloryFirstEffect> {
|
|||
return new CalltoGloryFirstEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Untap all creatures you control";
|
||||
}
|
||||
}
|
|
@ -76,6 +76,7 @@ class CleanfallEffect extends OneShotEffect<CleanfallEffect> {
|
|||
|
||||
public CleanfallEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "Destroy all enchantments";
|
||||
}
|
||||
|
||||
public CleanfallEffect(final CleanfallEffect effect) {
|
||||
|
@ -95,8 +96,4 @@ class CleanfallEffect extends OneShotEffect<CleanfallEffect> {
|
|||
return new CleanfallEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Destroy all enchantments";
|
||||
}
|
||||
}
|
|
@ -37,6 +37,7 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.PutIntoGraveFromBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.LoseLifePlayersEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
@ -55,7 +56,7 @@ public class DeathcurseOgre extends CardImpl<DeathcurseOgre> {
|
|||
this.color.setBlack(true);
|
||||
this.power = new MageInt(3);
|
||||
this.toughness = new MageInt(3);
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldTriggeredAbility(new DeathcurseOgreEffect()));
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldTriggeredAbility(new LoseLifePlayersEffect(3)));
|
||||
}
|
||||
|
||||
public DeathcurseOgre (final DeathcurseOgre card) {
|
||||
|
@ -68,34 +69,3 @@ public class DeathcurseOgre extends CardImpl<DeathcurseOgre> {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
class DeathcurseOgreEffect extends OneShotEffect<DeathcurseOgreEffect> {
|
||||
|
||||
public DeathcurseOgreEffect() {
|
||||
super(Constants.Outcome.Damage);
|
||||
}
|
||||
|
||||
public DeathcurseOgreEffect(final DeathcurseOgreEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DeathcurseOgreEffect copy() {
|
||||
return new DeathcurseOgreEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
for (Player player: game.getPlayers().values()) {
|
||||
player.loseLife(3, game);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each player loses 3 life";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ class GhostlyPrisonReplacementEffect extends ReplacementEffectImpl<GhostlyPrison
|
|||
|
||||
GhostlyPrisonReplacementEffect ( ) {
|
||||
super(Constants.Duration.WhileOnBattlefield, Constants.Outcome.Neutral);
|
||||
staticText = effectText;
|
||||
}
|
||||
|
||||
GhostlyPrisonReplacementEffect ( GhostlyPrisonReplacementEffect effect ) {
|
||||
|
@ -117,9 +118,5 @@ class GhostlyPrisonReplacementEffect extends ReplacementEffectImpl<GhostlyPrison
|
|||
return new GhostlyPrisonReplacementEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return effectText;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -75,6 +75,7 @@ class HanabiBlastDiscardEffect extends OneShotEffect<HanabiBlastDiscardEffect> {
|
|||
|
||||
HanabiBlastDiscardEffect () {
|
||||
super(Constants.Outcome.Discard);
|
||||
staticText = effectText;
|
||||
}
|
||||
|
||||
HanabiBlastDiscardEffect(HanabiBlastDiscardEffect effect) {
|
||||
|
@ -96,9 +97,5 @@ class HanabiBlastDiscardEffect extends OneShotEffect<HanabiBlastDiscardEffect> {
|
|||
return new HanabiBlastDiscardEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return effectText;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -89,6 +89,7 @@ class HikariTwilightGuardianEffect extends OneShotEffect<HikariTwilightGuardianE
|
|||
|
||||
HikariTwilightGuardianEffect ( ) {
|
||||
super(Constants.Outcome.Benefit);
|
||||
staticText = effectText;
|
||||
}
|
||||
|
||||
HikariTwilightGuardianEffect(HikariTwilightGuardianEffect effect) {
|
||||
|
@ -116,10 +117,6 @@ class HikariTwilightGuardianEffect extends OneShotEffect<HikariTwilightGuardianE
|
|||
return new HikariTwilightGuardianEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return effectText;
|
||||
}
|
||||
}
|
||||
|
||||
class HikariTwilightGuardianDelayedTriggeredAbility extends DelayedTriggeredAbility<HikariTwilightGuardianDelayedTriggeredAbility> {
|
||||
|
|
|
@ -91,6 +91,7 @@ class KitsuneHealerEffect extends PreventionEffectImpl<KitsuneHealerEffect> {
|
|||
|
||||
public KitsuneHealerEffect(Constants.Duration duration) {
|
||||
super(duration);
|
||||
staticText = "Prevent all damage that would be dealt to target legendary creature " + duration.toString();
|
||||
}
|
||||
|
||||
public KitsuneHealerEffect(final PreventAllCombatDamageEffect effect) {
|
||||
|
@ -118,9 +119,4 @@ class KitsuneHealerEffect extends PreventionEffectImpl<KitsuneHealerEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Prevent all damage that would be dealt to target legendary creature" +
|
||||
" " + duration.toString();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -73,6 +73,7 @@ public class KokushoTheEveningStar extends CardImpl<KokushoTheEveningStar> {
|
|||
class KokushoTheEveningStarEffect extends OneShotEffect<KokushoTheEveningStarEffect> {
|
||||
public KokushoTheEveningStarEffect() {
|
||||
super(Constants.Outcome.Damage);
|
||||
staticText = "each opponent loses 5 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
|
||||
public KokushoTheEveningStarEffect(final KokushoTheEveningStarEffect effect) {
|
||||
|
@ -95,8 +96,4 @@ class KokushoTheEveningStarEffect extends OneShotEffect<KokushoTheEveningStarEff
|
|||
return new KokushoTheEveningStarEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each opponent loses 5 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
}
|
|
@ -28,7 +28,6 @@
|
|||
|
||||
package mage.sets.championsofkamigawa;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.UUID;
|
||||
|
||||
|
@ -48,7 +47,6 @@ import mage.players.Player;
|
|||
import mage.sets.Sets;
|
||||
import mage.target.TargetPlayer;
|
||||
|
||||
import javax.smartcardio.CardChannel;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -79,6 +77,7 @@ public class Mindblaze extends CardImpl<Mindblaze> {
|
|||
class MindblazeEffect extends OneShotEffect<MindblazeEffect> {
|
||||
MindblazeEffect() {
|
||||
super(Constants.Outcome.Damage);
|
||||
staticText = "Name a nonland card and choose a number greater than 0. Target player reveals his or her library. If that library contains exactly the chosen number of the named card, Mindblaze deals 8 damage to that player. Then that player shuffles his or her library";
|
||||
}
|
||||
|
||||
MindblazeEffect(final MindblazeEffect effect) {
|
||||
|
@ -121,8 +120,4 @@ class MindblazeEffect extends OneShotEffect<MindblazeEffect> {
|
|||
return new MindblazeEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Name a nonland card and choose a number greater than 0. Target player reveals his or her library. If that library contains exactly the chosen number of the named card, Mindblaze deals 8 damage to that player. Then that player shuffles his or her library";
|
||||
}
|
||||
}
|
|
@ -67,6 +67,7 @@ public class PartTheVeil extends CardImpl<PartTheVeil> {
|
|||
class PartTheVeilEffect extends OneShotEffect<PartTheVeilEffect> {
|
||||
public PartTheVeilEffect() {
|
||||
super(Constants.Outcome.ReturnToHand);
|
||||
staticText = "Return all creatures you control to their owner's hand.";
|
||||
}
|
||||
|
||||
public PartTheVeilEffect(final PartTheVeilEffect effect) {
|
||||
|
@ -86,8 +87,4 @@ class PartTheVeilEffect extends OneShotEffect<PartTheVeilEffect> {
|
|||
return new PartTheVeilEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Return all creatures you control to their owner's hand.";
|
||||
}
|
||||
}
|
|
@ -84,6 +84,7 @@ class SoilshaperEffect extends ContinuousEffectImpl<SoilshaperEffect> {
|
|||
|
||||
public SoilshaperEffect() {
|
||||
super(Constants.Duration.EndOfTurn, Constants.Outcome.BecomeCreature);
|
||||
staticText = "target land becomes a 3/3 creature until end of turn. It's still a land";
|
||||
}
|
||||
|
||||
public SoilshaperEffect(final SoilshaperEffect effect) {
|
||||
|
@ -126,8 +127,4 @@ class SoilshaperEffect extends ContinuousEffectImpl<SoilshaperEffect> {
|
|||
return layer == Constants.Layer.PTChangingEffects_7 || layer == Constants.Layer.ColorChangingEffects_5 || layer == layer.TypeChangingEffects_4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "target land becomes a 3/3 creature until end of turn. It's still a land";
|
||||
}
|
||||
}
|
|
@ -89,6 +89,7 @@ class SoratamiSeerEffect extends OneShotEffect<SoratamiSeerEffect> {
|
|||
|
||||
public SoratamiSeerEffect() {
|
||||
super(Constants.Outcome.DrawCard);
|
||||
staticText = "Discard all the cards in your hand, then draw that many cards";
|
||||
}
|
||||
|
||||
public SoratamiSeerEffect(final SoratamiSeerEffect effect) {
|
||||
|
@ -114,8 +115,4 @@ class SoratamiSeerEffect extends OneShotEffect<SoratamiSeerEffect> {
|
|||
return new SoratamiSeerEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Discard all the cards in your hand, then draw that many cards";
|
||||
}
|
||||
}
|
|
@ -83,6 +83,7 @@ class TakenoSamuraiGeneralEffect extends ContinuousEffectImpl<TakenoSamuraiGener
|
|||
|
||||
public TakenoSamuraiGeneralEffect() {
|
||||
super(Constants.Duration.WhileOnBattlefield, Constants.Layer.PTChangingEffects_7, Constants.SubLayer.ModifyPT_7c, Constants.Outcome.BoostCreature);
|
||||
staticText = "Each other Samurai creature you control gets +1/+1 for each point of bushido it has";
|
||||
}
|
||||
|
||||
public TakenoSamuraiGeneralEffect(final TakenoSamuraiGeneralEffect effect) {
|
||||
|
@ -127,8 +128,4 @@ class TakenoSamuraiGeneralEffect extends ContinuousEffectImpl<TakenoSamuraiGener
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Each other Samurai creature you control gets +1/+1 for each point of bushido it has";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ class InfectiousHorrorEffect extends OneShotEffect<InfectiousHorrorEffect> {
|
|||
|
||||
InfectiousHorrorEffect() {
|
||||
super(Constants.Outcome.Damage);
|
||||
staticText = "each opponent loses 2 life";
|
||||
}
|
||||
|
||||
InfectiousHorrorEffect(final InfectiousHorrorEffect effect) {
|
||||
|
@ -94,8 +95,4 @@ class InfectiousHorrorEffect extends OneShotEffect<InfectiousHorrorEffect> {
|
|||
return new InfectiousHorrorEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each opponent loses 2 life";
|
||||
}
|
||||
}
|
|
@ -70,6 +70,7 @@ class MartialCoupEffect extends OneShotEffect<MartialCoupEffect> {
|
|||
|
||||
public MartialCoupEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
staticText = "Put X 1/1 white Soldier creature tokens onto the battlefield. If X is 5 or more, destroy all other creatures";
|
||||
}
|
||||
|
||||
public MartialCoupEffect(final MartialCoupEffect effect) {
|
||||
|
@ -99,9 +100,4 @@ class MartialCoupEffect extends OneShotEffect<MartialCoupEffect> {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Put X 1/1 white Soldier creature tokens onto the battlefield. If X is 5 or more, destroy all other creatures";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -73,6 +73,7 @@ class PathToExileEffect extends OneShotEffect {
|
|||
|
||||
public PathToExileEffect() {
|
||||
super(Outcome.Exile);
|
||||
staticText = "Exile target creature. Its controller may search his or her library for a basic land card, put that card onto the battlefield tapped, then shuffle his or her library";
|
||||
}
|
||||
|
||||
public PathToExileEffect(final PathToExileEffect effect) {
|
||||
|
@ -109,9 +110,4 @@ class PathToExileEffect extends OneShotEffect {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Exile target creature. Its controller may search his or her library for a basic land card, put that card onto the battlefield tapped, then shuffle his or her library";
|
||||
}
|
||||
|
||||
}
|
|
@ -76,6 +76,7 @@ class QuenchableFireEffect extends OneShotEffect<QuenchableFireEffect> {
|
|||
|
||||
public QuenchableFireEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "{this} deals an additional 3 damage to that player at the beginning of your next upkeep step unless he or she pays {U} before that step";
|
||||
}
|
||||
|
||||
public QuenchableFireEffect(final QuenchableFireEffect effect) {
|
||||
|
@ -105,11 +106,6 @@ class QuenchableFireEffect extends OneShotEffect<QuenchableFireEffect> {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "{this} deals an additional 3 damage to that player at the beginning of your next upkeep step unless he or she pays {U} before that step";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class QuenchableFireDelayedTriggeredAbility extends DelayedTriggeredAbility<QuenchableFireDelayedTriggeredAbility> {
|
||||
|
|
|
@ -67,6 +67,7 @@ public class SoulsMajesty extends CardImpl<SoulsMajesty> {
|
|||
|
||||
public SoulsMajestyEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "Draw cards equal to the power of target creature you control";
|
||||
}
|
||||
|
||||
public SoulsMajestyEffect(final SoulsMajestyEffect effect) {
|
||||
|
@ -89,9 +90,5 @@ public class SoulsMajesty extends CardImpl<SoulsMajesty> {
|
|||
return new SoulsMajestyEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Draw cards equal to the power of target creature you control" + super.getText(source);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -101,13 +101,14 @@ class WallOfReverenceTriggeredAbility extends TriggeredAbilityImpl<WallOfReveren
|
|||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "At the beginning of your end step, " + modes.getText(this);
|
||||
return "At the beginning of your end step, " + modes.getText();
|
||||
}
|
||||
}
|
||||
|
||||
class WallOfReverenceTriggeredEffect extends OneShotEffect<WallOfReverenceTriggeredEffect> {
|
||||
WallOfReverenceTriggeredEffect() {
|
||||
super(Outcome.GainLife);
|
||||
staticText = "you may gain life equal to the power of target creature you control";
|
||||
}
|
||||
|
||||
WallOfReverenceTriggeredEffect(WallOfReverenceTriggeredEffect effect) {
|
||||
|
@ -130,8 +131,4 @@ class WallOfReverenceTriggeredEffect extends OneShotEffect<WallOfReverenceTrigge
|
|||
return new WallOfReverenceTriggeredEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "you may gain life equal to the power of target creature you control";
|
||||
}
|
||||
}
|
|
@ -76,6 +76,7 @@ public class DarksteelColossus extends CardImpl<DarksteelColossus> {
|
|||
class DarksteelColossusEffect extends OneShotEffect<DarksteelColossusEffect> {
|
||||
DarksteelColossusEffect() {
|
||||
super(Constants.Outcome.Benefit);
|
||||
staticText = "reveal Darksteel Colossus and shuffle it into its owner's library instead";
|
||||
}
|
||||
|
||||
DarksteelColossusEffect(final DarksteelColossusEffect effect) {
|
||||
|
@ -104,8 +105,4 @@ class DarksteelColossusEffect extends OneShotEffect<DarksteelColossusEffect> {
|
|||
return new DarksteelColossusEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "reveal Darksteel Colossus and shuffle it into its owner's library instead";
|
||||
}
|
||||
}
|
|
@ -78,6 +78,7 @@ class SoulscourEffect extends OneShotEffect<SoulscourEffect> {
|
|||
|
||||
public SoulscourEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "Destroy all nonartifact permanents";
|
||||
}
|
||||
|
||||
public SoulscourEffect(final SoulscourEffect effect) {
|
||||
|
@ -97,8 +98,4 @@ class SoulscourEffect extends OneShotEffect<SoulscourEffect> {
|
|||
return new SoulscourEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Destroy all nonartifact permanents";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -102,6 +102,7 @@ public class DeathbringerLiege extends CardImpl<DeathbringerLiege> {
|
|||
class DeathbringerLiegeEffect extends OneShotEffect<DeathbringerLiegeEffect> {
|
||||
DeathbringerLiegeEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "destroy target creature if it's tapped";
|
||||
}
|
||||
|
||||
DeathbringerLiegeEffect(final DeathbringerLiegeEffect effect) {
|
||||
|
@ -122,8 +123,4 @@ class DeathbringerLiegeEffect extends OneShotEffect<DeathbringerLiegeEffect> {
|
|||
return new DeathbringerLiegeEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "destroy target creature if it's tapped";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,6 +79,7 @@ class RecumbentBlissEffect extends RestrictionEffect<RecumbentBlissEffect> {
|
|||
|
||||
public RecumbentBlissEffect() {
|
||||
super(Constants.Duration.WhileOnBattlefield);
|
||||
staticText = "Enchanted creature can't attack or block";
|
||||
}
|
||||
|
||||
public RecumbentBlissEffect(final RecumbentBlissEffect effect) {
|
||||
|
@ -108,10 +109,5 @@ class RecumbentBlissEffect extends RestrictionEffect<RecumbentBlissEffect> {
|
|||
return new RecumbentBlissEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't attack or block";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -69,6 +69,7 @@ public class AgentOfMasks extends CardImpl<AgentOfMasks> {
|
|||
class AgentOfMasksEffect extends OneShotEffect<AgentOfMasksEffect> {
|
||||
public AgentOfMasksEffect() {
|
||||
super(Constants.Outcome.Damage);
|
||||
staticText = "each opponent loses 1 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
|
||||
public AgentOfMasksEffect(final AgentOfMasksEffect effect) {
|
||||
|
@ -91,8 +92,4 @@ class AgentOfMasksEffect extends OneShotEffect<AgentOfMasksEffect> {
|
|||
return new AgentOfMasksEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each opponent loses 1 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
}
|
|
@ -88,6 +88,7 @@ public class GhostCouncilOfOrzhova extends CardImpl<GhostCouncilOfOrzhova> {
|
|||
class GhostCouncilOfOrzhovaEffect extends OneShotEffect<GhostCouncilOfOrzhovaEffect> {
|
||||
GhostCouncilOfOrzhovaEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "target opponent loses 1 life and you gain 1 life";
|
||||
}
|
||||
|
||||
GhostCouncilOfOrzhovaEffect(final GhostCouncilOfOrzhovaEffect effect) {
|
||||
|
@ -110,10 +111,6 @@ class GhostCouncilOfOrzhovaEffect extends OneShotEffect<GhostCouncilOfOrzhovaEff
|
|||
return new GhostCouncilOfOrzhovaEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "target opponent loses 1 life and you gain 1 life";
|
||||
}
|
||||
}
|
||||
|
||||
class GhostCouncilOfOrzhovaRemovingEffect extends OneShotEffect<GhostCouncilOfOrzhovaRemovingEffect> {
|
||||
|
@ -122,6 +119,7 @@ class GhostCouncilOfOrzhovaRemovingEffect extends OneShotEffect<GhostCouncilOfOr
|
|||
|
||||
GhostCouncilOfOrzhovaRemovingEffect () {
|
||||
super(Outcome.Benefit);
|
||||
staticText = effectText;
|
||||
}
|
||||
|
||||
GhostCouncilOfOrzhovaRemovingEffect(GhostCouncilOfOrzhovaRemovingEffect effect) {
|
||||
|
@ -149,10 +147,6 @@ class GhostCouncilOfOrzhovaRemovingEffect extends OneShotEffect<GhostCouncilOfOr
|
|||
return new GhostCouncilOfOrzhovaRemovingEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return effectText;
|
||||
}
|
||||
}
|
||||
|
||||
class GhostCouncilOfOrzhovaDelayedTriggeredAbility extends DelayedTriggeredAbility<GhostCouncilOfOrzhovaDelayedTriggeredAbility> {
|
||||
|
|
|
@ -88,6 +88,7 @@ class AwakenerDruidEffect extends ContinuousEffectImpl<AwakenerDruidEffect> {
|
|||
|
||||
public AwakenerDruidEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.BecomeCreature);
|
||||
staticText = "target Forest becomes a 4/5 green Treefolk creature for as long as {this} is on the battlefield. It's still a land.";
|
||||
}
|
||||
|
||||
public AwakenerDruidEffect(final AwakenerDruidEffect effect) {
|
||||
|
@ -135,11 +136,6 @@ class AwakenerDruidEffect extends ContinuousEffectImpl<AwakenerDruidEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "target Forest becomes a 4/5 green Treefolk creature for as long as {this} is on the battlefield. It's still a land.";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasLayer(Layer layer) {
|
||||
return layer == Layer.PTChangingEffects_7 || layer == Layer.ColorChangingEffects_5 || layer == layer.TypeChangingEffects_4;
|
||||
|
|
|
@ -79,6 +79,7 @@ class DuressEffect extends OneShotEffect<DuressEffect> {
|
|||
|
||||
public DuressEffect() {
|
||||
super(Outcome.Discard);
|
||||
staticText = "Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card";
|
||||
}
|
||||
|
||||
public DuressEffect(final DuressEffect effect) {
|
||||
|
@ -109,9 +110,4 @@ class DuressEffect extends OneShotEffect<DuressEffect> {
|
|||
return new DuressEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -75,6 +75,7 @@ class EarthquakeEffect extends OneShotEffect<EarthquakeEffect> {
|
|||
|
||||
public EarthquakeEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Earthquake deals X damage to each creature without flying and each player";
|
||||
}
|
||||
|
||||
public EarthquakeEffect(final EarthquakeEffect effect) {
|
||||
|
@ -101,8 +102,4 @@ class EarthquakeEffect extends OneShotEffect<EarthquakeEffect> {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Earthquake deals X damage to each creature without flying and each player";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,6 +77,7 @@ class FireballEffect extends OneShotEffect<FireballEffect> {
|
|||
|
||||
public FireballEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Fireball deals X damage divided evenly, rounded down, among any number of target creatures and/or players.\n Fireball costs {1} more to cast for each target beyond the first.";
|
||||
}
|
||||
|
||||
public FireballEffect(final FireballEffect effect) {
|
||||
|
@ -113,8 +114,4 @@ class FireballEffect extends OneShotEffect<FireballEffect> {
|
|||
return new FireballEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Fireball deals X damage divided evenly, rounded down, among any number of target creatures and/or players.\n Fireball costs {1} more to cast for each target beyond the first.";
|
||||
}
|
||||
}
|
|
@ -76,6 +76,7 @@ class HauntingEchoesEffect extends OneShotEffect<HauntingEchoesEffect> {
|
|||
|
||||
public HauntingEchoesEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "Exile all cards from target player's graveyard other than basic land cards. For each card exiled this way, search that player's library for all cards with the same name as that card and exile them. Then that player shuffles his or her library";
|
||||
}
|
||||
|
||||
public HauntingEchoesEffect(final HauntingEchoesEffect effect) {
|
||||
|
@ -111,8 +112,4 @@ class HauntingEchoesEffect extends OneShotEffect<HauntingEchoesEffect> {
|
|||
return new HauntingEchoesEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Exile all cards from target player's graveyard other than basic land cards. For each card exiled this way, search that player's library for all cards with the same name as that card and exile them. Then that player shuffles his or her library";
|
||||
}
|
||||
}
|
|
@ -30,16 +30,12 @@ package mage.sets.magic2010;
|
|||
|
||||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Outcome;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.LoseLifePlayersEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -56,7 +52,7 @@ public class HowlingBanshee extends CardImpl<HowlingBanshee> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new HowlingBansheeEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new LoseLifePlayersEffect(3), false));
|
||||
}
|
||||
|
||||
public HowlingBanshee(final HowlingBanshee card) {
|
||||
|
@ -70,33 +66,3 @@ public class HowlingBanshee extends CardImpl<HowlingBanshee> {
|
|||
|
||||
}
|
||||
|
||||
class HowlingBansheeEffect extends OneShotEffect<HowlingBansheeEffect> {
|
||||
|
||||
public HowlingBansheeEffect() {
|
||||
super(Outcome.Damage);
|
||||
}
|
||||
|
||||
public HowlingBansheeEffect(final HowlingBansheeEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HowlingBansheeEffect copy() {
|
||||
return new HowlingBansheeEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
for (Player player: game.getPlayers().values()) {
|
||||
player.loseLife(3, game);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each player loses 3 life";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -84,6 +84,7 @@ class IceCageEffect extends ReplacementEffectImpl<IceCageEffect> {
|
|||
|
||||
public IceCageEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Enchanted creature can't attack or block, and its activated abilities can't be activated";
|
||||
}
|
||||
|
||||
public IceCageEffect(final IceCageEffect effect) {
|
||||
|
@ -118,11 +119,6 @@ class IceCageEffect extends ReplacementEffectImpl<IceCageEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't attack or block, and its activated abilities can't be activated";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class IceCageAbility extends TriggeredAbilityImpl<IceCageAbility> {
|
||||
|
|
|
@ -87,6 +87,7 @@ class LilianaVessEffect extends OneShotEffect<LilianaVessEffect> {
|
|||
|
||||
public LilianaVessEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
staticText = "Put all creature cards in all graveyards onto the battlefield under your control";
|
||||
}
|
||||
|
||||
public LilianaVessEffect(final LilianaVessEffect effect) {
|
||||
|
@ -111,8 +112,4 @@ class LilianaVessEffect extends OneShotEffect<LilianaVessEffect> {
|
|||
return new LilianaVessEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Put all creature cards in all graveyards onto the battlefield under your control";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -96,6 +96,7 @@ class MasterOfTheWildHuntEffect extends OneShotEffect<MasterOfTheWildHuntEffect>
|
|||
|
||||
public MasterOfTheWildHuntEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Tap all untapped Wolf creatures you control. Each Wolf tapped this way deals damage equal to its power to target creature. That creature deals damage equal to its power divided as its controller chooses among any number of those Wolves";
|
||||
}
|
||||
|
||||
public MasterOfTheWildHuntEffect(final MasterOfTheWildHuntEffect effect) {
|
||||
|
@ -124,8 +125,4 @@ class MasterOfTheWildHuntEffect extends OneShotEffect<MasterOfTheWildHuntEffect>
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Tap all untapped Wolf creatures you control. Each Wolf tapped this way deals damage equal to its power to target creature. That creature deals damage equal to its power divided as its controller chooses among any number of those Wolves";
|
||||
}
|
||||
}
|
|
@ -66,6 +66,7 @@ class MindSpringEffect extends OneShotEffect<MindSpringEffect> {
|
|||
|
||||
public MindSpringEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "Draw X cards";
|
||||
}
|
||||
|
||||
public MindSpringEffect(final MindSpringEffect effect) {
|
||||
|
@ -88,8 +89,4 @@ class MindSpringEffect extends OneShotEffect<MindSpringEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Draw X cards";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,6 +82,7 @@ class OakenformEffect extends ContinuousEffectImpl<OakenformEffect> {
|
|||
|
||||
public OakenformEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.BoostCreature);
|
||||
staticText = "Enchanted creature gets +3/+3";
|
||||
}
|
||||
|
||||
public OakenformEffect(final OakenformEffect effect) {
|
||||
|
@ -118,11 +119,6 @@ class OakenformEffect extends ContinuousEffectImpl<OakenformEffect> {
|
|||
return layer == Layer.PTChangingEffects_7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature gets +3/+3";
|
||||
}
|
||||
|
||||
@Override
|
||||
public OakenformEffect copy() {
|
||||
return new OakenformEffect(this);
|
||||
|
|
|
@ -75,6 +75,7 @@ public class PalaceGuard extends CardImpl<PalaceGuard> {
|
|||
|
||||
public PalaceGuardEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Palace Guard can block any number of creatures";
|
||||
}
|
||||
|
||||
public PalaceGuardEffect(final PalaceGuardEffect effect) {
|
||||
|
@ -110,10 +111,6 @@ public class PalaceGuard extends CardImpl<PalaceGuard> {
|
|||
return layer == Layer.RulesEffects;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Palace Guard can block any number of creatures";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -76,6 +76,7 @@ class PlanarCleansingEffect extends OneShotEffect<PlanarCleansingEffect> {
|
|||
|
||||
public PlanarCleansingEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "Destroy all nonland permanents";
|
||||
}
|
||||
|
||||
public PlanarCleansingEffect(final PlanarCleansingEffect effect) {
|
||||
|
@ -95,8 +96,4 @@ class PlanarCleansingEffect extends OneShotEffect<PlanarCleansingEffect> {
|
|||
return new PlanarCleansingEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Destroy all nonland permanents";
|
||||
}
|
||||
}
|
|
@ -84,6 +84,7 @@ public class ProteanHydra extends CardImpl<ProteanHydra> {
|
|||
|
||||
public ProteanHydraEffect1() {
|
||||
super(Outcome.BoostCreature);
|
||||
staticText = "Protean Hydra enters the battlefield with X +1/+1 counters on it";
|
||||
}
|
||||
|
||||
public ProteanHydraEffect1(final ProteanHydraEffect1 effect) {
|
||||
|
@ -105,11 +106,6 @@ public class ProteanHydra extends CardImpl<ProteanHydra> {
|
|||
return new ProteanHydraEffect1(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Protean Hydra enters the battlefield with X +1/+1 counters on it";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class ProteanHydraEffect2 extends PreventionEffectImpl<ProteanHydraEffect2> {
|
||||
|
@ -120,6 +116,7 @@ public class ProteanHydra extends CardImpl<ProteanHydra> {
|
|||
|
||||
public ProteanHydraEffect2(final ProteanHydraEffect2 effect) {
|
||||
super(effect);
|
||||
staticText = "If damage would be dealt to Protean Hydra, prevent that damage and remove that many +1/+1 counters from it";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -159,11 +156,6 @@ public class ProteanHydra extends CardImpl<ProteanHydra> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "If damage would be dealt to Protean Hydra, prevent that damage and remove that many +1/+1 counters from it";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class ProteanHydraAbility extends TriggeredAbilityImpl<ProteanHydraAbility> {
|
||||
|
|
|
@ -75,6 +75,7 @@ class RiseFromTheGraveEffect extends ContinuousEffectImpl<RiseFromTheGraveEffect
|
|||
|
||||
public RiseFromTheGraveEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Neutral);
|
||||
staticText = "That creature is a black Zombie in addition to its other colors and types";
|
||||
}
|
||||
|
||||
public RiseFromTheGraveEffect(final RiseFromTheGraveEffect effect) {
|
||||
|
@ -117,8 +118,4 @@ class RiseFromTheGraveEffect extends ContinuousEffectImpl<RiseFromTheGraveEffect
|
|||
return layer == Layer.ColorChangingEffects_5 || layer == layer.TypeChangingEffects_4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "That creature is a black Zombie in addition to its other colors and types";
|
||||
}
|
||||
}
|
|
@ -67,6 +67,7 @@ class SilenceEffect extends ReplacementEffectImpl<SilenceEffect> {
|
|||
|
||||
public SilenceEffect() {
|
||||
super(Duration.EndOfTurn, Outcome.Benefit);
|
||||
staticText = "Your opponents can't cast spells this turn";
|
||||
}
|
||||
|
||||
public SilenceEffect(final SilenceEffect effect) {
|
||||
|
@ -96,9 +97,4 @@ class SilenceEffect extends ReplacementEffectImpl<SilenceEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Your opponents can't cast spells this turn";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -74,6 +74,7 @@ class SleepEffect extends OneShotEffect<SleepEffect> {
|
|||
|
||||
public SleepEffect() {
|
||||
super(Outcome.Tap);
|
||||
staticText = "Tap all creatures target player controls. Those creatures don't untap during that player's next untap step";
|
||||
}
|
||||
|
||||
public SleepEffect(final SleepEffect effect) {
|
||||
|
@ -98,10 +99,6 @@ class SleepEffect extends OneShotEffect<SleepEffect> {
|
|||
return new SleepEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Tap all creatures target player controls. Those creatures don't untap during that player's next untap step";
|
||||
}
|
||||
}
|
||||
|
||||
class SleepEffect2 extends ReplacementEffectImpl<SleepEffect2> {
|
||||
|
@ -144,9 +141,4 @@ class SleepEffect2 extends ReplacementEffectImpl<SleepEffect2> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -74,6 +74,7 @@ class TempestOfLightEffect extends OneShotEffect<TempestOfLightEffect> {
|
|||
|
||||
public TempestOfLightEffect() {
|
||||
super(Constants.Outcome.DestroyPermanent);
|
||||
staticText = "Destroy all enchantments";
|
||||
}
|
||||
|
||||
public TempestOfLightEffect(final TempestOfLightEffect effect) {
|
||||
|
@ -93,8 +94,4 @@ class TempestOfLightEffect extends OneShotEffect<TempestOfLightEffect> {
|
|||
return new TempestOfLightEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Destroy all enchantments";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -68,6 +68,7 @@ class TimeWarpEffect extends OneShotEffect<TimeWarpEffect> {
|
|||
|
||||
public TimeWarpEffect() {
|
||||
super(Outcome.ExtraTurn);
|
||||
staticText = "Target player takes an extra turn after this one";
|
||||
}
|
||||
|
||||
public TimeWarpEffect(final TimeWarpEffect effect) {
|
||||
|
@ -85,8 +86,4 @@ class TimeWarpEffect extends OneShotEffect<TimeWarpEffect> {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Target player takes an extra turn after this one";
|
||||
}
|
||||
}
|
|
@ -80,6 +80,7 @@ class WeaknessEffect extends ContinuousEffectImpl<WeaknessEffect> {
|
|||
|
||||
public WeaknessEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.UnboostCreature);
|
||||
staticText = "Enchanted creature gets -2/-1";
|
||||
}
|
||||
|
||||
public WeaknessEffect(final WeaknessEffect effect) {
|
||||
|
@ -121,8 +122,4 @@ class WeaknessEffect extends ContinuousEffectImpl<WeaknessEffect> {
|
|||
return new WeaknessEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature gets -2/-1";
|
||||
}
|
||||
}
|
|
@ -132,6 +132,7 @@ class AngelicArbiterEffect1 extends ReplacementEffectImpl<AngelicArbiterEffect1>
|
|||
|
||||
public AngelicArbiterEffect1(final AngelicArbiterEffect1 effect) {
|
||||
super(effect);
|
||||
staticText = "Each opponent who cast a spell this turn can't attack with creatures";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -159,17 +160,13 @@ class AngelicArbiterEffect1 extends ReplacementEffectImpl<AngelicArbiterEffect1>
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Each opponent who cast a spell this turn can't attack with creatures";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class AngelicArbiterEffect2 extends ReplacementEffectImpl<AngelicArbiterEffect2> {
|
||||
|
||||
public AngelicArbiterEffect2() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Each opponent who attacked with a creature this turn can't cast spells";
|
||||
}
|
||||
|
||||
public AngelicArbiterEffect2(final AngelicArbiterEffect2 effect) {
|
||||
|
@ -201,9 +198,4 @@ class AngelicArbiterEffect2 extends ReplacementEffectImpl<AngelicArbiterEffect2>
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Each opponent who attacked with a creature this turn can't cast spells";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -66,6 +66,7 @@ class BloodTitheEffect extends OneShotEffect<BloodTitheEffect> {
|
|||
|
||||
public BloodTitheEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Each opponent loses 3 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
|
||||
public BloodTitheEffect(final BloodTitheEffect effect) {
|
||||
|
@ -87,9 +88,4 @@ class BloodTitheEffect extends OneShotEffect<BloodTitheEffect> {
|
|||
return new BloodTitheEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Each opponent loses 3 life. You gain life equal to the life lost this way";
|
||||
}
|
||||
|
||||
}
|
|
@ -102,6 +102,7 @@ class BloodcrazedGoblinEffect extends ReplacementEffectImpl<BloodcrazedGoblinEff
|
|||
|
||||
public BloodcrazedGoblinEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Bloodcrazed Goblin can't attack unless an opponent has been dealt damage this turn";
|
||||
}
|
||||
|
||||
public BloodcrazedGoblinEffect(final BloodcrazedGoblinEffect effect) {
|
||||
|
@ -133,9 +134,4 @@ class BloodcrazedGoblinEffect extends ReplacementEffectImpl<BloodcrazedGoblinEff
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Bloodcrazed Goblin can't attack unless an opponent has been dealt damage this turn";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -96,6 +96,7 @@ class CaptivatingVampireEffect extends ContinuousEffectImpl<CaptivatingVampireEf
|
|||
|
||||
public CaptivatingVampireEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Gain control of target creature. It becomes a Vampire in addition to its other types";
|
||||
}
|
||||
|
||||
public CaptivatingVampireEffect(final CaptivatingVampireEffect effect) {
|
||||
|
@ -138,8 +139,4 @@ class CaptivatingVampireEffect extends ContinuousEffectImpl<CaptivatingVampireEf
|
|||
return layer == Layer.ControlChangingEffects_2 || layer == layer.TypeChangingEffects_4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Gain control of target creature. It becomes a Vampire in addition to its other types";
|
||||
}
|
||||
}
|
|
@ -69,6 +69,7 @@ class ChandrasOutrageEffect extends OneShotEffect<ChandrasOutrageEffect> {
|
|||
|
||||
public ChandrasOutrageEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Chandra's Outrage deals 4 damage to target creature and 2 damage to that creature's controller";
|
||||
}
|
||||
|
||||
public ChandrasOutrageEffect(final ChandrasOutrageEffect effect) {
|
||||
|
@ -94,9 +95,4 @@ class ChandrasOutrageEffect extends OneShotEffect<ChandrasOutrageEffect> {
|
|||
return new ChandrasOutrageEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Chandra's Outrage deals 4 damage to target creature and 2 damage to that creature's controller";
|
||||
}
|
||||
|
||||
}
|
|
@ -82,6 +82,7 @@ class ConundrumSphinxEffect extends OneShotEffect<ConundrumSphinxEffect> {
|
|||
|
||||
public ConundrumSphinxEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "each player names a card. Then each player reveals the top card of his or her library. If the card a player revealed is the card he or she named, that player puts it into his or her hand. If it's not, that player puts it on the bottom of his or her library";
|
||||
}
|
||||
|
||||
public ConundrumSphinxEffect(final ConundrumSphinxEffect effect) {
|
||||
|
@ -115,9 +116,4 @@ class ConundrumSphinxEffect extends OneShotEffect<ConundrumSphinxEffect> {
|
|||
return new ConundrumSphinxEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each player names a card. Then each player reveals the top card of his or her library. If the card a player revealed is the card he or she named, that player puts it into his or her hand. If it's not, that player puts it on the bottom of his or her library";
|
||||
}
|
||||
|
||||
}
|
|
@ -80,6 +80,7 @@ class CorruptEffect extends OneShotEffect<CorruptEffect> {
|
|||
|
||||
public CorruptEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Corrupt deals damage equal to the number of Swamps you control to target creature or player. You gain life equal to the damage dealt this way";
|
||||
}
|
||||
|
||||
public CorruptEffect(final CorruptEffect effect) {
|
||||
|
@ -117,9 +118,4 @@ class CorruptEffect extends OneShotEffect<CorruptEffect> {
|
|||
return new CorruptEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Corrupt deals damage equal to the number of Swamps you control to target creature or player. You gain life equal to the damage dealt this way";
|
||||
}
|
||||
|
||||
}
|
|
@ -79,6 +79,7 @@ class CultivateEffect extends OneShotEffect<CultivateEffect> {
|
|||
|
||||
public CultivateEffect() {
|
||||
super(Outcome.PutLandInPlay);
|
||||
staticText = "Search your library for up to two basic land cards, reveal those cards, and put one onto the battlefield tapped and the other into your hand. Then shuffle your library";
|
||||
}
|
||||
|
||||
public CultivateEffect(final CultivateEffect effect) {
|
||||
|
@ -129,9 +130,4 @@ class CultivateEffect extends OneShotEffect<CultivateEffect> {
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Search your library for up to two basic land cards, reveal those cards, and put one onto the battlefield tapped and the other into your hand. Then shuffle your library";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -77,6 +77,7 @@ class CyclopsGladiatorEffect extends OneShotEffect<CyclopsGladiatorEffect> {
|
|||
|
||||
public CyclopsGladiatorEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "you may have it deal damage equal to its power to target creature defending player controls. If you do, that creature deals damage equal to its power to Cyclops Gladiator";
|
||||
}
|
||||
|
||||
public CyclopsGladiatorEffect(final CyclopsGladiatorEffect effect) {
|
||||
|
@ -108,9 +109,4 @@ class CyclopsGladiatorEffect extends OneShotEffect<CyclopsGladiatorEffect> {
|
|||
return new CyclopsGladiatorEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "you may have it deal damage equal to its power to target creature defending player controls. If you do, that creature deals damage equal to its power to Cyclops Gladiator";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ class DarkTutelageEffect extends OneShotEffect<DarkTutelageEffect> {
|
|||
|
||||
public DarkTutelageEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "reveal the top card of your library and put that card into your hand. You lose life equal to its converted mana cost";
|
||||
}
|
||||
|
||||
public DarkTutelageEffect(final DarkTutelageEffect effect) {
|
||||
|
@ -98,9 +99,4 @@ class DarkTutelageEffect extends OneShotEffect<DarkTutelageEffect> {
|
|||
return new DarkTutelageEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "reveal the top card of your library and put that card into your hand. You lose life equal to its converted mana cost";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -83,6 +83,7 @@ class DryadsFavorEffect extends ContinuousEffectImpl<DryadsFavorEffect> {
|
|||
|
||||
public DryadsFavorEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Enchanted creature has forestwalk";
|
||||
}
|
||||
|
||||
public DryadsFavorEffect(final DryadsFavorEffect effect) {
|
||||
|
@ -123,8 +124,4 @@ class DryadsFavorEffect extends ContinuousEffectImpl<DryadsFavorEffect> {
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature has forestwalk";
|
||||
}
|
||||
}
|
|
@ -78,6 +78,7 @@ class ElixerOfImmortalityEffect extends OneShotEffect<ElixerOfImmortalityEffect>
|
|||
|
||||
public ElixerOfImmortalityEffect() {
|
||||
super(Outcome.GainLife);
|
||||
staticText = "Shuffle Elixir of Immortality and your graveyard into your library";
|
||||
}
|
||||
|
||||
public ElixerOfImmortalityEffect(final ElixerOfImmortalityEffect effect) {
|
||||
|
@ -104,9 +105,4 @@ class ElixerOfImmortalityEffect extends OneShotEffect<ElixerOfImmortalityEffect>
|
|||
return new ElixerOfImmortalityEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Shuffle Elixir of Immortality and your graveyard into your library";
|
||||
}
|
||||
|
||||
}
|
|
@ -75,6 +75,7 @@ class FireServantEffect extends ReplacementEffectImpl<FireServantEffect> {
|
|||
|
||||
public FireServantEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Damage);
|
||||
staticText = "If a red instant or sorcery spell you control would deal damage, it deals double that damage instead";
|
||||
}
|
||||
|
||||
public FireServantEffect(final FireServantEffect effect) {
|
||||
|
@ -111,8 +112,4 @@ class FireServantEffect extends ReplacementEffectImpl<FireServantEffect> {
|
|||
return apply(game, source);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "If a red instant or sorcery spell you control would deal damage, it deals double that damage instead";
|
||||
}
|
||||
}
|
|
@ -72,6 +72,7 @@ class FlingEffect extends OneShotEffect<FlingEffect> {
|
|||
|
||||
public FlingEffect() {
|
||||
super(Outcome.Damage);
|
||||
staticText = "Fling deals damage equal to the sacrificed creature's power to target creature or player";
|
||||
}
|
||||
|
||||
public FlingEffect(final FlingEffect effect) {
|
||||
|
@ -107,8 +108,4 @@ class FlingEffect extends OneShotEffect<FlingEffect> {
|
|||
return new FlingEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Fling deals damage equal to the sacrificed creature's power to target creature or player";
|
||||
}
|
||||
}
|
|
@ -80,6 +80,7 @@ class GargoyleSentinelEffect extends ContinuousEffectImpl<GargoyleSentinelEffect
|
|||
|
||||
public GargoyleSentinelEffect() {
|
||||
super(Duration.EndOfTurn, Outcome.AddAbility);
|
||||
staticText = "Until end of turn, Gargoyle Sentinel loses defender and gains flying";
|
||||
}
|
||||
|
||||
public GargoyleSentinelEffect(final GargoyleSentinelEffect effect) {
|
||||
|
@ -117,11 +118,6 @@ class GargoyleSentinelEffect extends ContinuousEffectImpl<GargoyleSentinelEffect
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Until end of turn, Gargoyle Sentinel loses defender and gains flying";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasLayer(Layer layer) {
|
||||
return layer == Layer.AbilityAddingRemovingEffects_6;
|
||||
|
|
|
@ -86,6 +86,7 @@ class HarborSerpentEffect extends ReplacementEffectImpl<HarborSerpentEffect> {
|
|||
|
||||
public HarborSerpentEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Harbor Serpent can't attack unless there are five or more Islands on the battlefield";
|
||||
}
|
||||
|
||||
public HarborSerpentEffect(final HarborSerpentEffect effect) {
|
||||
|
@ -117,9 +118,5 @@ class HarborSerpentEffect extends ReplacementEffectImpl<HarborSerpentEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Harbor Serpent can't attack unless there are five or more Islands on the battlefield";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -92,6 +92,7 @@ class HoardingDragonEffect extends OneShotEffect<HoardingDragonEffect> {
|
|||
super(Outcome.Exile);
|
||||
this.exileId = exileId;
|
||||
target = new TargetCardInLibrary();
|
||||
staticText = "When Hoarding Dragon enters the battlefield, you may search your library for an artifact card, exile it, then shuffle your library";
|
||||
}
|
||||
|
||||
public HoardingDragonEffect(final HoardingDragonEffect effect) {
|
||||
|
@ -119,8 +120,4 @@ class HoardingDragonEffect extends OneShotEffect<HoardingDragonEffect> {
|
|||
return new HoardingDragonEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "When Hoarding Dragon enters the battlefield, you may search your library for an artifact card, exile it, then shuffle your library";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ class InciteEffect extends ContinuousEffectImpl<InciteEffect> {
|
|||
|
||||
public InciteEffect() {
|
||||
super(Duration.EndOfTurn, Layer.ColorChangingEffects_5, SubLayer.NA, Outcome.Detriment);
|
||||
staticText = "Target creature becomes red until end of turn";
|
||||
}
|
||||
|
||||
public InciteEffect(final InciteEffect effect) {
|
||||
|
@ -97,8 +98,4 @@ class InciteEffect extends ContinuousEffectImpl<InciteEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Target creature becomes red until end of turn";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,6 +79,7 @@ class JinxedIdolEffect extends ContinuousEffectImpl<JinxedIdolEffect> {
|
|||
|
||||
public JinxedIdolEffect() {
|
||||
super(Duration.WhileOnBattlefield, Layer.ControlChangingEffects_2, SubLayer.NA, Outcome.GainControl);
|
||||
staticText = "Target opponent gains control of Jinxed Idol";
|
||||
}
|
||||
|
||||
public JinxedIdolEffect(final JinxedIdolEffect effect) {
|
||||
|
@ -99,8 +100,4 @@ class JinxedIdolEffect extends ContinuousEffectImpl<JinxedIdolEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Target opponent gains control of Jinxed Idol";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ class LeylineOfAnticipationEffect extends AsThoughEffectImpl<LeylineOfAnticipati
|
|||
|
||||
public LeylineOfAnticipationEffect() {
|
||||
super(AsThoughEffectType.CAST, Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "You may cast nonland cards as though they had flash";
|
||||
}
|
||||
|
||||
public LeylineOfAnticipationEffect(final LeylineOfAnticipationEffect effect) {
|
||||
|
@ -99,9 +100,4 @@ class LeylineOfAnticipationEffect extends AsThoughEffectImpl<LeylineOfAnticipati
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "You may cast nonland cards as though they had flash";
|
||||
}
|
||||
|
||||
}
|
|
@ -73,6 +73,7 @@ class LeylineOfPunishmentEffect1 extends ReplacementEffectImpl<LeylineOfPunishme
|
|||
|
||||
public LeylineOfPunishmentEffect1() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Players can't gain life";
|
||||
}
|
||||
|
||||
public LeylineOfPunishmentEffect1(final LeylineOfPunishmentEffect1 effect) {
|
||||
|
@ -102,17 +103,13 @@ class LeylineOfPunishmentEffect1 extends ReplacementEffectImpl<LeylineOfPunishme
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Players can't gain life";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class LeylineOfPunishmentEffect2 extends ReplacementEffectImpl<LeylineOfPunishmentEffect2> {
|
||||
|
||||
public LeylineOfPunishmentEffect2() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "Damage can't be prevented";
|
||||
}
|
||||
|
||||
public LeylineOfPunishmentEffect2(final LeylineOfPunishmentEffect2 effect) {
|
||||
|
@ -142,9 +139,4 @@ class LeylineOfPunishmentEffect2 extends ReplacementEffectImpl<LeylineOfPunishme
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Damage can't be prevented";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -75,6 +75,7 @@ class LeylineOfTheVoidEffect extends ReplacementEffectImpl<LeylineOfTheVoidEffec
|
|||
|
||||
public LeylineOfTheVoidEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
staticText = "If a card would be put into an opponent's graveyard from anywhere, exile it instead";
|
||||
}
|
||||
|
||||
public LeylineOfTheVoidEffect(final LeylineOfTheVoidEffect effect) {
|
||||
|
@ -118,9 +119,4 @@ class LeylineOfTheVoidEffect extends ReplacementEffectImpl<LeylineOfTheVoidEffec
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "If a card would be put into an opponent's graveyard from anywhere, exile it instead";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -74,6 +74,7 @@ class LilianasSpecterEffect extends OneShotEffect<LilianasSpecterEffect> {
|
|||
|
||||
public LilianasSpecterEffect() {
|
||||
super(Outcome.Discard);
|
||||
staticText = "each opponent discards a card";
|
||||
}
|
||||
|
||||
public LilianasSpecterEffect(final LilianasSpecterEffect effect) {
|
||||
|
@ -94,8 +95,4 @@ class LilianasSpecterEffect extends OneShotEffect<LilianasSpecterEffect> {
|
|||
return new LilianasSpecterEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "each opponent discards a card";
|
||||
}
|
||||
}
|
|
@ -72,6 +72,7 @@ class MassPolymorphEffect extends OneShotEffect<MassPolymorphEffect> {
|
|||
|
||||
public MassPolymorphEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
staticText = "Exile all creatures you control, then reveal cards from the top of your library until you reveal that many creature cards. Put all creature cards revealed this way onto the battlefield, then shuffle the rest of the revealed cards into your library";
|
||||
}
|
||||
|
||||
public MassPolymorphEffect(final MassPolymorphEffect effect) {
|
||||
|
@ -112,8 +113,4 @@ class MassPolymorphEffect extends OneShotEffect<MassPolymorphEffect> {
|
|||
return new MassPolymorphEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Exile all creatures you control, then reveal cards from the top of your library until you reveal that many creature cards. Put all creature cards revealed this way onto the battlefield, then shuffle the rest of the revealed cards into your library";
|
||||
}
|
||||
}
|
|
@ -77,6 +77,7 @@ class MerfolkSpyEffect extends OneShotEffect<MerfolkSpyEffect> {
|
|||
|
||||
public MerfolkSpyEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "that player reveals a card at random from his or her hand";
|
||||
}
|
||||
|
||||
public MerfolkSpyEffect(final MerfolkSpyEffect effect) {
|
||||
|
@ -100,8 +101,4 @@ class MerfolkSpyEffect extends OneShotEffect<MerfolkSpyEffect> {
|
|||
return new MerfolkSpyEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "that player reveals a card at random from his or her hand";
|
||||
}
|
||||
}
|
|
@ -86,6 +86,7 @@ class MystifyingMazeEffect extends OneShotEffect<MystifyingMazeEffect> {
|
|||
|
||||
public MystifyingMazeEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "Exile target attacking creature an opponent controls. At the beginning of the next end step, return it to the battlefield tapped under its owner's control";
|
||||
}
|
||||
|
||||
public MystifyingMazeEffect(final MystifyingMazeEffect effect) {
|
||||
|
@ -112,11 +113,6 @@ class MystifyingMazeEffect extends OneShotEffect<MystifyingMazeEffect> {
|
|||
public MystifyingMazeEffect copy() {
|
||||
return new MystifyingMazeEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Exile target attacking creature an opponent controls. At the beginning of the next end step, return it to the battlefield tapped under its owner's control";
|
||||
}
|
||||
}
|
||||
|
||||
class MystifyingMazeDelayedTriggeredAbility extends DelayedTriggeredAbility<MystifyingMazeDelayedTriggeredAbility> {
|
||||
|
|
|
@ -91,6 +91,7 @@ class NecroticPlagueEffect extends ContinuousEffectImpl<NecroticPlagueEffect> {
|
|||
|
||||
public NecroticPlagueEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Enchanted creature has \"At the beginning of your upkeep, sacrifice this creature.\" When enchanted creature is put into a graveyard, its controller chooses target creature one of his or her opponents controls. Return Necrotic Plague from its owner's graveyard to the battlefield attached to that creature.";
|
||||
}
|
||||
|
||||
public NecroticPlagueEffect(final NecroticPlagueEffect effect) {
|
||||
|
@ -132,10 +133,6 @@ class NecroticPlagueEffect extends ContinuousEffectImpl<NecroticPlagueEffect> {
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature has \"At the beginning of your upkeep, sacrifice this creature.\" When enchanted creature is put into a graveyard, its controller chooses target creature one of his or her opponents controls. Return Necrotic Plague from its owner's graveyard to the battlefield attached to that creature.";
|
||||
}
|
||||
}
|
||||
|
||||
class NecroticPlagueEffect2 extends OneShotEffect<NecroticPlagueEffect2> {
|
||||
|
@ -151,6 +148,7 @@ class NecroticPlagueEffect2 extends OneShotEffect<NecroticPlagueEffect2> {
|
|||
public NecroticPlagueEffect2(UUID cardId) {
|
||||
super(Outcome.PutCardInPlay);
|
||||
this.cardId = cardId;
|
||||
staticText = "its controller chooses target creature one of his or her opponents controls. Return Necrotic Plague from its owner's graveyard to the battlefield attached to that creature.";
|
||||
}
|
||||
|
||||
public NecroticPlagueEffect2(final NecroticPlagueEffect2 effect) {
|
||||
|
@ -184,9 +182,5 @@ class NecroticPlagueEffect2 extends OneShotEffect<NecroticPlagueEffect2> {
|
|||
return new NecroticPlagueEffect2(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "its controller chooses target creature one of his or her opponents controls. Return Necrotic Plague from its owner's graveyard to the battlefield attached to that creature.";
|
||||
}
|
||||
|
||||
}
|
|
@ -82,6 +82,7 @@ class ObstinateBalothEffect extends ReplacementEffectImpl<ObstinateBalothEffect>
|
|||
|
||||
public ObstinateBalothEffect() {
|
||||
super(Duration.EndOfGame, Outcome.PutCardInPlay);
|
||||
staticText = "If a spell or ability an opponent controls causes you to discard Obstinate Baloth, put it onto the battlefield instead of putting it into your graveyard";
|
||||
}
|
||||
|
||||
public ObstinateBalothEffect(final ObstinateBalothEffect effect) {
|
||||
|
@ -127,8 +128,4 @@ class ObstinateBalothEffect extends ReplacementEffectImpl<ObstinateBalothEffect>
|
|||
return apply(game, source);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "If a spell or ability an opponent controls causes you to discard Obstinate Baloth, put it onto the battlefield instead of putting it into your graveyard";
|
||||
}
|
||||
}
|
|
@ -70,6 +70,7 @@ class OverwhelmingStampedeEffect extends ContinuousEffectImpl<OverwhelmingStampe
|
|||
|
||||
public OverwhelmingStampedeEffect() {
|
||||
super(Duration.EndOfTurn, Outcome.AddAbility);
|
||||
staticText = "Until end of turn, creatures you control gain trample and get +X/+X, where X is the greatest power among creatures you control.";
|
||||
}
|
||||
|
||||
public OverwhelmingStampedeEffect(final OverwhelmingStampedeEffect effect) {
|
||||
|
@ -116,8 +117,4 @@ class OverwhelmingStampedeEffect extends ContinuousEffectImpl<OverwhelmingStampe
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6 || layer == layer.PTChangingEffects_7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Until end of turn, creatures you control gain trample and get +X/+X, where X is the greatest power among creatures you control.";
|
||||
}
|
||||
}
|
|
@ -123,6 +123,7 @@ class PhylacteryLichEffect extends OneShotEffect<PhylacteryLichEffect> {
|
|||
|
||||
public PhylacteryLichEffect() {
|
||||
super(Outcome.Neutral);
|
||||
staticText = "put a phylactery counter on an artifact you control";
|
||||
}
|
||||
|
||||
public PhylacteryLichEffect(final PhylacteryLichEffect effect) {
|
||||
|
@ -152,8 +153,4 @@ class PhylacteryLichEffect extends OneShotEffect<PhylacteryLichEffect> {
|
|||
return new PhylacteryLichEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "put a phylactery counter on an artifact you control";
|
||||
}
|
||||
}
|
|
@ -81,6 +81,7 @@ class SerraAscendantEffect extends ContinuousEffectImpl<SerraAscendantEffect> {
|
|||
|
||||
public SerraAscendantEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.BoostCreature);
|
||||
staticText = "As long as you have 30 or more life, Serra Ascendant gets +5/+5 and has flying";
|
||||
}
|
||||
|
||||
public SerraAscendantEffect(final SerraAscendantEffect effect) {
|
||||
|
@ -127,8 +128,4 @@ class SerraAscendantEffect extends ContinuousEffectImpl<SerraAscendantEffect> {
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6 || layer == layer.PTChangingEffects_7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "As long as you have 30 or more life, Serra Ascendant gets +5/+5 and has flying";
|
||||
}
|
||||
}
|
|
@ -87,6 +87,7 @@ class ShivsEmbraceEffect extends ContinuousEffectImpl<ShivsEmbraceEffect> {
|
|||
|
||||
public ShivsEmbraceEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Enchanted creature gets +2/+2 and has flying";
|
||||
}
|
||||
|
||||
public ShivsEmbraceEffect(final ShivsEmbraceEffect effect) {
|
||||
|
@ -133,8 +134,4 @@ class ShivsEmbraceEffect extends ContinuousEffectImpl<ShivsEmbraceEffect> {
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6 || layer == layer.PTChangingEffects_7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature gets +2/+2 and has flying";
|
||||
}
|
||||
}
|
|
@ -76,6 +76,7 @@ class SorcerersStrongboxEffect extends OneShotEffect<SorcerersStrongboxEffect> {
|
|||
|
||||
public SorcerersStrongboxEffect() {
|
||||
super(Outcome.DrawCard);
|
||||
staticText = "Flip a coin. If you win the flip, sacrifice Sorcerer's Strongbox and draw three cards";
|
||||
}
|
||||
|
||||
public SorcerersStrongboxEffect(final SorcerersStrongboxEffect effect) {
|
||||
|
@ -103,8 +104,4 @@ class SorcerersStrongboxEffect extends OneShotEffect<SorcerersStrongboxEffect> {
|
|||
return new SorcerersStrongboxEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Flip a coin. If you win the flip, sacrifice Sorcerer's Strongbox and draw three cards";
|
||||
}
|
||||
}
|
|
@ -86,6 +86,7 @@ class StormtideLeviathanEffect extends ContinuousEffectImpl<StormtideLeviathanEf
|
|||
|
||||
public StormtideLeviathanEffect() {
|
||||
super(Duration.WhileOnBattlefield, Layer.TypeChangingEffects_4, SubLayer.NA, Outcome.Detriment);
|
||||
staticText = "All lands are Islands in addition to their other types";
|
||||
}
|
||||
|
||||
public StormtideLeviathanEffect(final StormtideLeviathanEffect effect) {
|
||||
|
@ -106,10 +107,6 @@ class StormtideLeviathanEffect extends ContinuousEffectImpl<StormtideLeviathanEf
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "All lands are Islands in addition to their other types";
|
||||
}
|
||||
}
|
||||
|
||||
class StormtideLeviathanEffect2 extends ReplacementEffectImpl<StormtideLeviathanEffect2> {
|
||||
|
@ -118,6 +115,7 @@ class StormtideLeviathanEffect2 extends ReplacementEffectImpl<StormtideLeviathan
|
|||
|
||||
public StormtideLeviathanEffect2() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||
staticText = "Creatures without flying or islandwalk can't attack";
|
||||
}
|
||||
|
||||
public StormtideLeviathanEffect2(final StormtideLeviathanEffect2 effect) {
|
||||
|
@ -155,9 +153,4 @@ class StormtideLeviathanEffect2 extends ReplacementEffectImpl<StormtideLeviathan
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Creatures without flying or islandwalk can't attack";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -67,6 +67,7 @@ class TimeReversalEffect extends OneShotEffect<TimeReversalEffect> {
|
|||
|
||||
public TimeReversalEffect() {
|
||||
super(Outcome.Neutral);
|
||||
staticText = "Each player shuffles his or her hand and graveyard into his or her library, then draws seven cards";
|
||||
}
|
||||
|
||||
public TimeReversalEffect(final TimeReversalEffect effect) {
|
||||
|
@ -95,8 +96,4 @@ class TimeReversalEffect extends OneShotEffect<TimeReversalEffect> {
|
|||
return new TimeReversalEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Each player shuffles his or her hand and graveyard into his or her library, then draws seven cards";
|
||||
}
|
||||
}
|
|
@ -82,6 +82,7 @@ class VengefulArchonEffect extends PreventionEffectImpl<VengefulArchonEffect> {
|
|||
|
||||
public VengefulArchonEffect() {
|
||||
super(Duration.EndOfTurn);
|
||||
staticText = "Prevent the next X damage that would be dealt to you this turn. If damage is prevented this way, Vengeful Archon deals that much damage to target player";
|
||||
}
|
||||
|
||||
public VengefulArchonEffect(final VengefulArchonEffect effect) {
|
||||
|
@ -138,9 +139,4 @@ class VengefulArchonEffect extends PreventionEffectImpl<VengefulArchonEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Prevent the next X damage that would be dealt to you this turn. If damage is prevented this way, Vengeful Archon deals that much damage to target player";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -83,6 +83,7 @@ class VolcanicStrengthEffect extends ContinuousEffectImpl<VolcanicStrengthEffect
|
|||
|
||||
public VolcanicStrengthEffect() {
|
||||
super(Duration.WhileOnBattlefield, Outcome.BoostCreature);
|
||||
staticText = "Enchanted creature gets +2/+2 and has mountainwalk";
|
||||
}
|
||||
|
||||
public VolcanicStrengthEffect(final VolcanicStrengthEffect effect) {
|
||||
|
@ -129,8 +130,4 @@ class VolcanicStrengthEffect extends ContinuousEffectImpl<VolcanicStrengthEffect
|
|||
return layer == Layer.AbilityAddingRemovingEffects_6 || layer == layer.PTChangingEffects_7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature gets +2/+2 and has mountainwalk";
|
||||
}
|
||||
}
|
|
@ -91,6 +91,7 @@ public class GarrukPrimalHunter extends CardImpl<GarrukPrimalHunter> {
|
|||
class GarrukPrimalHunterEffect extends OneShotEffect<GarrukPrimalHunterEffect> {
|
||||
GarrukPrimalHunterEffect() {
|
||||
super(Constants.Outcome.DrawCard);
|
||||
staticText = "Draw cards equal to the greatest power among creatures you control";
|
||||
}
|
||||
|
||||
GarrukPrimalHunterEffect(final GarrukPrimalHunterEffect effect) {
|
||||
|
@ -117,10 +118,6 @@ class GarrukPrimalHunterEffect extends OneShotEffect<GarrukPrimalHunterEffect> {
|
|||
return new GarrukPrimalHunterEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Draw cards equal to the greatest power among creatures you control";
|
||||
}
|
||||
}
|
||||
|
||||
class WurmToken extends Token {
|
||||
|
|
|
@ -97,6 +97,6 @@ class GideonsAvengerTriggeredAbility extends TriggeredAbilityImpl<GideonsAvenger
|
|||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "Whenever a creature an opponent controls becomes tapped, " + modes.getText(this);
|
||||
return "Whenever a creature an opponent controls becomes tapped, " + modes.getText();
|
||||
}
|
||||
}
|
|
@ -71,6 +71,7 @@ class TectonicRiftEffect extends RestrictionEffect<TectonicRiftEffect> {
|
|||
|
||||
TectonicRiftEffect() {
|
||||
super(Duration.EndOfTurn);
|
||||
staticText = "Creatures without flying can't block this turn";
|
||||
}
|
||||
|
||||
TectonicRiftEffect(final TectonicRiftEffect effect) {
|
||||
|
@ -95,8 +96,4 @@ class TectonicRiftEffect extends RestrictionEffect<TectonicRiftEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Creatures without flying can't block this turn";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -81,6 +81,7 @@ class ArrestEffect extends ReplacementEffectImpl<ArrestEffect> {
|
|||
|
||||
public ArrestEffect() {
|
||||
super(Duration.WhileOnBattlefield, Constants.Outcome.Detriment);
|
||||
staticText = "Enchanted creature can't attack or block, and its activated abilities can't be activated";
|
||||
}
|
||||
|
||||
public ArrestEffect(final ArrestEffect effect) {
|
||||
|
@ -117,8 +118,4 @@ class ArrestEffect extends ReplacementEffectImpl<ArrestEffect> {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Enchanted creature can't attack or block, and its activated abilities can't be activated";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -74,6 +74,7 @@ public class ClockworkBeetle extends CardImpl<ClockworkBeetle> {
|
|||
class ClockworkBeetleEffect extends OneShotEffect<ClockworkBeetleEffect> {
|
||||
ClockworkBeetleEffect() {
|
||||
super(Constants.Outcome.UnboostCreature);
|
||||
staticText = "remove a +1/+1 counter from {this} at end of combat";
|
||||
}
|
||||
|
||||
ClockworkBeetleEffect(final ClockworkBeetleEffect effect) {
|
||||
|
@ -97,9 +98,5 @@ class ClockworkBeetleEffect extends OneShotEffect<ClockworkBeetleEffect> {
|
|||
return new ClockworkBeetleEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "remove a +1/+1 counter from {this} at end of combat";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -79,6 +79,7 @@ public class ClockworkCondor extends CardImpl<ClockworkCondor> {
|
|||
class ClockworkCondorEffect extends OneShotEffect<ClockworkCondorEffect> {
|
||||
ClockworkCondorEffect() {
|
||||
super(Constants.Outcome.UnboostCreature);
|
||||
staticText = "remove a +1/+1 counter from {this} at end of combat";
|
||||
}
|
||||
|
||||
ClockworkCondorEffect(final ClockworkCondorEffect effect) {
|
||||
|
@ -102,8 +103,4 @@ class ClockworkCondorEffect extends OneShotEffect<ClockworkCondorEffect> {
|
|||
return new ClockworkCondorEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "remove a +1/+1 counter from {this} at end of combat";
|
||||
}
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue