63 lines
1.1 KiB
Lua
63 lines
1.1 KiB
Lua
local TalentData = class("TalentData", BaseData)
|
|
|
|
local TalentCfg = ConfigManager:getConfig("talent")
|
|
local PlayerExpCfg = ConfigManager:getConfig("player_exp")
|
|
|
|
function TalentData:setDirty()
|
|
self.data.isDirty = not self.data.isDirty
|
|
end
|
|
|
|
function TalentData:ctor()
|
|
self.data.isDirty = false
|
|
end
|
|
|
|
function TalentData:init(data)
|
|
data = data or GConst.EMPTY_TABLE
|
|
self.stage = data.stage
|
|
self.levels = data.levels or {}
|
|
end
|
|
|
|
function TalentData:clear()
|
|
end
|
|
|
|
function TalentData:getCfgList()
|
|
return TalentCfg
|
|
end
|
|
|
|
function TalentData:getPlayerExpCfgList(stage)
|
|
if stage then
|
|
return PlayerExpCfg[stage]
|
|
end
|
|
return PlayerExpCfg
|
|
end
|
|
|
|
function TalentData:getStage()
|
|
return self.stage
|
|
end
|
|
|
|
function TalentData:checkStage()
|
|
local lv = DataManager.PlayerData:getLv()
|
|
return lv >= self.stage, self.stage
|
|
end
|
|
|
|
function TalentData:getLevels(id)
|
|
if id then
|
|
return self.levels[id] or 0
|
|
end
|
|
return self.levels
|
|
end
|
|
|
|
function TalentData:onUpgrade(data)
|
|
self.upData = data
|
|
self.stage = data.stage
|
|
self.levels[data.id] = data.level
|
|
self:setDirty()
|
|
end
|
|
|
|
function TalentData:getUpData()
|
|
local data = self.upData
|
|
self.upData = nil
|
|
return data
|
|
end
|
|
|
|
return TalentData |