entfernen aus der spielerliste wenn jemand verlässt
parent
324345d9eb
commit
cb850804a7
|
|
@ -52,7 +52,19 @@ public class GameWebSocketHandler {
|
||||||
// Connection geschlossen
|
// Connection geschlossen
|
||||||
ws.onClose(ctx -> {
|
ws.onClose(ctx -> {
|
||||||
String gameId = ctx.pathParam("gameId");
|
String gameId = ctx.pathParam("gameId");
|
||||||
|
String username = ctx.queryParam("username");
|
||||||
service.removeSession(gameId, ctx);
|
service.removeSession(gameId, ctx);
|
||||||
|
|
||||||
|
// Spieler aus der Spielerliste entfernen
|
||||||
|
var game = service.getOrCreateGame(gameId);
|
||||||
|
if (username != null && game.players().contains(username)) {
|
||||||
|
game.players().remove(username);
|
||||||
|
game.scores().remove(username);
|
||||||
|
// Optional: auch die Tracks entfernen
|
||||||
|
game.playerTracks().remove(username);
|
||||||
|
}
|
||||||
|
service.broadcastPlayers(gameId);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Eingehende Nachrichten (Guesses & Player-Requests)
|
// Eingehende Nachrichten (Guesses & Player-Requests)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue