源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

86 行
2.8 KiB

  1. SevenDayTargetScoreItem = SevenDayTargetScoreItem or BaseClass(BaseItem)
  2. local SevenDayTargetScoreItem = SevenDayTargetScoreItem
  3. function SevenDayTargetScoreItem:__init()
  4. self.base_file = "sevenDayTarget"
  5. self.layout_file = "SevenDayTargetScoreItem"
  6. self.model = SevenDayTargetModel:GetInstance()
  7. self:Load()
  8. end
  9. function SevenDayTargetScoreItem:Load_callback()
  10. self.nodes = {
  11. "progress_dot:obj", "num_text:tmp", "item_con", "get_image:img:obj", "click_con:obj"
  12. }
  13. self:GetChildren(self.nodes)
  14. self.awardItem = UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem,self.item_con)
  15. self.awardItem:SetItemSize(62, 62)
  16. self.progress_dot_obj:SetActive(false)
  17. self:AddEvents()
  18. if self.need_refreshData then
  19. self:UpdateView()
  20. end
  21. end
  22. function SevenDayTargetScoreItem:AddEvents( )
  23. local function on_click( )
  24. if not self.is_receive then
  25. self.model:Fire(SevenDayTargetModel.REQUEST_SEVEN_DAY_TARGET_SCMD, 17602, 1, self.data.score)
  26. end
  27. end
  28. AddClickEvent(self.click_con_obj, on_click)
  29. end
  30. function SevenDayTargetScoreItem:UpdateView( )
  31. if self.server_data then--有数据说明是已经领了
  32. lua_resM:setImageSprite(self, self.get_image_img, "sevenDayTarget_asset", "sevenDayTarget_font3",true)--已领取
  33. self.get_image_obj:SetActive(true)
  34. self.is_receive = true
  35. self.click_con_obj:SetActive(true)
  36. else
  37. self.is_receive = false
  38. if self.cur_score >= self.data.score then
  39. self.get_image_obj:SetActive(true)
  40. lua_resM:setImageSprite(self, self.get_image_img, "sevenDayTarget_asset", "sevenDayTarget_font5",true)--可领取
  41. self.click_con_obj:SetActive(true)
  42. else
  43. self.get_image_obj:SetActive(false)
  44. self.click_con_obj:SetActive(false)
  45. end
  46. end
  47. -- self.num_text_tmp.text = self.data.score
  48. self.num_text_tmp.text = ""
  49. -- if self.index == 2 or self.index == 5 then
  50. -- lua_resM:setImageSprite(self, self.progress_dot_imgex, "sevenDayTarget_asset", "sevenDayTarget_item10",true)--大图标
  51. -- else
  52. -- lua_resM:setImageSprite(self, self.progress_dot_imgex, "sevenDayTarget_asset", "sevenDayTarget_item11",true)--小图标
  53. -- end
  54. -- self.progress_dot_imgex.gray = self.cur_score < self.data.score
  55. if not self.reward_data then
  56. self.reward_data = stringtotable(self.data.reward)
  57. end
  58. local typeId, lock = GoodsModel:getInstance():GetMappingTypeId(self.reward_data[1][1], self.reward_data[1][2])
  59. self.awardItem:SetData(typeId, self.reward_data[1][3])
  60. end
  61. function SevenDayTargetScoreItem:SetData( index, data, server_data, cur_score )
  62. self.index = index
  63. self.data = data
  64. self.server_data = server_data
  65. self.cur_score = cur_score
  66. if self.is_loaded then
  67. self.need_refreshData = false
  68. self:UpdateView()
  69. else
  70. self.need_refreshData = true
  71. end
  72. end
  73. function SevenDayTargetScoreItem:__delete( )
  74. if self.awardItem then
  75. UIObjPool:getInstance():PushItem(UIObjPool.UIType.AwardItem, self.awardItem)
  76. self.awardItem = nil
  77. end
  78. end