From 1dc3ce85173c0db54e646de668ddc010afb1e4d7 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Tue, 17 Jan 2023 19:03:34 +0100 Subject: [PATCH] gameServer bugfix. BUG: In case of all the players leave Nest server never know match ended FIX: Now alway send matchEnd to Nest. --- .../game_back/src/server/class/GameSession.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/srcs/requirements/game_server/game_back/src/server/class/GameSession.ts b/srcs/requirements/game_server/game_back/src/server/class/GameSession.ts index 830d0844..542e763e 100644 --- a/srcs/requirements/game_server/game_back/src/server/class/GameSession.ts +++ b/srcs/requirements/game_server/game_back/src/server/class/GameSession.ts @@ -80,6 +80,10 @@ export class GameSession { s.pause(); + if (!s.matchEnded) { + s._matchEnd(en.PlayerSide.noSide, true); + } + s.spectatorsMap.forEach((client) => { clientTerminate(client); }); @@ -224,7 +228,6 @@ export class GameSession { { if (this.playersMap.size !== 2) { - this.matchEnded = true; if (this.playersMap.size != 0) { this._forfeit(); } @@ -237,7 +240,6 @@ export class GameSession { } private _forfeit() { - this.matchEnded = true; console.log("Forfeit Ending"); const gc = this.components; const luckyWinner: ClientPlayer = this.playersMap.values().next().value; @@ -307,8 +309,11 @@ export class GameSession { if (winner === en.PlayerSide.left) { console.log("Player Left WIN"); } - else { + else if (winner === en.PlayerSide.right) { console.log("Player Right WIN"); } + else { + console.log("Match end Draw"); + } } }