|
|
- SupremeVipTabItem = SupremeVipTabItem or BaseClass(BaseItem)
- local SupremeVipTabItem = SupremeVipTabItem
-
- function SupremeVipTabItem:__init()
- self.base_file = "supremeVip"
- self.layout_file = "SupremeVipTabItem"
- self.model = SupremeVipModel:getInstance()
-
- self.have_supreme_vip_right = false --是否拥有此项特权功能
-
- self:Load()
- end
-
- function SupremeVipTabItem:Load_callback()
- self.nodes = {
- "touch_bg/leftBg/leftDes:tmp",
- "touch_bg/titleImg:obj",
- "touch_bg/leftBg/leftNum:tmp",
- "touch_bg/selectBg:obj",
- "touch_bg/bg:obj:img",
- "touch_bg/leftBg:obj",
- "touch_bg/redDot:obj",
- "touch_bg:obj",
- "touch_bg/get_bg:obj",
- "touch_bg/tabIcon:img",
- "touch_bg/tabName:img",
- "touch_bg/clock:obj",
- }
- self:GetChildren(self.nodes)
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- if self.need_reclick then
- self:SetSelected(self.selected)
- end
- end
-
- function SupremeVipTabItem:AddEvents( )
- local on_click = function ( click_obj )
- if self.touch_bg_obj == click_obj then
- self.click_callback(self.index)
- end
- end
- AddClickEvent(self.touch_bg_obj, on_click)
-
-
- --刷新兑换剩余次数
- local function update_exchange_rest_counts()
- self:UpdateExchangeRestCounts()
- end
- self:BindEvent(self.model, SupremeVipConst.REFRESH_EXCHANGE_REST_COUNTS,update_exchange_rest_counts)
-
-
- --刷新红点
- local function on_update_red(tab_id)
- if self.is_loaded then
- self:UpdateRedDot()
- end
- end
- self:BindEvent(self.model, SupremeVipConst.ANS_UPDATE_RED_DOT,on_update_red)
- end
-
- function SupremeVipTabItem:UpdateRedDot( )
- if not self.is_loaded or not self.redDot_obj then return end
- local red = false
- local show_clock = false
- if self.index == 1 then
- red = self.model:GetDailyGiftRed() or self.model:GetSevenLoginRed() or false
- elseif self.index == 2 then
- red = self.model:GetDiamondExchangeRed() or false
- elseif self.index == 3 then
- -- red = self.model:GetTrainDrugExchangeRed()
- elseif self.index == 4 then
- red = self.model:GetShopRed() or false
- if not red then--如果没有红点,检查下是不是应该占时钟标志
- show_clock = self.model:GetMoneyLeftRed() or false
- end
- end
- self.redDot_obj:SetActive(red)
- self.clock_obj:SetActive(show_clock)
- end
-
- function SupremeVipTabItem:UpdateView( )
- self:UpdateExchangeRestCounts()
- self:UpdateRedDot()
- self.titleImg_obj:SetActive(self.index == 2 or self.index == 3)
- local rest_daily_gift_counts = self.model:GetExchangeRestCount(SupremeVipConst.ExchangeType.DailyGift)--拿到剩余的兑换次数
- -- self.get_bg_obj:SetActive(false)
- -- if not self.model:IsForeverSupremeVip() then -- 一阶贵族
- -- else
- -- if rest_daily_gift_counts == 2 then
-
- -- elseif rest_daily_gift_counts == 1 then
-
- -- else
- -- self.get_bg_obj:SetActive(self.index == 1)
- -- end
- -- end
- -- local sup_vip_type = RoleManager.Instance.mainRoleInfo.sup_vip_type
- -- self:SetGray((self.index == 2 or self.index == 3) and sup_vip_type < 2)
-
-
- lua_resM:setImageSprite(self, self.tabIcon_img, "supremeVip_asset","supremeVip_tab_icon_"..self.index,true)
- end
-
- --刷新兑换剩余次数
- function SupremeVipTabItem:UpdateExchangeRestCounts( )
- if self.exchange_type ~= 0 then
- self.leftBg_obj:SetActive(true)
- local sup_vip_type = RoleManager.Instance.mainRoleInfo.sup_vip_type
- if sup_vip_type == 2 then
- local num = self.model:GetExchangeRestCount(self.exchange_type)
- local num_color = num == 0 and ColorUtil.RED_DARK or ColorUtil.GREEN_TIPS
- self.leftDes_tmp.text = string.format("今日剩余:<%s>%s</color>", num_color, num)
- else
- self.leftDes_tmp.text = ""
- end
- else
- self.leftBg_obj:SetActive(false)
- end
- end
-
- function SupremeVipTabItem:SetData(index,click_callback)
- self.index = index
- self.click_callback = click_callback
- if self.index == 2 then
- self.exchange_type = SupremeVipConst.ExchangeType.Diamond
- elseif self.index == 3 then
- self.exchange_type = SupremeVipConst.ExchangeType.TrainDrug
- else
- self.exchange_type = 0
- end
-
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- end
-
- function SupremeVipTabItem:SetSelected(bool)
- self.selected = bool
- if self.is_loaded then
- self.need_reclick = false
- self.selectBg_obj:SetActive(bool)
- self.bg_obj:SetActive(not bool)
- if bool then
- lua_resM:setImageSprite(self, self.tabName_img, "supremeVip_asset","supremeVip_tab_name_"..self.index.."_2",true)
- else
- lua_resM:setImageSprite(self, self.tabName_img, "supremeVip_asset","supremeVip_tab_name_"..self.index.."_1",true)
- end
- else
- self.need_reclick = true
- end
- end
-
- --一阶贵族时候要置灰永久特权贵族的按钮
- function SupremeVipTabItem:SetGray(bool)
- SetImageGray(self.bg_img,bool)
- end
-
- function SupremeVipTabItem:__delete( )
-
- end
|