Beispiel #1
0
 public void SetData(ServerChoiceData _data, System.Action <ServerChoiceData> _callback)
 {
     ClearData();
     if (nameLab != null)
     {
         nameLab.text = "[b]" + _data.serverName;
     }
     if (flagObj != null)
     {
         for (int i = 0, length = flagObj.Length; i < length; i++)
         {
             if (flagObj[i] != null)
             {
                 flagObj[i].SetActive(i == (_data.serverStatus - 1));
             }
         }
     }
     if (toggle != null)
     {
         toggle.optionCanBeNone = false;
         EventDelegate.Add(toggle.onChange, () =>
         {
             if (toggle.value && _callback != null)
             {
                 _callback(_data);
             }
         });
     }
 }
Beispiel #2
0
 void SetServerData(string wwwText)
 {
     if (!serverChoiceDic.ContainsKey(GameCenter.loginMng.CurServerPage))
     {
         serverChoiceDic[GameCenter.loginMng.CurServerPage] = new List <ServerChoiceData>();
     }
     else
     {
         serverChoiceDic[GameCenter.loginMng.CurServerPage].Clear();
     }
     serverPageList.Clear();
     if (wwwText != string.Empty && wwwText != "")
     {
         LitJson.JsonData jsonData = LitJson.JsonMapper.ToObject(wwwText);
         if (jsonData != null && wwwText.Contains("state"))
         {
             if ((int)jsonData["state"] == 1)
             {
                 if (wwwText.Contains("data") && wwwText.Contains("page"))
                 {
                     int totalSize = (int)jsonData["data"]["page"]["total"];
                     int totalPage = (totalSize % 10 == 0) ? totalSize / 10 : (totalSize / 10 + 1);
                     for (int i = 0; i <= totalPage; i++)
                     {
                         ServerPageData data = new ServerPageData(i);
                         serverPageList.Add(data);
                     }
                 }
                 for (int i = 0; i < jsonData["data"]["serverList"].Count; i++)
                 {
                     ServerChoiceData refData = new ServerChoiceData();
                     refData.serverID     = (jsonData["data"]["serverList"][i]["svrid"]).ToString();
                     refData.serverName   = (string)jsonData["data"]["serverList"][i]["svrname"];
                     refData.serverStatus = (int)jsonData["data"]["serverList"][i]["status"];
                     //refData.serverIP = (string)jsonData["serverinfos"][i]["ip"];
                     //refData.serverPort = (string)jsonData["serverinfos"][i]["port"];
                     serverChoiceDic[GameCenter.loginMng.CurServerPage].Add(refData);
                 }
             }
             else                //服务器维护或者认证失败
             {
                 Debug.Log("服务器验证失败或正在维护");
             }
         }
     }
     ShowServers();
 }
Beispiel #3
0
 /// <summary>
 /// 保存自己的历史服
 /// </summary>
 void SetMyServerInfo(string wwwText)
 {
     if (!serverChoiceDic.ContainsKey(0))
     {
         serverChoiceDic[0] = new List <ServerChoiceData>();
     }
     else
     {
         serverChoiceDic[0].Clear();
     }
     serverPageList.Clear();
     if (!string.IsNullOrEmpty(wwwText))
     {
         LitJson.JsonData jsonData = LitJson.JsonMapper.ToObject(wwwText);
         if (jsonData != null && wwwText.Contains("state"))
         {
             if ((int)jsonData["state"] == 1)
             {
                 //总页数
                 if (wwwText.Contains("data") && wwwText.Contains("page") && wwwText.Contains("total"))
                 {
                     int totalSize = (int)jsonData["data"]["page"]["total"];
                     int totalPage = (totalSize % 10 == 0) ? totalSize / 10 : (totalSize / 10 + 1);
                     for (int i = 0; i <= totalPage; i++)
                     {
                         ServerPageData data = new ServerPageData(i);
                         serverPageList.Add(data);
                     }
                 }
                 //推荐服or上次登陆服
                 if (wwwText.Contains("data") && wwwText.Contains("lastlogin"))
                 {
                     GameCenter.loginMng.LoginServerID   = jsonData["data"]["lastlogin"]["svrNO"].ToString();
                     GameCenter.loginMng.LoginServerName = jsonData["data"]["lastlogin"]["svrName"].ToString();
                     lastServerData              = new ServerChoiceData();
                     lastServerData.serverID     = jsonData["data"]["lastlogin"]["svrNO"].ToString();
                     lastServerData.serverName   = jsonData["data"]["lastlogin"]["svrName"].ToString();
                     lastServerData.serverStatus = (int)jsonData["data"]["lastlogin"]["state"];
                     if (lastLoginServer != null)
                     {
                         lastLoginServer.SetData(lastServerData, null);
                     }
                 }
                 //历史服
                 if (wwwText.Contains("data") && wwwText.Contains("history") && jsonData["data"]["history"] != null)
                 {
                     for (int i = 0; i < jsonData["data"]["history"].Count; i++)
                     {
                         //string[] historyItem = ((string)jsonData["history"][i]).Split('|');
                         ServerChoiceData refData = new ServerChoiceData();
                         refData.serverID     = jsonData["data"]["history"][i]["svrNO"].ToString();
                         refData.serverName   = jsonData["data"]["history"][i]["svrName"].ToString();
                         refData.serverStatus = (int)jsonData["data"]["history"][i]["state"];
                         serverChoiceDic[0].Add(refData);
                     }
                 }
             }
             else
             {
                 Debug.Log("服务器验证失败或正在维护");
             }
         }
     }
 }
Beispiel #4
0
 void OnChooseServer(ServerChoiceData data)
 {
     GameCenter.loginMng.LoginServerName = data.serverName;
     GameCenter.loginMng.LoginServerID   = data.serverID;
 }