From cd75dbf9b743944591781b092d57cf58b4e57962 Mon Sep 17 00:00:00 2001 From: puxuan <413323644@qq.com> Date: Mon, 10 Nov 2025 10:48:32 +0800 Subject: [PATCH] fix bug --- .../controller/battle_base_controller.lua | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/lua/app/module/battle/controller/battle_base_controller.lua b/lua/app/module/battle/controller/battle_base_controller.lua index 354ad771..01b8a8e4 100644 --- a/lua/app/module/battle/controller/battle_base_controller.lua +++ b/lua/app/module/battle/controller/battle_base_controller.lua @@ -1986,18 +1986,18 @@ function BattleBaseController:popBoardCacheSkill(callback) end function BattleBaseController:generateSkill(callback) - self.generateSkillMap = table.clearOrCreate(self.generateSkillMap) - self.generateExcludeMap = table.clearOrCreate(self.generateExcludeMap) + local generateSkillMap = {} + local generateExcludeMap = {} for _, skillEntity in pairs(self:getSkillEntities()) do if skillEntity:getEnergyEnough() then - local list = self:getSkillElementList(skillEntity:getPosition(), 1, true, self.generateExcludeMap) + local list = self:getSkillElementList(skillEntity:getPosition(), 1, true, generateExcludeMap) if list[1] then - self.generateSkillMap[skillEntity:getPosition()] = + generateSkillMap[skillEntity:getPosition()] = { skillId = skillEntity:getSkillId(), posId = list[1] } - self.generateExcludeMap[list[1]] = true + generateExcludeMap[list[1]] = true end end end @@ -2009,8 +2009,15 @@ function BattleBaseController:generateSkill(callback) return end - self.battleUI:generateSkillAni(self.generateSkillMap, function() - for elementType, info in pairs(self.generateSkillMap) do + -- 有技能正在生成,流程走到了生成技能,会导致正在播放动画的技能map被清空,回调设置技能失败 generateSkillMap从全局改成局部也能防止 + -- if table.nums(generateSkillMap) <= 0 then + -- if callback then + -- callback() + -- end + -- return + -- end + self.battleUI:generateSkillAni(generateSkillMap, function() + for elementType, info in pairs(generateSkillMap) do self:setGridSkillId(info.posId, info.skillId) end @@ -2579,7 +2586,6 @@ function BattleBaseController:onSelectSkill(skillId, value, pos, side) end self:selectSKillNextToStep() - self.battleUI:showCommonSkillTips(skillId) end