源战役客户端
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

70 lines
1.7 KiB

CSGWarRewardItem = CSGWarRewardItem or BaseClass(BaseItem)
local CSGWarRewardItem = CSGWarRewardItem
function CSGWarRewardItem:__init()
self.base_file = "CSGWar"
self.layout_file = "CSGWarRewardItem"
self.model = CSGWarModel:GetInstance()
self.item_list = {}
self:Load()
end
function CSGWarRewardItem:Load_callback()
self.nodes = {
"name_text:tmp", "item_scroll", "item_scroll/Viewport/item_con",
}
self:GetChildren(self.nodes)
self:AddEvents()
if self.need_refreshData then
self:UpdateView()
end
end
function CSGWarRewardItem:AddEvents( )
end
function CSGWarRewardItem:UpdateView( )
local data = self.data == "left" and CSGWarConst.LEFT_REWARD or CSGWarConst.RIGHT_REWARD
local cfg = data[self.index]
local x_offset = 90
self.name_text_tmp.text = cfg.name
for i,v in ipairs(cfg.reward) do
local item = self.item_list[i]
if not item then
item = UIObjPool:PopItem(UIObjPool.UIType.AwardItem, self.item_con)
item:SetItemSize(84,84)
item:SetPosition((i-1)*x_offset, 0)
self.item_list[i] = item
end
item:SetData(v[2],v[3])
--是否有主副战区标识
-- if v[4] == 1 then
-- item:SetNumLimitVisible(true,10)
-- elseif v[4] == 2 then
-- item:SetNumLimitVisible(true,11)
-- else
-- item:SetNumLimitVisible(false)
-- end
end
SetSizeDeltaX(self.item_con, #cfg.reward * x_offset)
end
function CSGWarRewardItem:SetData( data,index )
self.data = data
self.index = index
if self.is_loaded then
self.need_refreshData = false
self:UpdateView()
else
self.need_refreshData = true
end
end
function CSGWarRewardItem:__delete( )
for i,v in ipairs(self.item_list) do
UIObjPool:PushItem(UIObjPool.UIType.AwardItem, v)
v = nil
end
self.item_list = {}
end