const { logger } = require('../../utils/logger'); module.exports = function(io, socket, gameState) { // 방 나가기 이벤트 socket.on('leaveRoom', function(roomData) { try { const roomId = roomData.roomId; socket.leave(roomId); socket.emit('exitRoom'); socket.to(roomId).emit('endGame'); // 대기방 목록에서 제거 gameState.rooms = gameState.rooms.filter(room => room.roomId !== roomId); // 매핑 정보 삭제 gameState.socketRooms.delete(socket.id); logger.info(`방 나가기 처리: 플레이어 ${socket.id}, 방 ${roomId}`); } catch (err) { logger.error(`방 나가기 처리 중 오류: ${err}`); socket.emit('error', { message: "방 나가기 처리 중 오류가 발생했습니다." }); } }); };