protected override void OnReceive(MessageToServer msg) { #if DEBUG Console.WriteLine($"Recieve message: from teamID {msg.TeamID}, playerID {msg.PlayerID}: {msg.MessageType}"); #endif switch (msg.MessageType) { case MessageType.AddPlayer: SendAddPlayerResponse(msg, AddPlayer(msg)); break; case MessageType.Move: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.MovePlayer(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Attack: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Attack(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Pick: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Pick(communicationToGameID[msg.TeamID, msg.PlayerID], ConvertTool.ToGamePropType(msg.PropType)); } break; case MessageType.Use: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Use(communicationToGameID[msg.TeamID, msg.PlayerID]); } break; case MessageType.Throw: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Throw(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Send: SendMessageToTeammate(msg); break; } }
private void OnReceive(MessageToServer msg) { switch (msg.MessageType) { case MessageType.AddPlayer: SendAddPlayerResponse(msg, AddPlayer(msg)); break; case MessageType.Move: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.MovePlayer(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Attack: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Attack(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Pick: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Pick(communicationToGameID[msg.TeamID, msg.PlayerID], ConvertTool.ToGamePropType(msg.PropType)); } break; case MessageType.Use: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Use(communicationToGameID[msg.TeamID, msg.PlayerID]); } break; case MessageType.Throw: if (ValidTeamIDAndPlayerID(msg.TeamID, msg.PlayerID)) { game.Throw(communicationToGameID[msg.TeamID, msg.PlayerID], msg.TimeInMilliseconds, msg.Angle); } break; case MessageType.Send: SendMessageToTeammate(msg); break; } }