Files
JJBB/Assets/Project/Script/GUI/SwornBrother/SwornBroTitleInputRoot.cs
2024-08-23 15:49:34 +08:00

170 lines
4.3 KiB
C#

using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using Games.GlobeDefine;
using GCGame.Table;
using GCGame;
public class SwornBroTitleInputRoot : UIControllerBase<SwornBroTitleInputRoot>
{
#region static
public static void ShowCommonTitleInput(MessageResult okCallBack)
{
Hashtable hash = new Hashtable();
hash.Add("OKCallBack", okCallBack);
UIManager.ShowUI(UIInfo.SwornBroTitleInputRoot, OnCommonTitleInputShow, hash);
}
static void OnCommonTitleInputShow(bool bSuccess, object param)
{
Hashtable hash = param as Hashtable;
if (!bSuccess)
{
return;
}
if (hash == null)
{
return;
}
if (SwornBroTitleInputRoot.Instance() != null)
{
SwornBroTitleInputRoot.Instance().ShowCommonTitle((MessageResult)hash["OKCallBack"]);
}
}
public static void ShowSelfTitleInput(MessageResult okCallBack)
{
Hashtable hash = new Hashtable();
hash.Add("OKCallBack", okCallBack);
UIManager.ShowUI(UIInfo.SwornBroTitleInputRoot, OnSelfTitleInputShow, hash);
}
static void OnSelfTitleInputShow(bool bSuccess, object param)
{
Hashtable hash = param as Hashtable;
if (!bSuccess)
{
return;
}
if (hash == null)
{
return;
}
if (SwornBroTitleInputRoot.Instance() != null)
{
SwornBroTitleInputRoot.Instance().ShowSelfTitle((MessageResult)hash["OKCallBack"]);
}
}
#endregion
public GameObject _CommonTitle;
public Text _MemCnt;
public InputField _InputForward;
public InputField _InputBack;
public GameObject _SelfTitle;
public InputField _InputSelf;
public delegate void MessageResult(string titleStr);
private MessageResult _MessageResult;
void OnEnable()
{
SetInstance(this);
}
void OnDisable()
{
SetInstance(null);
}
public void OnForwardInput(string input)
{
if (input.Length > 4)
{
_InputForward.text = input.Substring(0, 4);
}
}
public void OnBackInput(string input)
{
if (input.Length > 2)
{
_InputBack.text = input.Substring(0, 2);
}
}
public void OnSelfInput(string input)
{
if (input.Length > 2)
{
_InputSelf.text = input.Substring(0, 2);
}
}
public void ShowCommonTitle(MessageResult messageResult)
{
_CommonTitle.SetActive(true);
_SelfTitle.SetActive(false);
_MessageResult = messageResult;
_InputForward.text = "";
_InputBack.text = "";
int strID = 4719 + GameManager.gameManager.PlayerDataPool.TeamInfo.GetTeamMemberCount();
_MemCnt.text = StrDictionary.GetClientDictionaryString("#{" + strID.ToString() + "}");
}
public void ShowSelfTitle(MessageResult messageResult)
{
_CommonTitle.SetActive(false);
_SelfTitle.SetActive(true);
_MessageResult = messageResult;
}
public void MessageBoxOK()
{
if (null != _MessageResult)
{
if (_CommonTitle.activeSelf)
{
if (string.IsNullOrEmpty(_InputForward.text) || string.IsNullOrEmpty(_InputBack.text))
{
GUIData.AddNotifyData(StrDictionary.GetClientDictionaryString("#{36103}"));
}
else
{
_MessageResult(_InputForward.text + _MemCnt.text + _InputBack.text);
UIManager.CloseUI(UIInfo.SwornBroTitleInputRoot);
}
}
else
{
if (string.IsNullOrEmpty(_InputSelf.text))
{
GUIData.AddNotifyData(StrDictionary.GetClientDictionaryString("#{36103}"));
}
else
{
_MessageResult(_InputSelf.text);
UIManager.CloseUI(UIInfo.SwornBroTitleInputRoot);
}
}
}
}
public void MessageBoxCancel()
{
UIManager.CloseUI(UIInfo.SwornBroTitleInputRoot);
if (null != _MessageResult)
{
_MessageResult(null);
}
}
}