08b515afd9
EN: 2.0.0.143 CN: 2.0.0.142 JP: 2.0.0.145 KR: 2.0.0.150
62 lines
1.9 KiB
Lua
62 lines
1.9 KiB
Lua
local BaseCtrl = require("GameCore.UI.BaseCtrl")
|
|
local SoldierBuffCtrl = class("SoldierBuffCtrl", BaseCtrl)
|
|
SoldierBuffCtrl._mapNodeConfig = {
|
|
goBuffItem = {
|
|
nCount = 4,
|
|
sCtrlName = "Game.UI.Soldier.Sandtable.Items.SoldierBuffItemCtrl"
|
|
},
|
|
goBuffMore = {},
|
|
btnBuff = {
|
|
sNodeName = "goBuffRoot",
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtnClick_Buff"
|
|
},
|
|
goBuffRoot = {
|
|
sComponentName = "RectTransform"
|
|
}
|
|
}
|
|
SoldierBuffCtrl._mapEventConfig = {}
|
|
SoldierBuffCtrl._mapRedDotConfig = {}
|
|
function SoldierBuffCtrl:Awake()
|
|
end
|
|
function SoldierBuffCtrl:OnEnable()
|
|
end
|
|
function SoldierBuffCtrl:OnDisable()
|
|
end
|
|
function SoldierBuffCtrl:OnDestroy()
|
|
end
|
|
function SoldierBuffCtrl:RefreshBuff()
|
|
self._tbStrategyCardIds = {}
|
|
self.tbBuffCfgs = {}
|
|
local levelData = PlayerData.SoldierData:GetCurLevelData()
|
|
local tbStrategyCard = levelData:GetCardData()
|
|
if tbStrategyCard == nil or #tbStrategyCard == 0 then
|
|
self._mapNode.goBuffRoot.gameObject:SetActive(false)
|
|
return
|
|
end
|
|
self._mapNode.goBuffRoot.gameObject:SetActive(true)
|
|
self._tbStrategyCardIds = tbStrategyCard
|
|
for k, v in ipairs(self._tbStrategyCardIds) do
|
|
local cfg = ConfigTable.GetData("SoldierStrategyCard", v.nId)
|
|
table.insert(self.tbBuffCfgs, cfg)
|
|
end
|
|
self:_RefreshBuffItems()
|
|
end
|
|
function SoldierBuffCtrl:_RefreshBuffItems()
|
|
for k, v in ipairs(self._mapNode.goBuffItem) do
|
|
v.gameObject:SetActive(true)
|
|
if self._tbStrategyCardIds[k] ~= nil then
|
|
local cfg = ConfigTable.GetData("SoldierStrategyCard", self._tbStrategyCardIds[k].nId)
|
|
v:SetData(cfg)
|
|
else
|
|
v:SetEmpty()
|
|
end
|
|
end
|
|
self._mapNode.goBuffMore.gameObject:SetActive(#self._tbStrategyCardIds > #self._mapNode.goBuffItem)
|
|
CS.UnityEngine.UI.LayoutRebuilder.ForceRebuildLayoutImmediate(self._mapNode.goBuffRoot)
|
|
end
|
|
function SoldierBuffCtrl:OnBtnClick_Buff()
|
|
EventManager.Hit(EventId.OpenPanel, PanelId.SoldierBuffTipsPanel, self.tbBuffCfgs)
|
|
end
|
|
return SoldierBuffCtrl
|