Files
StellaSora_DataLua/lua/game/ui/trekkerversus/travelerduelchallengeaffixgrid.lua
SL1900 35c8d87e86 Update - 1.4.0.73
EN: 1.4.0.73
CN: 1.4.0.74
JP: 1.4.0.77
KR: 1.4.0.80
2025-12-25 19:00:00 +09:00

50 lines
2.2 KiB
Lua

local TravelerDuelChallengeAffixGrid = class("TravelerDuelChallengeAffixGrid", BaseCtrl)
TravelerDuelChallengeAffixGrid._mapNodeConfig = {
imgSelect = {},
imgGroupMask = {sComponentName = "Image"},
imgLock = {},
imgHardMask = {},
TMPLockCond = {sComponentName = "TMP_Text"},
imgAffixIcon = {sComponentName = "Image"},
TMPHard = {sComponentName = "TMP_Text"},
TMPHardMask = {sComponentName = "TMP_Text"},
imgLine = {},
btnGrid = {sComponentName = "UIButton"}
}
TravelerDuelChallengeAffixGrid._mapEventConfig = {}
function TravelerDuelChallengeAffixGrid:Refresh(nAffixId, bSelect, bGroupMask, bLine, mapActData)
if nAffixId == 0 then
self._mapNode.btnGrid.gameObject:SetActive(false)
return
else
self._mapNode.btnGrid.gameObject:SetActive(true)
end
local bUnlock, nType, nCond = mapActData:GetTravelerDuelAffixUnlock(nAffixId)
self.bUnlock = bUnlock
self.nType = nType
self.nCond = nCond
local mapAffixCfgData = ConfigTable.GetData("TravelerDuelChallengeAffix", nAffixId)
self._mapNode.imgLine:SetActive(bLine)
self:SetPngSprite(self._mapNode.imgAffixIcon, mapAffixCfgData.Icon)
self:SetPngSprite(self._mapNode.imgGroupMask, mapAffixCfgData.Icon)
NovaAPI.SetTMPText(self._mapNode.TMPHard, mapAffixCfgData.Difficulty)
NovaAPI.SetTMPText(self._mapNode.TMPHardMask, mapAffixCfgData.Difficulty)
self._mapNode.imgSelect:SetActive(bSelect)
self._mapNode.imgGroupMask.gameObject:SetActive(bGroupMask or not bUnlock)
self._mapNode.imgHardMask:SetActive(bGroupMask or not bUnlock)
self._mapNode.TMPHardMask.gameObject:SetActive(bGroupMask or not bUnlock)
self._mapNode.imgLock:SetActive(not bUnlock)
if not bUnlock then
NovaAPI.SetTMPText(self._mapNode.TMPLockCond, orderedFormat(ConfigTable.GetUIText("TD_AffixCond" .. nType), nCond))
end
end
function TravelerDuelChallengeAffixGrid:SetSelect(bSelect)
self._mapNode.imgSelect:SetActive(bSelect)
end
function TravelerDuelChallengeAffixGrid:SetGroupMask(bGroupSelect)
self._mapNode.imgGroupMask.gameObject:SetActive(bGroupSelect or not self.bUnlock)
self._mapNode.imgHardMask:SetActive(bGroupSelect or not self.bUnlock)
self._mapNode.TMPHardMask.gameObject:SetActive(bGroupSelect or not self.bUnlock)
end
return TravelerDuelChallengeAffixGrid