Files
StellaSora_DataLua/lua/game/ui/skillinstancelevelselect/skillinstancelevelselectgridctrl.lua
T
SL1900 5e0d58cfad Initial version - 1.2.0.60
EN: 1.2.0.60
CN: 1.2.0.61
JP: 1.2.0.63
KR: 1.2.0.67
2025-12-03 01:00:00 +09:00

30 lines
1.2 KiB
Lua

local SkillInstanceLevelSelectGridCtrl = class("SkillInstanceLevelSelectGridCtrl", BaseCtrl)
SkillInstanceLevelSelectGridCtrl._mapNodeConfig = {
imgLevelImage = {sComponentName = "Image"},
goMask = {},
TMPInstanceName = {sComponentName = "TMP_Text"},
TMPHint = {sComponentName = "TMP_Text"},
btnGrid = {sComponentName = "UIButton"},
imgLock = {}
}
SkillInstanceLevelSelectGridCtrl._mapEventConfig = {}
function SkillInstanceLevelSelectGridCtrl:Refresh(nType)
local mapLevelCfgData = ConfigTable.GetData("SkillInstanceType", nType)
NovaAPI.SetTMPText(self._mapNode.TMPInstanceName, mapLevelCfgData.Name)
self:SetPngSprite(self._mapNode.imgLevelImage, mapLevelCfgData.Episode)
local nLevelState, bUnlock = PlayerData.SkillInstance:GetLevelOpenState(nType)
local bOpen = nLevelState == AllEnum.SkillInstanceState.Open
self._mapNode.goMask:SetActive(not bOpen)
self._mapNode.imgLock:SetActive(not bUnlock)
self._mapNode.btnGrid.bSkipBtnAnim = not bOpen
end
function SkillInstanceLevelSelectGridCtrl:CheckMainlinePass(mapData)
if mapData.MainLineId > 0 then
local nStar = PlayerData.Mainline:GetMianlineLevelStar(mapData.MainLineId)
return 0 < nStar
else
return true
end
end
return SkillInstanceLevelSelectGridCtrl