From b7c8a57730b38b6c444febc1f2f2622a64dcf20a Mon Sep 17 00:00:00 2001 From: drdev Date: Fri, 12 Sep 2014 23:45:55 +0000 Subject: [PATCH] Improve message for Devour --- forge-core/src/main/java/forge/util/Lang.java | 5 +++-- .../java/forge/game/card/CardFactoryUtil.java | 4 ++-- .../input/InputSelectEntitiesFromList.java | 12 ++++-------- .../forge/player/PlayerControllerHuman.java | 18 +++++++++++------- 4 files changed, 20 insertions(+), 19 deletions(-) diff --git a/forge-core/src/main/java/forge/util/Lang.java b/forge-core/src/main/java/forge/util/Lang.java index 74cfb291e99..3aafe023db5 100644 --- a/forge-core/src/main/java/forge/util/Lang.java +++ b/forge-core/src/main/java/forge/util/Lang.java @@ -100,7 +100,7 @@ public class Lang { } public static String nounWithNumeral(int cnt, String noun) { - String countedForm = cnt <= 1 ? noun : getPlural(noun); + String countedForm = cnt == 1 ? noun : getPlural(noun); return getNumeral(cnt) + " " + countedForm; } @@ -130,8 +130,9 @@ public class Lang { public static String getNumeral(int n) { String prefix = n < 0 ? "minus " : ""; n = Math.abs(n); - if (n >= 0 && n < 20) + if (n >= 0 && n < 20) { return prefix + numbers0[n]; + } if (n < 100) { int n1 = n % 10; String ones = n1 == 0 ? "" : numbers0[n1]; diff --git a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java index 657501b8a86..1da9e88072b 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java @@ -3164,8 +3164,8 @@ public class CardFactoryUtil { String abStr = "DB$ ChangeZone | Hidden$ True | Origin$ All | Destination$ Battlefield" + " | Defined$ ReplacedCard | SubAbility$ DevourCleanup"; String dbStr = "DB$ Sacrifice | Defined$ You | Amount$ DevourSacX | " - + "References$ DevourSacX | SacValid$ Creature.Other | SacMessage$ creature (Devour " - + magnitude + ") | RememberSacrificed$ True | Optional$ True | " + + "References$ DevourSacX | SacValid$ Creature.Other | SacMessage$ creature | " + + "RememberSacrificed$ True | Optional$ True | " + "Devour$ True | SubAbility$ DevourCounters"; String counterStr = "DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ DevourX" + " | References$ DevourX,DevourSize | SubAbility$ DevourETB"; diff --git a/forge-gui/src/main/java/forge/match/input/InputSelectEntitiesFromList.java b/forge-gui/src/main/java/forge/match/input/InputSelectEntitiesFromList.java index 39b36c68025..301bce05cc8 100644 --- a/forge-gui/src/main/java/forge/match/input/InputSelectEntitiesFromList.java +++ b/forge-gui/src/main/java/forge/match/input/InputSelectEntitiesFromList.java @@ -19,9 +19,9 @@ public class InputSelectEntitiesFromList extends InputSele super(Math.min(min, validChoices.size()), Math.min(max, validChoices.size())); this.validChoices = validChoices; - if ( min > validChoices.size() ) + if (min > validChoices.size()) { System.out.println(String.format("Trying to choose at least %d cards from a list with only %d cards!", min, validChoices.size())); - + } } @Override @@ -69,14 +69,10 @@ public class InputSelectEntitiesFromList extends InputSele protected boolean hasEnoughTargets() { return selected.size() >= min; } protected boolean hasAllTargets() { return selected.size() >= max; } - /** - * TODO: Write javadoc for this method. - * @return - */ protected String getMessage() { return max == Integer.MAX_VALUE - ? String.format(message, selected.size()) - : String.format(message, max - selected.size()); + ? String.format(message, selected.size()) + : String.format(message, max - selected.size()); } } \ No newline at end of file diff --git a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java index 15ff759ca8d..5c03dd6ccad 100644 --- a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java +++ b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java @@ -200,24 +200,28 @@ public class PlayerControllerHuman extends PlayerController { @Override public List choosePermanentsToSacrifice(SpellAbility sa, int min, int max, List valid, String message) { - String outerMessage = "Select %d " + message + "(s) to sacrifice"; - return choosePermanentsTo(min, max, valid, outerMessage); + return choosePermanentsTo(min, max, valid, message, "sacrifice"); } @Override public List choosePermanentsToDestroy(SpellAbility sa, int min, int max, List valid, String message) { - String outerMessage = "Select %d " + message + "(s) to be destroyed"; - return choosePermanentsTo(min, max, valid, outerMessage); + return choosePermanentsTo(min, max, valid, message, "destroy"); } - private List choosePermanentsTo(int min, int max, List valid, String outerMessage) { + private List choosePermanentsTo(int min, int max, List valid, String message, String action) { max = Math.min(max, valid.size()); if (max <= 0) { return new ArrayList(); } - InputSelectCardsFromList inp = new InputSelectCardsFromList(min == 0 ? 1 : min, max, valid); - inp.setMessage(outerMessage); + StringBuilder builder = new StringBuilder("Select "); + if (min == 0) { + builder.append("up to "); + } + builder.append("%d " + message + "(s) to " + action + "."); + + InputSelectCardsFromList inp = new InputSelectCardsFromList(min, max, valid); + inp.setMessage(builder.toString()); inp.setCancelAllowed(min == 0); inp.showAndWait(); return Lists.newArrayList(inp.getSelected());