Files
Endfield-Data/LuaScripts/UI/Widgets/WeaponGemSlimNode.lua
2025-12-02 20:37:18 +07:00

53 lines
1.2 KiB
Lua

local UIWidgetBase = require_ex('Common/Core/UIWidgetBase')
WeaponGemSlimNode = HL.Class('WeaponGemSlimNode', UIWidgetBase)
WeaponGemSlimNode._OnFirstTimeInit = HL.Override() << function(self)
end
WeaponGemSlimNode.InitWeaponGemSlimNode = HL.Method(HL.Number) << function(self, gemInstId)
self:_FirstTimeInit()
local gemInst = CharInfoUtils.getGemByInstId(gemInstId)
self:InitWeaponGemSlimeNodeByInst(gemInst)
end
WeaponGemSlimNode.InitWeaponGemSlimeNodeByInst = HL.Method(HL.Userdata) << function(self, gemInst)
self:_FirstTimeInit()
local hasGem = gemInst ~= nil
self.view.emptyNode.gameObject:SetActive(not hasGem)
self.view.existNode.gameObject:SetActive(hasGem)
if not hasGem then
return
end
if gemInst then
local templateId = gemInst.templateId
local _, itemData = Tables.itemTable:TryGetValue(templateId)
if itemData then
self.view.gemNameTxt.text = itemData.name
UIUtils.setItemRarityImage(self.view.qualityImg, itemData.rarity)
self.view.icon:LoadSprite(UIConst.UI_SPRITE_ITEM, itemData.iconId)
end
end
end
HL.Commit(WeaponGemSlimNode)
return WeaponGemSlimNode