public void StartRound() { JOPlayers allPlayers = players as JOPlayers; allPlayers.ResetForRound(); allPlayers.ShufflePlayers(); guessingPlayer = allPlayers.SetNextGuesser(); guessingWord = allWords[0].ToUpper(); allWords.RemoveAt(0); JsonObject message = new JsonObject(); message.Add("gameType", "JO"); message.Add("messageType", "START_ROUND"); message.Add("player", guessingPlayer.name); message.Add("word", guessingWord); server.SendMessage(message); }
public void WordSubmitted(JsonNode message) { JOPlayers allPlayers = players as JOPlayers; JoPlayer player = allPlayers.GetPlayer(message["name"]) as JoPlayer; player.guessedWord = message["word"].ToString().ToUpper(); player.OffScreen(0, () => { int submittedCount = allPlayers.PlayersSubmittedCount(); int totalPlayers = allPlayers.PlayerCount(); if (allPlayers.PlayersSubmittedCount() == allPlayers.PlayerCount()) { // compare all words List <JoPlayer> uniques = allPlayers.GetUniques(); // show off the answers if (uniques.Count > 0) { float delay = 0; for (int i = 0; i < uniques.Count; i++) { JoPlayer uniquePlayer = uniques[i]; uniquePlayer.SetWord(uniquePlayer.guessedWord); uniquePlayer.Show(delay); delay += 0.3f; } } // tell guessing player we are ready for a guess JsonObject rtgMessage = new JsonObject(); rtgMessage.Add("gameType", "JO"); rtgMessage.Add("messageType", "READY_TO_GUESS"); rtgMessage.Add("player", guessingPlayer.name); server.SendMessage(rtgMessage); } }); }