08b515afd9
EN: 2.0.0.143 CN: 2.0.0.142 JP: 2.0.0.145 KR: 2.0.0.150
45 lines
1.3 KiB
Lua
45 lines
1.3 KiB
Lua
local SoldierHandbookBossCtrl = class("SoldierHandbookBossCtrl", BaseCtrl)
|
|
SoldierHandbookBossCtrl._mapNodeConfig = {
|
|
sv_loop = {
|
|
sNodeName = "sv_bossGroup",
|
|
sComponentName = "LoopScrollView"
|
|
}
|
|
}
|
|
SoldierHandbookBossCtrl._mapEventConfig = {}
|
|
SoldierHandbookBossCtrl._mapRedDotConfig = {}
|
|
function SoldierHandbookBossCtrl:OnDestroy()
|
|
self:Clear()
|
|
end
|
|
function SoldierHandbookBossCtrl:Clear()
|
|
if self.tbItemCtrl ~= nil then
|
|
for _, v in ipairs(self.tbItemCtrl) do
|
|
self:UnbindCtrlByNode(v)
|
|
end
|
|
self.tbItemCtrl = {}
|
|
end
|
|
end
|
|
function SoldierHandbookBossCtrl:Init()
|
|
self.tbItemCtrl = {}
|
|
self:InitList()
|
|
end
|
|
function SoldierHandbookBossCtrl:InitList()
|
|
self.tbTemplateList = PlayerData.SoldierData:GetAllBossTemplates() or {}
|
|
self._mapNode.sv_loop:SetAnim(0.06)
|
|
self._mapNode.sv_loop:Init(#self.tbTemplateList, self, self.OnRefreshGrid)
|
|
end
|
|
function SoldierHandbookBossCtrl:OnRefreshGrid(goGrid, gridIndex)
|
|
local nIndex = gridIndex + 1
|
|
local mapData = self.tbTemplateList[nIndex]
|
|
if mapData == nil then
|
|
return
|
|
end
|
|
local nInstanceId = goGrid:GetInstanceID()
|
|
local ctrl = self.tbItemCtrl[nInstanceId]
|
|
if ctrl == nil then
|
|
ctrl = self:BindCtrlByNode(goGrid, "Game.UI.Soldier.BossTemplate.SoldierBossTemplateItemCtrl")
|
|
self.tbItemCtrl[nInstanceId] = ctrl
|
|
end
|
|
ctrl:SetItemData(mapData)
|
|
end
|
|
return SoldierHandbookBossCtrl
|