| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | using UI.RoleInfo;using System.Text.RegularExpressions;using ET;namespace GFGGame{    public class ChangeNameView : BaseWindow    {        private UI_ChangeNameUI _ui;        public override void Dispose()        {            if (_ui != null)            {                _ui.Dispose();                _ui = null;            }            base.Dispose();        }        protected override void OnInit()        {            base.OnInit();            packageName = UI_ChangeNameUI.PACKAGE_NAME;            _ui = UI_ChangeNameUI.Create();            this.viewCom = _ui.target;            this.viewCom.Center();            this.modal = true;            _ui.m_btnSure.onClick.Add(OnClickBtnSureAsync);            // _ui.m_btnDice.onClick.Add(RandomRoleName);        }        protected override void OnShown()        {            base.OnShown();            this._ui.m_inputName.text = "";            _ui.m_txtNeed.text = string.Format("改名卡:{0}/{1}", ItemDataManager.GetItemNum(GlobalCfgArray.globalCfg.changeNameCostArr[0]), GlobalCfgArray.globalCfg.changeNameCostArr[1]);            ItemCfg cfg = ItemCfgArray.Instance.GetCfg(GlobalCfgArray.globalCfg.changeNameCostArr[0]);            _ui.m_loaIcon.url = ResPathUtil.GetCommonGameResPath(cfg.res); ;        }        protected override void OnHide()        {            base.OnHide();        }        private void OnClickBtnSureAsync()        {            string roleName = _ui.m_inputName.text;            if (string.IsNullOrEmpty(roleName))            {                PromptController.Instance.ShowFloatTextPrompt("角色名不能为空");                return;            }            if (roleName.Length > GFGGame.GlobalConst.MaxNameLen)            {                PromptController.Instance.ShowFloatTextPrompt("角色名最多七个字");                return;            }            if (!Regex.IsMatch(roleName, @"^[\u4e00-\u9fa5_0-9]+$"))//角色起名仅允许汉字、数字、底划线            {                PromptController.Instance.ShowFloatTextPrompt("角色名仅允许汉字、数字、下划线");                return;            }            string costName = ItemUtil.GetItemName(GlobalCfgArray.globalCfg.changeNameCostArr[0]);            int count = GlobalCfgArray.globalCfg.changeNameCostArr[1];            AlertUI.Show(string.Format("是否花费{0}个{1}改名1次?", count, costName))                .SetLeftButton(true).SetRightButton(true, "确定", async (object data) =>                {                    bool result = await RoleInfoSProxy.ReqModifyRoleName(roleName);                    if (result)                    {                        this.Hide();                    }                });        }        private async void RandomRoleName()        {            (int result, string name) = await LoginHelper.ReqRandomRoleName();            if (result == ErrorCode.ERR_Success)            {                _ui.m_inputName.text = name;            }            else            {                ErrorCodeController.Handler(result);            }        }    }}
 |