public void HandleMessage(SnakePlayer player, GameMessage message) { switch (message.Type) { case GameMessageType.Action: var direction = (string)message.Content; player.SetDirection(direction); break; } }
public override Player AddPlayer(WebSocket socket, string id) { var random = new Random(); var position = new IntVector2(random.Next(MapWidth), random.Next(MapHeight)); var player = new SnakePlayer(socket, id, position); this.Players.Add(player); player.Game = this; return(player); }
public SnakeGameState GetClientState(SnakePlayer player) { var playerList = new List <SnakeGamePlayerClient>(); foreach (SnakePlayer p in this.Players) { playerList.Add(p.GetClientRepresentation()); } var state = new SnakeGameState { MapHeight = this.MapHeight, MapWidth = this.MapWidth, Players = playerList }; return(state); }