diff --git a/src/adv/AdvBlock.lua b/src/adv/AdvBlock.lua index 428db9b..e635299 100644 --- a/src/adv/AdvBlock.lua +++ b/src/adv/AdvBlock.lua @@ -189,7 +189,6 @@ function Block:open() local map = room.map local adv = map.adv self:randomEvent() - adv.owner:checkTaskEnter("AdvOpenBlock") self.isOpen = true return true end diff --git a/src/adv/AdvMap.lua b/src/adv/AdvMap.lua index 807c1fc..1713ccb 100644 --- a/src/adv/AdvMap.lua +++ b/src/adv/AdvMap.lua @@ -125,7 +125,7 @@ function Map:openBlockRand(num, isPlayer, ignoreBack) end --- 打开一个地块 +-- 打开一个地块 翻开地块的入口方法 !!! function Map:openBlock(roomId, blockId, isPlayer, ignoreBack) local room = self.rooms[roomId] if not room then return end @@ -136,7 +136,8 @@ function Map:openBlock(roomId, blockId, isPlayer, ignoreBack) if status then if isPlayer then self.adv.battle.player:triggerPassive(Passive.OPEN_BLOCK) - self.map.adv:scoreChange(AdvScoreType.Block) + self.adv:scoreChange(AdvScoreType.Block) + self.adv.owner:checkTaskEnter("AdvOpenBlock") end if not ignoreBack then diff --git a/src/adv/AdvRoom.lua b/src/adv/AdvRoom.lua index 2916fd2..24ae0c1 100644 --- a/src/adv/AdvRoom.lua +++ b/src/adv/AdvRoom.lua @@ -21,10 +21,6 @@ function Room:loadBlocks(csvData, info) local isFirstOpen = false for blockId, _ in pairs(csvData["blocks"]) do self.blocks[blockId] = Block.new(self, blockId, info.event[blockId], info.open == 1 or info.open[blockId], info.trap[blockId]) - if self.map.adv.isRelay then -- 中继层全部开放 - self.blocks[blockId].isOpen = true - self.blocks[blockId]:randomEvent() - end if not self.isPath and self.blocks[blockId]:isBoss() then self.isBossRoom = true end @@ -40,8 +36,8 @@ function Room:loadBlocks(csvData, info) end end end - -- boss 房间 开启一下所有的地块 - if self.isBossRoom and self.isShow and isFirstOpen then + --中继层全部开放 boss 房间 开启所有的地块 + if self.map.adv.isRelay or (self.isBossRoom and self.isShow and isFirstOpen) then for _, block in pairs(self.blocks) do self:openBlock(block) end -- libgit2 0.21.2