CardSkillView.cs 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using FairyGUI;
  2. using UI.Card;
  3. namespace GFGGame
  4. {
  5. public class CardSkillView : BaseWindow
  6. {
  7. private UI_CardSkillUI _ui;
  8. private PassivitySkillCfg _viewData;
  9. public override void Dispose()
  10. {
  11. base.Dispose();
  12. }
  13. protected override void OnInit()
  14. {
  15. base.OnInit();
  16. _ui = UI_CardSkillUI.Create();
  17. this.viewCom = _ui.target;
  18. this.viewCom.Center();
  19. this.modal = true;
  20. viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
  21. _ui.m_listConsume.itemRenderer = RenderListStarConsumeItem;
  22. EventAgent.AddEventListener(ConstMessage.CARD_UP_SKILL, UpdateView);
  23. }
  24. protected override void OnShown()
  25. {
  26. base.OnShown();
  27. _viewData = (PassivitySkillCfg)viewData;
  28. _ui.m_txtName.text = _viewData.name;
  29. }
  30. private void UpdateView()
  31. {
  32. _ui.m_c1.selectedIndex = 0;
  33. SkillData skillData = SkillDataManager.Instance.skillData.ContainsKey(_viewData.skillId) ? SkillDataManager.Instance.skillData[_viewData.skillId] : null;
  34. int lv = skillData == null ? 1 : skillData.lv;
  35. UpdateComLv(_ui.m_comCurLV, lv, lv + "级");
  36. if (skillData != null && skillData.lv == PassivitySkillCfgArray.Instance.GetCfgs(_viewData.id).Length) //已满级
  37. {
  38. _ui.m_c1.selectedIndex = 1;
  39. return;
  40. }
  41. UpdateComLv(_ui.m_comNextLv, lv + 1, "下一级");
  42. // _ui.m_listConsume.numItems=
  43. }
  44. private void UpdateComLv(UI_ComSkillDiscribe com, int lv, string title)
  45. {
  46. com.m_txtLv.text = title;
  47. com.m_txtDiscribe.text = CardSkillCfgArray.Instance.GetCfgs(_viewData.skillId.ToString())[lv - 1].describe;
  48. }
  49. private void RenderListStarConsumeItem(int index, GObject obj)
  50. {
  51. UI_ComStarConsume listItem = UI_ComStarConsume.Proxy(obj);
  52. CardStarCfg cardStarCfg = listItem.target.parent.data as CardStarCfg;
  53. listItem.target.data = cardStarCfg.materiarsArr[index][0];
  54. ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cardStarCfg.materiarsArr[index][0]);
  55. listItem.m_loaItem.url = ResPathUtil.GetIconPath(itemCfg);
  56. int needCount = cardStarCfg.materiarsArr[index][1];
  57. int hasCount = ItemDataManager.GetItemNum(cardStarCfg.materiarsArr[index][0]);
  58. listItem.m_txtNeedCount.text = StringUtil.GetColorText(needCount.ToString(), hasCount < needCount ? "#D27869" : "#FDF3D7"); ;
  59. listItem.m_txtHasCount.text = hasCount.ToString();
  60. listItem.m_btnPlus.visible = false;
  61. if (listItem.m_btnPlus.data == null)
  62. {
  63. listItem.m_btnPlus.onClick.Add(() => OnClickBtnPlusStarConsum(index));
  64. }
  65. listItem.m_btnPlus.data = cardStarCfg.materiarsArr[index][0];
  66. if (hasCount < needCount)
  67. {
  68. //材料不足显示加号
  69. // _comFosterBottom.m_btnUpStar.data = 1;
  70. listItem.m_btnPlus.visible = true;
  71. }
  72. }
  73. private void OnClickBtnPlusStarConsum(int index)
  74. {
  75. // int itemId = int.Parse(UI_ComStarConsume.Proxy(_comFosterBottom.m_listStarConsume.GetChildAt(index)).target.data.ToString());
  76. // ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { itemId, new object[] { ViewName.CARD_FOSTER_VIEW, this.viewData } });
  77. }
  78. protected override void OnHide()
  79. {
  80. base.OnHide();
  81. }
  82. }
  83. }