ClothingRewardView.cs 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using cfg.GfgCfg;
  6. using FairyGUI;
  7. using UI.ClothingFoster;
  8. using UI.CommonGame;
  9. namespace GFGGame
  10. {
  11. public class ClothingRewardView : BaseWindow
  12. {
  13. private UI_ClothingRewardUI _ui;
  14. private int _suitId;
  15. private List<SuitFosterCfg> _rewardsList;
  16. public override void Dispose()
  17. {
  18. if (_ui != null)
  19. {
  20. _ui.Dispose();
  21. _ui = null;
  22. }
  23. base.Dispose();
  24. }
  25. protected override void OnInit()
  26. {
  27. base.OnInit();
  28. packageName = UI_ClothingRewardUI.PACKAGE_NAME;
  29. _ui = UI_ClothingRewardUI.Create();
  30. this.viewCom = _ui.target;
  31. this.viewCom.Center();
  32. this.modal = true;
  33. _ui.m_listReward.itemRenderer = ListRewardRender;
  34. }
  35. protected override void OnShown()
  36. {
  37. base.OnShown();
  38. _suitId = (int)this.viewData;
  39. _rewardsList = SuitFosterDataManager.Instance.GetSuitFosterRewards(_suitId);
  40. _ui.m_listReward.numItems = _rewardsList.Count;
  41. }
  42. protected override void OnHide()
  43. {
  44. base.OnHide();
  45. }
  46. private void ListRewardRender(int index, GObject obj)
  47. {
  48. UI_ListRewardItem item = UI_ListRewardItem.Proxy(obj);
  49. SuitFosterCfg cfg = _rewardsList[index];
  50. List<SuitFosterCfg> cfgs = CommonDataManager.Tables.TblSuitFosterCfg.DataList
  51. .Where(a => a.SuitId == _suitId).ToList();
  52. int _index = cfgs.IndexOf(cfg);
  53. item.m_txtDiscribe.text = string.Format("完成套装{0}获得", SuitFosterDataManager.Instance.stepNames[_index]);
  54. ItemCfg itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(cfg.Rewards[0].ItemId);
  55. UI_ComItem itemReward = UI_ComItem.Proxy(item.m_itemReward);
  56. itemReward.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
  57. itemReward.m_txtCount.text = string.Format("{0}", cfg.Rewards[0].Count);
  58. if (SuitFosterDataManager.Instance.GetRewardState(_suitId, _index + 1))
  59. itemReward.m_ButtonType.selectedIndex = 5;
  60. else
  61. itemReward.m_ButtonType.selectedIndex = 0;
  62. itemReward.m_QualityType.selectedIndex = itemCfg.Rarity - 1;
  63. RarityIconController.UpdateRarityIcon(itemReward.m_loaRarity, itemCfg.Id, false);
  64. if (itemReward.target.data == null)
  65. itemReward.target.onClick.Add(OnClickItemReward);
  66. itemReward.target.data = cfg.Rewards[0].ItemId;
  67. UI_ComItem.ProxyEnd();
  68. UI_ListRewardItem.ProxyEnd();
  69. }
  70. public void OnClickItemReward(EventContext context)
  71. {
  72. if (!(context.sender is GObject obj)) return;
  73. int itemID = (int)obj.data;
  74. GoodsItemTipsController.ShowItemTips(itemID);
  75. }
  76. }
  77. }