X-Git-Url: https://git.cworth.org/git?p=lmno.games;a=blobdiff_plain;f=empathy%2Fempathy.jsx;h=b03d697ef1cfd2561ffc1b223d4939e3b616fa4a;hp=39461898cf5efd9d7478a2acd68a333c791be74c;hb=ae931528b06e796b57147b974b669e980b18c51f;hpb=ff43730d806faf03b488ee59c49d576686696d6c diff --git a/empathy/empathy.jsx b/empathy/empathy.jsx index 3946189..b03d697 100644 --- a/empathy/empathy.jsx +++ b/empathy/empathy.jsx @@ -60,6 +60,8 @@ events.addEventListener("game-state", event => { } window.game.set_active_prompt(state.active_prompt); + + window.game.set_scores(state.scores); }); events.addEventListener("prompt", event => { @@ -74,6 +76,18 @@ events.addEventListener("start", event => { window.game.set_active_prompt(prompt); }); +events.addEventListener("answered", event => { + const players_answered = JSON.parse(event.data); + + window.game.set_players_answered(players_answered); +}); + +events.addEventListener("scores", event => { + const scores = JSON.parse(event.data); + + window.game.set_scores(scores); +}); + /********************************************************* * Game and supporting classes * *********************************************************/ @@ -336,7 +350,8 @@ class ActivePrompt extends React.PureComponent { if (this.state.submitted) return (
-

Answers submitted

+

{this.props.players_answered}/ + {this.props.players_total} players have responded

Please wait for the rest of the players to submit their answers.

@@ -390,7 +405,9 @@ class Game extends React.PureComponent { game_info: {}, player_info: {}, other_players: [], - prompts: [] + prompts: [], + active_prompt: null, + players_answered: 0 }; } @@ -438,12 +455,65 @@ class Game extends React.PureComponent { }); } + set_players_answered(players_answered) { + this.setState({ + players_answered: players_answered + }); + } + + set_scores(scores) { + this.setState({ + scores: scores + }); + } + render() { const state = this.state; + const players_total = 1 + state.other_players.length; + + if (state.scores) { + return ( +
+

Scores

+ +

Words submitted

+ + +
+ ); + } if (state.active_prompt) { return ; }