UICardDecomposeTipsView.lua 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. local UICardDecomposeTipsView = require("UICardTips/UICardDecomposeTipsView_Generate")
  2. local IconItemCtr = require("Common/IconItemCtr")
  3. function UICardDecomposeTipsView:OnAwake(data)
  4. self.controller = require("UICardTips/UICardDecomposeTipsCtr"):new()
  5. self.controller:Init(self)
  6. self.controller:SetData(data)
  7. end
  8. function UICardDecomposeTipsView:AddEventListener()
  9. end
  10. function UICardDecomposeTipsView:FillContent(data, uiBase)
  11. self.uiBase = uiBase
  12. local gameObject = self.uiBase:GetRoot()
  13. if gameObject ~= nil then
  14. self.gameObject = gameObject
  15. self.transform = gameObject.transform
  16. end
  17. self:InitGenerate(self.transform, data)
  18. self:Init()
  19. end
  20. function UICardDecomposeTipsView:Init()
  21. self.controller:ResetSelectionList()
  22. self.normal.checkBox.check:SetActive(false)
  23. self.mini.checkBox.check:SetActive(false)
  24. self.mVP.checkBox.check:SetActive(false)
  25. local normalCount = self.controller:GetDecomposeCardCount(Enum.CardType.NORMAL)
  26. local miniCount = self.controller:GetDecomposeCardCount(Enum.CardType.MINIBOSS)
  27. local mvpCount = self.controller:GetDecomposeCardCount(Enum.CardType.MVP)
  28. self.normal.count.text.text = normalCount
  29. self.mini.count.text.text = miniCount
  30. self.mVP.count.text.text = mvpCount
  31. local isOneKey = self.controller:IsOneKeyDecompose()
  32. self.normal:SetActive(isOneKey or normalCount > 0)
  33. self.mini:SetActive(isOneKey or miniCount > 0)
  34. self.mVP:SetActive(isOneKey or mvpCount > 0)
  35. self.normal.checkBox:SetActive(isOneKey)
  36. self.mini.checkBox:SetActive(isOneKey)
  37. self.mVP.checkBox:SetActive(isOneKey)
  38. if isOneKey then
  39. self.normal.checkBox.check:SetActive(self.controller:SetSelectionList(Enum.CardType.NORMAL))
  40. else
  41. self.controller:SetSelectionList(Enum.CardType.NORMAL)
  42. self.controller:SetSelectionList(Enum.CardType.MINIBOSS)
  43. self.controller:SetSelectionList(Enum.CardType.MVP)
  44. end
  45. self:RefreshAward()
  46. end
  47. function UICardDecomposeTipsView:RefreshAward()
  48. local awards = self.controller:GetDecomposeAwards()
  49. for i = 1,3 do
  50. self["award"..i]:SetActive(i <= #awards)
  51. if i <= #awards then
  52. local data = {cfgId = awards[i][1], num = awards[i][2]}
  53. local itemLua = self["awardItem"..i]
  54. IconItemCtr:SetData(self, itemLua, data, Enum.ItemIEnterType.CardCompose, self, self.ShowItemTips)
  55. self["award"..i].text.text.text = data.num
  56. end
  57. end
  58. end
  59. function UICardDecomposeTipsView:ShowItemTips(button, params)
  60. --ManagerContainer.LuaUIMgr:Open(Enum.UIPageName.UIItemTips, params[0])
  61. ManagerContainer.LuaUIMgr:OpenTips(params[0])
  62. end
  63. function UICardDecomposeTipsView:RemoveEventListener()
  64. ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
  65. end
  66. function UICardDecomposeTipsView:AddUIEventListener()
  67. ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name)
  68. self.uiBase:AddButtonEventListener(self.normal.checkBox.button, function (buttton, params)
  69. self.normal.checkBox.check:SetActive(self.controller:SetSelectionList(Enum.CardType.NORMAL))
  70. self:RefreshAward()
  71. end)
  72. self.uiBase:AddButtonEventListener(self.mini.checkBox.button, function (buttton, params)
  73. self.mini.checkBox.check:SetActive(self.controller:SetSelectionList(Enum.CardType.MINIBOSS))
  74. self:RefreshAward()
  75. end)
  76. self.uiBase:AddButtonEventListener(self.mVP.checkBox.button, function (buttton, params)
  77. self.mVP.checkBox.check:SetActive(self.controller:SetSelectionList(Enum.CardType.MVP))
  78. self:RefreshAward()
  79. end)
  80. self.uiBase:AddButtonEventListener(self.btnClose.button, function (buttton, params)
  81. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.RESET_CARD_DECOMPOSE_CACHE_COUNTS)
  82. self:UIClose()
  83. end)
  84. self.uiBase:AddButtonEventListener(self.alpha.button, function (buttton, params)
  85. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.RESET_CARD_DECOMPOSE_CACHE_COUNTS)
  86. self:UIClose()
  87. end)
  88. self.uiBase:AddButtonEventListener(self.btnCancle.button, function (buttton, params)
  89. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.RESET_CARD_DECOMPOSE_CACHE_COUNTS)
  90. self:UIClose()
  91. end)
  92. self.uiBase:AddButtonEventListener(self.btnDecompose.button, function (buttton, params)
  93. if self.controller:GetDecomposeCardCount(Enum.CardType.MINIBOSS) > 0 or self.controller:GetDecomposeCardCount(Enum.CardType.MVP) > 0 then
  94. self:UIHide(false)
  95. ManagerContainer.LuaUIMgr:Open(Enum.UIPageName.UICardProduceNotice, Enum.UIPageName.UICardDecomposeTips)
  96. return
  97. end
  98. self.controller:SendDecompose()
  99. self:UIClose()
  100. end)
  101. end
  102. function UICardDecomposeTipsView:OnHide()
  103. end
  104. function UICardDecomposeTipsView:OnShow(data)
  105. self.controller:SetData(data)
  106. self:Init()
  107. end
  108. function UICardDecomposeTipsView:OnClose()
  109. end
  110. function UICardDecomposeTipsView:OnDispose()
  111. end
  112. return UICardDecomposeTipsView