c1_lua/lua/app/server/data/server_base_data.lua
2023-04-07 20:50:11 +08:00

65 lines
1.4 KiB
Lua

local ServerBaseData = class("ServerBaseData")
function ServerBaseData:ctor(...)
self.data = {}
-- self.data.__parent = self
-- local innerData = nil
-- innerData = {
-- __index = function (t, key)
-- return innerData[key]
-- end,
-- __newindex = function (t, key, value)
-- innerData[key] = value
-- end
-- }
-- setmetatable(self.data, innerData)
end
function ServerBaseData:init()
end
function ServerBaseData:_loadLocalData()
local data = LocalData:getString("ServerBaseData_" .. self.__cname, "")
local dataObj = nil
if data and data ~= "" then
dataObj = json.decode(data)
end
self:init(dataObj)
end
function ServerBaseData:_loadNewPlayerData()
for k, v in pairs(self.data) do
self.data[k] = nil
end
local dataObj = self:getNewPlayerData()
self:init(dataObj)
end
function ServerBaseData:getNewPlayerData()
return nil
end
function ServerBaseData:getCloneData()
local cloneData = {}
local function _copy(object)
if type(object) ~= "table" then
return object
elseif cloneData[object] then
return cloneData[object]
end
local newObject = {}
cloneData[object] = newObject
for key, value in pairs(object) do
newObject[_copy(key)] = _copy(value)
end
return newObject
end
return _copy(self.data)
end
function ServerBaseData:clone()
end
return ServerBaseData