Commit 8fc7d1bc518dadebedb93375d64494d30bf1ec33
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 | ... | ... |