Commit 3ddf5aa82907f7348c50c7fd6b188fc1c16c0bfd

Authored by 熊润斐
2 parents 8eaed74e 580f0906

Merge branch 'tr/bugfix-qa' into tr/develop

src/adv/AdvBlock.lua
@@ -215,7 +215,9 @@ function Block:randomEvent() @@ -215,7 +215,9 @@ function Block:randomEvent()
215 randomFunc[AdvEventType.Trap] = function() 215 randomFunc[AdvEventType.Trap] = function()
216 local data = csvdb["event_trapCsv"][self.event.id] 216 local data = csvdb["event_trapCsv"][self.event.id]
217 -- 因为一些神器效果 提前触发被动 217 -- 因为一些神器效果 提前触发被动
218 - adv.battle.player:triggerPassive(Passive.CLICK_TRAP) 218 + if not data.classify:sismember(1, " ") then
  219 + adv.battle.player:triggerPassive(Passive.CLICK_TRAP)
  220 + end
219 221
220 local buffs = data.effect:toArray(true, "=") 222 local buffs = data.effect:toArray(true, "=")
221 223
src/adv/AdvBuff.lua
@@ -704,11 +704,13 @@ function Buff:overlay(releaser, data, layer) @@ -704,11 +704,13 @@ function Buff:overlay(releaser, data, layer)
704 704
705 self.release = releaser or self.release 705 self.release = releaser or self.release
706 -- 叠加层数 706 -- 叠加层数
  707 + local oldLayer = self.layer
707 self.layer = self.layer + layer 708 self.layer = self.layer + layer
708 if maxLayer ~= 0 then 709 if maxLayer ~= 0 then
709 self.layer = math.min(maxLayer, self.layer) 710 self.layer = math.min(maxLayer, self.layer)
710 end 711 end
711 - if self._overlay then 712 +
  713 + if oldLayer ~= self.layer and self._overlay then
712 self:_overlay() 714 self:_overlay()
713 end 715 end
714 716
src/adv/AdvPassive.lua
@@ -565,6 +565,16 @@ end @@ -565,6 +565,16 @@ end
565 565
566 -- 在指定地点召唤event项目 566 -- 在指定地点召唤event项目
567 function Passive:effect12(eventType, triggerPms, eventId, count, stage) 567 function Passive:effect12(eventType, triggerPms, eventId, count, stage)
  568 + if eventType == AdvEventType.Monster then
  569 + for _, buff in ipairs(self.owner.battle.player.buffs) do
  570 + if not buff.isDel and buff:getType() == buff.Buff_NO_PASSIVE_MONSTER then
  571 + local effect = buff:effect()
  572 + if effect == 0 or effect == eventId then
  573 + return
  574 + end
  575 + end
  576 + end
  577 + end
568 local change = self.owner.battle.adv:getCurMap():layEventToStage(eventType, eventId, count, stage) 578 local change = self.owner.battle.adv:getCurMap():layEventToStage(eventType, eventId, count, stage)
569 for _, one in ipairs(change) do 579 for _, one in ipairs(change) do
570 self.owner.battle.adv:backBlockChange(one[1].roomId, one[2].blockId) 580 self.owner.battle.adv:backBlockChange(one[1].roomId, one[2].blockId)