}
this.broadcast_event_object('ambiguities', this.state.ambiguities);
+
+ /* Notify all players of every player that is judging. */
+ for (let player_name of this.state.players_answered) {
+ this.state.players_judging.add(player_name);
+ this.broadcast_event_object('player-judging', player_name);
+ }
}
reset_judging_timeout() {
/* Perform a (non-strict) majority ruling on equivalencies,
* dropping all that didn't get enough votes. */
- const quorum = Math.floor((this.players.length + 1)/2);
+ const quorum = Math.floor((this.state.players_judged.length + 1)/2);
const agreed_equivalencies = Object.values(this.equivalencies).filter(
eq => eq.count >= quorum);
request.body.word_groups);
response.json(result);
- /* If every registered player has judged, then there's no need to
- * wait for anything else. */
- if (game.state.players_judged.length >= game.players.length)
+ /* If every player who answered has also judged, then there's no
+ * need to wait for anything else. */
+ if (game.state.players_judged.length >= game.state.players_answered.length)
game.compute_scores();
});