5e0d58cfad
EN: 1.2.0.60 CN: 1.2.0.61 JP: 1.2.0.63 KR: 1.2.0.67
65 lines
2.4 KiB
Lua
65 lines
2.4 KiB
Lua
local TemplateDiscItemCtrl = class("TemplateDiscItemCtrl", BaseCtrl)
|
|
TemplateDiscItemCtrl._mapNodeConfig = {
|
|
imgIcon = {sComponentName = "Image"},
|
|
txtLevel = {sComponentName = "TMP_Text"},
|
|
txtLv = {sComponentName = "TMP_Text", sLanguageId = "Lv"},
|
|
goStar = {sComponentName = "Image"},
|
|
imgNoteBg = {nCount = 3, sComponentName = "Image"},
|
|
Select = {},
|
|
imgEET = {sComponentName = "Image"},
|
|
txtDiscTag = {nCount = 3, sComponentName = "TMP_Text"},
|
|
imgRareBg = {sComponentName = "Image"}
|
|
}
|
|
TemplateDiscItemCtrl._mapEventConfig = {}
|
|
function TemplateDiscItemCtrl:Refresh(nId, nStar, nMaxStar, nLevel, tbNote)
|
|
local mapCfg = ConfigTable.GetData("Disc", nId)
|
|
local mapItem = ConfigTable.GetData_Item(nId)
|
|
if not mapCfg or not mapItem then
|
|
return
|
|
end
|
|
self:SetAtlasSprite(self._mapNode.imgRareBg, "12_rare", AllEnum.FrameType_New.DiscFrameS .. AllEnum.FrameColor_New[mapItem.Rarity])
|
|
self:SetPngSprite(self._mapNode.imgIcon, mapItem.Icon .. AllEnum.OutfitIconSurfix.OutInfo)
|
|
local sName = AllEnum.ElementIconType.Icon .. mapCfg.EET
|
|
self:SetAtlasSprite(self._mapNode.imgEET, "12_rare", sName)
|
|
self._mapNode.txtLevel.gameObject:SetActive(nLevel)
|
|
if nLevel then
|
|
NovaAPI.SetTMPText(self._mapNode.txtLevel, nLevel)
|
|
end
|
|
self._mapNode.goStar.gameObject:SetActive(nStar)
|
|
if nStar then
|
|
self:SetAtlasSprite(self._mapNode.goStar, "12_rare", AllEnum.FrameType_New.DiscLimitS .. AllEnum.FrameColor_New[mapItem.Rarity] .. "_0" .. nStar + 1)
|
|
NovaAPI.SetImageNativeSize(self._mapNode.goStar)
|
|
end
|
|
if tbNote then
|
|
for i = 1, 3 do
|
|
self._mapNode.imgNoteBg[i].gameObject:SetActive(tbNote[i])
|
|
if tbNote[i] then
|
|
local mapNote = ConfigTable.GetData("SubNoteSkill", tbNote[i])
|
|
if mapNote then
|
|
self:SetPngSprite(self._mapNode.imgNoteBg[i], mapNote.Icon .. AllEnum.DiscSkillIconSurfix.Small)
|
|
end
|
|
end
|
|
end
|
|
else
|
|
for i = 1, 3 do
|
|
self._mapNode.imgNoteBg[i].gameObject:SetActive(false)
|
|
end
|
|
end
|
|
for i = 1, 3 do
|
|
local nTag = mapCfg.Tags[i]
|
|
if nTag then
|
|
self._mapNode.txtDiscTag[i].gameObject:SetActive(true)
|
|
NovaAPI.SetTMPText(self._mapNode.txtDiscTag[i], ConfigTable.GetData("DiscTag", nTag).Title)
|
|
else
|
|
self._mapNode.txtDiscTag[i].gameObject:SetActive(false)
|
|
end
|
|
end
|
|
end
|
|
function TemplateDiscItemCtrl:SetSelect(bSelect)
|
|
self._mapNode.Select:SetActive(bSelect)
|
|
end
|
|
function TemplateDiscItemCtrl:Awake()
|
|
self._mapNode.Select:SetActive(false)
|
|
end
|
|
return TemplateDiscItemCtrl
|