源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

99 lines
2.7 KiB

  1. SupremeVipRightItem = SupremeVipRightItem or BaseClass(BaseItem)
  2. local SupremeVipRightItem = SupremeVipRightItem
  3. function SupremeVipRightItem:__init()
  4. self.base_file = "supremeVip"
  5. self.layout_file = "SupremeVipRightItem"
  6. self.model = SupremeVipModel:getInstance()
  7. self:Load()
  8. end
  9. function SupremeVipRightItem:Load_callback()
  10. self.nodes = {
  11. "bg:img",
  12. "name:tmp",
  13. "icon:img",
  14. "nameSelect:tmp",
  15. "flag:obj",
  16. }
  17. self:GetChildren(self.nodes)
  18. self:AddEvents()
  19. if self.need_refreshData then
  20. self:UpdateView()
  21. end
  22. if self.need_refreshClick then
  23. self:OnClick(self.click_id)
  24. end
  25. end
  26. function SupremeVipRightItem:AddEvents( )
  27. local on_click = function ( click_obj )
  28. if self.gameObject == click_obj then
  29. self.model:Fire(SupremeVipConst.CLICK_RIGHTS_TAB,self.index)
  30. end
  31. end
  32. AddClickEvent(self.gameObject, on_click)
  33. --事件绑定:点击自身item处理
  34. local click_func = function(id)
  35. self:OnClick(id)
  36. end
  37. self:BindEvent(self.model, SupremeVipConst.CLICK_RIGHTS_TAB, click_func)
  38. end
  39. function SupremeVipRightItem:UpdateView( )
  40. self.flag_obj:SetActive(self.index == 3 or self.index == 6)
  41. end
  42. function SupremeVipRightItem:SetData( index,click_callback )
  43. self.index = index
  44. self.click_callback = click_callback
  45. if self.is_loaded then
  46. self.need_refreshData = false
  47. self:UpdateView()
  48. else
  49. self.need_refreshData = true
  50. end
  51. end
  52. function SupremeVipRightItem:OnClick(click_id)
  53. self.click_id = click_id
  54. if self.is_loaded then
  55. if self.click_id == self.index then--判断是否点击中了自己
  56. self.click_callback(self.index)
  57. local function Load_callback( )
  58. SetSizeDelta(self.bg, 190,71)
  59. end
  60. lua_resM:setImageSprite(self, self.bg_img, "supremeVip_asset","supremeVip_right_2",true,Load_callback)
  61. lua_resM:setImageSprite(self, self.icon_img, "supremeVip_asset","supremeVip_rights_tab_"..self.index.."_2",true)
  62. self.name_tmp.text = ""
  63. self.nameSelect_tmp.text = SupremeVipConst.SupremeVipRight[self.index].name
  64. SetAnchoredPosition(self.icon,-56,-1)
  65. SetAnchoredPosition(self.flag,29,23)
  66. SetLocalScale(self.icon,1.3,1.3,1.3)
  67. else
  68. local function Load_callback( )
  69. SetSizeDelta(self.bg, 162,46)
  70. end
  71. lua_resM:setImageSprite(self, self.bg_img, "supremeVip_asset","supremeVip_right_1",true,Load_callback)
  72. lua_resM:setImageSprite(self, self.icon_img, "supremeVip_asset","supremeVip_rights_tab_"..self.index.."_1",true)
  73. self.name_tmp.text = SupremeVipConst.SupremeVipRight[self.index].name
  74. self.nameSelect_tmp.text = ""
  75. SetAnchoredPosition(self.icon,-51,-1)
  76. SetAnchoredPosition(self.flag,29,19)
  77. SetLocalScale(self.icon,1,1,1)
  78. end
  79. self.need_refreshClick = false
  80. else
  81. self.need_refreshClick = true
  82. end
  83. end
  84. function SupremeVipRightItem:__delete( )
  85. end