PGRData/Script/matrix/xui/xuibag/XUiPanelBagRecycle.lua

46 lines
No EOL
1.7 KiB
Lua

local XUiPanelBagRecycle = XClass(nil, "XUiPanelBagRecycle")
function XUiPanelBagRecycle:Ctor(rootUi, ui)
self.RootUi = rootUi
self.GameObject = ui.gameObject
self.Transform = ui.transform
self.RecycleItems = {}
self.RewardItems = {}
XTool.InitUiObject(self)
self:AutoAddListener()
self.GridBagItemRecycle.gameObject:SetActive(false)
end
function XUiPanelBagRecycle:Refresh(recycleItems, rewardItems)
local recycleGridDatas = {}
for index, item in pairs(recycleItems) do
table.insert(recycleGridDatas, { Data = XRewardManager.CreateRewardGoods(item.Id, item.Count), GridIndex = index })
end
local rewardGridDatas = {}
local sortedRewardItems = XRewardManager.MergeAndSortRewardGoodsList(rewardItems)
for index, data in pairs(sortedRewardItems) do
table.insert(rewardGridDatas, { Data = data, GridIndex = index })
end
local onCreate = function(item, data)
item:Refresh(data, false, true, true)
end
XUiHelper.CreateTemplates(self.RootUi, self.RecycleItems, recycleGridDatas, XUiBagItem.New, self.GridBagItemRecycle.gameObject, self.PanelRecycle, onCreate)
XUiHelper.CreateTemplates(self.RootUi, self.RewardItems, rewardGridDatas, XUiBagItem.New, self.GridBagItemRecycle.gameObject, self.PanelReward, onCreate)
self.GameObject:SetActive(true)
self.RootUi:PlayAnimation("AnimTanChuangEnable")
end
function XUiPanelBagRecycle:AutoAddListener()
self.BtnClose.CallBack = function() self:OnBtnCloseClick() end
end
function XUiPanelBagRecycle:OnBtnCloseClick()
self.RootUi:PlayAnimation("AnimTanChuangDisable")
self.GameObject:SetActive(false)
end
return XUiPanelBagRecycle