From ebcc753925adc5ffc6556ab4e75e8ebd5b6fc2b9 Mon Sep 17 00:00:00 2001 From: zhangqiang <657634622@qq.com> Date: Wed, 19 May 2021 15:53:23 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=B1=B1=E6=B2=B3=E7=A4=BE=E7=A8=B7?= =?UTF-8?q?=E5=9B=BE=E3=80=91=E5=B0=8F=E5=85=B3=E5=8D=A1=E7=AD=89=E7=BA=A7?= =?UTF-8?q?=E9=99=90=E5=88=B6=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../~Lua/Modules/FightLevel/FightLevelManager.lua | 1 + .../FightLevel/FightLevelSingleChapterPanel.lua | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelManager.lua b/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelManager.lua index caee0f7691..b495988446 100644 --- a/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelManager.lua @@ -38,6 +38,7 @@ function this.Initialize() HardStageNode.type = curChapterAllLevel[j].StageType--类型:0.大节点1.小节点 HardStageNode.state = 0--状态:0-7星级状态,8为荣耀三星,0为小节点未通过1为小节点通过 HardStageNode.isFirst = false--是否是第一次荣耀 + HardStageNode.isPass = false--是否通关 HardStageNode.config = curChapterAllLevel[j]--表 singleChapterData.node[HardStageNode.nodeId] = HardStageNode end diff --git a/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelSingleChapterPanel.lua b/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelSingleChapterPanel.lua index b9702e28f0..3fefedf543 100644 --- a/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelSingleChapterPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/FightLevel/FightLevelSingleChapterPanel.lua @@ -263,7 +263,18 @@ function this.GetCurLevelIsOpen(levelDatas) return -1 end if levelDatas.nodeId > FightLevelManager.GetCurChapterLevelId() then - return 1 + --特殊判断 分主关卡和副关卡 + if levelDatas.config.StageType == FIGHTLEVEL_STAGETYPE.MainLevel then + local upMainLevelConfig = FightLevelManager.GetChapterLevelData(levelDatas.config.Chapter,levelDatas.nodeId - 2) + if not upMainLevelConfig.isPass then + return 1 + end + elseif levelDatas.config.StageType == FIGHTLEVEL_STAGETYPE.AssistantLevel or levelDatas.config.StageType == FIGHTLEVEL_STAGETYPE.AssistantLevelReward then + local upMainLevelConfig = FightLevelManager.GetChapterLevelData(levelDatas.config.Chapter,levelDatas.nodeId - 1) + if not upMainLevelConfig.isPass then + return 1 + end + end end if levelDatas.config.LevelLimit > PlayerManager.level then return 2