Commit bedca62df0dad3b08e570f3d84f0bd4eeb4250aa
1 parent
1607a7f0
冒险
Showing
4 changed files
with
15 additions
and
7 deletions
Show diff stats
src/GlobalVar.lua
src/adv/Adv.lua
... | ... | @@ -471,7 +471,7 @@ function Adv:over(success) |
471 | 471 | self.advTeam.player = nil --重置玩家的数据 |
472 | 472 | self:clear() |
473 | 473 | |
474 | - self.owner:updateProperty({field = "advItems", ""}) | |
474 | + self.owner:updateProperty({field = "advItems", value = ""}) | |
475 | 475 | |
476 | 476 | self:backEnd(score, reward) |
477 | 477 | end |
... | ... | @@ -1022,6 +1022,10 @@ function Adv:backAtk(enemyId, receiver) |
1022 | 1022 | self:pushBackEvent(AdvBackEventType.Atk, {enemyId = enemyId, receiver = receiver}) |
1023 | 1023 | end |
1024 | 1024 | |
1025 | +function Adv:backDead(enemyId) | |
1026 | + self:pushBackEvent(AdvBackEventType.Dead, {enemyId = enemyId}) | |
1027 | +end | |
1028 | + | |
1025 | 1029 | |
1026 | 1030 | function Adv:popBackEvents() |
1027 | 1031 | local events = self.backEvents | ... | ... |
src/adv/AdvBattle.lua
... | ... | @@ -95,12 +95,14 @@ end |
95 | 95 | function Battle:playerAtk(roomId, blockId) |
96 | 96 | local enemy = self:getEnemy(roomId, blockId) |
97 | 97 | if enemy then |
98 | - self.adv:backAtk(nil, enemy.id) | |
99 | - enemy:hurt(self.player:getHurtValue(), self.player, {hurtType = 1}) | |
100 | - --是否无法反击 | |
101 | - if not enemy:hadBuff(Buff.CANT_BACK_ATK) then | |
102 | - self.adv:backAtk(enemy.id, nil) | |
103 | - self.player:hurt(enemy:getHurtValue(), enemy, {hurtType = 1}) | |
98 | + while not enemy.isDead and not self.player.isDead do | |
99 | + self.adv:backAtk(nil, enemy.id) | |
100 | + enemy:hurt(self.player:getHurtValue(), self.player, {hurtType = 1}) | |
101 | + --是否无法反击 | |
102 | + if not enemy.isDead and not enemy:hadBuff(Buff.CANT_BACK_ATK) then | |
103 | + self.adv:backAtk(enemy.id, nil) | |
104 | + self.player:hurt(enemy:getHurtValue(), enemy, {hurtType = 1}) | |
105 | + end | |
104 | 106 | end |
105 | 107 | end |
106 | 108 | end | ... | ... |
src/adv/AdvPlayer.lua
... | ... | @@ -237,6 +237,7 @@ function BaseObject:hurt(value, releaser, params) |
237 | 237 | end |
238 | 238 | |
239 | 239 | self.isDead = true |
240 | + self.battle.adv:backDead(self.id) | |
240 | 241 | end |
241 | 242 | self:triggerPassive(Passive.HURT_PERCENT_SELF, {value = value / self.hpMax}) |
242 | 243 | for _, team in ipairs(self:getTeam(1, true)) do | ... | ... |