/// <summary> /// Get Ban List for sure that this IP is not ban /// </summary> /// <returns></returns> IEnumerator GetBanList() { yield return(new WaitForSeconds(1)); Dictionary <string, string> wf = new Dictionary <string, string>(); wf.Add("typ", "0"); UnityWebRequest www = UnityWebRequest.Post(bl_LoginProDataBase.Instance.GetUrl(bl_LoginProDataBase.URLType.BanList), wf); yield return(www.SendWebRequest()); if (www.isNetworkError) { print("Error: " + www.error); } else { string text = www.downloadHandler.text; if (text.Contains("result") == true) { string[] splitusers = text.Split("\n"[0]); foreach (string t in splitusers) { if (!string.IsNullOrEmpty(t) && !t.Contains("result")) { string[] splitinfo = t.Split("|"[0]); BanUserInfo bui = new BanUserInfo(); bui.User = splitinfo[0]; bui.Reason = splitinfo[1]; bui.IP = splitinfo[2]; bui.BannedBy = splitinfo[3]; BanList.Add(bui); } } CheckBan(); } else { if (text.Contains("empty") == true) { Debug.Log("Don't have banned users."); if (Login.GuestButton != null) { Login.GuestButton.interactable = true; } } else { Debug.Log(text); } } } if (!bl_GameData.isDataCached) { yield return(StartCoroutine(bl_GameData.AsyncLoadData())); } CheckingBanUI.SetActive(false); www.Dispose(); }
/// <summary> /// Get Ban List for sure that this IP is not ban /// </summary> /// <returns></returns> IEnumerator GetBanList(Action callback) { // yield return new WaitForSeconds(1); bl_ULoginLoadingWindow.Instance.SetText("Checking client status with server..."); Dictionary <string, string> wf = new Dictionary <string, string>(); wf.Add("typ", "0"); UnityWebRequest www = UnityWebRequest.Post(bl_LoginProDataBase.Instance.GetUrl(bl_LoginProDataBase.URLType.BanList), wf); yield return(www.SendWebRequest()); if (www.isNetworkError) { print("Error: " + www.error); } else { string text = www.downloadHandler.text; if (text.Contains("result") == true) { string[] splitusers = text.Split("\n"[0]); foreach (string t in splitusers) { if (!string.IsNullOrEmpty(t) && !t.Contains("result")) { string[] splitinfo = t.Split("|"[0]); BanUserInfo bui = new BanUserInfo(); bui.name = splitinfo[0]; bui.reason = splitinfo[1]; bui.ip = splitinfo[2]; bui.by = splitinfo[3]; BanList.Add(bui); } } CheckBan(); } else { if (text.Contains("empty") == true) { Debug.Log("Don't have banned users."); /* if (Login.GuestButton != null) { Login.GuestButton.interactable = true; Login.GuestButton.gameObject.SetActive(true); } * Login.onReady?.Invoke();*/ } else { Debug.Log(text); } } } if (!bl_GameData.isDataCached) { yield return(StartCoroutine(bl_GameData.AsyncLoadData())); } callback?.Invoke(); www.Dispose(); }
/// <summary> /// /// </summary> public void VerifyIP(Action callback) { var ip = bl_LoginPro.Instance.CurrentIp; if (string.IsNullOrEmpty(ip)) { callback?.Invoke(); return; } bl_ULoginLoadingWindow.Instance.SetText("Checking client status with server..."); var wf = CreateForm(false); wf.AddField("typ", 2); wf.AddField("ip", ip); WebRequest.POST(bl_LoginProDataBase.Instance.GetUrl(bl_LoginProDataBase.URLType.BanList), wf, (result) => { if (result.isError) { result.PrintError(); } else { if (result.HTTPCode == 202) //found user IP in the banned users { banUserInfo = result.FromJson <BanUserInfo>(); if (banUserInfo == null) { Debug.LogWarning($"Detected ban but receive wrong response from server: {result.RawText}"); callback?.Invoke(); return; } BannedText.text = string.Format("You has been permanently <b>banned</b> from the game due {0} by {1}.", banUserInfo.reason, banUserInfo.by); BannedUI.SetActive(true); bl_ULoginLoadingWindow.Instance.SetActive(false); result.Print(); return; } else { //User IP is clean } } callback?.Invoke(); }); }
/// <summary> /// Get Ban List for sure that this IP is not ban /// </summary> /// <returns></returns> IEnumerator GetBanList() { WWW www = new WWW(BanListURL); yield return(www); if (www.error != null) { print("There was an error getting the ban list: " + www.error); } else { string text = www.text; if (text != "Emty") { string[] splitusers = text.Split("\n"[0]); foreach (string t in splitusers) { if (t != string.Empty && t != null) { string[] splitinfo = t.Split("|"[0]); BanUserInfo bui = new BanUserInfo(); bui.m_Name = splitinfo[0]; bui.m_reason = splitinfo[1]; bui.m_ip = splitinfo[2]; bui.m_by = splitinfo[3]; BanList.Add(bui); } } } else { Debug.Log("Ban List is Emty"); } } yield return(new WaitForSeconds(0.2f)); ReceiveBanList = true; StartCoroutine(CheckIsReady()); }
/// <summary> /// /// </summary> /// <returns></returns> IEnumerator GetBanList() { WWW www = new WWW(BanListURL); yield return www; if (www.error != null) { print("There was an error getting the ban list: " + www.error); } else { string text = www.text; if (text != "Emty") { string[] splitusers = text.Split("\n"[0]); foreach (string t in splitusers) { if (t != string.Empty && t != null) { string[] splitinfo = t.Split("|"[0]); BanUserInfo bui = new BanUserInfo(); bui.m_Name = splitinfo[0]; bui.m_reason = splitinfo[1]; bui.m_ip = splitinfo[2]; bui.m_by = splitinfo[3]; BanList.Add(bui); } } } else { Debug.Log("Ban List is Emty"); } } yield return new WaitForSeconds(0.2f); ReceiveBanList = true; StartCoroutine(CheckIsReady()); }