2025-06-04 05:12:01 +08:00

69 lines
1.2 KiB
Plaintext

autoImport("ShopItemData")
ShopData = class("ShopData")
local tempTable = {}
function ShopData:ctor(data)
self.goods = {}
self:SetData(data)
end
function ShopData:SetData(data)
if data then
self.type = data.shoptype
self.shopID = data.shopid
self.screen = data.screen
TableUtility.TableClear(tempTable)
for i=1,#data.goods do
local goods = data.goods[i]
self:AddShopItemData(goods)
local id = goods.id
tempTable[id] = id
end
--刪除已移除數據
for k,v in pairs(self.goods) do
if tempTable[k] == nil then
self.goods[k] = nil
end
end
end
end
function ShopData:SetNextValidTime(time)
self.callTime = Time.unscaledTime + time
end
function ShopData:AddShopItemData(data)
local id = data.id
if id ~= nil then
if self.goods[id] == nil then
self.goods[id] = ShopItemData.new(data)
else
self.goods[id]:SetData(data)
end
end
end
function ShopData:RemoveShopItemData(id)
if id ~= nil then
self.goods[id] = nil
end
end
function ShopData:GetNextValidTime()
return self.callTime
end
function ShopData:GetGoods()
return self.goods
end
--是否分頁
function ShopData:CheckScreen()
return self.screen == 1
end