源战役客户端
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.

116 lines
2.9 KiB

преди 4 седмици
  1. RoleVipItem = RoleVipItem or BaseClass(BaseItem)
  2. local RoleVipItem = RoleVipItem
  3. function RoleVipItem:__init(parent_wnd)
  4. self.base_file = "uiComponent"
  5. self.layout_file = "RoleVipItem"
  6. self.parent = parent_wnd
  7. self.pos_x = 0
  8. self.pos_y = 0
  9. self.gray = false
  10. self.force_show_vip_zero = false
  11. self:Load()
  12. end
  13. function RoleVipItem:Load_callback()
  14. self.nodes = {
  15. "vip:img:obj",
  16. }
  17. self:GetChildren(self.nodes)
  18. self:AddEvents()
  19. if self.need_reset_scale then
  20. self:SetScale(self.scale_x,self.scale_y)
  21. end
  22. if self.need_refreshData then
  23. self:UpdateView()
  24. end
  25. if self.need_reset_pos then
  26. self:SetPosition(self.pos_x,self.pos_y)
  27. end
  28. if self.need_reset_gray then
  29. self:SetGray(self.gray)
  30. end
  31. end
  32. function RoleVipItem:AddEvents( )
  33. end
  34. function RoleVipItem:UpdateView( )
  35. if self.vip_flag then
  36. if self.vip_flag == 0 then
  37. if self.force_show_vip_zero then
  38. self.vip_obj:SetActive(true)
  39. lua_resM:setImageSprite(self, self.vip_img, "vipExtra_asset", "vip_"..self.vip_flag)
  40. else
  41. self.vip_obj:SetActive(false) --加载empty常常出问题,直接satActive(false)一劳永逸
  42. -- lua_resM:setImageSprite(self, self.vip_img, "uiComponent_asset", "com_empty")
  43. end
  44. else
  45. self.vip_obj:SetActive(true)
  46. if self.sup_vip_type and self.sup_vip_type == 1 then
  47. lua_resM:setImageSprite(self, self.vip_img, "vipExtra_asset", "e_vip_"..self.vip_flag)
  48. elseif self.sup_vip_type and self.sup_vip_type == 2 then
  49. lua_resM:setImageSprite(self, self.vip_img, "vipExtra_asset", "s_vip_"..self.vip_flag)
  50. else
  51. lua_resM:setImageSprite(self, self.vip_img, "vipExtra_asset", "vip_"..self.vip_flag)
  52. end
  53. end
  54. else
  55. self.vip_obj:SetActive(false)
  56. -- lua_resM:setImageSprite(self, self.vip_img, "uiComponent_asset", "com_empty")
  57. end
  58. end
  59. --force_show_vip_zero展示vip0的情况
  60. function RoleVipItem:SetData(vip_flag,sup_vip_type,force_show_vip_zero)
  61. self.vip_flag = vip_flag --vip级别
  62. self.sup_vip_type = sup_vip_type --贵族标识 0|非贵族 1|体验 2|永久
  63. self.force_show_vip_zero = force_show_vip_zero
  64. if self.is_loaded then
  65. self.need_refreshData = false
  66. self:UpdateView()
  67. else
  68. self.need_refreshData = true
  69. end
  70. end
  71. function RoleVipItem:SetPosition(pos_x,pos_y)
  72. self.pos_x = pos_x
  73. self.pos_y = pos_y
  74. if self.is_loaded then
  75. self.need_reset_pos = false
  76. SetAnchoredPosition(self.transform,self.pos_x,self.pos_y)
  77. else
  78. self.need_reset_pos = true
  79. end
  80. end
  81. function RoleVipItem:SetGray(bool)
  82. self.gray = bool
  83. if self.is_loaded then
  84. self.need_reset_gray = false
  85. SetImageGray(self.vip_img,bool)
  86. else
  87. self.need_reset_gray = true
  88. end
  89. end
  90. function RoleVipItem:SetScale(scale_x,scale_y)
  91. self.scale_x = scale_x
  92. self.scale_y = scale_y
  93. if self.is_loaded then
  94. self.need_reset_scale = false
  95. self.transform.localScale = Vector2(scale_x, scale_y)
  96. else
  97. self.need_reset_scale = true
  98. end
  99. end
  100. function RoleVipItem:__delete( )
  101. end