PGRData/Script/matrix/xui/xuiactivitybase/XUiGridConsumeReward.lua

46 lines
No EOL
1.6 KiB
Lua

local XUiGridConsumeReward = XClass(nil, "XUiGridConsumeReward")
function XUiGridConsumeReward:Ctor(rootUi, ui)
self.GameObject = ui.gameObject
self.Transform = ui.transform
XTool.InitUiObject(self)
self:Init(rootUi)
end
function XUiGridConsumeReward:Init(rootUi)
self.RootUi = rootUi
self.CommonGrid = XUiGridCommon.New(self.RootUi, self.GridCommon)
end
function XUiGridConsumeReward:Refresh(taskId)
self.GameObject:SetActiveEx(true)
self:RegisterBtnListener(taskId)
self.TaskId = taskId
local taskCfg = XTaskConfig.GetTaskCfgById(taskId)
local taskData = XDataCenter.TaskManager.GetTaskDataById(taskId)
local rewardGood = XRewardManager.GetRewardList(taskCfg.RewardId)[1]
self.CommonGrid:Refresh(rewardGood)
if self.TxtNumber then
self.TxtNumber.text = taskCfg.Result
end
self.PanelEffect.gameObject:SetActiveEx(false)
self.BtnGet.gameObject:SetActiveEx(false)
self.ImgReceive.gameObject:SetActiveEx(false)
if taskData.State == XDataCenter.TaskManager.TaskState.Achieved then
self.PanelEffect.gameObject:SetActiveEx(true)
self.BtnGet.gameObject:SetActiveEx(true)
elseif taskData.State == XDataCenter.TaskManager.TaskState.Finish then
self.ImgReceive.gameObject:SetActiveEx(true)
end
end
function XUiGridConsumeReward:RegisterBtnListener(taskId)
self.BtnGet.CallBack = function ()
XDataCenter.TaskManager.FinishTask(taskId, function(rewardGoodsList)
XUiManager.OpenUiObtain(rewardGoodsList)
end)
end
end
return XUiGridConsumeReward