2023-07-14 19:35:33 +00:00
|
|
|
|
local TABLE_ACTIVITY_PATH = "Share/Fuben/RepeatChallenge/RepeatChallengeActivity.tab"
|
|
|
|
|
local TABLE_CHAPTER_PATH = "Share/Fuben/RepeatChallenge/RepeatChallengeChapter.tab"
|
|
|
|
|
local TABLE_STAGE_PATH = "Share/Fuben/RepeatChallenge/RepeatChallengeStage.tab"
|
|
|
|
|
local TABLE_LEVEL_PATH = "Share/Fuben/RepeatChallenge/RepeatChallengeLevel.tab"
|
|
|
|
|
local TABLE_REWARD_PATH = "Share/Fuben/RepeatChallenge/RepeatChallengeReward.tab"
|
|
|
|
|
|
|
|
|
|
local pairs = pairs
|
|
|
|
|
|
|
|
|
|
local RepeatChallengeActivityTemplates = {}
|
|
|
|
|
local RepeatChallengeChapterTemplates = {}
|
|
|
|
|
local RepeatChallengeStageTemplates = {}
|
|
|
|
|
local RepeatChallengeLevelTemplates = {}
|
|
|
|
|
local RepeatChallengeRewardTemplates = {}
|
|
|
|
|
|
|
|
|
|
local DefaultActivityId = 0
|
|
|
|
|
local StageIdToChapterIdDic = {}
|
|
|
|
|
|
|
|
|
|
XFubenRepeatChallengeConfigs = XFubenRepeatChallengeConfigs or {}
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.Init()
|
|
|
|
|
RepeatChallengeActivityTemplates = XTableManager.ReadByIntKey(TABLE_ACTIVITY_PATH, XTable.XTableRepeatChallengeActivity, "Id")
|
|
|
|
|
RepeatChallengeChapterTemplates = XTableManager.ReadByIntKey(TABLE_CHAPTER_PATH, XTable.XTableRepeatChallengeChapter, "Id")
|
|
|
|
|
RepeatChallengeStageTemplates = XTableManager.ReadByIntKey(TABLE_STAGE_PATH, XTable.XTableRepeatChallengeStage, "Id")
|
|
|
|
|
RepeatChallengeLevelTemplates = XTableManager.ReadByIntKey(TABLE_LEVEL_PATH, XTable.XTableRepeatChallengeLevel, "Id")
|
|
|
|
|
RepeatChallengeRewardTemplates = XTableManager.ReadByIntKey(TABLE_REWARD_PATH, XTable.XTableRepeatChallengeReward, "Id")
|
|
|
|
|
|
|
|
|
|
for activityId, config in pairs(RepeatChallengeActivityTemplates) do
|
|
|
|
|
if XTool.IsNumberValid(config.ActivityTimeId) then
|
|
|
|
|
if DefaultActivityId == 0 or DefaultActivityId < activityId then
|
|
|
|
|
DefaultActivityId = activityId
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
DefaultActivityId = activityId--若全部过期,取最后一行配置作为默认下次开启的活动ID
|
|
|
|
|
end
|
|
|
|
|
for chapterId, chapterCfg in pairs(RepeatChallengeChapterTemplates) do
|
|
|
|
|
for _, stageId in pairs(chapterCfg.StageId) do
|
|
|
|
|
StageIdToChapterIdDic[stageId] = chapterId
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
function XFubenRepeatChallengeConfigs.GetActivityConfig(activityId)
|
|
|
|
|
local activityCfg = RepeatChallengeActivityTemplates[activityId]
|
|
|
|
|
if not activityCfg then
|
|
|
|
|
XLog.ErrorTableDataNotFound("XFubenRepeatChallengeConfigs.GetActivityConfig",
|
|
|
|
|
"RepeatChallengeActivity", TABLE_ACTIVITY_PATH, "activityId", tostring(activityId))
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
return activityCfg
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetActivityChapterId(activityId)
|
|
|
|
|
local chapter = XFubenRepeatChallengeConfigs.GetActivityConfig(activityId).NormalChapter[1]
|
|
|
|
|
return chapter
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetActivityStageId(activityId)
|
|
|
|
|
local chapter = XFubenRepeatChallengeConfigs.GetActivityConfig(activityId).NormalChapter[1]
|
|
|
|
|
local stageId = XFubenRepeatChallengeConfigs.GetChapterCfg(chapter).StageId[1]
|
|
|
|
|
return stageId
|
|
|
|
|
end
|
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
function XFubenRepeatChallengeConfigs.GetChapterCfgs()
|
|
|
|
|
return RepeatChallengeChapterTemplates
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetChapterCfgPath()
|
|
|
|
|
return TABLE_CHAPTER_PATH
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetChapterCfg(chapterId)
|
|
|
|
|
local chapterCfg = RepeatChallengeChapterTemplates[chapterId]
|
|
|
|
|
if not chapterCfg then
|
|
|
|
|
XLog.ErrorTableDataNotFound("XFubenRepeatChallengeConfigs.GetChapterCfg",
|
|
|
|
|
"RepeatChallengeChapter", TABLE_CHAPTER_PATH, "chapterId", tostring(chapterId))
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
return chapterCfg
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetLevelConfigs()
|
|
|
|
|
return RepeatChallengeLevelTemplates
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetMaxLevel()
|
|
|
|
|
return #RepeatChallengeLevelTemplates
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetLevelConfig(level)
|
|
|
|
|
local activityCfg = RepeatChallengeLevelTemplates[level]
|
|
|
|
|
if not activityCfg then
|
|
|
|
|
XLog.ErrorTableDataNotFound("XFubenRepeatChallengeConfigs.GetLevelConfig", "RepeatChallengeLevel", TABLE_LEVEL_PATH, "level", tostring(level))
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
return activityCfg
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
function XFubenRepeatChallengeConfigs.GetStageConfigs()
|
|
|
|
|
return RepeatChallengeStageTemplates
|
|
|
|
|
end
|
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
function XFubenRepeatChallengeConfigs.GetStageConfig(stageId)
|
|
|
|
|
local activityCfg = RepeatChallengeStageTemplates[stageId]
|
|
|
|
|
if not activityCfg then
|
|
|
|
|
XLog.ErrorTableDataNotFound("XFubenRepeatChallengeConfigs.GetStageConfig",
|
|
|
|
|
"RepeatChallengeStage", TABLE_STAGE_PATH, "stageId", tostring(stageId))
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
return activityCfg
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
function XFubenRepeatChallengeConfigs.GetRewardConfigs()
|
|
|
|
|
local rewardCfg = RepeatChallengeRewardTemplates
|
|
|
|
|
return rewardCfg
|
2023-07-14 19:35:33 +00:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetDefaultActivityId()
|
|
|
|
|
return DefaultActivityId
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XFubenRepeatChallengeConfigs.GetChapterIdByStageId(stageId)
|
|
|
|
|
return StageIdToChapterIdDic[stageId]
|
|
|
|
|
end
|