From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../XMainClient/UI/XSpriteAttributeHandler.cs | 87 ++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/UI/XSpriteAttributeHandler.cs (limited to 'Client/Assets/Scripts/XMainClient/UI/XSpriteAttributeHandler.cs') diff --git a/Client/Assets/Scripts/XMainClient/UI/XSpriteAttributeHandler.cs b/Client/Assets/Scripts/XMainClient/UI/XSpriteAttributeHandler.cs new file mode 100644 index 00000000..43e03123 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/UI/XSpriteAttributeHandler.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using KKSG; +using UnityEngine; +using XUtliPoolLib; + +namespace XMainClient.UI +{ + internal class XSpriteAttributeHandler : DlgHandlerBase + { + protected override string FileName + { + get + { + return "GameSystem/SpriteSystem/SpriteAttributeFrame"; + } + } + + private XSpriteAttributePHandler m_PropertyHandler; + + private XSpriteAttributeAHandler m_AptitudeHandler; + + private XSpriteAttributeSHandler m_SkillHandler; + + protected override void Init() + { + base.Init(); + Transform parent = base.PanelObject.transform.Find("SpriteAptitudeRoot"); + DlgHandlerBase.EnsureCreate(ref this.m_AptitudeHandler, parent, true, this); + Transform parent2 = base.PanelObject.transform.Find("SpriteAttributeRoot"); + DlgHandlerBase.EnsureCreate(ref this.m_PropertyHandler, parent2, true, this); + Transform parent3 = base.PanelObject.transform.Find("SpriteSkillRoot"); + DlgHandlerBase.EnsureCreate(ref this.m_SkillHandler, parent3, true, this); + } + + public override void OnUnload() + { + DlgHandlerBase.EnsureUnload(ref this.m_PropertyHandler); + DlgHandlerBase.EnsureUnload(ref this.m_AptitudeHandler); + DlgHandlerBase.EnsureUnload(ref this.m_SkillHandler); + base.OnUnload(); + } + + public void SetSpriteAttributeInfo(SpriteInfo spriteData, XAttributes attributes, SpriteInfo compareData = null) + { + this.m_PropertyHandler.SetSpriteAttributeInfo(spriteData, compareData); + this.m_AptitudeHandler.SetSpriteAttributeInfo(spriteData, attributes, compareData); + this.m_SkillHandler.SetSpriteAttributeInfo(spriteData, compareData); + } + + public void SetSpriteAttributeInfo(uint spriteID) + { + this.m_PropertyHandler.SetSpriteAttributeInfo(spriteID); + this.m_AptitudeHandler.SetSpriteAttributeInfo(spriteID); + this.m_SkillHandler.SetSpriteAttributeInfo(spriteID); + } + + public static void GetLevelOneSpriteAttr(SpriteTable.RowData spriteInfo, out List attrID, out List attrValue, out List attrMaxValue) + { + attrID = new List(); + attrID.Add(spriteInfo.AttrID1); + attrID.Add(spriteInfo.AttrID2); + attrID.Add(spriteInfo.AttrID3); + attrID.Add(spriteInfo.AttrID4); + attrID.Add(spriteInfo.AttrID5); + List list = new List(); + list.Add(spriteInfo.BaseAttr1); + list.Add(spriteInfo.BaseAttr2); + list.Add(spriteInfo.BaseAttr3); + list.Add(spriteInfo.BaseAttr4); + list.Add(spriteInfo.BaseAttr5); + attrMaxValue = new List(); + attrMaxValue.Add(spriteInfo.Range1[1]); + attrMaxValue.Add(spriteInfo.Range2[1]); + attrMaxValue.Add(spriteInfo.Range3[1]); + attrMaxValue.Add(spriteInfo.Range4[1]); + attrMaxValue.Add(spriteInfo.Range5[1]); + attrValue = new List(); + XSpriteSystemDocument specificDocument = XDocuments.GetSpecificDocument(XSpriteSystemDocument.uuID); + for (int i = 0; i < attrID.Count; i++) + { + double num = list[i] + attrMaxValue[i] * specificDocument.GetSpriteLevelRatio(spriteInfo.SpriteQuality, 1u); + attrValue.Add(num / 100.0); + } + } + } +} -- cgit v1.1-26-g67d0