Files
DADProject/websockets/state/game.js
T

42 lines
894 B
JavaScript

import BiscaGame from "../classes/BiscaGame.js";
const activeGames = new Map();
const createGame = (id, type, player1, player2) => {
const existingGame = activeGames.get(id);
if (existingGame) {
console.log(
`[Game State] Game ${id} already exists, returning existing instance`,
);
return existingGame;
}
const game = new BiscaGame(id, type, player1, player2);
game.init();
activeGames.set(id, game);
console.log(`[Game State] Game created: ${id} (Type: ${type})`);
return game;
};
const getGame = (id) => {
return activeGames.get(id);
};
const removeGame = (id) => {
const game = activeGames.get(id);
if (game) {
game.stopTimer();
activeGames.delete(id);
console.log(`[Game State] Game removed: ${id}`);
}
};
module.exports = {
createGame,
getGame,
removeGame,
};