diff --git a/Assets/ManagedResources/~Lua/Modules/Fight/FightMiddleChoosePanel.lua b/Assets/ManagedResources/~Lua/Modules/Fight/FightMiddleChoosePanel.lua index 2c1b5f2a84..ad33a8e0b3 100644 --- a/Assets/ManagedResources/~Lua/Modules/Fight/FightMiddleChoosePanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Fight/FightMiddleChoosePanel.lua @@ -31,6 +31,9 @@ end function FightMiddleChoosePanel:BindEvent() Util.AddClick(self.btnBack, function() + if fightMap:GetIsWalk() then + return + end self:ClosePanel() end) end @@ -67,6 +70,9 @@ end function FightMiddleChoosePanel:OnRefreshMiddleClick() for i = 1, FightPointPassManager.maxChapterNum do + if fightMap:GetIsWalk() then + return + end fightMap.AddPointFunc(i, function () local ChapterSate = FightPointPassManager.GetDifficultAndChapter(difficultType,i) if ChapterSate == SingleFightState.Pass then @@ -89,7 +95,6 @@ function FightMiddleChoosePanel:OnRefreshMiddleClick() end --界面关闭时调用(用于子类重写) function FightMiddleChoosePanel:OnClose() - fightMap:Dispose() if func then func() diff --git a/Assets/ManagedResources/~Lua/Modules/Fight/View/FightMiddleChooseMapView.lua b/Assets/ManagedResources/~Lua/Modules/Fight/View/FightMiddleChooseMapView.lua index 17083960a0..b2884e4bfc 100644 --- a/Assets/ManagedResources/~Lua/Modules/Fight/View/FightMiddleChooseMapView.lua +++ b/Assets/ManagedResources/~Lua/Modules/Fight/View/FightMiddleChooseMapView.lua @@ -7,6 +7,7 @@ require("Modules/Map/Logic/TileMapView") local this = {} local flagEventPool = {} local mapCtrl = "MapCtrl" +local isWalk = true -- 当前关卡地图编号 local m_curMapId = 5001 local mainLevelSettingConFig = ConfigManager.GetConfig(ConfigName.MainLevelSettingConfig) @@ -17,6 +18,7 @@ local rootParent = nil local curMiddleFightId = 0 function this:InitComponent(root) + isWalk = true this.spLoader = SpriteLoader.New() -- 地图点击拖动 rootParent = root @@ -39,10 +41,13 @@ function this:Init(_curSmallFightId,_IsPlayAni,_openPanel) this.liveNode:OnOpen(GetPlayerRoleSingleConFig().Scale5,Vector3.New(0,40,0),WALK_DIR.IDLE_FRONT) this:LoadMapData() if IsPlayAni then + isWalk = true local time3 = Timer.New(function () this.SetRoleWalk(curMiddleFightId) end, 1.5) time3:Start() + else + isWalk = false end end function this:LoadMapData() @@ -247,6 +252,7 @@ function this.SelectRenPos(_parent,ChapterRolePosition) end end function this:Dispose() + isWalk = false if this.liveNode then this.liveNode:OnClose() this.liveNode = nil @@ -265,4 +271,8 @@ function this:Dispose() openPanel = nil end +function this:GetIsWalk() + return isWalk +end + return this \ No newline at end of file diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/UnlockCheckpointPopup.lua b/Assets/ManagedResources/~Lua/Modules/Popup/UnlockCheckpointPopup.lua index 99f7f815c3..63a6428ffb 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/UnlockCheckpointPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/UnlockCheckpointPopup.lua @@ -26,9 +26,13 @@ function UnlockCheckpointPopup:BindEvent() Util.AddClick(this.closeBtn, function() self:ClosePanel() - UIManager.OpenPanel(UIName.FightPointPassMainPanel, function() - -- 章节解锁时添加对话 - StoryManager.EventTrigger(curChapterId) + if UIManager.IsOpen(UIName.FightPointPassMainPanel) then + UIManager.ClosePanel(UIName.FightPointPassMainPanel) + end + -- 章节解锁时添加对话 + StoryManager.EventTrigger(curChapterId, function() + LogGreen("打开挂机界面") + UIManager.OpenPanel(UIName.FightPointPassMainPanel) end) end) Util.AddClick(this.btnGo, function()