From bb3c482728bb0e1a2daadd24d01b221ea27b9a47 Mon Sep 17 00:00:00 2001 From: Jonas <77726472+kobolol@users.noreply.github.com> Date: Sun, 8 Mar 2026 12:47:21 +0100 Subject: [PATCH] Add game restart and disconnect support Prevent handling disconnects for games already ended; add a disconnect() method on the SignalR connection and a LocalGame.disconnectAll() helper. Update GameEndedMenu to emit a restart event and adjust displayed messages/labels. Wire a restart() handler in LocalMode that disconnects all players then restarts the game. --- API/Services/GameManager/GameManager.cs | 2 +- GUI/src/components/GameEndedMenu.vue | 14 ++++++++------ GUI/src/routes/LocalMode.vue | 9 ++++++++- GUI/src/scripts/logic/localMode/LocalGame.ts | 5 +++++ GUI/src/scripts/logic/signalR/GameConnection.ts | 5 +++++ 5 files changed, 27 insertions(+), 8 deletions(-) diff --git a/API/Services/GameManager/GameManager.cs b/API/Services/GameManager/GameManager.cs index cd8b3ef..168517e 100644 --- a/API/Services/GameManager/GameManager.cs +++ b/API/Services/GameManager/GameManager.cs @@ -120,7 +120,7 @@ public class GameManager(IGameRepository gameRepository, IHubContext() const message = computed(() => { switch (props.gameEndedInformation?.method) { case "PlayerDisconnected": - return `Bei Spieler ${props.gameEndedInformation.player?.name} ist die Verbindung abgebrochen` + return `Bei dem Spieler ${props.gameEndedInformation.player?.name} ist die Verbindung abgebrochen :(` case "Draw": return "Das Spielfeld ist voll und es ist ein Unentschieden" case "Win": - return `Spieler ${props.gameEndedInformation.player?.name} hat gewonnen!` + return `${props.gameEndedInformation.player?.name} hat gewonnen!` default: return "" } @@ -20,15 +22,15 @@ const message = computed(() => {