From 05f5976e0d3f34054eecfb14eb634c247ff82c75 Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Thu, 28 Mar 2013 21:04:37 +0000 Subject: [PATCH] removed 1 old input class --- .../card/ability/effects/UntapEffect.java | 17 ++++--- .../card/cardfactory/CardFactoryUtil.java | 50 ------------------- 2 files changed, 11 insertions(+), 56 deletions(-) diff --git a/src/main/java/forge/card/ability/effects/UntapEffect.java b/src/main/java/forge/card/ability/effects/UntapEffect.java index 28999df9502..5ec72eafd11 100644 --- a/src/main/java/forge/card/ability/effects/UntapEffect.java +++ b/src/main/java/forge/card/ability/effects/UntapEffect.java @@ -7,12 +7,13 @@ import org.apache.commons.lang3.StringUtils; import forge.Card; import forge.CardLists; import forge.CardPredicates.Presets; -import forge.Singletons; +import forge.FThreads; import forge.card.ability.AbilityUtils; import forge.card.ability.SpellAbilityEffect; -import forge.card.cardfactory.CardFactoryUtil; import forge.card.spellability.SpellAbility; import forge.card.spellability.Target; +import forge.control.input.InputSelectCards; +import forge.control.input.InputSelectCardsFromList; import forge.game.ai.ComputerUtilCard; import forge.game.player.Player; import forge.game.zone.ZoneType; @@ -77,12 +78,16 @@ public class UntapEffect extends SpellAbilityEffect { final List definedPlayers = AbilityUtils.getDefinedPlayers(sa.getSourceCard(), sa.getParam("Defined"), sa); for (final Player p : definedPlayers) { + List list = CardLists.getType(p.getCardsIn(ZoneType.Battlefield), valid); + list = CardLists.filter(list, Presets.TAPPED); + if (p.isHuman()) { - Singletons.getModel().getMatch().getInput().setInput(CardFactoryUtil.inputUntapUpToNType(num, valid)); + InputSelectCards sc = new InputSelectCardsFromList(0, num, list); + FThreads.setInputAndWait(sc); + if( !sc.hasCancelled() ) + for( Card c : sc.getSelected() ) + c.untap(); } else { - List list = p.getCardsIn(ZoneType.Battlefield); - list = CardLists.getType(list, valid); - list = CardLists.filter(list, Presets.TAPPED); int count = 0; while ((list.size() != 0) && (count < num)) { diff --git a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java index 99ae2c4e016..90c988d7f75 100644 --- a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java +++ b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java @@ -63,7 +63,6 @@ import forge.card.spellability.Target; import forge.card.trigger.Trigger; import forge.card.trigger.TriggerHandler; import forge.card.trigger.TriggerType; -import forge.control.input.Input; import forge.control.input.InputBase; import forge.control.input.InputSelectCards; import forge.game.GameState; @@ -2295,55 +2294,6 @@ public class CardFactoryUtil { return tot; } - /** - *

- * inputUntapUpToNType. - *

- * - * @param n - * a int. - * @param type - * a {@link java.lang.String} object. - * @return a {@link forge.control.input.InputBase} object. - */ - public static Input inputUntapUpToNType(final int n, final String type) { - final Input untap = new InputBase() { - private static final long serialVersionUID = -2167059918040912025L; - - private final int stop = n; - private int count = 0; - private List choices = new ArrayList();; - - @Override - public void showMessage() { - final StringBuilder sb = new StringBuilder(); - sb.append("Select a ").append(type).append(" to untap"); - CMatchUI.SINGLETON_INSTANCE.showMessage(sb.toString()); - ButtonUtil.enableOnlyCancel(); - } - - @Override - public void selectButtonCancel() { - this.stop(); - } - - @Override - public void selectCard(final Card card) { - Zone zone = Singletons.getModel().getGame().getZoneOf(card); - if (card.isType(type) && zone.is(ZoneType.Battlefield) && !choices.contains(card)) { - card.untap(); - choices.add(card); - this.count++; - if (this.count == this.stop) { - this.stop(); - } - } - } // selectCard() - }; - - return untap; - } - /** *

* isMostProminentColor.