using UnityEngine; using UnityEngine.UI; using UnityEngine.Events; using System.Collections; using System.Collections.Generic; public class ManaNickName : Regist { public static UnityAction ValidateSucceedAction; public static string NickName; public static InputField inputField; public override void RegistValueA () { SetNickName (ManaData.GetPlayerString ("NickName")); inputField = ManaReso.Get ("T_InputField"); } public static bool ShowNickNameSettingPanelFirstTime() { if (!string.IsNullOrEmpty (NickName)) return false; ShowNickNameSettingPanel (); return true; } public static void ShowNickNameSettingPanel() { ManaReso.Get ("C_Main").TweenBacCG (); ManaReso.Get ("T_NickNameBK").TweenForCG (); } public static void CloseNickNameSettingPanel() { ManaReso.Get ("C_Main").TweenForCG (); ManaReso.Get ("T_NickNameBK").TweenBacCG (); } public static void ResetNickName() { if (InputFieldValidate ()) { SetNickName (inputField.text); CloseNickNameSettingPanel (); } } public static void SetNickName(string nickName) { NickName = nickName; ManaData.SavePlayerString ("NickName", nickName); ManaReso.SetText ("C_NickNameLab", nickName); } public static bool InputFieldValidate() { inputField.text = inputField.text.Trim (); int charCnt = 0; for (int i = 0; i < inputField.text.Length; i++) { if (inputField.text [i] <= 127) { charCnt++; } else if (inputField.text [i] > 127) { charCnt += 2; } } if (charCnt == 0) { Bubble.Show (null, Language.GetStr("UI", "T_AllWhiteSpace")); return false; } else if (charCnt > 12) { Bubble.Show (null, Language.GetStr("UI", "T_TooLong")); inputField.text = inputField.text.Substring (0, 12); return false; } else { if (StringFilter.ContainSensitiveWord(inputField.text)) { Bubble.Show(null, Language.GetStr("Common", "ContainSensitiveWord")); return false; } else { ValidateSucceedAction.SafeInvoke(); ManaAudio.PlayClip(Clip.CloseClip); return true; } } } }