From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../XMainClient/UI/GuildTerritoryMainDlg.cs | 155 +++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/UI/GuildTerritoryMainDlg.cs (limited to 'Client/Assets/Scripts/XMainClient/UI/GuildTerritoryMainDlg.cs') diff --git a/Client/Assets/Scripts/XMainClient/UI/GuildTerritoryMainDlg.cs b/Client/Assets/Scripts/XMainClient/UI/GuildTerritoryMainDlg.cs new file mode 100644 index 00000000..580da933 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/UI/GuildTerritoryMainDlg.cs @@ -0,0 +1,155 @@ +using System; +using System.Collections.Generic; +using KKSG; +using UILib; +using UnityEngine; +using XMainClient.UI.UICommon; +using XUtliPoolLib; + +namespace XMainClient.UI +{ + internal class GuildTerritoryMainDlg : DlgBase + { + public override string fileName + { + get + { + return "Guild/GuildTerritory/GuildTerritoryMainDlg"; + } + } + + public override bool fullscreenui + { + get + { + return true; + } + } + + private List mTerritoryDisplays; + + private XGuildTerritoryDocument _Doc; + + private SeqList TerritoryRewardValues; + + protected override void Init() + { + base.Init(); + this._Doc = XDocuments.GetSpecificDocument(XGuildTerritoryDocument.uuID); + base.uiBehaviour.mWrapContent.RegisterItemUpdateEventHandler(new WrapItemUpdateEventHandler(this.OnItemWrapUpdate)); + XSingleton.singleton.AddGreenLog(XSingleton.singleton.GetValue("TerritoryReward"), null, null, null, null, null); + this.TerritoryRewardValues = XSingleton.singleton.GetSequenceList("TerritoryReward", false); + base.uiBehaviour.mWrapContent.SetContentCount((int)this.TerritoryRewardValues.Count, false); + base.uiBehaviour.mContent.SetText(XStringDefineProxy.GetString("TERRITORY_MAIN_DESCRIPTION")); + base.uiBehaviour.mCrossGVGDescribe.SetText(XStringDefineProxy.GetString("CrossGVG_selectweek_message")); + this.InitTerritoryDisplay(); + } + + public override void RegisterEvent() + { + base.RegisterEvent(); + base.uiBehaviour.mMessage.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnClickMessage)); + base.uiBehaviour.mClose.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnClickClose)); + base.uiBehaviour.mHelp.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnHelpHandler)); + base.uiBehaviour.mRwd.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnRwdClick)); + } + + private bool OnHelpHandler(IXUIButton btn) + { + DlgBase.singleton.ShowHelp(XSysDefine.XSys_GuildTerritory); + return false; + } + + private bool OnRwdClick(IXUIButton btn) + { + DlgBase.singleton.SetVisible(true, true); + return false; + } + + public void RefreshData() + { + int i = 0; + int count = this.mTerritoryDisplays.Count; + while (i < count) + { + this.mTerritoryDisplays[i].Refresh(); + i++; + } + bool flag = this._Doc.SelfGuildTerritoryID > 0u; + if (flag) + { + TerritoryBattle.RowData byID = XGuildTerritoryDocument.mGuildTerritoryList.GetByID(this._Doc.SelfGuildTerritoryID); + base.uiBehaviour.mTerritoryName.SetText(byID.territoryname); + } + else + { + base.uiBehaviour.mTerritoryName.SetText(XStringDefineProxy.GetString("TERRITORY_CURRENT")); + } + bool flag2 = this._Doc.SelfTargetTerritoryID > 0u; + if (flag2) + { + TerritoryBattle.RowData byID2 = XGuildTerritoryDocument.mGuildTerritoryList.GetByID(this._Doc.SelfTargetTerritoryID); + base.uiBehaviour.mTerritoryTarget.SetText(byID2.territoryname); + } + else + { + base.uiBehaviour.mTerritoryTarget.SetText(XStringDefineProxy.GetString("TERRITORY_TARGET")); + } + base.uiBehaviour.mMessage.SetVisible(this._Doc.CurrentType == GUILDTERRTYPE.TERR_END); + XCrossGVGDocument specificDocument = XDocuments.GetSpecificDocument(XCrossGVGDocument.uuID); + base.uiBehaviour.mCrossGVG.gameObject.SetActive(specificDocument.TimeStep == CrossGvgTimeState.CGVG_Select); + } + + public override void StackRefresh() + { + this._Doc.SendGuildTerritoryCityInfo(); + } + + protected override void OnShow() + { + base.OnShow(); + this._Doc.SendGuildTerritoryCityInfo(); + } + + private void OnItemWrapUpdate(Transform t, int index) + { + int num = this.TerritoryRewardValues[index, 0]; + XSingleton.singleton.normalItemDrawer.DrawItem(t.gameObject, num, 0, false); + IXUISprite ixuisprite = t.Find("Icon").GetComponent("XUISprite") as IXUISprite; + Transform transform = t.Find("Flag"); + transform.gameObject.SetActive(this.TerritoryRewardValues[index, 1] == 1); + ixuisprite.ID = (ulong)((long)num); + ixuisprite.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(XSingleton.singleton.OnItemClick)); + } + + private bool OnClickClose(IXUIButton btn) + { + this.SetVisibleWithAnimation(false, null); + return true; + } + + private bool OnClickMessage(IXUIButton btn) + { + DlgBase.singleton.SetVisibleWithAnimation(true, null); + return true; + } + + private void InitTerritoryDisplay() + { + bool flag = this.mTerritoryDisplays == null; + if (flag) + { + this.mTerritoryDisplays = new List(); + } + this.mTerritoryDisplays.Clear(); + int childCount = base.uiBehaviour.mTerritoryTransform.childCount; + for (int i = 0; i < childCount; i++) + { + Transform child = base.uiBehaviour.mTerritoryTransform.GetChild(i); + GuildTerritoryDisplay guildTerritoryDisplay = new GuildTerritoryDisplay(); + guildTerritoryDisplay.Init(uint.Parse(child.name), child); + this.mTerritoryDisplays.Add(guildTerritoryDisplay); + } + } + } +} -- cgit v1.1-26-g67d0