Commit 04b84e1e7f490d76a701cd187a5e34ccfe1f3b87

Authored by zhouhaihai
1 parent 6dc64b07

被动

Showing 2 changed files with 11 additions and 2 deletions   Show diff stats
src/adv/AdvPassive.lua
... ... @@ -120,7 +120,7 @@ Passive.GET_BUFF = 28 --获得指定buff
120 120 Passive.OPEN_BLOCK = 29 --翻开格子
121 121 Passive.OPEN_MONSTER = 30 --翻开怪物
122 122 Passive.PLAYER_BUFF = 31 --玩家获得buff
123   -
  123 +Passive.PLAYER_BUFF_CLASSIFY = 35 -- 获得指定标签的buff
124 124  
125 125 -- 不同的开启条件
126 126 local PassiveCondFactory = {}
... ... @@ -183,6 +183,14 @@ PassiveCondFactory[Passive.GET_BUFF] = function(_Passive)
183 183 end
184 184 PassiveCondFactory[Passive.PLAYER_BUFF] = PassiveCondFactory[Passive.GET_BUFF]
185 185  
  186 +PassiveCondFactory[Passive.PLAYER_BUFF_CLASSIFY] = function(_Passive)
  187 + _Passive._trigger = function(self, params)
  188 + if params.classify:sismember(self.passiveData.value) then
  189 + return true
  190 + end
  191 + end
  192 +end
  193 +
186 194  
187 195 PassiveCondFactory[Passive.BORN_ONCE] = function(_Passive)
188 196 _Passive._afterRound = function(self)
... ...
src/adv/AdvPlayer.lua
... ... @@ -163,7 +163,8 @@ function BaseObject:addBuff(buffId, releaser)
163 163 table.insert(self.buffs, buff)
164 164 buff:createAfter()
165 165 end
166   - self:triggerPassive(Passive.GET_BUFF, {buffId = buffId})
  166 + self:triggerPassive(Passive.GET_BUFF, {trigger = releaser, buffId = buffId})
  167 + self:triggerPassive(Passive.PLAYER_BUFF_CLASSIFY, {trigger = releaser, classify = buffData.classify})
167 168 return true
168 169 end
169 170  
... ...