Example #1
0
        public static void ParseMessage(string _message)
        {
            string[] lines = _message.Split("\r\n".ToCharArray());

            switch (lines[0])
            {
            case "***decision-answer":
            case "***decision-answer\r\n":

                DecisionAnswer d = UTIL.ParseDecisionAnswer(lines);
                EnforceDecisionAnswer(d);
                break;

            case "***location":
            case "***location\r\n":
                Vector2 c = UTIL.ParseLocation(lines);
                //TODO find player and update location
                break;

            case "***notification":
            case "***notification\r\n":
                Notification n = UTIL.ParseNotification(lines);
                //TODO find player and update location
                break;

            default:
                BroadcastMeseage(_message);
                //Console.WriteLine("defaultttt" + _message);
                break;
            }
        }
Example #2
0
        public void JsonTestAnswer()
        {
            DecisionAnswer answer = new DecisionAnswer();

            answer.RequestId = Guid.NewGuid();
            answer.Decision  = 1;

            CheckSerialization(answer);
        }
Example #3
0
        private DecisionAnswer ProcessDecision(DecisionRequest decisionRequest)
        {
            var decisionAnswer = new DecisionAnswer();

            decisionAnswer.RequestId = decisionRequest.RequestId;
            var gameState = decisionRequest.GetGameState();

            decisionAnswer.Decision = player.OnMove(gameState);
            return(decisionAnswer);
        }
Example #4
0
        public int OnMove(GameState gameState)
        {
            DecisionRequest request = new DecisionRequest(gameState);

            request.RequestId = Guid.NewGuid();

            DecisionAnswer answer = _client.Query(request) as DecisionAnswer;

            if (answer.RequestId != request.RequestId)
            {
                throw new Exception("Wrong requestid");
            }
            return(answer.Decision);
        }
Example #5
0
        private static void EnforceDecisionAnswer(DecisionAnswer _answer)
        {
            //Console.WriteLine("***" + _answer.GetPlanetaryId());
            for (int i = 0; i < planets.Count; i++)
            {
                //Console.WriteLine("***" );
                //Console.WriteLine(planets[i].GetId());
                if (planets[i].GetId().Equals(_answer.GetPlanetaryId()))
                {
                    i = planets.Count - 1;

                    planets[i].AddVote(_answer.GetVote());
                }
            }
        }