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