Update - 1.13.0.124
EN: 1.13.0.124 CN: 1.13.0.124 JP: 1.13.0.128 KR: 1.13.0.130
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
local SoldierHandbookStarterCardCtrl = class("SoldierHandbookStarterCardCtrl", BaseCtrl)
|
||||
SoldierHandbookStarterCardCtrl._mapNodeConfig = {
|
||||
sv_loop = {
|
||||
sComponentName = "LoopScrollView"
|
||||
},
|
||||
CardDetailCtrl = {
|
||||
sNodeName = "DetailRoot",
|
||||
sCtrlName = "Game.UI.Soldier.Handbook.SoldierHandbookCardDetailCtrl"
|
||||
}
|
||||
}
|
||||
SoldierHandbookStarterCardCtrl._mapEventConfig = {}
|
||||
SoldierHandbookStarterCardCtrl._mapRedDotConfig = {}
|
||||
function SoldierHandbookStarterCardCtrl:Awake()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:OnEnable()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:OnDisable()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:OnDestroy()
|
||||
self:Clear()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:Clear()
|
||||
if self.tbCardItemCtrl ~= nil then
|
||||
for _, v in ipairs(self.tbCardItemCtrl) do
|
||||
self:UnbindCtrlByNode(v)
|
||||
end
|
||||
self.tbCardItemCtrl = {}
|
||||
end
|
||||
self._mapNode.CardDetailCtrl:Clear()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:Init()
|
||||
self.tbCardItemCtrl = {}
|
||||
self:InitCardList()
|
||||
self:RefreshCardList()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:InitCardList()
|
||||
self.tbAllCard = {}
|
||||
self.mapCardByRarity = {}
|
||||
local func_ForEach_Card = function(mapCardData)
|
||||
table.insert(self.tbAllCard, mapCardData)
|
||||
if self.mapCardByRarity[mapCardData.Rarity] == nil then
|
||||
self.mapCardByRarity[mapCardData.Rarity] = {}
|
||||
end
|
||||
table.insert(self.mapCardByRarity[mapCardData.Rarity], mapCardData)
|
||||
end
|
||||
ForEachTableLine(DataTable.SoldierStarterCard, func_ForEach_Card)
|
||||
table.sort(self.tbAllCard, function(a, b)
|
||||
if a.Rarity == b.Rarity then
|
||||
return a.Id < b.Id
|
||||
end
|
||||
return a.Rarity > b.Rarity
|
||||
end)
|
||||
for nRarity, tbCard in pairs(self.mapCardByRarity) do
|
||||
table.sort(tbCard, function(a, b)
|
||||
return a.Id < b.Id
|
||||
end)
|
||||
end
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:RefreshCardList()
|
||||
self.tbCardItemCtrl = {}
|
||||
self.nSelectIndex = 1
|
||||
self.tbCurCardList = self.tbAllCard
|
||||
self._mapNode.sv_loop:Init(#self.tbCurCardList, self, self.OnCardRefreshGrid, self.OnCardGridBtnClick, false)
|
||||
EventManager.Hit("SoldierHandbookStarterCard_Selected", self.tbCurCardList[self.nSelectIndex].Id)
|
||||
self:RefreshDetail()
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:RefreshDetail()
|
||||
self._mapNode.CardDetailCtrl:RefreshStarterCardDetail(self.tbCurCardList[self.nSelectIndex].Id)
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:OnCardRefreshGrid(goGrid, gridIndex)
|
||||
local nIndex = gridIndex + 1
|
||||
local nInstanceId = goGrid:GetInstanceID()
|
||||
if not self.tbCardItemCtrl[nInstanceId] then
|
||||
self.tbCardItemCtrl[nInstanceId] = self:BindCtrlByNode(goGrid, "Game.UI.Soldier.Template.SoldierStarterCardItemCtrl")
|
||||
end
|
||||
self.tbCardItemCtrl[nInstanceId]:SetItemData(self.tbCurCardList[nIndex], self.nSelectIndex == nIndex)
|
||||
end
|
||||
function SoldierHandbookStarterCardCtrl:OnCardGridBtnClick(goGrid, gridIndex)
|
||||
local nIndex = gridIndex + 1
|
||||
self.nSelectIndex = nIndex
|
||||
EventManager.Hit("SoldierHandbookStarterCard_Selected", self.tbCurCardList[self.nSelectIndex].Id)
|
||||
self:RefreshDetail()
|
||||
end
|
||||
return SoldierHandbookStarterCardCtrl
|
||||
Reference in New Issue
Block a user