WidgetItem.cs 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. using System;
  2. using Excel2Json;
  3. using Fort23.UTool;
  4. using GameLogic.Bag;
  5. using Utility;
  6. namespace Fort23.Mono
  7. {
  8. [UIBinding(prefab = "WidgetItem")]
  9. public partial class WidgetItem : ItemWidgetBasic
  10. {
  11. public ItemInfo itemInfo;
  12. public bool isClick = false;
  13. public Action callBack;
  14. private void Init()
  15. {
  16. }
  17. public override void AddEvent()
  18. {
  19. }
  20. public override void DelEvent()
  21. {
  22. }
  23. public override void AddButtonEvent()
  24. {
  25. Btn_WidgetItem.onClick.AddListener(() =>
  26. {
  27. if (!isClick)
  28. return;
  29. if (callBack != null)
  30. {
  31. callBack?.Invoke();
  32. return;
  33. }
  34. if (itemInfo.config.associateID == 3)
  35. {
  36. GongFaDetailsPanel.Open(itemInfo);
  37. }
  38. else if (itemInfo.config.associateID == 4)
  39. {
  40. FaBaoDetailsPanel.OpenPanel(itemInfo);
  41. }
  42. else
  43. {
  44. ItemDetailsPanel.OpenPanel(itemInfo);
  45. }
  46. });
  47. base.AddButtonEvent();
  48. }
  49. public void InitWidget(ItemInfo itemInfo, bool isclick = true)
  50. {
  51. this.isClick = isclick;
  52. this.itemInfo = itemInfo;
  53. Icon_quality.icon_name = "dec_wupin_pinzhi" + itemInfo.config.quality;
  54. if (itemInfo.config.associateID == 3)
  55. {
  56. SkillConfig skillConfig =
  57. ConfigComponent.Instance.Get<SkillConfig>(itemInfo.config.associateVlaue[1] * 10 + 1);
  58. if (skillConfig.attribute == 1)
  59. {
  60. icon.icon_name = "dec_gfbook_jin";
  61. }
  62. else if (skillConfig.attribute == 4)
  63. {
  64. icon.icon_name = "dec_gfbook_mu";
  65. }
  66. else if (skillConfig.attribute == 2)
  67. {
  68. icon.icon_name = "dec_gfbook_shui";
  69. }
  70. else if (skillConfig.attribute == 8)
  71. {
  72. icon.icon_name = "dec_gfbook_huo";
  73. }
  74. else if (skillConfig.attribute == 16)
  75. {
  76. icon.icon_name = "dec_gfbook_tu";
  77. }
  78. Icon_Item2.gameObject.SetActive(false);
  79. Icon_Skill.gameObject.SetActive(true);
  80. Icon_Skill.icon_name = skillConfig.icon;
  81. }
  82. //碎片
  83. else if (itemInfo.config.associateID == 11)
  84. {
  85. ItemConfig itemConfig2 = ConfigComponent.Instance.Get<ItemConfig>(itemInfo.config.associateVlaue[0]);
  86. SkillConfig skillConfig =
  87. ConfigComponent.Instance.Get<SkillConfig>(itemConfig2.associateVlaue[1] * 10 + 1);
  88. if (skillConfig.attribute == 1)
  89. {
  90. icon.icon_name = "dec_gfbook_jin";
  91. }
  92. else if (skillConfig.attribute == 4)
  93. {
  94. icon.icon_name = "dec_gfbook_mu";
  95. }
  96. else if (skillConfig.attribute == 2)
  97. {
  98. icon.icon_name = "dec_gfbook_shui";
  99. }
  100. else if (skillConfig.attribute == 8)
  101. {
  102. icon.icon_name = "dec_gfbook_huo";
  103. }
  104. else if (skillConfig.attribute == 16)
  105. {
  106. icon.icon_name = "dec_gfbook_tu";
  107. }
  108. Icon_Item2.gameObject.SetActive(false);
  109. Icon_Skill.gameObject.SetActive(true);
  110. Icon_Skill.icon_name = skillConfig.icon;
  111. }
  112. else if (itemInfo.config.associateID == 7)
  113. {
  114. Icon_Skill.gameObject.SetActive(false);
  115. icon.icon_name = "icon_shenshitishengfu";
  116. Icon_Item2.icon_name = itemInfo.config.icon;
  117. Icon_Item2.gameObject.SetActive(true);
  118. }
  119. else
  120. {
  121. Icon_Item2.gameObject.SetActive(false);
  122. Icon_Skill.gameObject.SetActive(false);
  123. icon.icon_name = itemInfo.config.icon;
  124. }
  125. //碎片
  126. if (itemInfo.config.itemTag == 12 || itemInfo.config.itemTag == 14 || itemInfo.config.itemTag == 25)
  127. {
  128. Icon_SuiPian.gameObject.SetActive(true);
  129. }
  130. else
  131. {
  132. Icon_SuiPian.gameObject.SetActive(false);
  133. }
  134. icon.gameObject.SetActive(true);
  135. Icon_WenHao.gameObject.SetActive(false);
  136. if (itemInfo.count.Value > 0)
  137. {
  138. Text_Count.gameObject.SetActive(true);
  139. Text_Count.text = itemInfo.count.Value.ToStringEx();
  140. }
  141. else
  142. {
  143. Text_Count.gameObject.SetActive(false);
  144. }
  145. }
  146. public void ShowWenhao()
  147. {
  148. isClick = false;
  149. Icon_WenHao.gameObject.SetActive(true);
  150. icon.gameObject.SetActive(false);
  151. Text_Count.gameObject.SetActive(false);
  152. }
  153. public override void DormancyObj()
  154. {
  155. transform.RecoverColor();
  156. Icon_WenHao.gameObject.SetActive(false);
  157. Icon_shenshiJiangli.gameObject.SetActive(false);
  158. callBack = null;
  159. base.DormancyObj();
  160. }
  161. public void ShowShenShiWenHao(Action callBack = null)
  162. {
  163. this.callBack = callBack;
  164. Icon_shenshiJiangli.gameObject.SetActive(true);
  165. Icon_WenHao.gameObject.SetActive(true);
  166. icon.gameObject.SetActive(false);
  167. Text_Count.gameObject.SetActive(false);
  168. }
  169. }
  170. }