PGRData/Script/matrix/xconfig/XTRPGConfigs.lua

2109 lines
66 KiB
Lua
Raw Normal View History

local tableInsert = table.insert
local ipairs = ipairs
local pairs = pairs
local stringGsub = string.gsub
local CSXTextManagerGetText = CS.XTextManager.GetText
local TABLE_ROLE_PATH = "Share/TRPG/TRPGRole.tab"
local TABLE_ROLE_TALENT_GROUP_PATH = "Share/TRPG/RoleTalentGroup/"
local TABLE_ROLE_TALENT_GROUP_CLIENT_PATH = "Client/TRPG/TRPGTalentGroup.tab"
local TABLE_ROLE_TALENT_PATH = "Share/TRPG/TRPGRoleTalent.tab"
local TABLE_ROLE_ATTRIBUTE_PATH = "Client/TRPG/TRPGRoleAttribute.tab"
local TABLE_MAIN_AREA_PATH = "Share/TRPG/TRPGMainArea.tab" --主区域
local TABLE_TARGET_LINK_PATH = "Share/TRPG/TRPGTargetLink.tab" --目标链表
local TABLE_TARGET_PATH = "Share/TRPG/TRPGTarget.tab" --目标表
local TABLE_MAZE_PATH = "Share/TRPG/TRPGMaze.tab"
local TABLE_MAZE_LAYER_PATH = "Share/TRPG/TRPGMazeLayer.tab"
local TABLE_MAZE_MAP_PATH = "Share/TRPG/MazeMap/"
local TABLE_MAZE_CARD_PATH = "Share/TRPG/TRPGMazeCard.tab"
local TABLE_MAZE_CARD_TYPE_PATH = "Client/TRPG/TRPGMazeCardType.tab"
local TABLE_MAZE_CARD_RECORD_GROUP_PATH = "Client/TRPG/TRPGMazeCardRecordGroup.tab"
local TABLE_LEVEL_PATH = "Share/TRPG/TRPGLevel.tab"
local TABLE_BUFF_PATH = "Share/TRPG/TRPGBuff.tab"
local TABLE_REWARD_PATH = "Share/TRPG/TRPGReward.tab"
local TABLE_SECOND_AREA_PATH = "Share/TRPG/TRPGSecondArea.tab"
local TABLE_THIRD_AREA_PATH = "Share/TRPG/TRPGThirdArea.tab"
local TABLE_SHOP_PATH = "Share/TRPG/TRPGShop.tab"
local TABLE_SHOP_ITEM_PATH = "Share/TRPG/TRPGShopItem.tab"
local TABLE_ITEM_PATH = "Share/TRPG/TRPGItem.tab"
local TABLE_TRUTH_ROAD_GROUP_PATH = "Share/TRPG/TruthRoad/TRPGTruthRoadGroup.tab"
local TABLE_TRUTH_ROAD_PATH = "Share/TRPG/TruthRoad/TRPGTruthRoad.tab"
local TABLE_BOSS_PATH = "Share/TRPG/Boss/TRPGBoss.tab"
local TABLE_BOSS_PHASES_REWARD = "Share/TRPG/Boss/TRPGBossPhasesReward.tab"
local TABLE_MEMOIRE_STORY = "Share/TRPG/TRPGMemoirStory.tab"
local TABLE_PANEL_PLOT_TAB_PATH = "Client/TRPG/TRPGPanelPlotTab.tab"
local TABLE_FUNCTION_GROUP_PATH = "Share/TRPG/TRPGFunctionGroup.tab"
local TABLE_FUNCTION_PATH = "Share/TRPG/TRPGFunction.tab"
local TABLE_EXAMINE_PATH = "Share/TRPG/Examine/TRPGExamine.tab"
local TABLE_EXAMINE_ACTION_PATH = "Share/TRPG/Examine/TRPGExamineAction.tab"
local TABLE_EXAMINE_ACTION_TYPE_PATH = "Client/TRPG/TRPGExamineActionType.tab"
local TABLE_EXAMINE_ACTION_DIFFICULT_PATH = "Client/TRPG/TRPGExamineActionDifficult.tab"
local TABLE_EXAMINE_PUNISH_PATH = "Share/TRPG/Examine/TRPGExaminePunish.tab"
local TABLE_BUTTON_CONDITION_PATH = "Client/TRPG/TRPGButtonCondition.tab"
local TABLE_SECOND_MAIN_PATH = "Share/TRPG/SecondMain/TRPGSecondMain.tab"
local TABLE_SECOND_MAIN_STAGE_PATH = "Share/TRPG/SecondMain/TRPGSecondMainStage.tab"
local RoleTemplate = {}
local RoleTalentGroupTemplate = {}
local RoleTalentGroupClientTemplate = {}
local RoleTalentTemplate = {}
local RoleAttributeTemplate = {}
local MainAreaTemplate = {}
local SecondAreaTemplate = {}
local ThirdAreaTemplate = {}
local TargetLinkTemplate = {}
local TargetTemplate = {}
local RewardTemplate = {}
local MazeTemplate = {}
local MazeLayerTemplate = {}
local MazeMapTemplates = {}
local MazeCardTemplate = {}
local MazeCardTypeTemplate = {}
local MazeCardRecordGroupTemplate = {}
local LevelTemplate = {}
local BuffTemplate = {}
local ShopTemplate = {}
local ShopItemTemplate = {}
local ItemTemplate = {}
local TruthRoadGroupTemplate = {}
local TruthRoadTemplate = {}
local BossTemplate = {}
local BossPhasesRewardTemplate = {}
local MemoireStoryTemplate = {}
local PanelPlotTabTemplate = {}
local MovieIdToTargetIdDic = {} --剧情Id索引目标Id字典
local TargetOfPreTargetList = {} --所有目标的前置目标
local ShopItemCountList = {} --商店道具限购列表
local FunctionGroupTemplate = {}
local FunctionTemplate = {}
local ExamineTemplate = {}
local ExamineActionTemplate = {}
local ExamineActionTypeTemplate = {}
local PunishTemplate = {}
local ExamineActionDifficultTemplate = {}
local SecondAreaIdToMazeIdDic = {}
local ButtonConditionTemplate = {}
local SecondMainTemplate = {}
local SecondMainIdList = {}
local SecondMainStageTemplate = {}
local TruthRoadGroupMaxNum = 0
local TargetTotalNum = 0
local DefaultMainLineTargetDesc = CSXTextManagerGetText("TRPGDefaultMainLineTargetDesc")
local DefaultTargetDesc = CSXTextManagerGetText("TRPGDefaultTargetDesc")
local DefaultTargetName = CSXTextManagerGetText("MainLineMission")
local NotPreTargetId = CS.XGame.ClientConfig:GetInt("TRPGNotPreTargetId")
local TaskPanelNewShowTime = CS.XGame.ClientConfig:GetFloat("TRPGTaskPanelNewShowTime")
XTRPGConfigs = XTRPGConfigs or {}
XTRPGConfigs.RoleAttributeType = {
Power = 1, --力量
Speed = 2, --敏捷
Intelligence = 3, --智力
}
XTRPGConfigs.TRPGSecondAreaType = {
Normal = 1, --普通区域
Maze = 2, --迷宫
}
XTRPGConfigs.TRPGTargetType = {
Story = 1, --剧情
GainRole = 2, --获得探员
FinishStage = 3, --关卡
GainItem = 4, --获得道具
CommitItem = 5, --交付道具
Examine = 6, --检定事件
}
XTRPGConfigs.TRPGFunctionType = {
Story = 1, --完成剧情
Shop = 2, --打开商店
CommitItem = 3, --提交物品
FinishStage = 4, --完成关卡
Examine = 5, --检定事件
}
XTRPGConfigs.TRPGBuffEffectType = {
RoleTalent = 1, --天赋效果
Positive = 2, --正面效果
Negative = 3, --负面效果
}
XTRPGConfigs.TRPGBuffType = {
Fight = 1, --战斗buff
AttributeAdd = 2, --属性增加
ExamineGainItem = 3, --检定获得物品
ExamineAddWeight = 4, --检定增加权重
SafeWeightAdd = 5, --安全权重增加
}
XTRPGConfigs.CardType = {
Default = 0,
Block = 1, --阻塞牌
Pass = 2, --通行牌
FightWin = 3, --战斗通关牌
Story = 4, --剧情牌
Examine = 5, --检定牌
Reward = 6, --奖励牌
Random = 7, --随机牌
Skip = 8, --跳转牌
Fight = 9, --战斗牌
Over = 10, --结束牌
}
XTRPGConfigs.MissionType = {
MainLine = 1, --主线
SubLine = 2, --支线
}
XTRPGConfigs.ItemType = {
Normal = 1, --普通物品
Special = 2, --特殊物品
}
XTRPGConfigs.ItemEffect = {
NoEffect = 0, --无使用效果
ClearBuff = 1, --清除角色负面buff
AddBuff = 2, --添加角色buff
AddExamineAttribute = 3, --增加检定属性
}
XTRPGConfigs.ItemEffectDefaultItemId = -1--不选择物品的基础属性展示
XTRPGConfigs.MissionTypeName = {
[XTRPGConfigs.MissionType.MainLine] = CSXTextManagerGetText("MainLineMission"),
[XTRPGConfigs.MissionType.SubLine] = CSXTextManagerGetText("SubLineMission"),
}
XTRPGConfigs.DefaultDesc = {
[XTRPGConfigs.MissionType.MainLine] = CSXTextManagerGetText("TRPGDefaultMainLineTargetDesc"),
[XTRPGConfigs.MissionType.SubLine] = CSXTextManagerGetText("TRPGDefaultTargetDesc"),
}
XTRPGConfigs.NotTargetLinkDefaultId = 0 --目标链id不存在时的默认值
XTRPGConfigs.AreaStateType = {
NotOpen = 1, --未解锁
Open = 2, --已解锁
Over = 3, --当前区域主线探索完毕 或 世界BOSS活动已结束
}
XTRPGConfigs.TRPGExamineActionType = {
Strength = 1, --力量检定
Agility = 2, --敏捷检定
Intelligence = 3, --智力检定
ConsumeItem = 4, --道具检定
}
XTRPGConfigs.TRPGExamineActionDifficult = {
Default = 0, --无难度(使用道具)
Easy = 1, --简单
Strength = 1, --普通
Hard = 2, --困难
UnPass = 3, --不可通过
}
--检定状态
XTRPGConfigs.ExmaineStatus = {
Dead = 0, --检定数据失效,等待下一轮检定开始
Normal = 1, --正常检定流程
Suc = 2, --检定成功
Fail = 3, --检定失败
}
--惩罚类型
XTRPGConfigs.PunishType = {
Fight = 1, --进入战斗
DeBuff = 2, --添加负面buff
LoseItem = 3, --丢失物品
GoToOrigin = 4, --回到起点
}
--商店道具明日是否重置
XTRPGConfigs.ShopItemResetType = {
NotReset = 0,
Reset = 1,
}
XTRPGConfigs.ButtonConditionId = {
Talent = 1, --天赋
Collection = 2, --珍藏
}
local InitRoleTalentConfigs = function()
local paths = CS.XTableManager.GetPaths(TABLE_ROLE_TALENT_GROUP_PATH)
XTool.LoopCollection(paths, function(path)
local key = XTool.GetFileNameWithoutExtension(path)
RoleTalentGroupTemplate[key] = XTableManager.ReadByIntKey(path, XTable.XTableTRPGRoleTalentGroup, "Id")
end)
end
local InitTarget = function()
TargetTemplate = XTableManager.ReadByIntKey(TABLE_TARGET_PATH, XTable.XTableTRPGTarget, "Id")
for targetId, config in pairs(TargetTemplate) do
if config.Type == XTRPGConfigs.TRPGTargetType.Story then
local movieId = config.Params[1]
MovieIdToTargetIdDic[movieId] = targetId
end
end
end
local InitTargetLink = function()
TargetLinkTemplate = XTableManager.ReadByIntKey(TABLE_TARGET_LINK_PATH, XTable.XTableTRPGTargetLink, "Id")
for _, v in pairs(TargetLinkTemplate) do
for targetIndex, targetId in ipairs(v.TargetId) do
if not TargetOfPreTargetList[targetId] then
TargetOfPreTargetList[targetId] = v.PreTarget[targetIndex]
TargetTotalNum = TargetTotalNum + 1
elseif TargetOfPreTargetList[targetId] ~= v.PreTarget[targetIndex] then
XLog.Error("XTRPGConfigs InitTargetLink error:配置存在相同的TargetId且PreTarget不同Id" .. v.Id .. " TargetId" .. targetId .. " PreTarget" .. v.PreTarget[targetIndex] .. ",配置路径:" .. TABLE_TARGET_LINK_PATH)
end
end
end
end
local InitTruthRoadGroupMaxNum = function()
for _, v in pairs(MainAreaTemplate) do
if #v.TruthRoadGroupId > TruthRoadGroupMaxNum then
TruthRoadGroupMaxNum = #v.TruthRoadGroupId
end
end
end
local InitMazeMapConfigs = function()
local paths = CS.XTableManager.GetPaths(TABLE_MAZE_MAP_PATH)
XTool.LoopCollection(paths, function(path)
local key = XTool.GetFileNameWithoutExtension(path)
MazeMapTemplates[key] = XTableManager.ReadByIntKey(path, XTable.XTableTRPGMazeMap, "Id")
end)
end
local InitShopItemCountList = function()
for _, v in pairs(ShopTemplate) do
ShopItemCountList[v.Id] = {}
for i, shopItemId in ipairs(v.ShopItemId) do
ShopItemCountList[v.Id][shopItemId] = v.ShopItemCount[i]
end
end
end
local InitMazeIdList = function()
local areaType
for _, v in pairs(SecondAreaTemplate) do
areaType = XTRPGConfigs.GetSecondAreaType(v.Id)
if areaType == XTRPGConfigs.TRPGSecondAreaType.Maze and v.MazeId > 0 then
SecondAreaIdToMazeIdDic[v.Id] = v.MazeId
end
end
end
local InitSecondMainIdList = function()
for _, v in pairs(SecondMainTemplate) do
tableInsert(SecondMainIdList, v.Id)
end
end
function XTRPGConfigs.Init()
RoleTemplate = XTableManager.ReadByIntKey(TABLE_ROLE_PATH, XTable.XTableTRPGRole, "Id")
RoleAttributeTemplate = XTableManager.ReadByIntKey(TABLE_ROLE_ATTRIBUTE_PATH, XTable.XTableTRPGRoleAttribute, "AttrType")
RoleTalentTemplate = XTableManager.ReadByIntKey(TABLE_ROLE_TALENT_PATH, XTable.XTableTRPGRoleTalent, "Id")
RoleTalentGroupClientTemplate = XTableManager.ReadByIntKey(TABLE_ROLE_TALENT_GROUP_CLIENT_PATH, XTable.XTableTRPGRoleTalentGroupClient, "Id")
MainAreaTemplate = XTableManager.ReadByIntKey(TABLE_MAIN_AREA_PATH, XTable.XTableTRPGMainArea, "Id")
MazeTemplate = XTableManager.ReadByIntKey(TABLE_MAZE_PATH, XTable.XTableTRPGMaze, "Id")
MazeLayerTemplate = XTableManager.ReadByIntKey(TABLE_MAZE_LAYER_PATH, XTable.XTableTRPGMazeLayer, "Id")
MazeCardTemplate = XTableManager.ReadByIntKey(TABLE_MAZE_CARD_PATH, XTable.XTableTRPGMazeCard, "Id")
MazeCardTypeTemplate = XTableManager.ReadByIntKey(TABLE_MAZE_CARD_TYPE_PATH, XTable.XTableTRPGMazeCardType, "Type")
MazeCardRecordGroupTemplate = XTableManager.ReadByIntKey(TABLE_MAZE_CARD_RECORD_GROUP_PATH, XTable.XTableTRPGMazeCardRecordGroup, "Id")
LevelTemplate = XTableManager.ReadByIntKey(TABLE_LEVEL_PATH, XTable.XTableTRPGLevel, "Id")
BuffTemplate = XTableManager.ReadByIntKey(TABLE_BUFF_PATH, XTable.XTableTRPGBuff, "Id")
RewardTemplate = XTableManager.ReadByIntKey(TABLE_REWARD_PATH, XTable.XTableTRPGReward, "Id")
SecondAreaTemplate = XTableManager.ReadByIntKey(TABLE_SECOND_AREA_PATH, XTable.XTableTRPGSecondArea, "Id")
ThirdAreaTemplate = XTableManager.ReadByIntKey(TABLE_THIRD_AREA_PATH, XTable.XTableTRPGThirdArea, "Id")
ShopTemplate = XTableManager.ReadByIntKey(TABLE_SHOP_PATH, XTable.XTableTRPGShop, "Id")
ShopItemTemplate = XTableManager.ReadByIntKey(TABLE_SHOP_ITEM_PATH, XTable.XTableTRPGShopItem, "Id")
ItemTemplate = XTableManager.ReadByIntKey(TABLE_ITEM_PATH, XTable.XTableTRPGItem, "Id")
TruthRoadGroupTemplate = XTableManager.ReadByIntKey(TABLE_TRUTH_ROAD_GROUP_PATH, XTable.XTableTRPGTruthRoadGroup, "Id")
TruthRoadTemplate = XTableManager.ReadByIntKey(TABLE_TRUTH_ROAD_PATH, XTable.XTableTRPGTruthRoad, "Id")
BossTemplate = XTableManager.ReadByIntKey(TABLE_BOSS_PATH, XTable.XTableTRPGBoss, "Id")
BossPhasesRewardTemplate = XTableManager.ReadByIntKey(TABLE_BOSS_PHASES_REWARD, XTable.XTableTRPGBossPhasesReward, "Id")
MemoireStoryTemplate = XTableManager.ReadByIntKey(TABLE_MEMOIRE_STORY, XTable.XTableTRPGMemoirStory, "Id")
PanelPlotTabTemplate = XTableManager.ReadByIntKey(TABLE_PANEL_PLOT_TAB_PATH, XTable.XTableTRPGPanelPlotTab, "Id")
FunctionGroupTemplate = XTableManager.ReadByIntKey(TABLE_FUNCTION_GROUP_PATH, XTable.XTableTRPGFunctionGroup, "Id")
FunctionTemplate = XTableManager.ReadAllByIntKey(TABLE_FUNCTION_PATH, XTable.XTableTRPGFunction, "Id")
ExamineTemplate = XTableManager.ReadByIntKey(TABLE_EXAMINE_PATH, XTable.XTableTRPGExamine, "Id")
ExamineActionTemplate = XTableManager.ReadByIntKey(TABLE_EXAMINE_ACTION_PATH, XTable.XTableTRPGExamineAction, "Id")
ExamineActionTypeTemplate = XTableManager.ReadByIntKey(TABLE_EXAMINE_ACTION_TYPE_PATH, XTable.XTableTRPGExamineActionType, "Type")
PunishTemplate = XTableManager.ReadByIntKey(TABLE_EXAMINE_PUNISH_PATH, XTable.XTableTRPGExaminePunish, "Id")
ExamineActionDifficultTemplate = XTableManager.ReadByIntKey(TABLE_EXAMINE_ACTION_DIFFICULT_PATH, XTable.XTableTRPGExamineActionDifficult, "Difficult")
ButtonConditionTemplate = XTableManager.ReadByIntKey(TABLE_BUTTON_CONDITION_PATH, XTable.XTableTRPGButtonCondition, "Id")
SecondMainTemplate = XTableManager.ReadByIntKey(TABLE_SECOND_MAIN_PATH, XTable.XTableTRPGSecondMain, "Id")
SecondMainStageTemplate = XTableManager.ReadAllByIntKey(TABLE_SECOND_MAIN_STAGE_PATH, XTable.XTableTRPGSecondMainStage, "Id")
InitRoleTalentConfigs()
InitTarget()
InitTargetLink()
InitTruthRoadGroupMaxNum()
InitMazeMapConfigs()
InitShopItemCountList()
InitMazeIdList()
InitSecondMainIdList()
end
-----------------调查员 begin--------------------
local GetRoleConfig = function(roleId)
local config = RoleTemplate[roleId]
if not config then
XLog.Error("XTRPGConfigs GetRoleConfig error:配置不存在, roleId: " .. roleId .. ", 配置路径: " .. TABLE_ROLE_PATH)
return
end
return config
end
function XTRPGConfigs.GetAllRoleIds()
local roleIds = {}
for roleId in pairs(RoleTemplate) do
tableInsert(roleIds, roleId)
end
return roleIds
end
function XTRPGConfigs.GetRoleInitAttribute(roleId, attributeType)
local config = GetRoleConfig(roleId)
return config.InitAttribute[attributeType] or 0
end
function XTRPGConfigs.GetRoleImage(roleId)
local config = GetRoleConfig(roleId)
return config.Image
end
function XTRPGConfigs.GetRoleHeadIcon(roleId)
local config = GetRoleConfig(roleId)
return config.HeadIcon
end
function XTRPGConfigs.GetRoleName(roleId)
local config = GetRoleConfig(roleId)
return config.Name
end
function XTRPGConfigs.GetRoleDesc(roleId)
local config = GetRoleConfig(roleId)
return stringGsub(config.Description, "\\n", "\n")
end
function XTRPGConfigs.GetRoleModelId(roleId)
local config = GetRoleConfig(roleId)
return config.ModelId
end
--属性 begin--
local GetRoleAttributeConfig = function(attrType)
local config = RoleAttributeTemplate[attrType]
if not config then
XLog.Error("XTRPGConfigs GetRoleAttributeConfig error:配置不存在, attrType: " .. attrType .. ", 配置路径: " .. TABLE_ROLE_ATTRIBUTE_PATH)
return
end
return config
end
function XTRPGConfigs.GetRoleAttributeName(attrType)
local config = GetRoleAttributeConfig(attrType)
return config.Name
end
function XTRPGConfigs.GetRoleAttributeIcon(attrType)
local config = GetRoleAttributeConfig(attrType)
return config.Icon
end
function XTRPGConfigs.GetRoleAttributeMaxValue(attrType)
local config = GetRoleAttributeConfig(attrType)
return config.MaxValue
end
--属性 end--
--天赋 begin--
local function GetRoleTalentGroupId(roleId)
local config = GetRoleConfig(roleId)
local talentId = config.TalentGroupId
if not talentId or talentId == 0 then
XLog.Error("XTRPGConfigs GetRoleTalentGroupId error:角色天赋Id未配置, roleId: " .. roleId .. ", 配置路径: " .. TABLE_ROLE_PATH)
return
end
return talentId
end
local GetRoleTalentGroupConfig = function(talentGroupId)
local config = RoleTalentGroupTemplate[tostring(talentGroupId)]
if not config then
XLog.Error("XTRPGConfigs GetRoleTalentGroupConfig error:配置不存在, talentGroupId: " .. talentGroupId .. ", 配置路径: " .. TABLE_ROLE_TALENT_GROUP_PATH)
return
end
return config
end
function XTRPGConfigs.GetRoleTalentGroupConfig(roleId)
local talentGroupId = GetRoleTalentGroupId(roleId)
return GetRoleTalentGroupConfig(talentGroupId)
end
local GetRoleTalentConfig = function(roleId, talentId)
local talentGroupId = GetRoleTalentGroupId(roleId)
local configs = GetRoleTalentGroupConfig(talentGroupId)
local config = configs[talentId]
if not config then
XLog.Error("XTRPGConfigs GetRoleTalentConfig error:配置不存在, talentId: " .. talentId .. ", 配置路径: " .. TABLE_ROLE_TALENT_GROUP_PATH)
return
end
return config
end
function XTRPGConfigs.GetRoleTalentPreId(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return config.PreId
end
function XTRPGConfigs.GetRoleTalentCostPoint(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return config.CostPoint
end
function XTRPGConfigs.GetRoleTalentDescription(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return stringGsub(config.Description, "\\n", "\n")
end
function XTRPGConfigs.GetRoleTalentTitle(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return config.Title
end
function XTRPGConfigs.GetRoleTalentIcon(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return config.Icon
end
function XTRPGConfigs.GetRoleTalentIntro(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return stringGsub(config.Intro, "\\n", "\n")
end
function XTRPGConfigs.IsRoleTalentCommonForShow(roleId, talentId)
local config = GetRoleTalentConfig(roleId, talentId)
return config.IsCommonForShow ~= 0
end
local GetRoleTalentDefaultConfig = function()
local config = RoleTalentTemplate[1]
if not config then
XLog.Error("XTRPGConfigs GetRoleTalentDefaultConfig error:配置不存在, 配置路径: " .. TABLE_ROLE_TALENT_PATH)
return
end
return config
end
function XTRPGConfigs.GetTalentResetCostItemId()
local config = GetRoleTalentDefaultConfig()
return config.ResetTalentItemId
end
function XTRPGConfigs.GetTalentResetCostItemIcon()
local costItemId = XTRPGConfigs.GetTalentResetCostItemId()
return XItemConfigs.GetItemIconById(costItemId)
end
function XTRPGConfigs.GetTalentResetCostItemCount()
local config = GetRoleTalentDefaultConfig()
return config.ResetTalentItemCount
end
function XTRPGConfigs.GetTalentPointIcon()
local config = GetRoleTalentDefaultConfig()
return config.TalentPointIcon
end
local GetRoleTalentGroupClientConfig = function(talentGroupId)
local config = RoleTalentGroupClientTemplate[talentGroupId]
if not config then
XLog.Error("XTRPGConfigs GetRoleTalentGroupClientConfig error:配置不存在, talentGroupId: " .. talentGroupId .. ", 配置路径: " .. TABLE_ROLE_TALENT_GROUP_CLIENT_PATH)
return
end
return config
end
function XTRPGConfigs.GetRoleTalentTreePrefab(roleId)
local talentGroupId = GetRoleTalentGroupId(roleId)
local config = GetRoleTalentGroupClientConfig(talentGroupId)
return config.Prefab
end
--天赋 end--
--BUFF begin--
local GetBuffConfig = function(buffId)
local config = BuffTemplate[buffId]
if not config then
XLog.Error("XTRPGConfigs GetBuffConfig error:配置不存在, buffId: " .. buffId .. ", 配置路径: " .. TABLE_BUFF_PATH)
return
end
return config
end
function XTRPGConfigs.IsBuffUp(buffId)
local config = GetBuffConfig(buffId)
return config.EffectType == XTRPGConfigs.TRPGBuffEffectType.Positive
end
function XTRPGConfigs.IsBuffDown(buffId)
local config = GetBuffConfig(buffId)
return config.EffectType == XTRPGConfigs.TRPGBuffEffectType.Negative
end
function XTRPGConfigs.GetBuffIcon(buffId)
local config = GetBuffConfig(buffId)
return config.Icon
end
function XTRPGConfigs.GetBuffName(buffId)
local config = GetBuffConfig(buffId)
return config.Name
end
function XTRPGConfigs.GetBuffDesc(buffId)
local config = GetBuffConfig(buffId)
return stringGsub(config.Desc, "\\n", "\n")
end
--BUFF end--
-----------------调查员 end--------------------
-----------------求真之路begin--------------
local GetTruthRoadGroupConfig = function(id)
local config = TruthRoadGroupTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetTruthRoadGroupConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_TRUTH_ROAD_GROUP_PATH)
return
end
return config
end
local GetTruthRoadConfig = function(id)
local config = TruthRoadTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetTruthRoadConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_TRUTH_ROAD_PATH)
return
end
return config
end
function XTRPGConfigs.GetTruthRoadGroupTemplate()
return TruthRoadGroupTemplate
end
function XTRPGConfigs.GetTruthRoadRewardIdList(truthRoadGroupId)
local truthRoadIdList = XTRPGConfigs.GetTruthRoadIdList(truthRoadGroupId)
local trpgRewardId
local trpgRewardIdList = {}
for _, truthRoadId in pairs(truthRoadIdList) do
trpgRewardId = XTRPGConfigs.GetTruthRoadTRPGRewardId(truthRoadId)
if trpgRewardId and trpgRewardId > 0 then
table.insert(trpgRewardIdList, trpgRewardId)
end
end
return trpgRewardIdList
end
--返回求真之路奖励可领取的进度
function XTRPGConfigs.GetTruthRoadRewardRecivePercent(truthRoadGroupId, trpgRewardId)
local truthRoadIdList = XTRPGConfigs.GetTruthRoadIdList(truthRoadGroupId)
local truthRoadMaxNum = #truthRoadIdList
local trpgRewardIdCfg
for i, truthRoadId in ipairs(truthRoadIdList) do
trpgRewardIdCfg = XTRPGConfigs.GetTruthRoadTRPGRewardId(truthRoadId)
if trpgRewardIdCfg == trpgRewardId then
return i / truthRoadMaxNum
end
end
return 0
end
function XTRPGConfigs.GetTruthRoadGroupName(truthRoadGroupId)
local config = GetTruthRoadGroupConfig(truthRoadGroupId)
return config.Name
end
function XTRPGConfigs.GetTruthRoadGroupPrefab(truthRoadGroupId)
local config = GetTruthRoadGroupConfig(truthRoadGroupId)
return config.Prefab
end
function XTRPGConfigs.GetTruthRoadGroupCondition(truthRoadGroupId)
local config = GetTruthRoadGroupConfig(truthRoadGroupId)
return config.Condition
end
function XTRPGConfigs.GetTruthRoadGroupSmallName(truthRoadGroupId)
local config = GetTruthRoadGroupConfig(truthRoadGroupId)
return config.SmallName
end
function XTRPGConfigs.GetTruthRoadIdList(truthRoadGroupId)
local config = GetTruthRoadGroupConfig(truthRoadGroupId)
return config.TruthRoadId
end
function XTRPGConfigs.GetTruthRoadName(id)
local config = GetTruthRoadConfig(id)
return config.Name
end
function XTRPGConfigs.GetTruthRoadPrafabName(id)
local config = GetTruthRoadConfig(id)
return config.PrefabName
end
function XTRPGConfigs.GetTruthRoadTRPGRewardId(id)
local config = GetTruthRoadConfig(id)
return config.TRPGRewardId
end
function XTRPGConfigs.GetTruthRoadCondition(id)
local config = GetTruthRoadConfig(id)
return config.Condition
end
function XTRPGConfigs.GetTruthRoadIcon(id)
local config = GetTruthRoadConfig(id)
return config.Icon
end
function XTRPGConfigs.GetTruthRoadDesc(id)
local config = GetTruthRoadConfig(id)
return config.Desc
end
function XTRPGConfigs.GetTruthRoadStageId(id)
local config = GetTruthRoadConfig(id)
return config.StageId
end
function XTRPGConfigs.GetTruthRoadStoryId(id)
local config = GetTruthRoadConfig(id)
return config.StoryId
end
function XTRPGConfigs.GetTruthRoadDialogIcon(id)
local config = GetTruthRoadConfig(id)
return config.DialogIcon
end
-----------------求真之路end----------------
-----------------主区域begin----------------
local GetMainAreaConfig = function(id)
local config = MainAreaTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetMainAreaConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_MAIN_AREA_PATH)
return
end
return config
end
function XTRPGConfigs.GetMainAreaName(id)
local config = GetMainAreaConfig(id)
return config.Name
end
function XTRPGConfigs.GetSecondAreaIdList(id)
local config = GetMainAreaConfig(id)
return config.SubAreaId
end
function XTRPGConfigs.GetTargetLinkIdList(id)
local config = GetMainAreaConfig(id)
return config.TargetLinkId
end
function XTRPGConfigs.GetAreaOpenLastTimeStamp(id)
local config = GetMainAreaConfig(id)
local timeId = config.OpenTimeId
local openTimestamp = XFunctionManager.GetStartTimeByTimeId(timeId)
local serverTimestamp = XTime.GetServerNowTimestamp()
return openTimestamp - serverTimestamp
end
function XTRPGConfigs.GetTargetLinkId(areaId, targetLinkIndex)
local targetLinkIdList = XTRPGConfigs.GetTargetLinkIdList(areaId)
return targetLinkIdList[targetLinkIndex]
end
function XTRPGConfigs.GetTruthRoadGroupMaxNum()
return TruthRoadGroupMaxNum
end
function XTRPGConfigs.GetMainAreaMaxNum()
return #MainAreaTemplate
end
function XTRPGConfigs.GetAreaRewardIdList(areaId)
local config = GetMainAreaConfig(areaId)
return config.TRPGRewardId
end
function XTRPGConfigs.GetTruthRoadGroupIdList(areaId)
local config = GetMainAreaConfig(areaId)
return config.TruthRoadGroupId
end
function XTRPGConfigs.GetTruthRoadGroupId(areaId, index)
local truthRoadGroupIdList = XTRPGConfigs.GetTruthRoadGroupIdList(areaId)
local truthRoadGroupId = truthRoadGroupIdList[index]
return truthRoadGroupId
end
function XTRPGConfigs.GetTruthRoadTabBg(areaId)
local config = GetMainAreaConfig(areaId)
return config.TruthRoadTabBg
end
function XTRPGConfigs.GetSecondAreaBg(areaId)
local config = GetMainAreaConfig(areaId)
return config.SubAreaBg
end
function XTRPGConfigs.GetTruthRoadBg(areaId)
local config = GetMainAreaConfig(areaId)
return config.TruthRoadBg
end
function XTRPGConfigs.GetMainAreaEnName(areaId)
local config = GetMainAreaConfig(areaId)
return config.EnName
end
function XTRPGConfigs.GetMainAreaFirstOpenFunctionGroupId(areaId)
local config = GetMainAreaConfig(areaId)
return config.FirstOpenFunctionGroupId
end
function XTRPGConfigs.GetMainAreaTemplate()
return MainAreaTemplate
end
function XTRPGConfigs.GetMainAreaCondition(areaId)
local config = GetMainAreaConfig(areaId)
return config.Condition
end
-----------------主区域end------------------
-----------------第二区域begin----------------
local GetSecondAreaConfig = function(id)
local config = SecondAreaTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetSecondAreaConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_SECOND_AREA_PATH)
return
end
return config
end
function XTRPGConfigs.GetSecondAreaName(id)
local config = GetSecondAreaConfig(id)
return config.Name
end
function XTRPGConfigs.GetExploreChapterBg(id)
local config = GetSecondAreaConfig(id)
return config.SubAreaBg
end
function XTRPGConfigs.GetSecondAreaType(id)
local config = GetSecondAreaConfig(id)
return config.Type
end
function XTRPGConfigs.GetSecondAreaMazeId(id)
local config = GetSecondAreaConfig(id)
return config.MazeId
end
function XTRPGConfigs.GetThirdAreaIdList(id)
local config = GetSecondAreaConfig(id)
return config.SubAreaId
end
function XTRPGConfigs.GetSecondAreaCondition(id)
local config = GetSecondAreaConfig(id)
return config.Condition
end
function XTRPGConfigs.GetSecondAreaIdToMazeIdDic()
return SecondAreaIdToMazeIdDic
end
-----------------第二区域end----------------
-----------------第三区域 begin----------------
local GetThirdAreaConfig = function(thirdAreaId)
local config = ThirdAreaTemplate[thirdAreaId]
if not config then
XLog.Error("XTRPGConfigs GetThirdAreaConfig error:配置不存在, Id: " .. thirdAreaId .. ", 配置路径: " .. TABLE_THIRD_AREA_PATH)
return
end
return config
end
function XTRPGConfigs.GetThirdAreaName(thirdAreaId)
local config = GetThirdAreaConfig(thirdAreaId)
return config.Name
end
function XTRPGConfigs.GetThirdAreaCondition(id)
local config = GetThirdAreaConfig(id)
return config.Condition
end
function XTRPGConfigs.GetThirdAreaIcon(id)
local config = GetThirdAreaConfig(id)
return config.Icon
end
function XTRPGConfigs.GetThirdAreaFuncGroupList(id)
local config = GetThirdAreaConfig(id)
return config.FuncGroup
end
-----------------第三区域end----------------
function XTRPGConfigs.GetThirdAreaEnName(thirdAreaId)
local config = GetThirdAreaConfig(thirdAreaId)
return config.EnName
end
function XTRPGConfigs.GetThirdAreaIcon(thirdAreaId)
local config = GetThirdAreaConfig(thirdAreaId)
return config.Icon
end
function XTRPGConfigs.GetThirdAreaBg(thirdAreaId)
local config = GetThirdAreaConfig(thirdAreaId)
return config.Bg
end
function XTRPGConfigs.GetThirdAreaFunctionGroupIds(thirdAreaId)
local functionGroupIds = {}
local config = GetThirdAreaConfig(thirdAreaId)
for _, groupId in ipairs(config.FuncGroup) do
if groupId ~= 0 then
tableInsert(functionGroupIds, groupId)
end
end
return functionGroupIds
end
local GetFunctionGroupConfig = function(functionGroupId)
local config = FunctionGroupTemplate[functionGroupId]
if not config then
XLog.Error("XTRPGConfigs GetFunctionGroupConfig error:配置不存在, Id: " .. functionGroupId .. ", 配置路径: " .. TABLE_FUNCTION_GROUP_PATH)
return
end
return config
end
function XTRPGConfigs.GetFunctionGroupConditionId(functionGroupId)
local config = GetFunctionGroupConfig(functionGroupId)
return config.Condition
end
function XTRPGConfigs.GetFunctionGroupFunctionIds(functionGroupId)
local config = GetFunctionGroupConfig(functionGroupId)
return config.FunctionId
end
local GetFunctionConfig = function(functionId)
local config = FunctionTemplate[functionId]
if not config then
XLog.Error("XTRPGConfigs GetFunctionConfig error:配置不存在, Id: " .. functionId .. ", 配置路径: " .. TABLE_FUNCTION_PATH)
return
end
return config
end
function XTRPGConfigs.GetFunctionStageIds()
local stageIds = {}
for functionId, config in pairs(FunctionTemplate) do
if XTRPGConfigs.CheckFunctionType(functionId, XTRPGConfigs.TRPGFunctionType.FinishStage) then
local stageId = config.Params[1]
stageIds[stageId] = stageId
end
end
return stageIds
end
function XTRPGConfigs.GetFunctionIcon(functionId)
local config = GetFunctionConfig(functionId)
return config.Icon
end
function XTRPGConfigs.CheckFunctionNeedSave(functionId)
local config = GetFunctionConfig(functionId)
return config.NeedSave ~= 0
end
function XTRPGConfigs.GetFunctionDesc(functionId)
local config = GetFunctionConfig(functionId)
return stringGsub(config.Desc, "\\n", "\n")
end
local function GetFunctionType(functionId)
local config = GetFunctionConfig(functionId)
return config.Type
end
function XTRPGConfigs.CheckFunctionType(functionId, functionType)
return GetFunctionType(functionId) == functionType
end
function XTRPGConfigs.GetFunctionParams(functionId)
local config = GetFunctionConfig(functionId)
return config.Params
end
function XTRPGConfigs.IsFunctionShowTag(functionId)
return XTRPGConfigs.CheckFunctionType(functionId, XTRPGConfigs.TRPGFunctionType.Examine)
end
-----------------第三区域 end----------------
-----------------检定相关 begin----------------
local GetExamineConfig = function(examineId)
local config = ExamineTemplate[examineId]
if not config then
XLog.Error("XTRPGConfigs GetExamineConfig error:配置不存在, Id: " .. examineId .. ", 配置路径: " .. TABLE_EXAMINE_PATH)
return
end
return config
end
function XTRPGConfigs.GetExamineCostEndurance(examineId)
local config = GetExamineConfig(examineId)
return config.Endurance
end
function XTRPGConfigs.GetExamineTitle(examineId)
local config = GetExamineConfig(examineId)
return config.Title
end
function XTRPGConfigs.GetExamineDescription(examineId)
local config = GetExamineConfig(examineId)
return stringGsub(config.Description, "\\n", "\n")
end
function XTRPGConfigs.GetExamineSucDesc(examineId)
local config = GetExamineConfig(examineId)
return stringGsub(config.SucDesc, "\\n", "\n")
end
function XTRPGConfigs.GetExamineFailDesc(examineId)
local config = GetExamineConfig(examineId)
return stringGsub(config.FailDesc, "\\n", "\n")
end
function XTRPGConfigs.GetExamineStartMovieId(examineId)
local config = GetExamineConfig(examineId)
return config.StartMovieId
end
function XTRPGConfigs.GetExamineActionIds(examineId)
local actionIds = {}
local config = GetExamineConfig(examineId)
for _, actionId in pairs(config.ActionId) do
if actionId ~= 0 then
tableInsert(actionIds, actionId)
end
end
return actionIds
end
local GetExamineActionConfig = function(actionId)
local config = ExamineActionTemplate[actionId]
if not config then
XLog.Error("XTRPGConfigs GetExamineActionConfig error:配置不存在, Id: " .. actionId .. ", 配置路径: " .. TABLE_EXAMINE_ACTION_PATH)
return
end
return config
end
function XTRPGConfigs.GetExamineActionDesc(actionId)
local config = GetExamineActionConfig(actionId)
return config.Desc
end
function XTRPGConfigs.GetExamineActionItemId(actionId)
local config = GetExamineActionConfig(actionId)
return config.ItemId
end
function XTRPGConfigs.GetExamineActionItemIcon(actionId)
local itemId = XTRPGConfigs.GetExamineActionItemId(actionId)
return XItemConfigs.GetItemIconById(itemId)
end
function XTRPGConfigs.GetExamineActionItemName(actionId)
local itemId = XTRPGConfigs.GetExamineActionItemId(actionId)
return XItemConfigs.GetItemNameById(itemId)
end
function XTRPGConfigs.GetExamineActionRound(actionId)
local config = GetExamineActionConfig(actionId)
return config.Round
end
function XTRPGConfigs.GetExamineActionNeedValue(actionId)
local config = GetExamineActionConfig(actionId)
return config.NeedValue
end
function XTRPGConfigs.GetExamineActionResetCostItemInfo(actionId)
local config = GetExamineActionConfig(actionId)
return config.ResetCostId, config.ResetCostCount
end
local function GetExamineActionType(actionId)
local config = GetExamineActionConfig(actionId)
return config.Type
end
function XTRPGConfigs.CheckExamineActionType(actionId, actionType)
return GetExamineActionType(actionId) == actionType
end
local ActionTypeToAttrType = {
[XTRPGConfigs.TRPGExamineActionType.Strength] = XTRPGConfigs.RoleAttributeType.Power,
[XTRPGConfigs.TRPGExamineActionType.Agility] = XTRPGConfigs.RoleAttributeType.Speed,
[XTRPGConfigs.TRPGExamineActionType.Intelligence] = XTRPGConfigs.RoleAttributeType.Intelligence,
}
function XTRPGConfigs.GetExamineActionNeedAttrType(actionId)
local actionType = GetExamineActionType(actionId)
return ActionTypeToAttrType[actionType]
end
local GetExamineActionTypeConfig = function(actionType)
local config = ExamineActionTypeTemplate[actionType]
if not config then
XLog.Error("XTRPGConfigs GetExamineActionTypeConfig error:配置不存在, Id: " .. actionType .. ", 配置路径: " .. TABLE_EXAMINE_ACTION_TYPE_PATH)
return
end
return config
end
function XTRPGConfigs.GetExamineActionIcon(actionId)
if XTRPGConfigs.CheckExamineActionType(actionId, XTRPGConfigs.TRPGExamineActionType.ConsumeItem) then
return XTRPGConfigs.GetExamineActionItemIcon(actionId)
end
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.Icon
end
function XTRPGConfigs.GetExamineActionTypeDesc(actionId)
if XTRPGConfigs.CheckExamineActionType(actionId, XTRPGConfigs.TRPGExamineActionType.ConsumeItem) then
return CSXTextManagerGetText("TRPGExploreExmaineUseItem")
end
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.Desc
end
function XTRPGConfigs.GetExamineActionTypeDescEn(actionId)
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.DescEn
end
function XTRPGConfigs.GetExamineActionTypeDefaultItemDesc(actionId)
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.DefaultItemDesc
end
function XTRPGConfigs.GetExamineActionTypeRangeDesc(actionId)
if XTRPGConfigs.CheckExamineActionType(actionId, XTRPGConfigs.TRPGExamineActionType.ConsumeItem) then
return ""
end
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.RangeDesc
end
function XTRPGConfigs.GetExamineActionTypeAttrDesc(actionId)
if XTRPGConfigs.CheckExamineActionType(actionId, XTRPGConfigs.TRPGExamineActionType.ConsumeItem) then
return ""
end
local actionType = GetExamineActionType(actionId)
local config = GetExamineActionTypeConfig(actionType)
return config.AttrDesc
end
local GetExamineDifficultConfig = function(actionDifficult)
local config = ExamineActionDifficultTemplate[actionDifficult]
if not config then
XLog.Error("XTRPGConfigs GetExamineDifficultConfig error:配置不存在, Id: " .. actionDifficult .. ", 配置路径: " .. TABLE_EXAMINE_ACTION_DIFFICULT_PATH)
return
end
return config
end
function XTRPGConfigs.GetExamineActionDifficultByDelta(delta)
for difficult, config in ipairs(ExamineActionDifficultTemplate) do
if delta >= config.Delta then
return difficult
end
end
return #ExamineActionDifficultTemplate
end
function XTRPGConfigs.GetExamineActionDifficultDesc(actionDifficult)
if actionDifficult == XTRPGConfigs.TRPGExamineActionDifficult.Default then
return ""
end
local config = GetExamineDifficultConfig(actionDifficult)
return config.Desc
end
-----------------检定相关 end----------------
-----------------惩罚相关 end----------------
local GetPunishConfig = function(punishId)
local config = PunishTemplate[punishId]
if not config then
XLog.Error("XTRPGConfigs GetPunishConfig error:配置不存在, Id: " .. punishId .. ", 配置路径: " .. TABLE_EXAMINE_PUNISH_PATH)
return
end
return config
end
function XTRPGConfigs.CheckPunishType(punishId, punishType)
return GetPunishConfig(punishId).Type == punishType
end
function XTRPGConfigs.GetPunishDesc(punishId)
local config = GetPunishConfig(punishId)
return stringGsub(config.Desc, "\\n", "\n")
end
function XTRPGConfigs.GetPunishParams(punishId)
local config = GetPunishConfig(punishId)
return config.Params
end
-----------------惩罚相关 end----------------
-----------------目标链表begin----------------
local GetTargetLinkConfig = function(id)
local config = TargetLinkTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetTargetLinkConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_TARGET_LINK_PATH)
return
end
return config
end
function XTRPGConfigs.GetTargetLinkTemplate()
return TargetLinkTemplate
end
function XTRPGConfigs.GetTargetLink(id)
return GetTargetLinkConfig(id)
end
function XTRPGConfigs.GetTargetLinkName(id)
if not id or id == NotPreTargetId then
return DefaultTargetName
end
local config = GetTargetLinkConfig(id)
return config.Name
end
function XTRPGConfigs.GetTargetIdList(id)
local config = GetTargetLinkConfig(id)
return config.TargetId
end
function XTRPGConfigs.GetTargetId(id, index)
local targetIdList = XTRPGConfigs.GetTargetIdList(id)
return targetIdList[index]
end
function XTRPGConfigs.GetRewardIdList(id)
local config = GetTargetLinkConfig(id)
return config.RewardId
end
function XTRPGConfigs.GetTargetOfPreTargetList()
return TargetOfPreTargetList
end
function XTRPGConfigs.GetPreTargetByTargetId(targetId)
local targetOfPreTargetList = XTRPGConfigs.GetTargetOfPreTargetList()
if not targetOfPreTargetList[targetId] then
XLog.Error("当前目标没有前置目标目标id" .. targetId .. ",检查配置路径:" .. TABLE_TARGET_LINK_PATH)
return
end
return targetOfPreTargetList[targetId]
end
function XTRPGConfigs.GetNotPreTargetId()
return NotPreTargetId
end
function XTRPGConfigs.GetTargetLinkMissionType(id)
if not id or id == NotPreTargetId then
return XTRPGConfigs.MissionType.MainLine
end
local config = GetTargetLinkConfig(id)
return config.TargetMissionType
end
function XTRPGConfigs.GetTargetLinkMissionTypeName(missionType)
return XTRPGConfigs.MissionTypeName[missionType]
end
-----------------目标链表end------------------
-----------------目标表begin----------------
local GetTargetConfig = function(id)
local config = TargetTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetTargetConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_TARGET_PATH)
return
end
return config
end
function XTRPGConfigs.GetMovieTargetId(movieId)
return MovieIdToTargetIdDic[movieId]
end
function XTRPGConfigs.GetTargetTemplate()
return TargetTemplate
end
function XTRPGConfigs.GetTarget(id)
return GetTargetConfig(id)
end
function XTRPGConfigs.GetTargetPrefabName(id)
local config = GetTargetConfig(id)
return config.PrefabName
end
function XTRPGConfigs.GetTargetIcon(id)
local config = GetTargetConfig(id)
return config.Icon
end
function XTRPGConfigs.GetTargetName(id)
if not id or id == NotPreTargetId then
return DefaultTargetName
end
local config = GetTargetConfig(id)
return config.Name
end
function XTRPGConfigs.GetTargetDesc(targetId, targetLinkId)
if XDataCenter.TRPGManager.IsTargetAllFinish() then
return DefaultTargetDesc
end
if not targetId or targetId == NotPreTargetId then
local missionType = XTRPGConfigs.GetTargetLinkMissionType(targetLinkId)
return XTRPGConfigs.DefaultDesc[missionType]
end
local config = GetTargetConfig(targetId)
return config.Desc
end
function XTRPGConfigs.GetTargetTotalNum()
return TargetTotalNum
end
function XTRPGConfigs.GetTargetAreaIcon(targetId)
if not targetId or targetId == NotPreTargetId then
return ""
end
local config = GetTargetConfig(targetId)
return config.AreaIcon
end
function XTRPGConfigs.GetTargetCardIcon(targetId)
if not targetId or targetId == NotPreTargetId then
return
end
local config = GetTargetConfig(targetId)
return config.CardIcon
end
function XTRPGConfigs.GetTaskPanelNewShowTime()
return TaskPanelNewShowTime
end
-----------------目标表end----------------
-----------------奖励表begin--------------------
local GetRewardConfig = function(id)
local config = RewardTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetRewardConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_REWARD_PATH)
return
end
return config
end
function XTRPGConfigs.GetRewardCondition(id)
local config = GetRewardConfig(id)
return config.Condition
end
function XTRPGConfigs.GetRewardId(id)
local config = GetRewardConfig(id)
return config.RewardId
end
function XTRPGConfigs.GetRewardReceiveDesc(id)
local config = GetRewardConfig(id)
return config.ReceiveDesc
end
function XTRPGConfigs.GetSecondMainReceiveDesc(id)
local config = GetRewardConfig(id)
return config.SecondMainReceiveDesc
end
-----------------奖励表end----------------------
-----------------道具表begin--------------------
local GetItemConfig = function(id)
local config = ItemTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetItemConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_ITEM_PATH)
return
end
return config
end
local CheckItemConfig = function(id)
return ItemTemplate[id] and true or false
end
XTRPGConfigs.CheckItemConfig = CheckItemConfig
function XTRPGConfigs.IsItemPrecious(id)
local config = GetItemConfig(id)
return config.ItemType == XTRPGConfigs.ItemType.Special
end
function XTRPGConfigs.GetItemTagIcon(id)
local config = GetItemConfig(id)
return config.TagIcon
end
function XTRPGConfigs.GetItemParamDesc(itemId)
local config = GetItemConfig(itemId)
return config.Desc
end
function XTRPGConfigs.CheckItemAddAttributeType(itemId, attrType)
local config = GetItemConfig(itemId)
return config.Params[1] == attrType
end
function XTRPGConfigs.GetItemAddAttribute(itemId)
if XTRPGConfigs.CheckDefaultEffectItemId(itemId) then return 0 end
local config = GetItemConfig(itemId)
return config.Params[2]
end
function XTRPGConfigs.GetItemMaxCount(id)
if not CheckItemConfig(id) then
return XDataCenter.ItemManager.GetMaxCount(id)
end
local config = GetItemConfig(id)
return config.Capacity
end
function XTRPGConfigs.GetItemType(id)
local config = GetItemConfig(id)
return config.ItemType
end
function XTRPGConfigs.CheckItemEffectType(itemId, effectType)
local config = GetItemConfig(itemId)
return config.EffectType == effectType
end
function XTRPGConfigs.CheckDefaultEffectItemId(itemId)
return itemId == XTRPGConfigs.ItemEffectDefaultItemId
end
function XTRPGConfigs.GetExamineBuffItemIds(actionId)
local itemIds = {}
local attrType = XTRPGConfigs.GetExamineActionNeedAttrType(actionId)
for itemId in pairs(ItemTemplate) do
if XTRPGConfigs.CheckItemEffectType(itemId, XTRPGConfigs.ItemEffect.AddExamineAttribute)
and XTRPGConfigs.CheckItemAddAttributeType(itemId, attrType) then
tableInsert(itemIds, itemId)
end
end
tableInsert(itemIds, XTRPGConfigs.ItemEffectDefaultItemId)
return itemIds
end
function XTRPGConfigs.GetItemParams(id)
local config = GetItemConfig(id)
return config.Params
end
function XTRPGConfigs.GetItemEffectType(id)
local config = GetItemConfig(id)
return config.EffectType
end
--道具是否需要选择角色使用
function XTRPGConfigs.IsItemSelectCharacter(id)
local effectType = XTRPGConfigs.GetItemEffectType(id)
if effectType == XTRPGConfigs.ItemEffect.ClearBuff or effectType == XTRPGConfigs.ItemEffect.AddBuff then
return true
end
return false
end
function XTRPGConfigs.IsItemShowUse(id)
local itemType = XTRPGConfigs.GetItemType(id)
local itemEffectType = XTRPGConfigs.GetItemEffectType(id)
return itemType ~= XTRPGConfigs.ItemType.Special and itemEffectType ~= XTRPGConfigs.ItemEffect.AddExamineAttribute
end
-----------------道具表end----------------------
-----------------商店begin--------------------
local GetShopConfig = function(id)
local config = ShopTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetShopConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_SHOP_PATH)
return
end
return config
end
function XTRPGConfigs.GetShopItemIdList(id)
local config = GetShopConfig(id)
return config.ShopItemId
end
function XTRPGConfigs.GetShopItemCount(shopId, shopItemId)
return ShopItemCountList[shopId] and ShopItemCountList[shopId][shopItemId] or 0
end
local GetShopItemConfig = function(id)
local config = ShopItemTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetShopItemConfig error:配置不存在, Id: " .. id .. ", 配置路径: " .. TABLE_SHOP_ITEM_PATH)
return
end
return config
end
function XTRPGConfigs.GetShopItemRewardId(id)
local config = GetShopItemConfig(id)
return config.RewardId
end
function XTRPGConfigs.GetShopItemCondition(id)
local config = GetShopItemConfig(id)
return config.Condition
end
function XTRPGConfigs.GetShopItemConsumeId(id)
local config = GetShopItemConfig(id)
return config.ConsumeId
end
function XTRPGConfigs.GetShopItemConsumeCount(id)
local config = GetShopItemConfig(id)
return config.ConsumeCount
end
function XTRPGConfigs.GetShopItemDesc(id)
local config = GetShopItemConfig(id)
return config.Desc
end
--返回外部道具表的id
function XTRPGConfigs.GetItemIdByShopItemId(shopItemId)
local rewardId = XTRPGConfigs.GetShopItemRewardId(shopItemId)
local rewardGoodsId = XRewardManager.GetRewardSubId(rewardId, 1)
local rewardList = XRewardManager.GetRewardList(rewardId)
return rewardList[1].TemplateId
end
function XTRPGConfigs.GetItemResetType(id)
local config = GetShopItemConfig(id)
return config.ResetType
end
-----------------商店end----------------------
-----------------迷宫 begin----------------------
local GetMazeConfig = function(mazeId)
local config = MazeTemplate[mazeId]
if not config then
XLog.Error("XTRPGConfigs GetMazeConfig error:配置不存在, mazeId: " .. mazeId .. ", 配置路径: " .. TABLE_MAZE_PATH)
return
end
return config
end
function XTRPGConfigs.GetMazeIds()
return MazeTemplate
end
function XTRPGConfigs.GetMazeLayerIds(mazeId)
local config = GetMazeConfig(mazeId)
return config.LayerId
end
function XTRPGConfigs.GetMazeName(mazeId)
local config = GetMazeConfig(mazeId)
return config.Name
end
function XTRPGConfigs.GetMazeStartLayerId(mazeId)
local config = GetMazeConfig(mazeId)
return config.StartLayerId
end
local GetMazeLayerConfig = function(layerId)
local config = MazeLayerTemplate[layerId]
if not config then
XLog.Error("XTRPGConfigs GetMazeLayerConfig error:配置不存在, layerId: " .. layerId .. ", 配置路径: " .. TABLE_MAZE_LAYER_PATH)
return
end
return config
end
local GetMazeLayerMapId = function(layerId)
local config = GetMazeLayerConfig(layerId)
local mapId = config.MapId
if not mapId or mapId == 0 then
XLog.Error("XTRPGConfigs GetMazeLayerMapId error:配置不存在, layerId: " .. layerId .. ", 配置路径: " .. TABLE_MAZE_LAYER_PATH)
return
end
return mapId
end
function XTRPGConfigs.GetMazeLayerBgImage(mazeId)
local config = GetMazeLayerConfig(mazeId)
return config.BgImage
end
function XTRPGConfigs.GetMazeLayerName(layerId)
local config = GetMazeLayerConfig(layerId)
return config.Name
end
function XTRPGConfigs.GetMazeLayerStartNodeId(layerId)
local config = GetMazeLayerConfig(layerId)
return config.StartNodeId
end
function XTRPGConfigs.GetMazeLayerStartCardIndex(layerId)
local config = GetMazeLayerConfig(layerId)
return config.StartCardIndex
end
local GetMazeMapConfigs = function(mapId)
local configs = MazeMapTemplates[tostring(mapId)]
if not configs then
XLog.Error("XTRPGConfigs GetMazeMapConfigs error:配置不存在, mapId: " .. mapId .. ", 配置路径: " .. TABLE_MAZE_MAP_PATH)
return
end
return configs
end
function XTRPGConfigs.GetMazeMapConfigs(layerId)
local mapId = GetMazeLayerMapId(layerId)
return GetMazeMapConfigs(mapId)
end
local GetMazeCardConfig = function(cardId)
local config = MazeCardTemplate[cardId]
if not config then
XLog.Error("XTRPGConfigs GetMazeCardConfig error:配置不存在, cardId: " .. cardId .. ", 配置路径: " .. TABLE_MAZE_CARD_PATH)
return
end
return config
end
function XTRPGConfigs.GetMazeCardType(cardId)
local config = GetMazeCardConfig(cardId)
return config.Type
end
function XTRPGConfigs.CheckMazeCardType(cardId, paramCardType)
local cardType = XTRPGConfigs.GetMazeCardType(cardId)
return cardType == paramCardType
end
function XTRPGConfigs.GetMazeCardConvertCardId(cardId)
local config = GetMazeCardConfig(cardId)
return config.ConvertCardId
end
function XTRPGConfigs.GetMazeCardParam(cardId)
local config = GetMazeCardConfig(cardId)
return config.Param
end
function XTRPGConfigs.GetMazeCardOrder(cardId)
local config = GetMazeCardConfig(cardId)
return config.Order
end
function XTRPGConfigs.IsMazeCardShowTag(cardId)
local config = GetMazeCardConfig(cardId)
return config.ShowTag ~= 0
end
function XTRPGConfigs.GetMazeCardName(cardId)
local config = GetMazeCardConfig(cardId)
return config.Name
end
function XTRPGConfigs.GetMazeCardFightDes(cardId)
local config = GetMazeCardConfig(cardId)
return stringGsub(config.FightDes, "\\n", "\n")
end
function XTRPGConfigs.GetMazeCardQuickFightDes(cardId)
local config = GetMazeCardConfig(cardId)
return stringGsub(config.QuickFightDes, "\\n", "\n")
end
function XTRPGConfigs.GetMazeCardIcon(cardId)
if not XTRPGConfigs.IsIconFromConfig(cardId) then return end
local config = GetMazeCardConfig(cardId)
return config.Icon
end
function XTRPGConfigs.GetMazeCardMovieId(cardId)
if not XTRPGConfigs.CheckMazeCardType(cardId, XTRPGConfigs.CardType.FightWin) then return end
local config = GetMazeCardConfig(cardId)
return config.MovieId
end
function XTRPGConfigs.GetMazeCardIconR(cardId)
if not XTRPGConfigs.IsIconFromConfig(cardId) then return end
local config = GetMazeCardConfig(cardId)
return config.IconR
end
function XTRPGConfigs.GetMazeCardMiniIcon(cardId)
local config = GetMazeCardConfig(cardId)
return config.MiniIcon
end
function XTRPGConfigs.IsMazeCardDisposeable(cardId)
local config = GetMazeCardConfig(cardId)
return config.Disposeable ~= 0
end
function XTRPGConfigs.IsMazeCardSingleDisposeable(cardId)
local config = GetMazeCardConfig(cardId)
return config.SingleDisposeable ~= 0
end
function XTRPGConfigs.GetMazeCardRecordGroupId(cardId)
local config = GetMazeCardConfig(cardId)
return config.RecordGroupId
end
local GetMazeCardTypeConfig = function(cardType)
local config = MazeCardTypeTemplate[cardType]
if not config then
XLog.Error("XTRPGConfigs GetMazeCardTypeConfig error:配置不存在, cardType: " .. cardType .. ", 配置路径: " .. TABLE_MAZE_CARD_TYPE_PATH)
return
end
return config
end
--预制体中预设好的的卡牌图片不需要读配置
function XTRPGConfigs.IsIconFromConfig(cardId)
local cardType = XTRPGConfigs.GetMazeCardType(cardId)
-- 满纸荒唐言
-- if cardType == XTRPGConfigs.CardType.Block
-- if cardType == XTRPGConfigs.CardType.Random
-- then
-- return false
-- end
return true
end
function XTRPGConfigs.GetMazeCardPrefab(cardId)
local cardType = XTRPGConfigs.GetMazeCardType(cardId)
local config = GetMazeCardTypeConfig(cardType)
return config.Prefab
end
function XTRPGConfigs.GetMazeCardTypeIcon(cardId)
local cardType = XTRPGConfigs.GetMazeCardType(cardId)
local config = GetMazeCardTypeConfig(cardType)
return config.Icon
end
local GetMazeCardRecordGroupConfig = function(cardRecordGroupId)
local config = MazeCardRecordGroupTemplate[cardRecordGroupId]
if not config then
XLog.Error("XTRPGConfigs GetMazeCardRecordGroupConfig error:配置不存在, cardRecordGroupId: " .. cardRecordGroupId .. ", 配置路径: " .. TABLE_MAZE_CARD_RECORD_GROUP_PATH)
return
end
return config
end
function XTRPGConfigs.GetMazeCardRecordGroupMiniIcon(cardRecordGroupId)
local config = GetMazeCardRecordGroupConfig(cardRecordGroupId)
return config.MiniIcon
end
function XTRPGConfigs.GetMazeCardRecordGroupName(cardRecordGroupId)
local config = GetMazeCardRecordGroupConfig(cardRecordGroupId)
return config.Name
end
function XTRPGConfigs.GetMazeCardRecordGroupIdList()
local cardRecordGroupIds = {}
for id in pairs(MazeCardRecordGroupTemplate) do
tableInsert(cardRecordGroupIds, id)
end
return cardRecordGroupIds
end
-----------------迷宫 end----------------------
-----------------等级 begin----------------------
local GetLevelConfig = function(level)
local config = LevelTemplate[level]
if not config then
XLog.Error("XTRPGConfigs GetLevelConfig error:配置不存在, level: " .. level .. ", 配置路径: " .. TABLE_LEVEL_PATH)
return
end
return config
end
function XTRPGConfigs.GetMaxExp(level)
local config = GetLevelConfig(level)
return config.UpExp
end
function XTRPGConfigs.GetMaxTalentPoint(level)
local config = GetLevelConfig(level)
return config.TalentPoint
end
function XTRPGConfigs.IsMaxLevel(level)
local maxExp = XTRPGConfigs.GetMaxExp(level)
return maxExp == 0
end
-----------------等级 end----------------------
-----------------世界BOSS begin----------------
local GetBossConfig = function(id)
local config = BossTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetBossConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_BOSS_PATH)
return
end
return config
end
function XTRPGConfigs.GetBossModelId()
local config = GetBossConfig(1)
return config.ModelId
end
function XTRPGConfigs.GetBossTimeId()
local config = GetBossConfig(1)
return config.TimeId
end
function XTRPGConfigs.GetBossChallengeCount()
local config = GetBossConfig(1)
return config.ChallengeCount
end
function XTRPGConfigs.GetBossDesc()
local config = GetBossConfig(1)
return config.Desc
end
function XTRPGConfigs.GetBossStageId()
local config = GetBossConfig(1)
return config.StageId
end
function XTRPGConfigs.IsBossStage(stageId)
local bossStageId = XTRPGConfigs.GetBossStageId()
return bossStageId == stageId
end
function XTRPGConfigs.GetBossStartStoryId()
local config = GetBossConfig(1)
return config.StartStoryId
end
function XTRPGConfigs.GetBossHideEntranceTimeStr()
local config = GetBossConfig(1)
return config.HideEntranceTimeStr
end
local GetBossPhasesRewardConfig = function(id)
local config = BossPhasesRewardTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetBossPhasesRewardConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_BOSS_PHASES_REWARD)
return
end
return config
end
function XTRPGConfigs.GetBossPhasesRewardMaxNum()
return #BossPhasesRewardTemplate
end
function XTRPGConfigs.GetBossPhasesRewardPercent(id)
local config = BossPhasesRewardTemplate[id]
return config.Percent
end
function XTRPGConfigs.GetBossPhasesRewardId(id)
local config = BossPhasesRewardTemplate[id]
return config.RewardId
end
function XTRPGConfigs.GetBossIcon(id)
local config = BossPhasesRewardTemplate[id]
return config.Icon
end
function XTRPGConfigs.GetBossPhasesRewardTemplate()
return BossPhasesRewardTemplate
end
-----------------世界BOSS end------------------
-----------------珍藏-回忆 begin---------------
local GetMemoireStoryConfig = function(id)
local config = MemoireStoryTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetMemoireStoryConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_MEMOIRE_STORY)
return
end
return config
end
function XTRPGConfigs.GetMemoirStoryMaxNum()
return #MemoireStoryTemplate
end
function XTRPGConfigs.GetMemoirStoryTemplate()
return MemoireStoryTemplate
end
function XTRPGConfigs.GetMemoireStoryId(id)
local config = GetMemoireStoryConfig(id)
return config.StoryId
end
function XTRPGConfigs.GetMemoireStoryUnlockItemId(id)
local config = GetMemoireStoryConfig(id)
return config.UnlockItemId
end
function XTRPGConfigs.GetMemoireStoryUnlockItemCount(id)
local config = GetMemoireStoryConfig(id)
return config.UnlockItemCount
end
function XTRPGConfigs.GetMemoireStoryTabName(id)
local config = GetMemoireStoryConfig(id)
return config.TabName
end
function XTRPGConfigs.GetMemoireStoryName(id)
local config = GetMemoireStoryConfig(id)
return config.Name
end
function XTRPGConfigs.GetMemoireStoryDesc(id)
local config = GetMemoireStoryConfig(id)
local desc = config.Desc
return string.gsub(desc, "\\n", "\n")
end
function XTRPGConfigs.GetMemoireStoryImgCG(id)
local config = GetMemoireStoryConfig(id)
return config.ImgCG
end
-----------------珍藏-回忆 end---------------
-----------------TRPGSecondMain begin---------------
local GetSecondMainConfig = function(id)
local config = SecondMainTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetSecondMainConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_SECOND_MAIN_PATH)
return
end
return config
end
function XTRPGConfigs.GetSecondMainIdList()
return SecondMainIdList
end
function XTRPGConfigs.GetSecondMainCondition(id)
local config = GetSecondMainConfig(id)
return config.Condition
end
function XTRPGConfigs.GetSecondMainStageId(id)
local config = GetSecondMainConfig(id)
return config.SecondMainStageId
end
function XTRPGConfigs.GetSecondMainPrefab(id)
local config = GetSecondMainConfig(id)
return config.Prefab
end
function XTRPGConfigs.GetSecondMainBG(id)
local config = GetSecondMainConfig(id)
return config.BG
end
-----------------TRPGSecondMain end-----------------
-----------------TRPGSecondMainStage begin---------------
local GetSecondMainStageConfig = function(id)
local config = SecondMainStageTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetSecondMainStageConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_SECOND_MAIN_STAGE_PATH)
return
end
return config
end
function XTRPGConfigs.GetSecondMainStageName(id)
local config = GetSecondMainStageConfig(id)
return config.Name
end
function XTRPGConfigs.GetSecondMainStageDesc(id)
local config = GetSecondMainStageConfig(id)
return config.Desc
end
function XTRPGConfigs.GetSecondMainStageIcon(id)
local config = GetSecondMainStageConfig(id)
return config.Icon
end
function XTRPGConfigs.GetSecondMainStageStageId(id)
local config = GetSecondMainStageConfig(id)
return config.StageId
end
function XTRPGConfigs.GetSecondMainStageStoryId(id)
local config = GetSecondMainStageConfig(id)
return config.StoryId
end
function XTRPGConfigs.GetSecondMainStageDialogIcon(id)
local config = GetSecondMainStageConfig(id)
return config.DialogIcon
end
function XTRPGConfigs.GetSecondMainStageRewardId(id)
local config = GetSecondMainStageConfig(id)
return config.TRPGRewardId
end
function XTRPGConfigs.GetSecondMainStageCondition(id)
local config = GetSecondMainStageConfig(id)
return config.Condition
end
function XTRPGConfigs.GetSecondMainStagePrefabName(id)
local config = GetSecondMainStageConfig(id)
return config.PrefabName
end
function XTRPGConfigs.GetSecondMainStageRewardIdList(secondMainId)
local secondMainStageIdList = XTRPGConfigs.GetSecondMainStageId(secondMainId)
local trpgRewardId
local trpgRewardIdList = {}
for _, secondMainStageId in ipairs(secondMainStageIdList) do
trpgRewardId = XTRPGConfigs.GetSecondMainStageRewardId(secondMainStageId)
if XTool.IsNumberValid(trpgRewardId) then
table.insert(trpgRewardIdList, trpgRewardId)
end
end
return trpgRewardIdList
end
--返回常规主线奖励可领取的进度
function XTRPGConfigs.GetSecondMainRewardRecivePercent(secondMainId, trpgRewardId)
local secondMainStageIdList = XTRPGConfigs.GetSecondMainStageId(secondMainId)
local secondMainStageMaxNum = #secondMainStageIdList
local trpgRewardIdCfg
for i, secondMainStageId in ipairs(secondMainStageIdList) do
trpgRewardIdCfg = XTRPGConfigs.GetSecondMainStageRewardId(secondMainStageId)
if trpgRewardIdCfg == trpgRewardId then
return i / secondMainStageMaxNum
end
end
return 0
end
-----------------TRPGSecondMainStage end-----------------
-----------------客户端配置-求真之路和探索营地标签 begin-------------
local GetPanelPlotTabConfig = function(id)
local config = PanelPlotTabTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetPanelPlotTabConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_PANEL_PLOT_TAB_PATH)
return
end
return config
end
function XTRPGConfigs.GetPanelPlotTabTemplate()
return PanelPlotTabTemplate
end
function XTRPGConfigs.GetPanelPlotTabName(id)
local config = GetPanelPlotTabConfig(id)
return config.Name
end
function XTRPGConfigs.GetPanelPlotTabBg(id)
local config = GetPanelPlotTabConfig(id)
return config.Bg
end
function XTRPGConfigs.GetPanelPlotTabOpenUiName(id)
local config = GetPanelPlotTabConfig(id)
return config.OpenUiName
end
function XTRPGConfigs.CheckPanelPlotTabCondition(id)
local config = GetPanelPlotTabConfig(id)
local condition = config.Condition
if condition == 0 then
return true, ""
end
return XConditionManager.CheckCondition(condition)
end
-----------------客户端配置-求真之路和探索营地标签 end-------------
-----------------客户端配置-按钮条件 begin-------------
local GetButtonConditionConfig = function(id)
local config = ButtonConditionTemplate[id]
if not config then
XLog.Error("XTRPGConfigs GetButtonConditionConfig error:配置不存在, id: " .. id .. ", 配置路径: " .. TABLE_BUTTON_CONDITION_PATH)
return
end
return config
end
function XTRPGConfigs.CheckButtonCondition(id)
local config = GetButtonConditionConfig(id)
local condition = config.Condition
if condition == 0 then
return true, ""
end
return XConditionManager.CheckCondition(condition)
end
-----------------客户端配置-按钮条件 end-------------