Deal and display cards to players, click a button to say you are dead and relay this message to everyone, small code improvements

This commit is contained in:
Alec Maier
2019-08-31 18:22:39 -04:00
parent f873540171
commit 3d5eb360a2
7 changed files with 241 additions and 52 deletions

View File

@@ -39,7 +39,7 @@ io.on('connection', function(socket) {
onSucess();
});
socket.on('joinGame', function(playerInfo) {
activeGames[Object.keys(activeGames).find((key) => key === playerInfo.code)].players[socket.id] = {name: playerInfo.name, id: playerInfo.id};
activeGames[Object.keys(activeGames).find((key) => key === playerInfo.code)].players.push({name: playerInfo.name, id: playerInfo.id});
});
socket.on('requestState', function(data) {
if(Object.keys(socket.rooms).includes(data.code) === false) {
@@ -53,5 +53,18 @@ io.on('connection', function(socket) {
io.to(data.code).emit('state', activeGames[Object.keys(activeGames).find((key) => key === data.code)]);
}
});
socket.on('startGame', function(gameData) {
let game = activeGames[Object.keys(activeGames).find((key) => key === gameData.code)];
game.state = "started";
game.players = gameData.players;
io.to(gameData.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);
game.players.find((player) => player.id === id).dead = true;
game.message = player.name + ", a " + player.card.role + ", has been killed!";
io.to(code).emit('state', game);
});
});