From d6a88a442d29a003ca7213c79528e58e42efd28f Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Fri, 26 Apr 2013 00:06:30 +0200 Subject: [PATCH] Used framework method instead of individual method. --- .../sets/darkascension/ScreechingSkaab.java | 36 ++----------------- .../src/mage/sets/innistrad/ArmoredSkaab.java | 3 +- .../mage/sets/innistrad/Splinterfright.java | 36 ++----------------- 3 files changed, 6 insertions(+), 69 deletions(-) diff --git a/Mage.Sets/src/mage/sets/darkascension/ScreechingSkaab.java b/Mage.Sets/src/mage/sets/darkascension/ScreechingSkaab.java index 6314b1c6c16..de10812ec62 100644 --- a/Mage.Sets/src/mage/sets/darkascension/ScreechingSkaab.java +++ b/Mage.Sets/src/mage/sets/darkascension/ScreechingSkaab.java @@ -36,6 +36,7 @@ import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.PutTopCardOfYourLibraryIntoGraveEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.game.Game; @@ -57,7 +58,7 @@ public class ScreechingSkaab extends CardImpl { this.toughness = new MageInt(1); // When Screeching Skaab enters the battlefield, put the top two cards of your library into your graveyard. - this.addAbility(new EntersBattlefieldTriggeredAbility(new ScreechingSkaabEffect())); + this.addAbility(new EntersBattlefieldTriggeredAbility(new PutTopCardOfYourLibraryIntoGraveEffect(2))); } public ScreechingSkaab(final ScreechingSkaab card) { @@ -69,36 +70,3 @@ public class ScreechingSkaab extends CardImpl { return new ScreechingSkaab(this); } } - -class ScreechingSkaabEffect extends OneShotEffect { - - public ScreechingSkaabEffect() { - super(Outcome.Discard); - this.staticText = "put the top two cards of your library into your graveyard"; - } - - public ScreechingSkaabEffect(final ScreechingSkaabEffect effect) { - super(effect); - } - - @Override - public ScreechingSkaabEffect copy() { - return new ScreechingSkaabEffect(this); - } - - @Override - public boolean apply(Game game, Ability source) { - Player player = game.getPlayer(source.getControllerId()); - if (player != null) { - int cardsCount = Math.min(2, player.getLibrary().size()); - for (int i = 0; i < cardsCount; i++) { - Card card = player.getLibrary().removeFromTop(game); - if (card != null) { - card.moveToZone(Constants.Zone.GRAVEYARD, source.getId(), game, true); - } - } - return true; - } - return false; - } -} diff --git a/Mage.Sets/src/mage/sets/innistrad/ArmoredSkaab.java b/Mage.Sets/src/mage/sets/innistrad/ArmoredSkaab.java index 71af3e1722b..57eeb882ec4 100644 --- a/Mage.Sets/src/mage/sets/innistrad/ArmoredSkaab.java +++ b/Mage.Sets/src/mage/sets/innistrad/ArmoredSkaab.java @@ -36,6 +36,7 @@ import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.PutTopCardOfYourLibraryIntoGraveEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.game.Game; @@ -58,7 +59,7 @@ public class ArmoredSkaab extends CardImpl { this.toughness = new MageInt(4); // When Armored Skaab enters the battlefield, put the top four cards of your library into your graveyard. - this.addAbility(new EntersBattlefieldTriggeredAbility(new ArmoredSkaabEffect())); + this.addAbility(new EntersBattlefieldTriggeredAbility(new PutTopCardOfYourLibraryIntoGraveEffect(4))); } public ArmoredSkaab(final ArmoredSkaab card) { diff --git a/Mage.Sets/src/mage/sets/innistrad/Splinterfright.java b/Mage.Sets/src/mage/sets/innistrad/Splinterfright.java index 01f54d23b7c..bd8e58ecd4c 100644 --- a/Mage.Sets/src/mage/sets/innistrad/Splinterfright.java +++ b/Mage.Sets/src/mage/sets/innistrad/Splinterfright.java @@ -39,6 +39,7 @@ import mage.abilities.common.OnEventTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.dynamicvalue.common.CardsInControllerGraveyardCount; import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.PutTopCardOfYourLibraryIntoGraveEffect; import mage.abilities.effects.common.continious.SetPowerToughnessSourceEffect; import mage.abilities.keyword.TrampleAbility; import mage.cards.Card; @@ -68,7 +69,7 @@ public class Splinterfright extends CardImpl { CardsInControllerGraveyardCount count = new CardsInControllerGraveyardCount(new FilterCreatureCard("creature cards")); this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetPowerToughnessSourceEffect(count, Duration.EndOfGame))); // At the beginning of your upkeep, put the top two cards of your library into your graveyard. - this.addAbility(new OnEventTriggeredAbility(EventType.UPKEEP_STEP_PRE, "beginning of your upkeep", new SplinterfrightEffect(), false)); + this.addAbility(new OnEventTriggeredAbility(EventType.UPKEEP_STEP_PRE, "beginning of your upkeep", new PutTopCardOfYourLibraryIntoGraveEffect(2), false)); } public Splinterfright(final Splinterfright card) { @@ -80,36 +81,3 @@ public class Splinterfright extends CardImpl { return new Splinterfright(this); } } - -class SplinterfrightEffect extends OneShotEffect { - - public SplinterfrightEffect() { - super(Outcome.Discard); - this.staticText = "put the top two cards of your library into your graveyard"; - } - - public SplinterfrightEffect(final SplinterfrightEffect effect) { - super(effect); - } - - @Override - public SplinterfrightEffect copy() { - return new SplinterfrightEffect(this); - } - - @Override - public boolean apply(Game game, Ability source) { - Player player = game.getPlayer(source.getControllerId()); - if (player != null) { - int cardsCount = Math.min(2, player.getLibrary().size()); - for (int i = 0; i < cardsCount; i++) { - Card card = player.getLibrary().removeFromTop(game); - if (card != null) { - card.moveToZone(Zone.GRAVEYARD, source.getId(), game, true); - } - } - return true; - } - return false; - } -}