From 71c918e9ee690871cd6a802edca95f065d043f24 Mon Sep 17 00:00:00 2001 From: Stef Date: Thu, 27 Nov 2025 15:45:31 +0100 Subject: [PATCH] Squashed commit of the following: commit a517f2f302baa89f8ef59946a31c7bb59c56770f Author: Stef Date: Thu Nov 27 15:43:43 2025 +0100 Make it so the game shows "Waiting on ... to make their move". Styling isn't done but it is easier to see who's turn it is. There is a lot of structuring to do in the previous code... --- .../org/toop/app/view/views/GameView.java | 33 ++++++++----------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/org/toop/app/view/views/GameView.java b/app/src/main/java/org/toop/app/view/views/GameView.java index df69240..5b9b1d6 100644 --- a/app/src/main/java/org/toop/app/view/views/GameView.java +++ b/app/src/main/java/org/toop/app/view/views/GameView.java @@ -15,10 +15,12 @@ import javafx.scene.text.Text; import java.util.function.Consumer; public final class GameView extends View { + // TODO: This should be it's own file... private static class GameOverView extends View { private final boolean iWon; private final String winner; + // TODO: Make winner generic, there is no "I won" unless you play online or against bot. Should be a generic "... won" to simplify public GameOverView(boolean iWon, String winner) { super(false, "bg-popup"); @@ -71,6 +73,8 @@ public final class GameView extends View { private final Text nextPlayerHeader; + private final Text gameStateFeedback = text(); + private final ListView chatListView; private final TextField chatInput; @@ -112,34 +116,24 @@ public final class GameView extends View { exitButton.setText(AppContext.getString("exit")); exitButton.setOnAction(_ -> onExit.run()); - currentPlayerHeader = header("", "current-player"); + currentPlayerHeader = header("", "header"); currentMoveHeader = header(); - nextPlayerHeader = header(); } @Override public void setup() { - add(Pos.TOP_RIGHT, - fit(vboxFill( - currentPlayerHeader, - - hboxFill( - separator(), - currentMoveHeader, - separator() - ), - - nextPlayerHeader - )) + add( + Pos.TOP_CENTER, + gameStateFeedback ); add(Pos.BOTTOM_LEFT, - vboxFill( - forfeitButton, - exitButton - ) - ); + vboxFill( + forfeitButton, + exitButton + ) + ); if (chatListView != null) { add(Pos.BOTTOM_RIGHT, @@ -153,6 +147,7 @@ public final class GameView extends View { public void nextPlayer(boolean isMe, String currentPlayer, String currentMove, String nextPlayer) { Platform.runLater(() -> { + gameStateFeedback.setText("Waiting on " + currentPlayer + " to make their move."); currentPlayerHeader.setText(currentPlayer); currentMoveHeader.setText(currentMove);