| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | using System.Collections.Generic;using Core.Language;using Fort23.Core;using GameLogic.Hero;using UnityEngine;using UnityEngine.UI;namespace Fort23.Mono{    [UIBinding(prefab = "HeroBreakthroughSuccessPanel")]    public partial class HeroBreakthroughSuccessPanel : UIPanel    {        List<UIComponent> heroAttributeWidgets = new List<UIComponent>();        private void Init()        {        }        protected override void AddEvent()        {        }        protected override void DelEvent()        {        }        public override void AddButtonEvent()        {            Btn_Close.onClick.AddListener(() => { UIManager.Instance.HideUIUIPanel(this); });        }        int type;        public async static CTask<HeroBreakthroughSuccessPanel> OpenPanel(int type, List<HeroAttributeData> heroAttributes)        {            HeroBreakthroughSuccessPanel heroBreakthroughSuccessPanel = await UIManager.Instance.LoadAndOpenPanel<HeroBreakthroughSuccessPanel>(null, UILayer.Top, isFocus: false);            heroBreakthroughSuccessPanel.CustomInit(type, heroAttributes);            return heroBreakthroughSuccessPanel;        }        public async void CustomInit(int type, List<HeroAttributeData> heroAttributes)        {            // HeroInfo heroInfo = new HeroInfo();            HeroInfo heroInfo = PlayerManager.Instance.myHero.CopyHero();            heroInfo.InitHero(PlayerManager.Instance.myHero.heroData.heroModelId, PlayerManager.Instance.myHero.heroData.heroPowerId - 1);            Text_NextJIngjie.text = LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[0]) +                                                       LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[1]) +                                                       LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[2]);            Text_CurretnJIngjie.text = LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[0]) +                                       LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[1]) +                                       LanguageManager.Instance.Text(heroInfo.powerUpConfig.jingjieLanIDs[2]);            if (type == 1 || type == 2)            {                Icon_Tu.gameObject.SetActive(true);                Icon_Dj.gameObject.SetActive(false);            }            else            {                Icon_Tu.gameObject.SetActive(false);                Icon_Dj.gameObject.SetActive(true);            }            foreach (var heroAttributeData in heroAttributes)            {                if (type == 1)                {                    HeroAttributeWidgetType1 heroAttributeWidget = await UIManager.Instance.CreateGComponent<HeroAttributeWidgetType1>(null, AttributeRoot);                    heroAttributeWidget.CustomInit(heroAttributeData);                    heroAttributeWidgets.Add(heroAttributeWidget);                }                else                {                    HeroAttributeWidgetType2 heroAttributeWidget = await UIManager.Instance.CreateGComponent<HeroAttributeWidgetType2>(null, AttributeRoot);                    heroAttributeWidget.CustomInit(heroAttributeData);                    heroAttributeWidgets.Add(heroAttributeWidget);                }            }            LayoutRebuilder.ForceRebuildLayoutImmediate(AttributeRoot);            LayoutRebuilder.ForceRebuildLayoutImmediate(AttributeRoot.parent.GetComponent<RectTransform>());        }        public override void Close()        {            foreach (var heroAttributeWidget in heroAttributeWidgets)            {                UIManager.Instance.DormancyGComponent(heroAttributeWidget);            }            heroAttributeWidgets.Clear();            base.Close();        }    }}
 |