UIClimbingTowerBattleWinView.lua 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. local UIClimbingTowerBattleWinView = require("UIClimbingTower/UIClimbingTowerBattleWinView_Generate")
  2. function UIClimbingTowerBattleWinView:OnAwake(data)
  3. self.controller = require("UIClimbingTower/UIClimbingTowerBattleWinCtr"):new()
  4. self.controller:Init(self)
  5. self.controller:SetData(data)
  6. end
  7. function UIClimbingTowerBattleWinView:AddEventListener()
  8. end
  9. function UIClimbingTowerBattleWinView:FillContent(data, uiBase)
  10. self.uiBase = uiBase
  11. local gameObject = self.uiBase:GetRoot()
  12. if gameObject ~= nil then
  13. self.gameObject = gameObject
  14. self.transform = gameObject.transform
  15. end
  16. self:InitGenerate(self.transform, data)
  17. self:Init()
  18. end
  19. function UIClimbingTowerBattleWinView:Init()
  20. self.curTime = 0
  21. self.maxTime = 0
  22. self:SetRewardInfo(self.controller:GetLevelRewards())
  23. local type = self.controller:GetLastUITowerType()
  24. self.btnNextTower:SetActive(type == Enum.UnlimitTowerType.ClimbingTower)
  25. LogError("ClimbingTower = "..tostring(type))
  26. if type == Enum.UnlimitTowerType.ClimbingTower then
  27. self:AutoPlayTimer()
  28. LogError("ClimbingTower = ClimbingTower")
  29. else
  30. self.autoPlay:SetActive(false)
  31. end
  32. end
  33. function UIClimbingTowerBattleWinView:SetRewardInfo(rewardData)
  34. if rewardData~= nil then
  35. self.ItemScrollView:SetActive(true)
  36. CommonUtil.LoopGridViewEleCreateNew(self,
  37. self.ItemScrollView.loopVerticalScrollRect,
  38. self.ItemContent.gridLayoutGroup,rewardData,0,self,self.OnUpdateItemData)
  39. else
  40. self.ItemScrollView:SetActive(false)
  41. end
  42. end
  43. function UIClimbingTowerBattleWinView:OnUpdateItemData(itemLua,idx,itemData)
  44. CommonUtil.SetRewardItemDataNew(self,itemData[1],itemLua,itemData[2],itemData[3], self.OnClickItem)
  45. end
  46. function UIClimbingTowerBattleWinView:RemoveEventListener()
  47. ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
  48. end
  49. function UIClimbingTowerBattleWinView:AddUIEventListener()
  50. self.uiBase:AddButtonEventListener(self.AnyBtn.button,self, self.OnClickClose)
  51. self.uiBase:AddButtonEventListener(self.btnNextTower.button,self, self.OnClickNext)
  52. end
  53. function UIClimbingTowerBattleWinView:OnHide()
  54. end
  55. function UIClimbingTowerBattleWinView:OnShow(data)
  56. self.controller:SetData(data)
  57. end
  58. function UIClimbingTowerBattleWinView:OnClose()
  59. end
  60. function UIClimbingTowerBattleWinView:OnDispose()
  61. self.controller:OnDispose()
  62. end
  63. function UIClimbingTowerBattleWinView:OnClickNext()
  64. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.EID_SHUT_TIMEBATTLE,self.controller:BackPageId())
  65. --ManagerContainer.LuaUIMgr:ClosePage(self.uiBase.PageId)
  66. self.controller:EnterNextBattle()
  67. end
  68. function UIClimbingTowerBattleWinView:OnClickClose()
  69. local type = self.controller:GetLastUITowerType()
  70. if type == Enum.UnlimitTowerType.PeakTower then
  71. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.EID_SHUT_PVPCIMBINGBATTLE,self.controller:BackPageId())
  72. else
  73. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.EID_SHUT_TIMEBATTLE,self.controller:BackPageId())
  74. end
  75. ManagerContainer.LuaUIMgr:ClosePage(self.uiBase.PageId)
  76. if self.curTimer ~= nil then
  77. ManagerContainer.LuaTimerMgr:RemoveTimer(self.curTimer)
  78. self.curTimer = nil
  79. end
  80. end
  81. function UIClimbingTowerBattleWinView:OnClickItem(btn,params)
  82. local logicData = params[0]
  83. ManagerContainer.LuaUIMgr:OpenTips(logicData)
  84. end
  85. function UIClimbingTowerBattleWinView:AutoPlayTimer()
  86. self.autoPlay:SetActive(true)
  87. self.maxTime = GlobalConfig.Instance:GetConfigIntValue(365)
  88. self.curTime =0
  89. self.curTimer = nil
  90. self:StartTimer()
  91. end
  92. function UIClimbingTowerBattleWinView:StartTimer()
  93. self.timersTxt.text.text = tostring(self.maxTime)
  94. self.curTimer = ManagerContainer.LuaTimerMgr:AddTimer(1000, self.maxTime, self, self.UpdateTimer, nil)
  95. end
  96. function UIClimbingTowerBattleWinView:UpdateTimer()
  97. self.curTime = self.curTime + 1
  98. self.timersTxt.text.text = tostring(self.maxTime - self.curTime)
  99. if (self.maxTime == self.curTime) then
  100. ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.EID_SHUT_TIMEBATTLE, self.controller:BackPageId())
  101. self.controller:EnterNextBattle()
  102. self.curTimer = nil
  103. --ManagerContainer.LuaUIMgr:ClosePage(self.uiBase.PageId)
  104. end
  105. end
  106. return UIClimbingTowerBattleWinView