From 8781e10326dcb450be4e549f8b48b85fe041c125 Mon Sep 17 00:00:00 2001 From: zhouhaihai Date: Tue, 14 Jan 2020 14:17:58 +0800 Subject: [PATCH] 冒险 bug --- src/actions/GmAction.lua | 2 ++ src/adv/Adv.lua | 3 ++- src/adv/AdvMap.lua | 8 +++++--- src/adv/AdvPlayer.lua | 4 ++-- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/actions/GmAction.lua b/src/actions/GmAction.lua index 7c277ed..b1df78a 100644 --- a/src/actions/GmAction.lua +++ b/src/actions/GmAction.lua @@ -197,6 +197,8 @@ function _M.advc(role, pms) role:updateProperty({field = "advTask", value = {}}) role:updateProperty({field = "advItems", value = ""}) role:updateProperty({field = "advTeam", value = {}}) + role:updateProperty({field = "advAFGet", value = {}}) + role:updateProperty({field = "advAFWear", value = {}}) role.advData = nil return "成功" end diff --git a/src/adv/Adv.lua b/src/adv/Adv.lua index 69096ba..fb53376 100644 --- a/src/adv/Adv.lua +++ b/src/adv/Adv.lua @@ -325,6 +325,7 @@ function Adv:over(success, isAllPass) self.owner:checkTaskEnter("AdvScore", {score = score}) self.owner:updateProperty({field = "advItems", value = ""}) self.owner:updateProperty({field = "advAFGet", value = {}}) + self.owner:updateProperty({field = "advAFWear", value = {}}) self:backEnd(success, score, scoreInfo, reward) end @@ -764,7 +765,7 @@ function Adv:clickBlock(roomId, blockId, params) end end if canOpen and not hadMonster then --开放 - self:getCurMap():openBlock(roomId, blockId, true) + self:getCurMap():openBlock(roomId, blockId, true, true) status = true end else diff --git a/src/adv/AdvMap.lua b/src/adv/AdvMap.lua index c898532..762846d 100644 --- a/src/adv/AdvMap.lua +++ b/src/adv/AdvMap.lua @@ -126,16 +126,18 @@ end -- 打开一个地块 -function Map:openBlock(roomId, blockId, isPlayer) +function Map:openBlock(roomId, blockId, isPlayer, ignoreBack) local room = self.rooms[roomId] if not room then return end local block = room.blocks[blockId] if not block then return end room:openBlock(block) if isPlayer then - self.adv.player:triggerPassive(Passive.OPEN_BLOCK) + self.adv.battle.player:triggerPassive(Passive.OPEN_BLOCK) + end + if not ignoreBack then + self.adv:backBlockChange(roomId, blockId) end - self:backBlockChange(roomId, blockId) end function Map:openBlockBySize(roomId, blockId, size, isPlayer) diff --git a/src/adv/AdvPlayer.lua b/src/adv/AdvPlayer.lua index 7f50f24..081dc12 100644 --- a/src/adv/AdvPlayer.lua +++ b/src/adv/AdvPlayer.lua @@ -140,7 +140,7 @@ function BaseObject:addBuff(buffId, releaser) if not Buff.checkKeep({ owner = self, buffData = buffData, - releaseId = releaser.monsterId + releaseId = releaser and releaser.monsterId or nil }) then return end table.insert(self.buffs, Buff.create(self, releaser, {id = buffId})) end @@ -574,7 +574,7 @@ function Player:addExp(value) end local delta = level - self.level if delta > 0 then - for _, attr in pairs(AdvAttsEnum) do + for attr, _ in pairs(AdvAttsEnum) do if attr == "hp" then self[attr] = self[attr] + self.growth[attr] * delta self._hpMax = self._hpMax + self.growth[attr] * delta -- libgit2 0.21.2