|
|
-
- ChildHandbookSuitRewardItem = ChildHandbookSuitRewardItem or BaseClass(BaseItem)
- function ChildHandbookSuitRewardItem:__init()
- self.base_file = "child"
- self.layout_file = "ChildHandbookSuitRewardItem"
- self.is_delay_callback = true
- -- self.use_local_view = true
- self.model = ChildModel:GetInstance()
- self.suitInfoList = self.model:GetToySuitInfo()
- self.awardItems = {}
- self:Load()
- end
-
- function ChildHandbookSuitRewardItem:Load_callback()
- self.nodes = {
- "had_con:obj", "lock_con:obj", "dis_had_con:obj",
- "txt_name:tmp",
- "dis_had_con/btn_get:obj",
- "lock_con/loading_num:tmp",
- "had_con/text_time:tmp",
- "itemCon:obj",
- "dis_had_con/btn_get/red_dot:obj",
- "had_con/text_descrb2:tmp",
- "icon:img",
- "had_con/light:img",
- "lock_con/light2:img",
- "bg2:img",
- "bg:img",
- "line:obj",
- "txt_name_gray:tmp",
- }
- self:GetChildren(self.nodes)
- self:InitEvent()
- if self.need_refreshData then
- self:SetData(self.data, self.is_last)
- -- self:SetChosen(self.isChosen)
- self:SetRedDot(self.isRedDot)
- end
- lua_resM:setOutsideImageSprite(self, self.bg_img, GameResPath.GetChildIcon("child_hb_reward_item_bg"), false)
- lua_resM:setOutsideImageSprite(self, self.bg2_img, GameResPath.GetChildIcon("child_hb_reward_item_bg2"), false)
- lua_resM:setOutsideImageSprite(self, self.light_img, GameResPath.GetChildIcon("child_hb_reward_item_bg3"), false)
- lua_resM:setOutsideImageSprite(self, self.light2_img, GameResPath.GetChildIcon("child_hb_reward_item_bg3"), false)
- end
-
- function ChildHandbookSuitRewardItem:InitEvent()
- local function onBtnClickHandler(target, x, y)
- if target == self.btn_get_obj then
- --self.callback(self)
- self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16535,self.data.suit_type)
- self.need_check_effect = true
- self.last_get_status = self.data.status
- end
- end
- AddClickEvent(self.btn_get_obj, onBtnClickHandler)
- end
-
- function ChildHandbookSuitRewardItem:SetData(data,is_last)
- self.data = data or self.data
- --self.callback = callback or self.callback
- self.is_last = is_last or self.is_last
-
- if self.is_loaded then
- if not self.data then return end
- local collect_reward_list = {}
- for k,v in pairs(self.suitInfoList) do
- if v.suit_type == self.data.suit_type then
- self.name_str = Trim(v.suit_name)
- self.text_descrb2_tmp.text = v.suit_name .. "全收集!"
- collect_reward_list = v.collect_reward
- end
- end
-
- if self.need_check_effect then
- self.need_check_effect = false
- if (not self.is_in_effect) and self.last_get_status ~= 2 and self.data.status == 2 then
- self.last_get_status = nil
- self.is_in_effect = true
- local function call_back( )
- self.is_in_effect = false
- end
- self:ClearUIEffect(self.bg2)
- self:AddUIEffect("ui_hunliqiudianliang", self.bg2, "Activity", Vector3(0, 0 ,0), 7, false, 0.6, nil, call_back)
- end
- end
-
- self.had_con_obj:SetActive(false)
- self.lock_con_obj:SetActive(false)
- SetImageGray(self.bg2_img, false)
- self.dis_had_con_obj:SetActive(false)
- self.itemCon_obj:SetActive(true)
- self.line_obj:SetActive(not self.is_last)
- --------------------------
- collect_reward_list = stringtotable(collect_reward_list)
- for k,v in pairs(collect_reward_list) do
- if self.awardItems[k] == nil then
- self.awardItems[k] = UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem,self.itemCon)--AwardItem.New(self.Content_reward)--
- self.awardItems[k]:SetItemSize(62, 62)
- self.awardItems[k].transform.pivot = Vector2(0, 1)
- end
- self.awardItems[k]:SetData(v[2],v[3])
- end
- -- logWarn('=======Msh:ChildHandbookSuitRewardItem.lua[86]=======')
- -- PrintTable(self.data)
- -- 设置图标
- local res_id = "toy_icon_" .. self.data.suit_type
- lua_resM:setOutsideImageSprite(self, self.icon_img, GameResPath.GetChildToyImgIcon(res_id), true)
- -----------------------------
- if self.data.status == 0 then
- self.lock_con_obj:SetActive(true)
- SetImageGray(self.bg2_img, true)
- SetImageGray(self.icon_img, true)
- self.txt_name_gray_tmp.text = self.name_str
- self.txt_name_tmp.text = ""
- --local is_enought = self.data.progress >= self.data.collectMaxNum
- local txt_progress = HtmlColorTxt(self.data.progress, ColorUtil.GREEN_DARK )
- self.loading_num_tmp.text = "完成进度:".. txt_progress.."/"..self.data.collectMaxNum
- elseif self.data.status == 1 then --可领
- self.dis_had_con_obj:SetActive(true)
- self.txt_name_gray_tmp.text = ""
- self.txt_name_tmp.text = self.name_str
- elseif self.data.status == 2 then
- self.had_con_obj:SetActive(true)
- self.itemCon_obj:SetActive(false)
- self.text_time_tmp.text = TimeUtil:timeConversion(self.data.time, "yyyy.mm.dd hh:mm")
- self.txt_name_gray_tmp.text = ""
- self.txt_name_tmp.text = self.name_str
- end
- else
- self.need_refreshData = true
- end
- end
-
- function ChildHandbookSuitRewardItem:SetChosen(bool)
- self.isChosen = bool
- if self.is_loaded then
- if bool then
- self.chosen_obj:SetActive(true)
- else
- self.chosen_obj:SetActive(false)
- end
- else
- self.need_refreshData = true
- end
- end
-
- function ChildHandbookSuitRewardItem:SetRedDot(bool)
- self.isRedDot = bool
- if self.is_loaded then
- self.red_dot_obj:SetActive(self.isRedDot)
- else
- self.need_refreshData = true
- end
- end
-
- function ChildHandbookSuitRewardItem:__delete( )
-
- for i=1,#self.awardItems do
- if self.awardItems[i] then
- UIObjPool:getInstance():PushItem(UIObjPool.UIType.AwardItem, self.awardItems[i])
- self.awardItems[i] = nil
- end
- end
-
-
- end
|