From 3ab4689a254d9f36ef18abdbbce751d0e4ad877d Mon Sep 17 00:00:00 2001 From: Kasra Date: Fri, 9 Jul 2021 15:08:07 +0430 Subject: [PATCH] added phaseLabel, fixed tribute, show game message alwaysOnTop --- src/main/java/controller/GameController.java | 4 + src/main/java/view/gui/DuelMenuGui.java | 11 +- src/main/java/view/gui/ShowGameMessage.java | 1 - src/main/resources/view/gui/DuelMenuGui.fxml | 120 +++++++++++------- .../resources/view/gui/styles/DuelMenuGui.css | 18 ++- 5 files changed, 99 insertions(+), 55 deletions(-) diff --git a/src/main/java/controller/GameController.java b/src/main/java/controller/GameController.java index 019ef710..aa13c8e9 100644 --- a/src/main/java/controller/GameController.java +++ b/src/main/java/controller/GameController.java @@ -677,4 +677,8 @@ public int getPlayerDeckSize() { public int getOpponentDeckSize() { return game.getOpponentGameBoard().getOwner().getUserDeck().getActiveDeck().getMainDeck().size(); } + + public String getGamePhase() { + return game.getPhase(); + } } \ No newline at end of file diff --git a/src/main/java/view/gui/DuelMenuGui.java b/src/main/java/view/gui/DuelMenuGui.java index 5468abe3..1cfeffcd 100644 --- a/src/main/java/view/gui/DuelMenuGui.java +++ b/src/main/java/view/gui/DuelMenuGui.java @@ -72,6 +72,8 @@ public class DuelMenuGui extends MenuGui { public Text playerNickNameText; @FXML public Text playerUserNameText; + @FXML + public Label phaseLabel; static { duelMenuMethods = DuelMenuGui.class.getDeclaredMethods(); @@ -200,6 +202,7 @@ public void updateGameBoard() { updatePlayerLifePoint(); updateOpponentLifePoint(); updateDecks(); + updatePhase(); } private void updateFields(ArrayList cardData, String fieldName) { @@ -319,6 +322,11 @@ private void updateDecks() { fieldPane.getChildren().addAll(playerDeckStackPane, opponentDeckStackPane); } + private void updatePhase() { + String phase = gameController.getGamePhase(); + phaseLabel.setText(phase); + } + private boolean getVisibility(String fieldName, String cardName) { boolean isVisible = true; if (fieldName.equals(CARD_FIELDS[3])) { @@ -645,8 +653,9 @@ public ArrayList getCardsForTribute(int i) { "Leave field empty to cancel summon."); String[] numbers = input.split(" "); ArrayList positions = new ArrayList<>(); + // add (position - 1) to ArrayList because zero-indexed fields: for (String num : numbers) - positions.add(Integer.parseInt(num)); + positions.add(Integer.parseInt(num) - 1); return positions; } catch (NumberFormatException exception) { showMessage("Invalid input format. Try again!"); diff --git a/src/main/java/view/gui/ShowGameMessage.java b/src/main/java/view/gui/ShowGameMessage.java index 8b12667a..ecb25bd9 100644 --- a/src/main/java/view/gui/ShowGameMessage.java +++ b/src/main/java/view/gui/ShowGameMessage.java @@ -37,7 +37,6 @@ public void start(Stage prevStage) throws IOException { stage.initStyle(StageStyle.UNDECORATED); stage.toFront(); stage.requestFocus(); - stage.setAlwaysOnTop(true); stage.show(); } diff --git a/src/main/resources/view/gui/DuelMenuGui.fxml b/src/main/resources/view/gui/DuelMenuGui.fxml index f56a36c0..37257333 100644 --- a/src/main/resources/view/gui/DuelMenuGui.fxml +++ b/src/main/resources/view/gui/DuelMenuGui.fxml @@ -10,10 +10,11 @@ - + - +
@@ -26,20 +27,23 @@ - - - + + +
- + - @@ -47,9 +51,11 @@
- - - + + +
@@ -57,19 +63,20 @@ - @@ -77,143 +84,161 @@
- - - - - - - -
+ + + + + +
@@ -222,5 +247,4 @@ - diff --git a/src/main/resources/view/gui/styles/DuelMenuGui.css b/src/main/resources/view/gui/styles/DuelMenuGui.css index 96ae219b..d418c4d9 100644 --- a/src/main/resources/view/gui/styles/DuelMenuGui.css +++ b/src/main/resources/view/gui/styles/DuelMenuGui.css @@ -3,6 +3,11 @@ -fx-background-color: #93a1a7; } +.button { + -fx-background-color: #dd0202; + -fx-text-fill: white; +} + #selectedCardDescription { -fx-background-color: #eee0b1; -fx-font-family: Arial; @@ -10,11 +15,14 @@ -fx-border-color: #cb9a45; } -.button { - -fx-background-color: #dd0202; - -fx-text-fill: white; -} - #buttonPane { -fx-background-color: #141414; +} + +#phaseLabel { + -fx-background-color: #dd0202; + -fx-text-fill: white; + -fx-font-family: Arial; + -fx-font-weight: bold; + -fx-background-radius: 3px; } \ No newline at end of file