private void HandleMatchFight(KeyValueProtocol receive, KeyValueProtocol send)
 {
     if (CheckToken(receive))
     {
         string username = receive["username"];
         if (!clothes.ContainsKey(username))
         {
             send["status"] = "未创建角色";
         }
         else
         {
             FightServer server = GetWaitServer();
             if (server.fightRoom == null)
             {
                 server.fightRoom      = new FightRoom();
                 server.fightRoom.ip   = server.IP;
                 server.fightRoom.port = server.Port.ToString();
             }
             PlayerInfo pi = new PlayerInfo();
             pi.isReady   = false;
             pi.username  = username;
             pi.character = clothes[username];
             server.fightRoom.AddPlayer(pi);
             if (server.fightRoom.playerInfos.Count == 1)
             {
                 server.fightRoom.isFull = "true";
             }
             send["status"] = "成功";
         }
     }
     else
     {
         send["status"] = "匹配失败";
     }
 }
        public FightServer GetWaitServer()
        {
            FightServer server = null;

            if (waitServers.Count > 0)
            {
                server = waitServers[0];
            }
            else
            {
                server = new FightServer(ip, port++, 6);
                //server.StartServer();
                waitServers.Add(server);
            }
            return(server);
        }
Ejemplo n.º 3
0
        public FightServer GetServer()
        {
            FightServer server = null;

            if (waitServers.Count > 0)
            {
                server = waitServers[0];
                waitServers.Remove(server);
            }
            else
            {
                server = new FightServer();
                server.StartServer(ip, port++, 10);
            }
            runingServers.Add(server);
            return(server);
        }
 private void HandleReadFight(KeyValueProtocol receive, KeyValueProtocol send)
 {
     if (CheckToken(receive))
     {
         string      username = receive["username"];
         FightServer server   = GetServerByUserName(username);
         for (int i = 0; i < server.fightRoom.playerInfos.Count; i++)
         {
             server.fightRoom.playerInfos[i].isReady = true;
         }
         send["status"] = "成功";
     }
     else
     {
         send["status"] = "准备失败";
     }
 }
 private void HandleGetFightRoom(KeyValueProtocol receive, KeyValueProtocol send)
 {
     if (CheckToken(receive))
     {
         string      username = receive["username"];
         FightServer server   = GetServerByUserName(username);
         if (server != null)
         {
             send["fightRoom"] = JsonConvert.SerializeObject(server.fightRoom);
             send["status"]    = "成功";
         }
         else
         {
             send["status"] = "准备失败";
         }
     }
     else
     {
         send["status"] = "准备失败";
     }
 }