Commit 8fc7d1bc518dadebedb93375d64494d30bf1ec33

Authored by zhouhaihai
1 parent 7228c195

buff 回合问题

Showing 2 changed files with 22 additions and 5 deletions   Show diff stats
src/adv/AdvBattle.lua
... ... @@ -288,6 +288,15 @@ function Battle:afterRound()
288 288 return e1.id < e2.id
289 289 end)
290 290  
  291 +
  292 + self.player:afterRound("buffBefore")
  293 + for _, enemy in ipairs(self.enemys[mapIdx]) do
  294 + enemy:afterRound("buffBefore")
  295 + end
  296 + for _, build in ipairs(self.builds[mapIdx]) do
  297 + build:afterRound("buffBefore")
  298 + end
  299 +
291 300 self.player:afterRound("passive")
292 301 for _, enemy in ipairs(self.enemys[mapIdx]) do
293 302 enemy:afterRound("passive")
... ... @@ -296,12 +305,12 @@ function Battle:afterRound()
296 305 build:afterRound("passive")
297 306 end
298 307  
299   - self.player:afterRound("buff")
  308 + self.player:afterRound("buffAfter")
300 309 for _, enemy in ipairs(self.enemys[mapIdx]) do
301   - enemy:afterRound("buff")
  310 + enemy:afterRound("buffAfter")
302 311 end
303 312 for _, build in ipairs(self.builds[mapIdx]) do
304   - build:afterRound("buff")
  313 + build:afterRound("buffAfter")
305 314 end
306 315  
307 316  
... ...
src/adv/AdvPlayer.lua
... ... @@ -55,9 +55,17 @@ function BaseObject:afterRound(roundType)
55 55 for _, passive in ipairs(self.passives) do
56 56 passive:afterRound(self)
57 57 end
58   - elseif roundType == "buff" then
  58 + elseif roundType == "buffBefore" then
59 59 for _, buff in ipairs(self.buffs) do
60   - buff:afterRound()
  60 + if buff.buffData.intoEffect == 1 then
  61 + buff:afterRound()
  62 + end
  63 + end
  64 + elseif roundType == "buffAfter" then
  65 + for _, buff in ipairs(self.buffs) do
  66 + if buff.buffData.intoEffect == 0 then
  67 + buff:afterRound()
  68 + end
61 69 end
62 70 end
63 71 end
... ...