85 lines
No EOL
2.3 KiB
Lua
85 lines
No EOL
2.3 KiB
Lua
XTrialConfigs = XTrialConfigs or {}
|
|
local TABLE_LIKE_TRIALCHALLENGE = "Share/Fuben/Trial/TrialChallenge.tab"
|
|
local TABLE_LIKE_TRIALTYPEREWARD = "Share/Fuben/Trial/TrialTypeReward.tab"
|
|
|
|
local TrialChallengeConfig = {}
|
|
local TrialTypeRewardConfig = {}
|
|
|
|
function XTrialConfigs.Init()
|
|
-- 读TrialChallenge表
|
|
local challengeData = XTableManager.ReadByIntKey(TABLE_LIKE_TRIALCHALLENGE, XTable.XTableTrialChallenge, "Id")
|
|
for _, v in pairs(challengeData) do
|
|
if TrialChallengeConfig[v.Type] == nil then
|
|
TrialChallengeConfig[v.Type] = {}
|
|
end
|
|
table.insert(TrialChallengeConfig[v.Type], v)
|
|
end
|
|
|
|
--读TrialTypeReward表
|
|
local typerewardData = XTableManager.ReadByIntKey(TABLE_LIKE_TRIALTYPEREWARD, XTable.XTableTrialTypeReward, "Type")
|
|
for _, v in pairs(typerewardData) do
|
|
TrialTypeRewardConfig[v.Type] = v
|
|
end
|
|
|
|
end
|
|
|
|
-- 取回所有前段关卡的数据
|
|
function XTrialConfigs.GetForTotalData()
|
|
return TrialChallengeConfig[1]
|
|
end
|
|
|
|
-- 取回所有后段关卡的数据
|
|
function XTrialConfigs.GetBackEndTotalData()
|
|
return TrialChallengeConfig[2]
|
|
end
|
|
|
|
-- 取前段第level个关卡的数据
|
|
function XTrialConfigs.GetForDataByLevel(level)
|
|
local cfg = XTrialConfigs.GetForTotalData()
|
|
return cfg[level]
|
|
end
|
|
|
|
-- 取后段第level个关卡的数据
|
|
function XTrialConfigs.GetBackEndDataByLevel(level)
|
|
local cfg = XTrialConfigs.GetBackEndTotalData()
|
|
return cfg[level]
|
|
end
|
|
|
|
-- 取所有类型的数据
|
|
function XTrialConfigs.GetTotalTrialTypeCfg()
|
|
return TrialTypeRewardConfig
|
|
end
|
|
|
|
-- 通过trialtype取类型的数据
|
|
function XTrialConfigs.GetTrialTypeCfg(trialtype)
|
|
return TrialTypeRewardConfig[trialtype]
|
|
end
|
|
|
|
-- 取回所有前段关卡总长度
|
|
function XTrialConfigs.GetForTotalLength()
|
|
return #TrialChallengeConfig[1]
|
|
end
|
|
|
|
-- 取回所有后段关卡总长度
|
|
function XTrialConfigs.GetBackEndTotalLength()
|
|
return #TrialChallengeConfig[2]
|
|
end
|
|
|
|
--根据stageid取回数据
|
|
function XTrialConfigs.GetCfgDataByStageId(stageid)
|
|
local forcfg = XTrialConfigs.GetForTotalData()
|
|
|
|
for _, v in pairs(forcfg) do
|
|
if v.StageId == stageid then
|
|
return v
|
|
end
|
|
end
|
|
|
|
local endcfg = XTrialConfigs.GetBackEndTotalData()
|
|
|
|
for _, v in pairs(endcfg) do
|
|
if v.StageId == stageid then
|
|
return v
|
|
end
|
|
end
|
|
end |