local TABLE_ACTIVITY_PATH = "Client/ActivityBrief/ActivityBrief.tab" local TABLE_ACTIVITY_SHOP = "Client/ActivityBrief/ActivityBriefShop.tab" local TABLE_ACTIVITY_TASK = "Client/ActivityBrief/ActivityBriefTask.tab" local TABLE_ACTIVITY_GROUP_PATH = "Client/ActivityBrief/ActivityBriefGroup.tab" local TABLE_ACTIVITY_SPECIAL = "Client/ActivityBrief/SpecialActivity.tab" local TABLE_ACTIVITY_Story = "Share/ActivityBrief/ActivityBriefStory.tab" local ParseToTimestamp = XTime.ParseToTimestamp local ActivityTemplates = {} local ActivityShopTemplates = {} local ActivityTaskTemplates = {} local ActivityGroupTemplates = {} local SpecialActivityTemplates = {} local ActivityStoryTemplates = {} local SkipIdToRedPointConditionsDic = {} XActivityBriefConfigs = XActivityBriefConfigs or {} -- 活动名称Id(有需要新增,勿删改!) XActivityBriefConfigs.ActivityGroupId = { MainLine = 1, --主线活动 Branch = 2, --支线活动 BossSingle = 3, --单机Boss活动 BossOnline = 4, --联机Boss活动 Prequel = 5, --间章故事-角色A BabelTower = 6, --巴别塔 RougueLike = 7, --爬塔 RepeatChallenge = 8, --复刷关 ArenaOnline = 9, --区域联机 UnionKill = 10, --狙击战 ShortStories = 11, --短篇故事 Prequel2 = 12, --间章故事-角色B Labyrinth = 13, --迷宫 Society = 14, --公会 Resource = 15, --资源 BigWar = 16, --大作战 Extra = 17, --番外-普通 WorldBoss = 18, --世界Boss Expedition = 19, --自走棋 FubenBossSingle = 20, --幻痛囚笼 ActivityBriefShop = 21, --活动商店 Extra2 = 22, --番外-隐藏 MaintainerAction = 23, --大富翁 RpgTower = 24, --RPG玩法 ActivityDrawCard = 25, --活动抽卡 TRPGMainLine = 26, --终焉福音-主线跑团活动 NewCharActivity = 27, -- 新角色教学活动 FubenActivityTrial = 28, -- 试玩关 ShiTu = 29, -- 师徒系统 Nier = 30, -- 尼尔玩法 Pokemon = 31, -- 口袋战双 Pursuit = 32, -- 追击玩法 StrongHold = 33, --超级据点 Simulate = 34, -- 模拟战 Partner = 35, --伙伴系统 MoeWar = 38, --萌战 PetCard = 39, --宠物抽卡 PetTrial = 40, --新宠物活动 PokerGuessing = 41, --翻牌小游戏 Hack = 42, --骇客 RpgMaker = 43, --端午活动 Reform = 44, --改造玩法 CoupleCombat = 45, --双人同行 SuperTower = 46, --超级爬塔 SummerSeries = 47, --夏活系列关 KillZone = 48, --杀戮无双 Expedition = 49, --虚像地平线 SameColorGame = 50, --三消游戏 AreaWar = 51, --全服对决 SuperSmashBros = 52, --超限乱斗 TeachingSkin = 53, --教学关内涂装试玩 Maverick = 54, --射击玩法 异构阵线 MemorySave = 55, --意识营救战 Theatre = 56, --肉鸽玩法 DoomsDay = 57, --免疫之城 PivotCombat = 58, --Sp战力验证 Escape = 59, --大逃杀玩法 FubenShortStory = 60, --故事集 DoubleTowers = 61, --动作塔防 SecondActivityBriefShop = 62, --活动商店 SecondBriefPanel = 63, --副面板 GuildWar = 64, --工会战 GoldenMiner = 65, --黄金矿工 QiGuan = 66, --春节七关 TaikoMaster = 67, -- 音游小游戏 MultiDim = 68, -- 多维挑战 Festival = 69, -- 节日活动 v1.27:白色情人节 } --跳转id XActivityBriefConfigs.SkipId = { LivWarmExtActivity = 11767, --丽芙宣发活动 LivWarmRace = 20097, --二周年预热-赛跑小游戏 Doomsday = 82050, --免疫之城 NewYearLuck = 20112, --元旦奖券小游戏 BodyCombineGame = 20118, --接头霸王(哈卡玛预热小游戏) AccumulateConsume = 20120, --累消活动 WhiteValentine = 20133, --白情活动 InvertCardGame = 20134, --翻牌小游戏(二期) MineSweepingGame = 20140, --扫雷小游戏 } local InitSkipIdToRedPointConditionsDic = function() SkipIdToRedPointConditionsDic[11739] = {XRedPointConditions.Types.CONDITION_GUARD_CAMP_RED} SkipIdToRedPointConditionsDic[80011] = {XRedPointConditions.Types.CONDITION_WHITEVALENTINE2021_ENTRYRED} SkipIdToRedPointConditionsDic[11753] = {XRedPointConditions.Types.CONDITION_FINGERGUESSING_TASK} SkipIdToRedPointConditionsDic[11757] = {XRedPointConditions.Types.CONDITION_MOVIE_ASSEMBLE_01} SkipIdToRedPointConditionsDic[11761] = {XRedPointConditions.Types.CONDITION_FASHION_STORY_HAVE_STAGE} SkipIdToRedPointConditionsDic[81103] = {XRedPointConditions.Types.CONDITION_RPG_MAKER_GAME_RED} SkipIdToRedPointConditionsDic[20091] = {XRedPointConditions.Types.CONDITION_LIV_WARM_ACTIVITY} SkipIdToRedPointConditionsDic[20107] = {XRedPointConditions.Types.CONDITION_DICEGAME_RED} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.LivWarmExtActivity] = {XRedPointConditions.Types.CONDITION_LIV_WARM_EXT_ACTIVITY} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.LivWarmRace] = {XRedPointConditions.Types.CONDITION_LIV_WARM_RACE_REWARD} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.Doomsday] = {XRedPointConditions.Types.XRedPointConditionDoomsdayActivity} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.NewYearLuck] = {XRedPointConditions.Types.CONDITION_NEW_YEAR_LUCK_RULE_RED} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.BodyCombineGame] = {XRedPointConditions.Types.CONDITION_BODYCOMBINEGAME_MAIN} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.AccumulateConsume] = {XRedPointConditions.Types.CONDITION_CONSUME_ACTIVITY} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.WhiteValentine] = {XRedPointConditions.Types.CONDITION_ACTIVITY_WHITE_VALENTINE} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.InvertCardGame] = {XRedPointConditions.Types.CONDITION_INVERTCARDGAME_RED} SkipIdToRedPointConditionsDic[XActivityBriefConfigs.SkipId.MineSweepingGame] = {XRedPointConditions.Types.CONDITION_MINSWEEPING_RED} SkipIdToRedPointConditionsDic[1400008] = {XRedPointConditions.Types.CONDITION_SLOTMACHINE_RED} SkipIdToRedPointConditionsDic[1400009] = {XRedPointConditions.Types.CONDITION_SLOTMACHINE_REDL} end function XActivityBriefConfigs.Init() ActivityTemplates = XTableManager.ReadByIntKey(TABLE_ACTIVITY_PATH, XTable.XTableBriefActivity, "Id") ActivityShopTemplates= XTableManager.ReadByIntKey(TABLE_ACTIVITY_SHOP, XTable.XTableActivityBriefShop, "Id") ActivityTaskTemplates= XTableManager.ReadByIntKey(TABLE_ACTIVITY_TASK, XTable.XTableActivityBriefTask, "Id") ActivityGroupTemplates = XTableManager.ReadByIntKey(TABLE_ACTIVITY_GROUP_PATH, XTable.XTableActivityBriefGroup, "Id") SpecialActivityTemplates = XTableManager.ReadByIntKey(TABLE_ACTIVITY_SPECIAL, XTable.XTableSpecialActivity, "Id") ActivityStoryTemplates = XTableManager.ReadByIntKey(TABLE_ACTIVITY_Story, XTable.XTableActivityBriefStory, "Id") InitSkipIdToRedPointConditionsDic() end function XActivityBriefConfigs.GetActivityBeginTime() local config = XActivityBriefConfigs.GetActivityConfig() return XFunctionManager.GetStartTimeByTimeId(config.TimeId) end function XActivityBriefConfigs.GetActivityEndTime() local config = XActivityBriefConfigs.GetActivityConfig() return XFunctionManager.GetEndTimeByTimeId(config.TimeId) end function XActivityBriefConfigs.GetActivityConfig() return ActivityTemplates[1] end function XActivityBriefConfigs.GetActivityModels() local config = XActivityBriefConfigs.GetActivityConfig() return config.UIModelId or {} end function XActivityBriefConfigs.GetSpinePath(index) local config = XActivityBriefConfigs.GetActivityConfig() return config.SpinePath[index] or "" end --=========================================================================== --v1.27 活动面板优化:根据活动主题主副面板Id和SpineIndex获取SpinePath --=========================================================================== function XActivityBriefConfigs.GetSpinePathByType(panelType, index) local config = ActivityTemplates[panelType] return config.SpinePath[index] or "" end --=========================================================================== --v1.27 活动面板优化:根据活动主题主副面板Id获取当前的 SpinePath List --=========================================================================== function XActivityBriefConfigs.GetSpinePathList(panelType) local config = ActivityTemplates[panelType] return config.SpinePath or {} end --=========================================================================== --v1.27 活动面板优化:根据活动主题主副面板Id获取当前的 GroupId List --=========================================================================== function XActivityBriefConfigs.GetGroupIdList(panelType) local config = ActivityTemplates[panelType] return config.GroupIdList or "" end function XActivityBriefConfigs.GetActivityEntrySkipId(id) return SpecialActivityTemplates[id].SkipId end function XActivityBriefConfigs.GetAllActivityEntryConfig() return SpecialActivityTemplates end function XActivityBriefConfigs.GetActivityShopByInfoId(id) return ActivityShopTemplates[id] end function XActivityBriefConfigs.GetActivityTaskByInfoId(id) return ActivityTaskTemplates[id] end function XActivityBriefConfigs.GetActivityGroupConfig(groupId) local groupConfig = ActivityGroupTemplates[groupId] if not groupConfig then XLog.ErrorTableDataNotFound("XActivityBriefConfigs.GetActivityGroupConfig", "根据groupId获取的配置表项", TABLE_ACTIVITY_GROUP_PATH, "groupId", tostring(groupId)) return end return groupConfig end --=========================================================================== --v1.27 活动面板优化:根据活动GroupId获取该Btn点击事件绑定函数名 --=========================================================================== function XActivityBriefConfigs.GetActivityGroupBtnInitMethodName(groupId) local groupConfig = ActivityGroupTemplates[groupId] if not groupConfig then XLog.ErrorTableDataNotFound("XActivityBriefConfigs.GetActivityGroupBtnInitMethodName", "根据groupId获取的配置表项", TABLE_ACTIVITY_GROUP_PATH, "groupId", tostring(groupId)) return end return groupConfig.BtnInitMethodName or nil end function XActivityBriefConfigs.TestOpenActivity() local newTemplate = {} for id, template in pairs(ActivityTemplates) do if id ~= 1 then newTemplate[id] = template else newTemplate[id] = XTool.Clone(template) newTemplate[id].TimeId = 24 end end ActivityTemplates = newTemplate end function XActivityBriefConfigs.GetTableActivityPath() return TABLE_ACTIVITY_PATH end function XActivityBriefConfigs.GetActivityStoryConfig() return ActivityStoryTemplates end function XActivityBriefConfigs.GetActivityBriefGroup(id) local config = XActivityBriefConfigs.GetActivityGroupConfig(id) return config.Name end function XActivityBriefConfigs.GetRedPointConditionsBySkipId(skipId) return skipId and SkipIdToRedPointConditionsDic[skipId] end