| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 | using System;using System.Collections.Generic;using System.Linq;using Core.Language;using Excel2Json;using Fort23.UTool;namespace Fort23.Mono{    [UIBinding(prefab = "SkillRoadSelecPanel")]    public partial class SkillRoadSelecPanel : UIPanel    {        List<SkillRoadWidget> _skillRoadWidgets = new List<SkillRoadWidget>();        private Action<int> callBack;        private void Init()        {        }        protected override void AddEvent()        {        }        protected override void DelEvent()        {        }        public override void AddButtonEvent()        {            Btn_Close.onClick.AddListener(() =>            {                callBack?.Invoke(0);                UIManager.Instance.HideUIUIPanel(this );            });        }        public async void CustomInit(int currentSelectId,Action<int> callBack)        {            this.callBack = callBack;            List<SkillConfig> skillConfigs = ConfigComponent.Instance.GetAll<SkillConfig>().ToList();            List<SkillConfig> configs = skillConfigs.Where(s => s.SkillType == 4).ToList();            foreach (var skillConfig in configs)            {                SkillRoadWidget skillRoadWidget = await UIManager.Instance.CreateGComponent<SkillRoadWidget>(null, Content);                skillRoadWidget.CustomInti(skillConfig.ID);                skillRoadWidget.OnClick = OnClick;                _skillRoadWidgets.Add(skillRoadWidget);            }            if (currentSelectId == 0)            {                Text_SkillName.text = "未选择";            }            else            {                SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(currentSelectId);                Text_SkillName.text = LanguageManager.Instance.Text(skillConfig.name);                Icon_SkillIcon.icon_name = skillConfig.icon;            }        }        private void OnClick(ItemWidgetBasic obj)        {            SkillRoadWidget skillRoadWidget = obj as SkillRoadWidget;            // PlayerManager.Instance.GongFaControl.SetTaoismSkillIndex(skillRoadWidget.SkillConfig.ID);            // PlayerManager.Instance.myHero.heroData.TaoismSkillId = skillRoadWidget.SkillConfig.ID;            // AccountFileInfo.Instance.SavePlayerData();            callBack?.Invoke(skillRoadWidget.SkillConfig.ID);            UIManager.Instance.HideUIUIPanel(this);        }        public async static void OpenPanel(int currentSelectId,Action<int> callBack)        {            SkillRoadSelecPanel skillRoadSelecPanel = await UIManager.Instance.LoadAndOpenPanel<SkillRoadSelecPanel>(null);            skillRoadSelecPanel.CustomInit(currentSelectId,callBack);        }        public override void Close()        {            foreach (var skillRoadWidget in _skillRoadWidgets)            {                UIManager.Instance.DormancyGComponent(skillRoadWidget);            }            _skillRoadWidgets.Clear();            base.Close();        }    }}
 |