From 8be14ac5468b5ab128025b0b1a0388bea750e35c Mon Sep 17 00:00:00 2001 From: ntr Date: Wed, 24 Oct 2018 16:19:27 +1100 Subject: [PATCH] quit game and clear interval --- client/package.json | 3 ++- client/src/components/body.component.jsx | 10 ++++++++-- client/src/socket.jsx | 9 +++++++++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/client/package.json b/client/package.json index 6dfefe3f..e0fedee3 100755 --- a/client/package.json +++ b/client/package.json @@ -19,9 +19,10 @@ "key": "^0.1.11", "keymaster": "^1.6.2", "lodash": "^4.17.11", + "parcel": "^1.9.7", + "phaser": "^3.15.1", "preact": "^8.3.1", "preact-redux": "^2.0.3", - "parcel": "^1.9.7", "redux": "^4.0.0" }, "devDependencies": { diff --git a/client/src/components/body.component.jsx b/client/src/components/body.component.jsx index 2fb12551..787296c5 100755 --- a/client/src/components/body.component.jsx +++ b/client/src/components/body.component.jsx @@ -11,8 +11,14 @@ const GameContainer = require('./game.container'); const addState = connect( function receiveState(state) { - const {game} = state; - return {game}; + const { game, ws } = state; + + if (!game) { + console.log('out of game'); + ws.clearGameStateInterval(); + } + + return { game }; }, function receiveDispatch(dispatch) { function setGame(game) { diff --git a/client/src/socket.jsx b/client/src/socket.jsx index d2886360..d01dba3c 100755 --- a/client/src/socket.jsx +++ b/client/src/socket.jsx @@ -151,6 +151,14 @@ function createSocket(store) { } + // ------------- + // Events + // ------------- + + function clearGameStateInterval() { + clearInterval(gameStateTimeout); + } + // ------------- // Handling // ------------- @@ -182,6 +190,7 @@ function createSocket(store) { } return { + clearGameStateInterval, sendAccountLogin, sendAccountRegister, sendGameState,