From b8d02c6893ed388847bc37d20149e46dfd9c6ce9 Mon Sep 17 00:00:00 2001 From: Alec Maier Date: Tue, 10 Sep 2019 22:36:35 -0400 Subject: [PATCH] Fixed bug in end-game detection --- assets/images/roles/Villager.png | Bin 3071 -> 0 bytes assets/images/roles/villager.png | Bin 0 -> 3004 bytes server.js | 12 ++++++++---- 3 files changed, 8 insertions(+), 4 deletions(-) delete mode 100644 assets/images/roles/Villager.png create mode 100644 assets/images/roles/villager.png diff --git a/assets/images/roles/Villager.png b/assets/images/roles/Villager.png deleted file mode 100644 index 63e1e8033d6439cf93a36c578757af2dc7e35314..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3071 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 cx=CRX6t;U`%0ASz`fv@n96NQi!qGqR|C4rsj{pDw literal 0 HcmV?d00001 diff --git a/server.js b/server.js index 7b568b7..29de817 100644 --- a/server.js +++ b/server.js @@ -61,25 +61,29 @@ server.listen(process.env.PORT || 5000, function() { function teamWon(game) { let wolvesAlive = 0; let villagersAlive = 0; + let totalAlive = 0; let hunterAlive = false; for (const player of game.players) { if (player.card.team === "good" && !player.dead) { - villagersAlive++; + villagersAlive ++; } if (player.card.role === "Werewolf" && !player.dead) { - wolvesAlive++; + wolvesAlive ++; } if (player.card.role === "Hunter" && !player.dead) { hunterAlive = true; } + if (!player.dead) { + totalAlive ++; + } } if (wolvesAlive === 0) { return "village" } - if ((wolvesAlive === villagersAlive) && (wolvesAlive + villagersAlive !== 2)) { + if ((wolvesAlive === villagersAlive) && (totalAlive !== 2)) { return "wolf"; } - if (wolvesAlive + villagersAlive === 2) { + if (totalAlive === 2) { return hunterAlive ? "village" : "wolf" } return false;