Fix turn when player disconnect
All checks were successful
gitea/minesweeper-backend/pipeline/head This commit looks good
All checks were successful
gitea/minesweeper-backend/pipeline/head This commit looks good
This commit is contained in:
parent
08cf12ad99
commit
e1c0ae1953
6
index.js
6
index.js
@ -54,7 +54,13 @@ const playerRoomMap = new Map();
|
||||
const handleDisconnect = (socket, playerRoomMap) => {
|
||||
const playerRoom = playerRoomMap.get(socket.id);
|
||||
if (playerRoom) {
|
||||
if (playerRoom.currentPlayer === socket.id) {
|
||||
playerRoom.currentPlayer = getNextPlayer(playerRoom.players, socket.id);
|
||||
}
|
||||
playerRoom.players = playerRoom.players.filter(user => user.socketId !== socket.id);
|
||||
if (checkLoseCondition(playerRoom.players)) {
|
||||
playerRoom.gameState = "lost";
|
||||
}
|
||||
io.to(playerRoom.id).emit('roomUserLeft', buildRoomView(playerRoom));
|
||||
}
|
||||
playerRoomMap.delete(socket.id);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user