WidgetIconSkill.cs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using Excel2Json;
  2. using Fort23.UTool;
  3. using GameLogic.Hero;
  4. using UnityEngine;
  5. namespace Fort23.Mono
  6. {
  7. [UIBinding(prefab = "WidgetIconSkill" )]
  8. public partial class WidgetIconSkill : UIComponent
  9. {
  10. private void Init()
  11. {
  12. }
  13. public override void AddEvent()
  14. {
  15. }
  16. public override void DelEvent()
  17. {
  18. }
  19. public override void AddButtonEvent()
  20. {
  21. btnSkillDetail.onClick.AddListener(OnClickSkillBtn);
  22. }
  23. private int groupID;
  24. private async void OnClickSkillBtn()
  25. {
  26. HeroDetailPanel heroDetailPanel = await UIManager.Instance.LoadAndOpenPanel<HeroDetailPanel>(null);
  27. // SkillUIComponent skillUIComponent = await UIManager.Instance.CreateGComponent<SkillUIComponent>(Callback);
  28. heroDetailPanel.skillUIComponent.SetOtherBorder(this);
  29. imgBorder.color = new Color(0, 1, 0.65f);
  30. heroDetailPanel.skillUIComponent.ShowSkillDetail(skillInfo.skillConfig.IDGroup);
  31. }
  32. private void Callback(SkillUIComponent obj)
  33. {
  34. LogTool.Log("SkillUIComponent 加载完成");
  35. }
  36. private SkillInfo skillInfo;
  37. public void InitWidget(SkillInfo skillInfo)
  38. {
  39. this.skillInfo = skillInfo;
  40. iconSkill.icon_name = skillInfo.skillConfig.icon;
  41. if (skillInfo.isUnLock)
  42. {
  43. lockObj.SetActive(false);
  44. unLockObj.SetActive(true);
  45. txtLv.text = skillInfo.skillConfig.level.ToString();
  46. lockImgObj.SetActive(false);
  47. }
  48. else
  49. {
  50. lockImgObj.SetActive(true);
  51. unLockObj.SetActive(false);
  52. //等级解锁: 只留锁,其他都隐藏
  53. SkillUpConfig upConfig =
  54. PlayerManager.Instance.heroController.GetSkillUpConfig(skillInfo.skillConfig.ID);
  55. if (upConfig.upType == 1)
  56. {
  57. lockObj.SetActive(false);
  58. }
  59. //星级解锁:把几星解锁显示出来
  60. else
  61. {
  62. lockObj.SetActive(true);
  63. HeroUITools.SetStarShow(stars, upConfig.upValue);
  64. }
  65. }
  66. }
  67. }
  68. }