diff --git a/assets/images/pause-button.svg b/assets/images/pause-button.svg new file mode 100644 index 0000000..5e740bf --- /dev/null +++ b/assets/images/pause-button.svg @@ -0,0 +1,8 @@ + diff --git a/assets/images/play-button.svg b/assets/images/play-button.svg new file mode 100644 index 0000000..e0fd135 --- /dev/null +++ b/assets/images/play-button.svg @@ -0,0 +1,7 @@ + diff --git a/server.js b/server.js index f601d5c..1914044 100644 --- a/server.js +++ b/server.js @@ -64,6 +64,21 @@ io.on('connection', function(socket) { } io.to(gameData.code).emit('state', game); }); + socket.on('pauseGame', function(code) { + let game = activeGames[Object.keys(activeGames).find((key) => key === code)]; + game.pauseTime = (new Date()).toJSON(); + game.paused = true; + io.to(code).emit('state', game); + }); + socket.on('resumeGame', function(code) { + let game = activeGames[Object.keys(activeGames).find((key) => key === code)]; + game.paused = false; + let newTime = new Date(game.endTime).getTime() + (new Date().getTime() - new Date(game.pauseTime).getTime()); + let newDate = new Date(game.endTime); + newDate.setTime(newTime); + game.endTime = newDate.toJSON(); + io.to(code).emit('state', game); + }); socket.on('killPlayer', function(id, code) { let game = activeGames[Object.keys(activeGames).find((key) => key === code)]; let player = game.players.find((player) => player.id === id); diff --git a/static/game.js b/static/game.js index 48b0d92..8d9b748 100644 --- a/static/game.js +++ b/static/game.js @@ -55,9 +55,6 @@ function getLiveCount() { } function renderGame() { - if (currentGame.time) { - renderClock(); - } const player = currentGame.players.find((player) => player.id === sessionStorage.getItem("id")); const card = player.card; @@ -66,9 +63,10 @@ function renderGame() { document.getElementById("launch").setAttribute("class", "hidden"); document.getElementById("game-container").setAttribute("class", "game-container"); document.getElementById("game-container").innerHTML = - "