1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- using System.Threading.Tasks;
- using Common.Utility.CombatEvent;
- using Fort23.Core;
- using Fort23.UTool;
- using GameLogic.Hero;
- using UnityEngine;
- using UnityEngine.UI;
- namespace Fort23.Mono
- {
- [UIBinding(prefab = "WidgetHero")]
- public partial class WidgetHero : UIComponent
- {
- private void Init()
- {
- }
- public override void AddEvent()
- {
- }
- public override void DelEvent()
- {
- }
- public override void AddButtonEvent()
- {
- LogTool.Log("添加英雄点击事件");
- btnHero.onClick.AddListener(OnHeroClick);
- }
- private async void OnHeroClick()
- {
- LogTool.Log("点击英雄");
- HeroClickEventData heroClickEventData = HeroClickEventData.Create();
- heroClickEventData.heroId = heroInfo.modelID;
- EventManager.Instance.Dispatch(CustomEventType.HeroClick, heroClickEventData);
- await OpenHeroDetailPanel();
- }
- private async Task OpenHeroDetailPanel()
- {
- // HeroDetailPanel heroDetailPanel = UIManager.Instance.GetComponent<HeroDetailPanel>();
- // if (heroDetailPanel == null)
- // {
- // heroDetailPanel = await UIManager.Instance.LoadAndOpenPanel<HeroDetailPanel>(Callback);
- // }
- HeroDetailPanel heroDetailPanel = await UIManager.Instance.LoadAndOpenPanel<HeroDetailPanel>(Callback,UILayer.Top);
- heroDetailPanel.InitHeroDetailPanel(heroInfo);
- }
- private void Callback(HeroDetailPanel obj)
- {
- LogTool.Log("HeroDetailPanel 加载完成");
- }
- public HeroInfo heroInfo;
-
- /// <summary>
- ///
- /// </summary>
- /// <param name="heroInfo"></param>
- public void InitHero(HeroInfo heroInfo)
- {
- this.heroInfo = heroInfo;
- // lv.text = heroInfo.level.Value.ToString();
- iconHero.icon_name = heroInfo.modelConfig.headicon;
- iconHero.SetNativeSize();
- iconZhiYe.icon_name = heroInfo.iconZhiYe;
-
- // HeroUITools.SetStarShow(stars, heroInfo.star.Value);
- SetDynamicData();
- }
- public void UpdateHero(HeroInfo heroInfo)
- {
- this.heroInfo = heroInfo;
- SetDynamicData();
- }
- public void SetDynamicData()
- {
- lv.text = heroInfo.level.Value.ToString();
- HeroUITools.SetStarShow(stars, heroInfo.star.Value);
- }
-
- }
- }
|