Ejemplo n.º 1
0
        public void Run()
        {
            var myStrategy     = new MyStrategy();
            var debugInterface = new DebugInterface(reader, writer);
            var running        = true;

            while (running)
            {
                switch (Model.ServerMessage.ReadFrom(reader))
                {
                case Model.ServerMessage.GetAction message:
                    new Model.ClientMessage.ActionMessage(myStrategy.GetAction(message.PlayerView, message.DebugAvailable ? debugInterface : null)).WriteTo(writer);
                    writer.Flush();
                    break;

                case Model.ServerMessage.Finish message:
                    running = false;
                    break;

                case Model.ServerMessage.DebugUpdate message:
                    myStrategy.DebugUpdate(message.PlayerView, debugInterface);
                    new Model.ClientMessage.DebugUpdateDone().WriteTo(writer);
                    writer.Flush();
                    break;

                default:
                    throw new Exception("Unexpected server message");
                }
            }
        }
Ejemplo n.º 2
0
 public Action GetAction(PlayerView playerView, DebugInterface debugInterface)
 {
     throw new System.NotImplementedException();
 }
Ejemplo n.º 3
0
 public void DebugUpdate(PlayerView playerView, DebugInterface debugInterface)
 {
     debugInterface.Send(new DebugCommand.Clear());
     debugInterface.GetState();
 }