diff --git a/client/src/Board.js b/client/src/Board.js index a1dc7c2..b1394de 100644 --- a/client/src/Board.js +++ b/client/src/Board.js @@ -15,7 +15,7 @@ const Board = ({ table, game }) => { const [transform, setTransform] = useState(1); - const + const hexRatio = 1.1547, tileWidth = 67, tileHalfWidth = tileWidth * 0.5, diff --git a/client/src/Trade.css b/client/src/Trade.css index 1627ffd..dfb1df8 100644 --- a/client/src/Trade.css +++ b/client/src/Trade.css @@ -7,7 +7,6 @@ top: 0; justify-content: center; align-items: center; - background: rgba(0,0,0,0.5); z-index: 1000; } diff --git a/client/src/ViewCard.css b/client/src/ViewCard.css index 71cecf7..e012e0f 100644 --- a/client/src/ViewCard.css +++ b/client/src/ViewCard.css @@ -7,7 +7,6 @@ top: 0; justify-content: center; align-items: center; - background: rgba(0,0,0,0.5); z-index: 1000; } diff --git a/server/routes/games.js b/server/routes/games.js index fbeadd7..899256b 100755 --- a/server/routes/games.js +++ b/server/routes/games.js @@ -2687,6 +2687,7 @@ const resetGame = (game) => { console.log(`Reseting ${game.id}`); Object.assign(game, { + startTime: Date.now(), state: 'lobby', turn: 0, sheep: 19, @@ -2699,7 +2700,13 @@ const resetGame = (game) => { roads: [] }, developmentCards: [], + chat: [], turn: {}, + pipOrder: game.pipOrder, + borderOrder: game.borderOrder, + tileOrder: game.tileOrder, + signature: game.signature, + players: game.players }); delete game.longestRoad; @@ -2707,7 +2714,12 @@ const resetGame = (game) => { delete game.longestRoadLength; delete game.winner; delete game.longestRoad; - + + /* Reset all player data */ + for (let color in game.players) { + clearPlayer(game.players[color]); + } + /* Populate the game corner and road placement data as cleared */ for (let i = 0; i < layout.corners.length; i++) { game.placements.corners[i] = { @@ -2745,11 +2757,6 @@ const resetGame = (game) => { shuffle(game.developmentCards); - /* Reset all player data */ - for (let color in game.players) { - clearPlayer(game.players[color]); - } - /* Ensure sessions are connected to player objects */ for (let key in game.sessions) { const session = game.sessions[key]; @@ -2786,21 +2793,28 @@ const createGame = (id) => { } const game = { - id: id + id: id, + developmentCards: [], + players: { + O: newPlayer(), + R: newPlayer(), + B: newPlayer(), + W: newPlayer() + } }; - console.log(`New game created with Beginner's Layout: ${game.id}`); - addChatMessage(game, null, - `New game created with Beginner's Layout: ${game.id}`); - [ "pips", "borders", "tiles" ].forEach((field) => { game[field] = staticData[field] }); + setBeginnerGame(game); resetGame(game); + console.log(`New game created with Beginner's Layout: ${game.id}`); + addChatMessage(game, null, + `New game created with Beginner's Layout: ${game.id}`); + games[game.id] = game; - setBeginnerGame(game); return game; }; @@ -2845,7 +2859,7 @@ const setBeginnerGame = (game) => { game.signature = gameSignature(game); } -const shuffleBoard = (game, beginnersGame) => { +const shuffleBoard = (game) => { pickRobber(game); const seq = [];