|
@@ -0,0 +1,84 @@
|
|
|
+using FairyGUI;
|
|
|
+using UI.Main;
|
|
|
+using System;
|
|
|
+using System.Text.RegularExpressions;
|
|
|
+using ET;
|
|
|
+using System.Threading.Tasks;
|
|
|
+
|
|
|
+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);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ protected override void OnShown()
|
|
|
+ {
|
|
|
+ base.OnShown();
|
|
|
+ this._ui.m_inputName.text = "";
|
|
|
+ }
|
|
|
+
|
|
|
+ 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();
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|