61 lines
1.6 KiB
Plaintext
Raw Normal View History

2025-07-22 01:56:56 +08:00
local WearingShow = {}
WearingShow.__index = WearingShow
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Utils = require(ReplicatedStorage.Tools.Utils)
local Localization = require(ReplicatedStorage.Tools.Localization)
local JsonEquipment = require(ReplicatedStorage.Json.Equipment)
local JsonItemProp = require(ReplicatedStorage.Json.ItemProp)
function WearingShow:Init(data: table)
local self = {}
self.Data = data
self.Variables = {
["_btnClick"] = 0,
["_imgIcon"] = 0,
["_imgbg"] = 0,
["_tmpQuality"] = 0,
}
self.Connections = {}
setmetatable(self, WearingShow)
return self
end
function WearingShow:Refresh()
-- 槽位为空
if self.Data.id == nil then
self.Variables._imgIcon.Image = ""
self.Variables._imgbg.Visible = true
self.Variables._tmpQuality.Text = ""
else
-- 槽位有装备
local itemData = Utils:GetIdDataFromJson(JsonItemProp, self.Data.orgId)
self.Variables._imgIcon.Image = Localization:GetImageData(itemData.iconId)
self.Variables._imgbg.Visible = false
self.Variables._tmpQuality.Text = self.Data.quality
end
end
function WearingShow:OnInitFinish()
local con = self.Variables._btnClick.MouseButton1Click:Connect(function()
if self.Data == {} then
-- TODO: 之后做提示弹窗
else
self.TopUI:ShowDetailData(self.Data.id)
end
end)
table.insert(self.Connections, con)
end
function WearingShow:Destroy()
for k, v in pairs(self) do
self[k] = nil
end
self = nil
end
return WearingShow