Esempio n. 1
0
        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;
            }
        }
Esempio n. 2
0
        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;
            }
        }