This commit is contained in:
puxuan 2025-11-10 10:48:32 +08:00
parent 1764b61251
commit cd75dbf9b7

View File

@ -1986,18 +1986,18 @@ function BattleBaseController:popBoardCacheSkill(callback)
end end
function BattleBaseController:generateSkill(callback) function BattleBaseController:generateSkill(callback)
self.generateSkillMap = table.clearOrCreate(self.generateSkillMap) local generateSkillMap = {}
self.generateExcludeMap = table.clearOrCreate(self.generateExcludeMap) local generateExcludeMap = {}
for _, skillEntity in pairs(self:getSkillEntities()) do for _, skillEntity in pairs(self:getSkillEntities()) do
if skillEntity:getEnergyEnough() then 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 if list[1] then
self.generateSkillMap[skillEntity:getPosition()] = generateSkillMap[skillEntity:getPosition()] =
{ {
skillId = skillEntity:getSkillId(), skillId = skillEntity:getSkillId(),
posId = list[1] posId = list[1]
} }
self.generateExcludeMap[list[1]] = true generateExcludeMap[list[1]] = true
end end
end end
end end
@ -2009,8 +2009,15 @@ function BattleBaseController:generateSkill(callback)
return return
end end
self.battleUI:generateSkillAni(self.generateSkillMap, function() -- 有技能正在生成流程走到了生成技能会导致正在播放动画的技能map被清空回调设置技能失败 generateSkillMap从全局改成局部也能防止
for elementType, info in pairs(self.generateSkillMap) do -- 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) self:setGridSkillId(info.posId, info.skillId)
end end
@ -2579,7 +2586,6 @@ function BattleBaseController:onSelectSkill(skillId, value, pos, side)
end end
self:selectSKillNextToStep() self:selectSKillNextToStep()
self.battleUI:showCommonSkillTips(skillId) self.battleUI:showCommonSkillTips(skillId)
end end