From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../Scripts/XMainClient/UI/SpriteSystemDlg.cs | 211 +++++++++++++++++++++ 1 file changed, 211 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/UI/SpriteSystemDlg.cs (limited to 'Client/Assets/Scripts/XMainClient/UI/SpriteSystemDlg.cs') diff --git a/Client/Assets/Scripts/XMainClient/UI/SpriteSystemDlg.cs b/Client/Assets/Scripts/XMainClient/UI/SpriteSystemDlg.cs new file mode 100644 index 00000000..ba374c42 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/UI/SpriteSystemDlg.cs @@ -0,0 +1,211 @@ +using System; +using UILib; +using UnityEngine; +using XMainClient.UI.UICommon; +using XUtliPoolLib; + +namespace XMainClient.UI +{ + internal class SpriteSystemDlg : TabDlgBase + { + public override string fileName + { + get + { + return "GameSystem/SpriteSystem/SpriteSystemDlg"; + } + } + + public override int group + { + get + { + return 1; + } + } + + protected override bool bHorizontal + { + get + { + return false; + } + } + + public override int sysid + { + get + { + return XFastEnumIntEqualityComparer.ToInt(XSysDefine.XSys_SpriteSystem); + } + } + + private IXUIButton m_illustration; + + private Transform parent; + + public SpriteMainFrame _SpriteMainFrame; + + public SpriteLotteryHandler _SpriteLotteryHandler; + + public SpriteFightFrame _SpriteFightFrame; + + public SpriteResolveFrame _SpriteResolveFrame; + + public SpriteShopHandler _SpriteShopHandler; + + private Transform windowParent; + + public SpriteStarUpWindow _StarUpWindow; + + public XSpriteIllustrationHandler _IllustrationHandler; + + public XSpriteAwakeHandler _AwakeWindow; + + private XSpriteSystemDocument _doc; + + private XSysDefine _CurrSys; + + protected override void Init() + { + this._doc = XDocuments.GetSpecificDocument(XSpriteSystemDocument.uuID); + this.parent = base.uiBehaviour.transform.Find("Bg"); + this.windowParent = base.uiBehaviour.transform.Find("Bg/Windows"); + base.RegisterSubSysRedPointMgr(XSysDefine.XSys_SpriteSystem); + base.Init(); + } + + public override void RegisterEvent() + { + base.RegisterEvent(); + this.m_illustration = (base.uiBehaviour.transform.Find("Bg/Illustration").GetComponent("XUIButton") as IXUIButton); + this.m_illustration.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnIllustrationClicked)); + IXUIButton ixuibutton = base.uiBehaviour.transform.Find("Bg/Help").GetComponent("XUIButton") as IXUIButton; + ixuibutton.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnHelpBtnClicked)); + } + + protected override void OnLoad() + { + base.OnLoad(); + } + + protected override void OnUnload() + { + DlgHandlerBase.EnsureUnload(ref this._SpriteMainFrame); + DlgHandlerBase.EnsureUnload(ref this._SpriteLotteryHandler); + DlgHandlerBase.EnsureUnload(ref this._SpriteFightFrame); + DlgHandlerBase.EnsureUnload(ref this._SpriteResolveFrame); + DlgHandlerBase.EnsureUnload(ref this._StarUpWindow); + DlgHandlerBase.EnsureUnload(ref this._IllustrationHandler); + DlgHandlerBase.EnsureUnload(ref this._AwakeWindow); + DlgHandlerBase.EnsureUnload(ref this._SpriteShopHandler); + base.OnUnload(); + } + + public override void SetupHandlers(XSysDefine sys) + { + this._CurrSys = sys; + this._doc.SortList(); + switch (sys) + { + case XSysDefine.XSys_SpriteSystem_Main: + this._doc.CurrentTag = SpriteHandlerTag.Main; + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._SpriteMainFrame, this.parent, true, this)); + return; + case XSysDefine.XSys_SpriteSystem_Lottery: + this._doc.CurrentTag = SpriteHandlerTag.Lottery; + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._SpriteLotteryHandler, this.parent, true, this)); + return; + case XSysDefine.XSys_SpriteSystem_Fight: + this._doc.CurrentTag = SpriteHandlerTag.Fight; + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._SpriteFightFrame, this.parent, true, this)); + return; + case XSysDefine.XSys_SpriteSystem_Resolve: + this._doc.CurrentTag = SpriteHandlerTag.Resolve; + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._SpriteResolveFrame, this.parent, true, this)); + return; + case XSysDefine.XSys_SpriteSystem_Shop: + this._doc.CurrentTag = SpriteHandlerTag.Shop; + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._SpriteShopHandler, this.parent, true, this)); + return; + } + XSingleton.singleton.AddErrorLog("System has not finished:", sys.ToString(), null, null, null, null); + } + + public void RefreshTopUI() + { + bool flag = !base.IsVisible(); + if (!flag) + { + XMainInterfaceDocument specificDocument = XDocuments.GetSpecificDocument(XMainInterfaceDocument.uuID); + specificDocument.OnTopUIRefreshed(this); + } + } + + public override int[] GetTitanBarItems() + { + OpenSystemTable.RowData sysData = XSingleton.singleton.GetSysData(XFastEnumIntEqualityComparer.ToInt(this._CurrSys)); + bool flag = sysData == null; + int[] result; + if (flag) + { + result = null; + } + else + { + result = sysData.TitanItems; + } + return result; + } + + public void OpenWindows(SpriteWindow type) + { + switch (type) + { + case SpriteWindow.StarUp: + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._StarUpWindow, this.windowParent, true, this)); + break; + case SpriteWindow.Awake: + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._AwakeWindow, this.windowParent, true, this)); + break; + case SpriteWindow.Illustration: + base._AddActiveHandler(DlgHandlerBase.EnsureCreate(ref this._IllustrationHandler, this.windowParent, true, this)); + break; + } + } + + private bool OnIllustrationClicked(IXUIButton btn) + { + this.OpenWindows(SpriteWindow.Illustration); + this._IllustrationHandler.ShowSpriteAllIllustration(); + return true; + } + + private bool OnHelpBtnClicked(IXUIButton btn) + { + DlgBase.singleton.ShowHelp(XSysDefine.XSys_SpriteSystem); + return true; + } + + protected override void OnShow() + { + base.OnShow(); + this.m_illustration.SetVisible(XSingleton.singleton.IsSystemOpened(XSysDefine.XSys_SpriteSystem_Lottery)); + this.CheckSpriteSummonRedpoint(); + } + + public void CheckSpriteSummonRedpoint() + { + string[] array = XSingleton.singleton.GetValue("SpriteDrawCost").Split(XGlobalConfig.SequenceSeparator); + string[] array2 = XSingleton.singleton.GetValue("SpriteGoldDrawCost").Split(XGlobalConfig.SequenceSeparator); + bool flag = array.Length != 2 || array2.Length != 2; + if (!flag) + { + XBagDocument specificDocument = XDocuments.GetSpecificDocument(XBagDocument.uuID); + bool bState = specificDocument.GetItemCount(int.Parse(array[0])) > 0UL || specificDocument.GetItemCount(int.Parse(array2[0])) > 0UL; + XSingleton.singleton.SetSysRedPointState(XSysDefine.XSys_SpriteSystem_Lottery, bState); + XSingleton.singleton.RecalculateRedPointState(XSysDefine.XSys_SpriteSystem_Lottery, true); + } + } + } +} -- cgit v1.1-26-g67d0