CardSkillView.cs 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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. }
  23. protected override void OnShown()
  24. {
  25. base.OnShown();
  26. _viewData = (PassivitySkillCfg)viewData;
  27. _ui.m_txtName.text = _viewData.name;
  28. }
  29. private void UpdateView()
  30. {
  31. _ui.m_c1.selectedIndex = 0;
  32. SkillData skillData = SkillDataManager.Instance.skillData.ContainsKey(_viewData.skillId) ? SkillDataManager.Instance.skillData[_viewData.skillId] : null;
  33. int lv = skillData == null ? 1 : skillData.lv;
  34. UpdateComLv(_ui.m_comCurLV, lv, lv + "级");
  35. if (skillData != null && skillData.lv == PassivitySkillCfgArray.Instance.GetCfgs(_viewData.id).Length) //已满级
  36. {
  37. _ui.m_c1.selectedIndex = 1;
  38. return;
  39. }
  40. UpdateComLv(_ui.m_comNextLv, lv + 1, "下一级");
  41. }
  42. private void UpdateComLv(UI_ComSkillDiscribe com, int lv, string title)
  43. {
  44. com.m_txtLv.text = title;
  45. com.m_txtDiscribe.text = CardSkillCfgArray.Instance.GetCfgs(_viewData.skillId.ToString())[lv - 1].describe;
  46. }
  47. private void RenderListStarConsumeItem(int index, GObject obj)
  48. {
  49. UI_ComStarConsume listItem = UI_ComStarConsume.Proxy(obj);
  50. CardStarCfg cardStarCfg = listItem.target.parent.data as CardStarCfg;
  51. listItem.target.data = cardStarCfg.materiarsArr[index][0];
  52. ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cardStarCfg.materiarsArr[index][0]);
  53. listItem.m_loaItem.url = ResPathUtil.GetIconPath(itemCfg);
  54. int needCount = cardStarCfg.materiarsArr[index][1];
  55. int hasCount = ItemDataManager.GetItemNum(cardStarCfg.materiarsArr[index][0]);
  56. listItem.m_txtNeedCount.text = StringUtil.GetColorText(needCount.ToString(), hasCount < needCount ? "#D27869" : "#FDF3D7"); ;
  57. listItem.m_txtHasCount.text = hasCount.ToString();
  58. listItem.m_btnPlus.visible = false;
  59. if (listItem.m_btnPlus.data == null)
  60. {
  61. listItem.m_btnPlus.onClick.Add(() => OnClickBtnPlusStarConsum(index));
  62. }
  63. listItem.m_btnPlus.data = cardStarCfg.materiarsArr[index][0];
  64. if (hasCount < needCount)
  65. {
  66. //材料不足显示加号
  67. // _comFosterBottom.m_btnUpStar.data = 1;
  68. listItem.m_btnPlus.visible = true;
  69. }
  70. }
  71. private void OnClickBtnPlusStarConsum(int index)
  72. {
  73. // int itemId = int.Parse(UI_ComStarConsume.Proxy(_comFosterBottom.m_listStarConsume.GetChildAt(index)).target.data.ToString());
  74. // ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { itemId, new object[] { ViewName.CARD_FOSTER_VIEW, this.viewData } });
  75. }
  76. protected override void OnHide()
  77. {
  78. base.OnHide();
  79. }
  80. }
  81. }