private void OnSelectAvatar() { UStaticWebRequests.DoSelectAvatar(UILogin.CachedUsername, UILogin.token , (jsel) => { OnUnloadThis(); URemoteData.OnReceiveAvatarData(jsel["avatar"].ToString()); LoadAnotherUI <UIMain>(); }, (err) => { if (err == "3") { OnUnloadThis(); LoadAnotherUI <UICreateAvatar>(); } else { UIAlert.Show("选择角色失败," + err); } }, (err) => { UIAlert.Show("选择角色失败," + err); }); }
public IEnumerator ShowPopup(string title, string message, string[] buttons, System.Action <string> pressed) { HideSpinner(); this._buttonPressed = "none"; if (buttons.Length > 2) { Debug.LogWarning("UIPopup.ShowPopup can only show 2 buttons.", gameObject); yield return(null); } #if UNITY_IOS && !UNITY_EDITOR EtceteraBinding.showAlertWithTitleMessageAndButtons(title, message, buttons); #elif UNITY_ANDROID && !UNITY_EDITOR if (buttons.Length < 2) { EtceteraAndroid.showAlert(title, message, buttons[0]); } else { EtceteraAndroid.showAlert(title, message, buttons[0], buttons[1]); } #else cam.enabled = true; customAlert.Show(title, message, buttons); #endif while (this._buttonPressed == "none") { yield return(new WaitForEndOfFrame()); } pressed(_buttonPressed); }
public void SaveAndGo() { if (GameObject.Find("Name").GetComponentInChildren <UIInput>().value == string.Empty) { UIAlert a = UIAlert.create("Need Player Name", "Please input player's name."); a.padding = new Vector2(10f, 10f); a.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => a.Close(true))); a.Show(); return; } //GameObject.Find("Name").GetComponentInChildren<UIInput>().Submit(); //UILabel[] attrs = GameObject.Find("RerollBtn").GetComponent<GetRandomAttr>().attrs; //for (int i = 0; i < attrs.Length; i++) //{ // attrs[i].GetComponent<LabelSaveAs>().Save(); //} Status s = new Status(); s.name = GameObject.Find("Name").GetComponentInChildren <UIInput>().value; s.level = 1; s.curExp = 0; s.expToLevel = 100; s.maxHp = s.curHp = 100; s.strength = int.Parse(GameObject.Find("strValue").GetComponent <UILabel>().text); s.agility = int.Parse(GameObject.Find("agiValue").GetComponent <UILabel>().text); s.intelligent = int.Parse(GameObject.Find("intValue").GetComponent <UILabel>().text); s.Save(); SceneManager.LoadScene("InVilleage"); }
public void Focus() { UIAlert.CloseAll(true); UIAlert alert1 = UIAlert.create("Alert 1", this.message); alert1.padding = new Vector2(10.0f, 10.0f); alert1.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => { alert1.Close(true); })); alert1.Show(new Vector2(-200.0f, 0.0f)); UIAlert alert2 = UIAlert.create("Focused Alert", this.message); alert2.padding = new Vector2(10.0f, 10.0f); alert2.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => { alert2.Close(true); })); alert2.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => { alert2.Close(true); })); alert2.Show(new Vector2(200.0f, 0.0f)); }
private void OnSelectAvatar() { UStaticWebRequests.DoSelectAvatar(UILogin.CachedUsername, UILogin.token , (Action <JObject>)((jsel) => { base.OnUnloadThis(); URemoteData.OnReceiveAvatarData(jsel["avatar"].ToString()); AHotBase.LoadUI <UIMain>(); }), (Action <string>)((err) => { if (err == "3") { base.OnUnloadThis(); AHotBase.LoadUI <UICreateAvatar>(); } else { UIAlert.Show("选择角色失败," + err); } }), (err) => { UIAlert.Show("选择角色失败," + err); }); }
protected override void InitComponents() { UStaticWebRequests.DoSelectAvatar(UILogin.CachedUsername, UILogin.token , (jres) => { var data = new UMRemoteAvatarData(); data.OnFormat(jres); UMRemoteDataManager.Instance.OnAdd(data); UnloadThis(); LoadAnother <UMUIMain>(); }, (err) => { if (err == "3") { UnloadThis(); LoadAnother <UMUICreateAvatar>(); } else { UIAlert.Show("选择角色失败," + err); } }, (err) => { UIAlert.Show("选择角色失败," + err); }); }
protected override void InitComponents() { FindWidget <Text>("textAvatarname").text = URemoteData.AvatarName; FindWidget <Text>("textLevel").text = URemoteData.AvatarLevel; expProgress = FindWidget <Image>("expProgress"); textExp = FindWidget <Text>("textExp"); textExp.text = ""; inputAnswer = FindWidget <InputField>("inputAnswer"); btnGetQuestion = FindWidget <Button>("btnGetQuestion"); btnGetQuestion.onClick.AddListener(() => { btnGetQuestion.gameObject.SetActive(false); UStaticWebRequests.OnWebRequest("Question/GetOne", "username="******"&token=" + UILogin.token, jobj => { ShowWidget("question", true); FindWidget <Text>("textQuestion").text = jobj["q"].ToString(); }, jfail => { ShowWidget("question", false); btnGetQuestion.gameObject.SetActive(true); }); }); ShowWidget("question", false); btnAnswer = FindWidget <Button>("btnAnswer"); btnAnswer.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputAnswer.text)) { return; } UStaticWebRequests.OnWebRequest("Question/Answer", "username="******"&token=" + UILogin.token + "&answer=" + inputAnswer.text, jobj => { if (jobj.ContainsKey("avatar")) { ShowWidget("question", false); URemoteData.OnReceiveAvatarData(jobj["avatar"].ToString()); UIAlert.Show("回答正确!"); btnGetQuestion.gameObject.SetActive(true); } else { UIAlert.Show("回答错误,再好好想想吧。"); } }, jfail => { UIAlert.Show("回答错误,再好好想想吧。"); }); }); URemoteData.ListeningParam(InfoNameDefs.CurExp, ShowCurExp); URemoteData.ListeningParam(InfoNameDefs.MaxExp, ShowCurExp); ShowCurExp(); }
protected override void InitComponents() { var inputUsername = FindWidget <InputField>("inputUsername"); if (!string.IsNullOrEmpty(CachedUsername)) { inputUsername.text = CachedUsername; } var inputPassword = FindWidget <InputField>("inputPassword"); var btnLogin = FindWidget <Button>("btnLogin"); btnLogin.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputUsername.text)) { return; } if (string.IsNullOrEmpty(inputPassword.text)) { return; } btnLogin.enabled = false; var username = inputUsername.text; var password = inputPassword.text; UStaticWebRequests.DoLogin(username, Utils.MD5Hash(password), (jres) => { btnLogin.enabled = true; CachedUsername = jres["username"].ToString(); token = jres["token"].ToString(); UnloadThis(); LoadAnother <UIMain>(); } , (err) => { btnLogin.enabled = true; UIAlert.Show("登录失败," + err); } , (error) => { btnLogin.enabled = true; UIAlert.Show("登录失败,网络错误:" + error); }); }); var btnRegister = FindWidget <Button>("btnRegister"); btnRegister.onClick.AddListener(() => { UnloadThis(); LoadAnother <UIRegister>(); }); }
private void OnResult(string obj) { var jobj = JsonConvert.DeserializeObject(obj) as JObject; var loser = jobj["loser"].ToString(); if (loser != UILogin.CachedUsername) { UIAlert.Show("你赢了。", OnClearRoom, null, true); } else { UIAlert.Show("你输了。", OnClearRoom, null, true); } }
public void OnFormat(JObject jres) { if (jres != null) { if (jres.ContainsKey("err") && jres["err"].ToString() == "0") { JsonFormate(jres); } else if (jres.ContainsKey("err") && jres["err"].ToString() != "0") { UIAlert.Show("解析Json结果出错:" + jres["err"]); } } }
protected override void InitComponents() { var tr = FindWidget <Transform>("expBg"); expSlider = new WExpSlider(); expSlider.SetGameObj(tr.gameObject); btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener(() => { OnUnloadThis(); LoadAnotherUI <UIMain>(); }); textNovel = FindWidget <Text>("textNovel"); textNovel.text = GetCurPage(); btnLeft = FindWidget <Button>("btnLeft"); btnLeft.gameObject.SetActive(iCurPage > 0); btnLeft.onClick.AddListener(() => { var c = Novels.GetContent(iCurSection, iCurPage - 1); if (c == null) { UIAlert.Show("已到达本章第一页。"); btnLeft.gameObject.SetActive(true); return; } textNovel.text = c; iCurPage--; btnRight.gameObject.SetActive(true); }); btnRight = FindWidget <Button>("btnRight"); btnRight.gameObject.SetActive(!Novels.IsLastPage(iCurSection, iCurPage)); btnRight.onClick.AddListener(() => { var c = Novels.GetContent(iCurSection, iCurPage + 1); if (c == null) { UIAlert.Show("已到达本章最后一页。"); btnRight.gameObject.SetActive(false); return; } textNovel.text = c; iCurPage++; btnLeft.gameObject.SetActive(true); }); }
public void Show(int buttons, UIAlert.Layout layout = UIAlert.Layout.HORIZONTAL) { UIAlert.CloseAll(true); UIAlert alert = UIAlert.create(this.title, this.message, layout); alert.padding = new Vector2(10.0f, 10.0f); for (int i = 0; i < buttons; i++) { alert.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => { alert.Close(true); })); } alert.Show(); }
public void Formular() { UIAlert.CloseAll(true); UIAlert alert = UIAlert.create(this.title, this.message, UIAlert.Layout.VERTICAL); alert.padding = new Vector2(10.0f, 10.0f); for (int i = 0; i < 3; i++) { alert.Add <UIInput>("UIAlert-Input-Template"); } alert.Add <UIButton>("UIAlert-Button-Template").onClick.Add(new EventDelegate(() => { alert.Close(true); })); alert.Show(); }
protected override void InitComponents() { UICommonWait.Show(); WebSocketConnector.Instance.OnInit(Utils.WebSocketURL + "username="******"&token=" + UILogin.token , (openEvt) => { UICommonWait.Hide(); LoadAnotherUI <UMUIMain>(); }, (msgEvt) => { }, (errorEvt) => { UIAlert.Show("WSError:" + errorEvt.Message); }, (closeMsg) => { UICommonWait.Hide(); }); }
protected override void InitComponents() { var textUsername = FindWidget <Text>("textUsername"); textUsername.text = UILogin.CachedUsername; menuCell = FindWidget <Button>("menuCell"); menuCell.gameObject.SetActive(false); var btnLogout = FindWidget <Button>("btnLogout"); btnLogout.onClick.AddListener(() => { UWebSender.Instance.OnRequest(Utils.BaseURL + "accountlogout" , "username="******"&token=" + UILogin.token, (res) => { var jres = (JObject)JsonConvert.DeserializeObject(res); var err = jres["err"].ToString(); if (err == "0") { UnloadThis(); LoadAnother <UILogin>(); } else { UIAlert.Show("注销失败:" + Utils.ErrorFormat(err)); } }, (fail) => { UIAlert.Show("web error:" + fail); }); }); var menu = GameObject.Instantiate(menuCell, menuCell.transform.parent); menu.gameObject.SetActive(true); menu.GetComponentInChildren <Text>().text = "孤独的世界"; menu.onClick.AddListener(() => { UnloadThis(); LoadAnother <GameLonelyWorld>(); }); }
protected override void InitComponents() { var textUsername = FindWidget <Text>("textUsername"); textUsername.text = UILogin.CachedUsername; var menuCell = FindWidget <Button>("menuCell"); menuCell.gameObject.SetActive(false); var btnLogout = FindWidget <Button>("btnLogout"); btnLogout.onClick.AddListener(() => { UStaticWebRequests.DoLogout(UILogin.CachedUsername, UILogin.token , (jres) => { UnloadThis(); LoadAnother <UILogin>(); }, (err) => { UIAlert.Show("注销失败:" + Utils.ErrorFormat(err)); }, (err) => { UIAlert.Show("web error:" + err); }); }); foreach (var g in dGames) { var menu = GameObject.Instantiate(menuCell, menuCell.transform.parent); menu.gameObject.SetActive(true); menu.GetComponentInChildren <Text>().text = g.Key; menu.onClick.AddListener(() => { UnloadThis(); g.Value(); }); } }
protected override void InitComponents() { btnDailyCheck = FindWidget <Button>("btnDailyCheck"); btnDailyCheck.onClick.AddListener(() => { AClientApis.OnDailyCheck(); }); var textUsername = FindWidget <Text>("textUsername"); textUsername.text = CakeClient.GetCake("pinfo", CakeAvatar.myID).GetStringValue(ParamNameDefs.AvatarName); textGold = FindWidget <Text>("textGold"); textGold.text = "0"; textDiamond = FindWidget <Text>("textDiamond"); textDiamond.text = "0"; var btnLogout = FindWidget <Button>("btnLogout"); btnLogout.onClick.AddListener(() => { AClientApp.OnDisconnect(); OnUnloadThis(); LoadAnotherUI <UIMinerLogin>(); }); var btnPay = FindWidget <Button>("btnPay"); btnPay.onClick.AddListener(() => { //AClientApis.OnPay(1); AClientApis.OnCreateOrder(1); }); var btnExchange = FindWidget <Button>("btnExchange"); btnExchange.onClick.AddListener(() => { AClientApis.OnExchange(1); }); OnParamUpdateCb(null); RegisterEvent(UEvents.ParamUpdate, OnParamUpdateCb); RegisterEvent(UEvents.EventCreateOrder, OnCreateOrderCb); //var map01 = LoadClass<UMinerMap>("UI/MinerMap/Map01"); AClientApis.OnGetSdata(""); OnRegistAction(str => { UICommonWait.Hide(); var astrs = str.Split(' '); switch (astrs[0]) { case "ProvideContent": UIAlert.Show("ProvideContent " + str); break; case "FailedTransactions": UIAlert.Show("FailedTransactions " + str); break; case "UpdateTransactions": UIAlert.Show("UpdateTransactionss " + str); break; } }); }
protected override void InitComponents() { var inputNickname = FindWidget <InputField>("inputNickname"); var bfemale = false; var btnMale = FindWidget <Button>("btnMale"); var maleSel = FindWidget <Image>(btnMale.transform, "sel"); var btnFemale = FindWidget <Button>("btnFemale"); var femaleSel = FindWidget <Image>(btnFemale.transform, "sel"); btnMale.onClick.AddListener(() => { bfemale = false; femaleSel.enabled = bfemale; maleSel.enabled = !bfemale; }); btnFemale.onClick.AddListener(() => { bfemale = true; femaleSel.enabled = bfemale; maleSel.enabled = !bfemale; }); var btnCreate = FindWidget <Button>("btnCreate"); btnCreate.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputNickname.text)) { return; } UStaticWebRequests.DoCreateAvatar(UILogin.CachedUsername, UILogin.token, inputNickname.text, bfemale ? "1" : "0" , (jcreateres) => { UIAlert.Show("创建角色成功,正在进入游戏。", null, null, true, true); DelayDoSth(() => { UIAlert.Hide(); UStaticWebRequests.DoSelectAvatar(UILogin.CachedUsername, UILogin.token , (jselres) => { var data = new UMRemoteAvatarData(); data.OnFormat(jselres); UMRemoteDataManager.Instance.OnAdd(data); UnloadThis(); LoadAnother <UMUIMain>(); }, (err) => { UIAlert.Show("进入游戏失败," + err); }, (err) => { UIAlert.Show("进入游戏失败," + err); }); }, 3); }, (err) => { UIAlert.Show("创建角色失败," + err); }, (err) => { UIAlert.Show("创建角色失败," + err); }); }); var btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener(() => { UnloadThis(); LoadAnother <UIMain>(); }); }
protected override void InitComponents() { var btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener((UnityEngine.Events.UnityAction)(() => { base.OnUnloadThis(); AHotBase.LoadUI <UILogin>(); })); var inputUsername = FindWidget <InputField>("inputUsername"); var inputEmail = FindWidget <InputField>("inputEmail"); var inputPassword = FindWidget <InputField>("inputPassword"); var inputPasswordConfirm = FindWidget <InputField>("inputPasswordConfirm"); var btnRegister = FindWidget <Button>("btnRegister"); btnRegister.onClick.AddListener((UnityEngine.Events.UnityAction)(() => { if (string.IsNullOrEmpty(inputUsername.text) || string.IsNullOrEmpty(inputPassword.text) || string.IsNullOrEmpty(inputEmail.text)) { return; } if (!inputEmail.text.Contains("@") || !inputEmail.text.Contains(".") || inputEmail.text.IndexOf("@") > inputEmail.text.IndexOf(".")) { UIAlert.Show("请输入合法的邮箱,这将是找回密码的唯一途径。", null, null, true); return; } if (inputUsername.text.Length < 4 || inputUsername.text.Length > 16) { UIAlert.Show("用户名长度应为4-16个字节。", null, null, true); return; } if (inputPasswordConfirm.text != inputPassword.text) { UIAlert.Show("两次输入的密码不一致,请重新输入。", null, null, true); return; } if (inputPassword.text.Length < 6 || inputPassword.text.Length > 16) { UIAlert.Show("密码长度应为6-16个字节。", null, null, true); return; } UStaticWebRequests.DoRegist(inputUsername.text, Utils.MD5Hash(inputPassword.text), inputEmail.text , (Action <Newtonsoft.Json.Linq.JObject>)((jres) => { UIAlert.Show("注册成功,请返回登录界面登录。", (Action)(() => { UILogin.CachedUsername = jres["username"].ToString(); base.OnUnloadThis(); AHotBase.LoadUI <UILogin>(); }), null, true); }) , (err) => { UIAlert.Show("注册失败," + Utils.ErrorFormat(err)); } , (failedRes) => { UIAlert.Show("网络错误:" + failedRes + " 请稍后再试。"); }); })); }
protected override void InitComponents() { var inputUsername = FindWidget <InputField>("inputUsername"); if (!string.IsNullOrEmpty(CachedUsername)) { inputUsername.text = CachedUsername; } var inputPassword = FindWidget <InputField>("inputPassword"); var btnLogin = FindWidget <Button>("btnLogin"); btnLogin.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputUsername.text)) { return; } if (string.IsNullOrEmpty(inputPassword.text)) { return; } btnLogin.enabled = false; var username = inputUsername.text; var password = inputPassword.text; UStaticWebRequests.DoLogin(username, Utils.MD5Hash(password), (jres) => { btnLogin.enabled = true; CachedUsername = jres["username"].ToString(); token = jres["token"].ToString(); UStaticWebRequests.DoSelectAvatar(UILogin.CachedUsername, UILogin.token , (jsel) => { var data = new UMRemoteAvatarData(); data.OnFormat(jsel); UMRemoteDataManager.Instance.OnAdd(data); UnloadThis(); LoadAnother <UIMain>(); }, (err) => { if (err == "3") { UnloadThis(); LoadAnother <UMUICreateAvatar>(); } else { UIAlert.Show("选择角色失败," + err); } }, (err) => { UIAlert.Show("选择角色失败," + err); }); } , (err) => { btnLogin.enabled = true; UIAlert.Show("登录失败," + err); } , (error) => { btnLogin.enabled = true; UIAlert.Show("登录失败,网络错误:" + error); }); }); var btnRegister = FindWidget <Button>("btnRegister"); btnRegister.onClick.AddListener(() => { UnloadThis(); LoadAnother <UIRegister>(); }); }
private void OnDismissed(string obj) { UIAlert.Show("房间已解散。", OnClearRoom, null, true); }
protected override void InitComponents() { textAvatarname = FindWidget <Text>("textAvatarname"); textAvatarname.text = URemoteData.AvatarName; textGold = FindWidget <Text>("textGold"); ShowGold(); btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener((UnityEngine.Events.UnityAction)(() => { base.OnUnloadThis(); AHotBase.LoadUI <UIMain>(); })); var bbig = false; var bsmall = false; var bigorsmall = FindWidget <Transform>("bigorsmall"); var big = FindWidget <Toggle>(bigorsmall.transform, "big"); big.onValueChanged.AddListener(value => { bbig = value; }); var small = FindWidget <Toggle>(bigorsmall.transform, "small"); small.onValueChanged.AddListener(value => { bsmall = value; }); var multis = FindWidget <Transform>("multis"); var curMulti = 0; foreach (var w in ClientValueDefs.CaiDaXiaoMultis) { var t = FindWidget <Toggle>(multis, $"m{w}"); var tw = w; t.onValueChanged.AddListener((value) => { if (value) { curMulti = tw; } else if (curMulti == tw) { curMulti = 0; } }); } var btnConfirm = FindWidget <Button>("btnConfirm"); btnConfirm.onClick.AddListener(() => { if (!bbig && !bsmall) { return; } if (curMulti == 0) { return; } UStaticWebRequests.OnWebRequest("Avatar/CaiDaXiao", $"{UILogin.CachedUsernameAndTokenArguments}&multi={curMulti}&isBig={(bbig ? "1" : "0")}", jobj => { var res = jobj["res"].ToString(); UIAlert.Show($"猜大小结果:{res}"); }); }); URemoteData.ListeningParam(InfoNameDefs.AvatarGold, ShowGold); }
void CheckNewVersion() { var newversionkey = ""; var newversionmustdownkey = ""; var newversionurlkey = ""; var nvandignorekey = ""; #if UNITY_IOS newversionkey = "nvios"; newversionmustdownkey = "nviosm"; newversionurlkey = "nviosurl"; #elif UNITY_ANDROID newversionkey = "nvand"; newversionmustdownkey = "nvandm"; newversionurlkey = "nvandurl"; nvandignorekey = "nvandignore"; #elif UNITY_STANDALONE newversionkey = "nvwin"; newversionmustdownkey = "nvwinm"; newversionurlkey = "nvwinurl"; #endif var remoteVersion = ConfigDownloader.Instance.OnGetValue(newversionkey); if (!string.IsNullOrEmpty(remoteVersion)) { if (VersionIsSmall(Utils_Plugins.Util_GetBundleVersion(), remoteVersion)) { var anvandignore = ConfigDownloader.Instance.OnGetValue(nvandignorekey).Split(','); var newversionmustdown = ConfigDownloader.Instance.OnGetIntValue(newversionmustdownkey); var newversionurl = ConfigDownloader.Instance.OnGetValue(newversionurlkey); if (anvandignore.Contains(Utils_Plugins.Util_GetBundleVersion())) { if (PlayerPrefs.GetString("ignore") == remoteVersion) { ParseConfig(true); return; } UIAlert.Show($"有新版本可更新,本版本({Utils_Plugins.Util_GetBundleVersion()})配置为可忽略更新,点击“确定”按钮更新,点击“取消”按钮跳过版本{remoteVersion}更新。", () => { Application.OpenURL(newversionurl); Invoke("ShowUIAlert", 0.2f); }, false, false, () => { PlayerPrefs.SetString("ignore", remoteVersion); ParseConfig(true); }, trUIAlert, true); return; } if (newversionmustdown == 1) { UIAlert.Show(string.Format("发现最新版本{0},本版本有重要更新,请更新后重试。", remoteVersion), () => { Application.OpenURL(newversionurl); Invoke("ShowUIAlert", 0.2f); }, false, false, () => { Application.Quit(); }, trUIAlert, true); } else { UIAlert.Show(string.Format("发现最新版本{0},是否要更新?", remoteVersion), () => { Application.OpenURL(newversionurl); }, false, false, () => { ParseConfig(true); }, trUIAlert); } } else { ParseConfig(true); } } else { ParseConfig(true); } }
protected override void InitComponents() { var textUsername = FindWidget <Text>("textUsername"); textUsername.text = URemoteData.AvatarName; textGold = FindWidget <Text>("textGold"); RefreshGold(); var menuCell = FindWidget <Button>("menuCell"); menuCell.gameObject.SetActive(false); var btnRank = FindWidget <Button>("btnRank"); btnRank.onClick.AddListener(() => { LoadAnotherUI <UIRank>(); }); var btnCheck = FindWidget <Button>("btnCheck"); btnCheck.onClick.AddListener(() => { UStaticWebRequests.OnWebRequest("Avatar/DailyCheck", $"username={UILogin.CachedUsername}&token={UILogin.token}", jobj => { URemoteData.OnReceiveAvatarData(jobj["avatar"]); }); }); var btnLogout = FindWidget <Button>("btnLogout"); btnLogout.onClick.AddListener(() => { UStaticWebRequests.DoLogout(UILogin.CachedUsername, UILogin.token , (jres) => { OnUnloadThis(); LoadAnotherUI <UILogin>(); }, (err) => { UIAlert.Show("注销失败:" + Utils.ErrorFormat(err)); }, (err) => { UIAlert.Show("web error:" + err); }); }); foreach (var g in dGames) { var menu = GameObject.Instantiate(menuCell, menuCell.transform.parent); menu.gameObject.SetActive(true); menu.GetComponentInChildren <Text>().text = g.Key; menu.onClick.AddListener(() => { OnUnloadThis(); g.Value(); }); } URemoteData.ListeningParam(InfoNameDefs.AvatarGold, RefreshGold); }
protected override void InitComponents() { Cave0 = FindWidget <Transform>("Cave0"); var actionHandler = new ActionHandler(Cave0.gameObject); actionHandler.AddAction(new ActionRun(actionHandler.handler)); addUpdateAction(() => { if (Input.GetMouseButtonDown(0)) { actionHandler.Do <ActionRun>().Play(); } if (Input.GetMouseButtonUp(0)) { actionHandler.Do <ActionRun>().Stop(); } return(false); }); var tr = FindWidget <Transform>("expBg"); expSlider = new WExpSlider(); expSlider.SetGameObj(tr.gameObject); FindWidget <Text>("textAvatarname").text = URemoteData.AvatarName; ShowLevel(); inputAnswer = FindWidget <InputField>("inputAnswer"); btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener(() => { OnUnloadThis(); LoadAnotherUI <UIMain>(); }); btnGetQuestion = FindWidget <Button>("btnGetQuestion"); btnGetQuestion.onClick.AddListener(() => { btnGetQuestion.gameObject.SetActive(false); UStaticWebRequests.OnWebRequest("Question/GetOne", "username="******"&token=" + UILogin.token, jobj => { ShowWidget("question", true); FindWidget <Text>("textQuestion").text = jobj["q"].ToString(); }, jfail => { ShowWidget("question", false); btnGetQuestion.gameObject.SetActive(true); }); }); ShowWidget("question", false); btnAnswer = FindWidget <Button>("btnAnswer"); btnAnswer.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputAnswer.text)) { return; } UStaticWebRequests.OnWebRequest("Question/Answer", "username="******"&token=" + UILogin.token + "&answer=" + inputAnswer.text, jobj => { if (jobj.ContainsKey("avatar")) { ShowWidget("question", false); URemoteData.OnReceiveAvatarData(jobj["avatar"].ToString()); UIAlert.Show("回答正确!"); btnGetQuestion.gameObject.SetActive(true); } else { UIAlert.Show("回答错误,再好好想想吧。"); } }, jfail => { UIAlert.Show("回答错误,再好好想想吧。"); }); }); URemoteData.ListeningParam(InfoNameDefs.AvatarLevel, ShowLevel); }
//private static object lockObj = new object(); private void DoGet(string url, Action <Newtonsoft.Json.Linq.JObject> actionResult, Action <string> actionFailed) { UICommonWait.Show(); new Thread(new ThreadStart(() => { try { var req = (HttpWebRequest)HttpWebRequest.Create(url); req.Method = "GET"; using (WebResponse wr = req.GetResponse()) { var result = new StreamReader(wr.GetResponseStream(), Encoding.UTF8).ReadToEnd(); if (string.IsNullOrEmpty(result)) { UIAlert.Show($"{url}请求返回空。"); return; } Debug.Log($"url {url} result {result}"); //lock (lockObj) { callbacksProducing.Add(() => { //result = FilterResult(result); Debug.Log($"url {url} FilterResult {result.URLDecode()}"); var jres = JsonConvert.DeserializeObject(result) as Newtonsoft.Json.Linq.JObject; actionResult?.Invoke(jres); }); } } } catch (WebException ex) { Debug.Log($"web sender WebException:{ex.Message}\r\n{ex.StackTrace}"); //lock (lockObj) { callbacksProducing.Add(() => { UIAlert.Show($"请求失败:{url} Web崩溃信息:{ex.Message}"); if (actionFailed != null) { actionFailed(ex.Message); } }); } } catch (Exception ex) { Debug.Log($"web sender error:{ex.Message}\r\n{ex.StackTrace}"); //lock (lockObj) { callbacksProducing.Add(() => { UIAlert.Show($"请求失败:{url} 崩溃信息:{ex.Message}"); if (actionFailed != null) { actionFailed(ex.Message); } }); } } } )).Start(); }
//private static object lockObj = new object(); private void DoRequest(string url, string scontent, Action <Newtonsoft.Json.Linq.JObject> actionResult, Action <string> actionFailed, bool bSortArguments, bool bShowCommonWait) { if (bShowCommonWait) { UICommonWait.Show(); } new Thread(new ThreadStart(() => { try { var uri = $"{url}?{scontent}"; Debug.Log($"request {uri}"); var req = (HttpWebRequest)HttpWebRequest.Create(uri); req.Method = "GET"; using (WebResponse wr = req.GetResponse()) { var result = new StreamReader(wr.GetResponseStream(), Encoding.UTF8).ReadToEnd(); if (string.IsNullOrEmpty(result)) { UIAlert.Show($"{url}请求返回空。"); return; } Debug.Log($"url {uri} result {result}"); //lock (lockObj) { callbacksProducing.Add(() => { actionResult(JsonConvert.DeserializeObject(result) as JObject); }); } } } catch (WebException ex) { Debug.Log($"web sender WebException:{ex.Message}\r\n{ex.StackTrace}"); //lock (lockObj) { callbacksProducing.Add(() => { UIAlert.Show($"请求失败:{url} Web崩溃信息:{ex.Message}"); if (actionFailed != null) { actionFailed(ex.Message); } }); } } catch (Exception ex) { Debug.Log($"web sender error:{ex.Message}\r\n{ex.StackTrace}"); //lock (lockObj) { callbacksProducing.Add(() => { UIAlert.Show($"请求失败:{url} 崩溃信息:{ex.Message}"); if (actionFailed != null) { actionFailed(ex.Message); } }); } } } )).Start(); }
protected override void InitComponents() { var inputUsername = FindWidget <InputField>("inputUsername"); if (!string.IsNullOrEmpty(CachedUsername)) { inputUsername.text = CachedUsername; } var inputPassword = FindWidget <InputField>("inputPassword"); var btnLogin = FindWidget <Button>("btnLogin"); btnLogin.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputUsername.text)) { return; } if (string.IsNullOrEmpty(inputPassword.text)) { return; } btnLogin.enabled = false; var username = inputUsername.text; var password = inputPassword.text; UWebSender.Instance.OnRequest(Utils.BaseURL + "accountlogin" , string.Format("username={0}&password={1}", username, Utils.MD5Hash(password)) , (result) => { btnLogin.enabled = true; var jres = (JObject)JsonConvert.DeserializeObject(result); var err = jres["err"].ToString(); if (err == "0") { CachedUsername = jres["username"].ToString(); token = jres["token"].ToString(); UnloadThis(); LoadAnother <UIMain>(); } else { UIAlert.Show("登录失败," + Utils.ErrorFormat(err)); } } , (error) => { btnLogin.enabled = true; Debug.Log("web error " + error); }); }); var btnRegister = FindWidget <Button>("btnRegister"); btnRegister.onClick.AddListener(() => { UnloadThis(); LoadAnother <UIRegister>(); }); }
protected override void InitComponents() { var BestTime = FindWidget <Text>("BestTime"); BestTime.text = ""; var fBestTime = 0d; Action doReorder = null; Action actionRefreshBestTime = () => { BestTime.text = "Best Time:" + fBestTime.ToString("f2"); }; var Time = FindWidget <Text>("Time"); Time.text = ""; var btnRestart = FindWidget <Button>("btnRestart"); btnRestart.gameObject.SetActive(false); btnRestart.onClick.AddListener(() => { doReorder(); }); var btnReturn = FindWidget <Button>("btnReturn"); btnReturn.onClick.AddListener(() => { UnloadThis(); LoadAnother <UIMain>(); }); var CurCount = 0; var Contents = FindWidget <GridLayoutGroup>("Contents"); var cell = FindWidget <RawImage>(Contents.transform, "Schulte"); cell.gameObject.SetActive(false); var lRawPos = new Vector3[cellCount]; var lCells = new GameObject[cellCount]; DateTime startTime; for (var i = 0; i < cellCount; i++) { GameObject c = null; if (lCells[i] == null) { c = GameObject.Instantiate(cell.gameObject, cell.transform.parent); c.gameObject.SetActive(true); var text = FindWidget <Text>(c.transform, "Name"); text.raycastTarget = false; text.text = (i + 1).ToString(); var idx = i; var image = c.GetComponent <RawImage>(); var hotdrag = RegistDragFunc(image, null, () => { Debug.Log("drag"); if (idx != CurCount) { return; } CurCount++; image.color = Color.grey; text.color = Color.grey; if (CurCount == 1) { startTime = DateTime.Now; addUpdateAction(() => { var t = (DateTime.Now - startTime).TotalSeconds; Time.text = "Time:" + t.ToString("f2"); if (CurCount == cellCount) { if (t < fBestTime || fBestTime == 0) { fBestTime = t; actionRefreshBestTime(); UWebSender.Instance.OnRequest(Utils.BaseURL + "gameschulttime", "username="******"&token=" + UILogin.token + "&time=" + fBestTime , (res) => { var jres = (JObject)JsonConvert.DeserializeObject(res); if (jres["err"].ToString() != "0") { UIAlert.Show("同步属性出错:" + jres["err"]); } }, (err) => { UIAlert.Show("同步属性失败:" + err); }); } btnRestart.gameObject.SetActive(true); return(true); } return(false); }); } }, () => { }, () => { }, true, () => { }); hotdrag.disableDragImage = true; lCells[i] = c; } else { c = lCells[i]; } c.SetActive(true); } DelayDoSth(() => { for (var i = 0; i < cellCount; i++) { lRawPos[i] = lCells[i].transform.position; } UWebSender.Instance.OnRequest(Utils.BaseURL + "avatarsingleinfo", "username="******"&token=" + UILogin.token + "&infoname=scTm" , (res) => { var jres = (JObject)JsonConvert.DeserializeObject(res); if (jres["err"].ToString() == "0") { if (jres.ContainsKey("scTm")) { var tm = typeParser.doubleParse(jres["scTm"].ToString()); if (tm > 0.01) { fBestTime = tm; actionRefreshBestTime(); } } } doReorder(); } , (err) => { UIAlert.Show("请求属性失败:" + err); }); }, 0.1f); List <int> lPos = new List <int>(); System.Random rdm = new System.Random(); doReorder = () => { lPos.Clear(); CurCount = 0; Contents.enabled = false; var idx = 0; do { idx = rdm.Next(cellCount); if (lPos.Contains(idx)) { continue; } var image = lCells[lPos.Count].GetComponent <RawImage>(); image.transform.position = lRawPos[idx]; image.color = Color.white; FindWidget <Text>(image.transform, "Name").color = Color.green; lPos.Add(idx); if (lPos.Count == cellCount) { break; } } while (true); }; }
protected override void InitComponents() { var inputUsername = FindWidget <InputField>("inputUsername"); if (!string.IsNullOrEmpty(CachedUsername)) { inputUsername.text = CachedUsername; } var inputPassword = FindWidget <InputField>("inputPassword"); var btnLogin = FindWidget <Button>("btnLogin"); btnLogin.onClick.AddListener(() => { if (string.IsNullOrEmpty(inputUsername.text)) { return; } if (string.IsNullOrEmpty(inputPassword.text)) { return; } btnLogin.enabled = false; var username = inputUsername.text; var password = inputPassword.text; UStaticWebRequests.DoLogin(username, Utils.MD5Hash(password), (jres) => { btnLogin.enabled = true; CachedUsername = username; token = jres["token"].ToString(); OnSelectAvatar(); } , (err) => { btnLogin.enabled = true; UIAlert.Show("登录失败," + err); } , (error) => { btnLogin.enabled = true; UIAlert.Show("登录失败,网络错误:" + error); }); }); var btnRegister = FindWidget <Button>("btnRegister"); btnRegister.onClick.AddListener(() => { OnUnloadThis(); LoadAnotherUI <UIRegister>(); }); if (!string.IsNullOrEmpty(token)) { inputPassword.text = "******"; btnLogin.enabled = false; UStaticWebRequests.OnWebRequest("Login/CheckToken", "username="******"&token=" + token, jobj => { OnSelectAvatar(); }, jfail => { btnLogin.enabled = true; inputPassword.text = ""; token = ""; }); } }
// private IEnumerator DelayInit() { // skip a frame yield return null; // m_AlertWelcome = UIAlertManager.Instance.GetAlert( m_IDAlertWelcome ); if( m_AlertWelcome == null ) { Debug.LogError( "There's not a UIAlert -- IDAlertWelcome:" + m_IDAlertWelcome, this ); yield break; } // m_AlertWelcome.OnClose = this.OnCloseAlertWelcome; m_AlterDrag = UIAlertManager.Instance.GetAlert( m_IDAlterDrag ); if( m_AlterDrag == null) { Debug.LogError( " There's not a UIAlter -- IDAlterDrag:" + m_IDAlterDrag,this); yield break; } m_AlertAutoPlay = UIAlertManager.Instance.GetAlert( m_IDAlterAutoPlay ); if( m_AlertAutoPlay == null) { Debug.LogError( " There's not a UIAlter -- IDAlterAutoPlay:" + m_IDAlterAutoPlay,this); yield break; } m_BtnCloseScene.OnClicked = this.OnBtnCloseSceneClick; m_WidgetMore.OnOpen = OnMoreOpen; m_WidgetMore.OnCloseFinish = OnMoreCloseFinish; yield return new WaitForEndOfFrame(); // m_AlertWelcome.Show( 1.0f ); m_bInited = true; }
private IEnumerator DelayInit() { // yield return null; // m_AlertWelcome = UIAlertManager.Instance.GetAlert( m_IDAlertWelcome ); if( m_AlertWelcome == null ) { Debug.LogError( "There's not a UIAlert -- IDAlertWelcome:" + m_IDAlertWelcome, this ); yield break; } // m_AlertWelcome.OnClose = this.OnCloseAlertWelcome; // m_AlertHandUp = UIAlertManager.Instance.GetAlert( m_IDAlertHandUp ); if( m_AlertHandUp == null ) { Debug.LogError( "There's not a UIAlert -- IDAlertWaveHand:" + m_IDAlertHandUp, this ); yield break; } m_AlertHandUp.OnClose = this.OnCloseAlertWaveHand; // CKinect.CursorController.Instance.DisableCursor(); if( m_bPlayMoiveOnStart ) { HoldBodyTexture(); ActiveMoive(); PlayMoive(); } else { HoldMoive(); ActiveBodyTexture(); } m_AlertWelcome.Show(1.0f); // m_bInited = true; }