sk-client/Assets/ManagedResources/~Lua/Modules/Operating/WeekendWelfare.lua

120 lines
4.6 KiB
Lua

local WeekendWelfare = quick_class("WeekendWelfare")
local bgSprite = {
"X1_zhoumofuli_wupingdi_01",
"X1_zhoumofuli_wupingdi_02",
}
function WeekendWelfare:ctor(mainPanel, gameObject)
self.mainPanel = mainPanel
self.gameObject = gameObject
self:InitComponent(gameObject)
self:BindEvent()
self.itemList = {}
end
-- 初始化组件
function WeekendWelfare:InitComponent(gameObject)
end
function WeekendWelfare:BindEvent()
end
function WeekendWelfare:AddEvent()
end
function WeekendWelfare:RemoveEvent()
end
function WeekendWelfare:OnShow(parentSorting, arg, pageIndex)
self.gameObject:SetActive(true)
CheckRedPointStatus(RedPointType.WeekendWelfare)
local curWeek = GetSeverWeek()
local activityId = ActivityGiftManager.GetActivityTypeInfo(ActivityTypeDef.WeekendWelfare).activityId
local rewardConfig = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig, "ActivityId", activityId)
for index, v in ipairs(rewardConfig) do
local go = Util.GetGameObject(self.gameObject, "gift"..index)
if self.itemList[go] then
for i = 1, #v.Reward do
if not self.itemList[go][i] then
self.itemList[go][i] = SubUIManager.Open(SubUIConfig.ItemView, Util.GetGameObject(go, "itemGrid").transform)
end
self.itemList[go][i].gameObject:SetActive(false)
end
for i = 1, #v.Reward do
if self.itemList[go][i] then
self.itemList[go][i]:OnOpen(false, {v.Reward[i][1], v.Reward[i][2]}, 0.45)
self.itemList[go][i].gameObject:SetActive(true)
end
end
else
self.itemList[go] = {}
for i = 1, #v.Reward do
self.itemList[go][i] = SubUIManager.Open(SubUIConfig.ItemView, Util.GetGameObject(go, "itemGrid").transform)
self.itemList[go][i].gameObject:SetActive(false)
end
for i = 1, #v.Reward do
self.itemList[go][i]:OnOpen(false, {v.Reward[i][1], v.Reward[i][2]}, 0.5)
self.itemList[go][i].gameObject:SetActive(true)
end
end
Util.GetGameObject(go, "mask"):SetActive(true)
Util.GetGameObject(go, "received"):SetActive(false)
Util.GetGameObject(go, "redpoint"):SetActive(false)
Util.GetGameObject(go, "received"):SetActive(true)
local receivedText = Util.GetGameObject(go, "received/Text"):GetComponent("Text")
local misson = ActivityGiftManager.GetActivityTypeInfo(ActivityTypeDef.WeekendWelfare).mission[index]
if v.Values[2][1] == curWeek then
if misson.state == 0 then
go:GetComponent("Image").sprite = Util.LoadSprite(bgSprite[2])
Util.GetGameObject(go, "mask"):SetActive(false)
Util.GetGameObject(go, "redpoint"):SetActive(true)
Util.GetGameObject(go, "received"):SetActive(false)
else
go:GetComponent("Image").sprite = Util.LoadSprite(bgSprite[1])
receivedText.text = GetLanguageStrById(50219) --已领取
Util.GetGameObject(go, "received"):SetActive(true)
end
else
if misson.state == 1 then
receivedText.text = GetLanguageStrById(50219)
Util.GetGameObject(go, "received"):SetActive(true)
else
if curWeek == 6 then
receivedText.text = GetLanguageStrById(50220)--未开启
elseif curWeek == 0 then
if v.Values[2][1] == 6 then
receivedText.text = GetLanguageStrById(50221)--已过期
else
receivedText.text = GetLanguageStrById(50220)
end
else
receivedText.text = GetLanguageStrById(50221)--已过期
end
end
go:GetComponent("Image").sprite = Util.LoadSprite(bgSprite[1])
end
Util.AddOnceClick(go, function ()
if v.Values[2][1] ~= curWeek or misson.state ~= 0 then
return
end
NetManager.GetActivityRewardRequest(v.Id, activityId, function(drop)
ThinkingAnalyticsManager.Track("activity_weekend", {
activity_weekend_id = v.Id
})
UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1, function()
self:OnShow()
end)
end)
end)
end
end
function WeekendWelfare:OnHide()
self.gameObject:SetActive(false)
end
return WeekendWelfare