From 7628278300d01c1ddaa2a8ea1add3fefbce5ecf6 Mon Sep 17 00:00:00 2001 From: drdev Date: Mon, 15 Sep 2014 22:59:56 +0000 Subject: [PATCH] Fix Tutor for Card dev mode option --- forge-ai/src/main/java/forge/ai/PlayerControllerAi.java | 2 +- .../main/java/forge/game/player/PlayerController.java | 2 +- .../util/PlayerControllerForTests.java | 2 +- .../main/java/forge/player/PlayerControllerHuman.java | 4 ++-- forge-gui/src/main/java/forge/util/DevModeUtil.java | 6 ++++-- forge-gui/src/main/java/forge/view/LocalGameView.java | 9 ++++++--- 6 files changed, 15 insertions(+), 10 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/PlayerControllerAi.java b/forge-ai/src/main/java/forge/ai/PlayerControllerAi.java index 5b626ed7c91..0063fe95a5e 100644 --- a/forge-ai/src/main/java/forge/ai/PlayerControllerAi.java +++ b/forge-ai/src/main/java/forge/ai/PlayerControllerAi.java @@ -838,7 +838,7 @@ public class PlayerControllerAi extends PlayerController { @Override public Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, - String selectPrompt, boolean b, Player decider) { + String selectPrompt, boolean isOptional, Player decider) { return ChangeZoneAi.chooseCardToHiddenOriginChangeZone(destination, origin, sa, fetchList, player, decider); } diff --git a/forge-game/src/main/java/forge/game/player/PlayerController.java b/forge-game/src/main/java/forge/game/player/PlayerController.java index 00405eaf3f5..fe94ea6c60a 100644 --- a/forge-game/src/main/java/forge/game/player/PlayerController.java +++ b/forge-game/src/main/java/forge/game/player/PlayerController.java @@ -281,7 +281,7 @@ public abstract class PlayerController { public abstract String chooseCardName(SpellAbility sa, Predicate cpp, String valid, String message); // better to have this odd method than those if playerType comparison in ChangeZone - public abstract Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, String selectPrompt, boolean b, Player decider); + public abstract Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, String selectPrompt, boolean isOptional, Player decider); public boolean isGuiPlayer() { return false; diff --git a/forge-gui-desktop/src/test/java/forge/gamesimulationtests/util/PlayerControllerForTests.java b/forge-gui-desktop/src/test/java/forge/gamesimulationtests/util/PlayerControllerForTests.java index c8c42def294..c685c737734 100644 --- a/forge-gui-desktop/src/test/java/forge/gamesimulationtests/util/PlayerControllerForTests.java +++ b/forge-gui-desktop/src/test/java/forge/gamesimulationtests/util/PlayerControllerForTests.java @@ -617,7 +617,7 @@ public class PlayerControllerForTests extends PlayerController { @Override public Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, - String selectPrompt, boolean b, Player decider) { + String selectPrompt, boolean isOptional, Player decider) { // TODO Auto-generated method stub return ChangeZoneAi.chooseCardToHiddenOriginChangeZone(destination, origin, sa, fetchList, player, decider); } diff --git a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java index 2a0096b2a47..b916d645894 100644 --- a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java +++ b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java @@ -1294,8 +1294,8 @@ public class PlayerControllerHuman extends PlayerController { } @Override - public Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, String selectPrompt, boolean b, Player decider) { - return chooseSingleEntityForEffect(fetchList, sa, selectPrompt, b, decider); + public Card chooseSingleCardForZoneChange(ZoneType destination, List origin, SpellAbility sa, List fetchList, String selectPrompt, boolean isOptional, Player decider) { + return chooseSingleEntityForEffect(fetchList, sa, selectPrompt, isOptional, decider); } public boolean isGuiPlayer() { diff --git a/forge-gui/src/main/java/forge/util/DevModeUtil.java b/forge-gui/src/main/java/forge/util/DevModeUtil.java index 764f4c9e168..3709da0eb87 100644 --- a/forge-gui/src/main/java/forge/util/DevModeUtil.java +++ b/forge-gui/src/main/java/forge/util/DevModeUtil.java @@ -249,8 +249,10 @@ public final class DevModeUtil { } final List lib = pPriority.getCardsIn(ZoneType.Library); - final CardView cardView = SGuiChoose.oneOrNone(controller.getGui(), "Choose a card", controller.getCardViews(lib)); - final Card card = controller.getCard(cardView); + final List origin = new ArrayList(); + origin.add(ZoneType.Library); + SpellAbility sa = new SpellAbility.EmptySa(new Card(-1)); + final Card card = controller.chooseSingleCardForZoneChange(ZoneType.Hand, origin, sa, lib, "Choose a card", true, pPriority); if (card == null) { return; } game.getAction().invoke(new Runnable() { diff --git a/forge-gui/src/main/java/forge/view/LocalGameView.java b/forge-gui/src/main/java/forge/view/LocalGameView.java index 8e33d3aeb2b..09cb82e6916 100644 --- a/forge-gui/src/main/java/forge/view/LocalGameView.java +++ b/forge-gui/src/main/java/forge/view/LocalGameView.java @@ -394,7 +394,8 @@ public abstract class LocalGameView implements IGameView { // is not an outdated Card. cards.put(c, view); mayShow = mayShowCard(view); - } else { + } + else { view = new CardView(isDisplayable); mayShow = mayShowCard(view); if (isDisplayable && mayShow) { @@ -404,9 +405,11 @@ public abstract class LocalGameView implements IGameView { if (mayShow) { writeCardToView(cUi, view); - } else if (isDisplayable) { + } + else if (isDisplayable) { view.reset(); - } else { + } + else { return null; }