diff --git a/.gitattributes b/.gitattributes index f3014576662..1ef95e0ce67 100644 --- a/.gitattributes +++ b/.gitattributes @@ -14286,6 +14286,7 @@ src/main/java/forge/util/HttpUtil.java svneol=native#text/plain src/main/java/forge/util/IItemReader.java -text src/main/java/forge/util/IItemSerializer.java -text src/main/java/forge/util/IgnoringXStream.java -text +src/main/java/forge/util/Lang.java -text src/main/java/forge/util/LineReader.java -text src/main/java/forge/util/MultiplexOutputStream.java svneol=native#text/plain src/main/java/forge/util/MyObservable.java svneol=native#text/plain diff --git a/src/main/java/forge/control/input/InputMulligan.java b/src/main/java/forge/control/input/InputMulligan.java index 81eaab21545..f6283df6c3e 100644 --- a/src/main/java/forge/control/input/InputMulligan.java +++ b/src/main/java/forge/control/input/InputMulligan.java @@ -35,6 +35,7 @@ import forge.gui.framework.SDisplayUtil; import forge.gui.match.CMatchUI; import forge.gui.match.nonsingleton.VField; import forge.gui.match.views.VMessage; +import forge.util.Lang; import forge.view.ButtonUtil; /** *
@@ -58,20 +59,21 @@ public class InputMulligan extends InputBase { /** {@inheritDoc} */ @Override public final void showMessage() { - ButtonUtil.setButtonText("No", "Yes"); + ButtonUtil.setButtonText("Keep", "Mulligan"); ButtonUtil.enableAllFocusOk(); GameState game = match.getCurrentGame(); Player startingPlayer = game.getPhaseHandler().getPlayerTurn(); StringBuilder sb = new StringBuilder(); - sb.append(startingPlayer.getName()).append(" is going first. "); - - if (!startingPlayer.equals(player)) { - sb.append("You are going ").append(game.getOrdinalPosition(player, startingPlayer)).append(". "); + if( startingPlayer == player ) { + sb.append("You are going first.\n"); + } else { + sb.append(startingPlayer.getName()).append(" is going first. "); + sb.append("You are going ").append(Lang.getOrdinal(game.getPosition(player, startingPlayer))).append(".\n"); } - sb.append("Do you want to Mulligan?"); + sb.append("Do you want to keep your hand?"); showMessage(sb.toString()); } diff --git a/src/main/java/forge/control/input/InputPartialParisMulligan.java b/src/main/java/forge/control/input/InputPartialParisMulligan.java index 416086d358d..637fd292987 100644 --- a/src/main/java/forge/control/input/InputPartialParisMulligan.java +++ b/src/main/java/forge/control/input/InputPartialParisMulligan.java @@ -32,6 +32,7 @@ import forge.gui.GuiDialog; import forge.gui.framework.SDisplayUtil; import forge.gui.match.CMatchUI; import forge.gui.match.nonsingleton.VField; +import forge.util.Lang; import forge.view.ButtonUtil; /** *
@@ -65,10 +66,11 @@ public class InputPartialParisMulligan extends InputBase { Player startingPlayer = game.getPhaseHandler().getPlayerTurn(); StringBuilder sb = new StringBuilder(); - sb.append(startingPlayer.getName()).append(" is going first. "); - - if (!startingPlayer.equals(player)) { - sb.append("You are going ").append(game.getOrdinalPosition(player, startingPlayer)).append(". "); + if( startingPlayer == player ) { + sb.append("You are going first.\n"); + } else { + sb.append(startingPlayer.getName()).append(" is going first. "); + sb.append("You are going ").append(Lang.getOrdinal(game.getPosition(player, startingPlayer))).append(".\n"); } sb.append("Do you want to Mulligan?"); diff --git a/src/main/java/forge/game/GameState.java b/src/main/java/forge/game/GameState.java index 8cc12add158..d7d2ccc2348 100644 --- a/src/main/java/forge/game/GameState.java +++ b/src/main/java/forge/game/GameState.java @@ -481,19 +481,10 @@ public class GameState { } - public String getOrdinalPosition(Player player, Player startingPlayer) { + public int getPosition(Player player, Player startingPlayer) { int startPosition = roIngamePlayers.indexOf(startingPlayer); int position = (roIngamePlayers.indexOf(player) + startPosition) % roIngamePlayers.size() + 1; - String[] sufixes = new String[] { "th", "st", "nd", "rd", "th", "th", "th", "th", "th", "th" }; - switch (position % 100) { - case 11: - case 12: - case 13: - return position + "th"; - default: - return position + sufixes[position % 10]; - - } + return position; } /** diff --git a/src/main/java/forge/util/Lang.java b/src/main/java/forge/util/Lang.java new file mode 100644 index 00000000000..6bbd798026f --- /dev/null +++ b/src/main/java/forge/util/Lang.java @@ -0,0 +1,26 @@ +package forge.util; + +/** + * TODO: Write javadoc for this type. + * + */ +public class Lang { + + /** + * TODO: Write javadoc for this method. + * @param position + * @return + */ + public static Object getOrdinal(int position) { + String[] sufixes = new String[] { "th", "st", "nd", "rd", "th", "th", "th", "th", "th", "th" }; + switch (position % 100) { + case 11: + case 12: + case 13: + return position + "th"; + default: + return position + sufixes[position % 10]; + } + } + +}