void OnChoosePage(ServerPageData data) { GameCenter.loginMng.CurServerPage = data.curPage; if (serverChoiceDic.ContainsKey(data.curPage)) { ShowServers(); } else { GetServerInfo(data.curPage); } }
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(); }
public void SetData(ServerPageData pageData, System.Action <ServerPageData> _callback) { if (pageLab != null) { pageLab.text = "[b]" + pageData.CurPageName; } if (toggle != null) { EventDelegate.Add(toggle.onChange, () => { if (toggle.value && _callback != null) { _callback(pageData); } }); } }
/// <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("服务器验证失败或正在维护"); } } } }