public override Player AddPlayer(WebSocket socket, string id) { var player = new PictionaryPlayer(socket, id); this.Players.Add(player); player.Game = this; return(player); }
public PictionaryGameState GetClientState(PictionaryPlayer player) { var playerList = new List <PictionaryPlayerClient>(); foreach (PictionaryPlayer p in this.Players) { playerList.Add(p.GetClientRepresentation()); } var state = new PictionaryGameState { PixelsHeight = this.PixelsHeight, PixelsWidth = this.PixelsWidth, CurrentPlayerID = this.CurrentPlayer.ID, Players = playerList }; return(state); }
public void HandleMessage(PictionaryPlayer player, GameMessage message) { switch (message.Type) { case "DrawStroke": var pixels = (PictionaryPixel[])message.Content; DrawStroke(player, pixels); break; case "Guess": var guess = (string)message.Content; if (guess == this.CurrentWord) { var winnerMessage = new GameMessage("Winner", new { PlayerID = player.ID, Word = this.CurrentWord }); this.SendMessageToAll(winnerMessage); } break; } }
public void DrawStroke(PictionaryPlayer player, PictionaryPixel[] pixels) { SendPixelsToClients(pixels); }