diff --git a/src/adv/AdvBuff.lua b/src/adv/AdvBuff.lua index e43ace2..92bf018 100644 --- a/src/adv/AdvBuff.lua +++ b/src/adv/AdvBuff.lua @@ -43,7 +43,9 @@ local BuffFactory = { self._changeV = baseOwner[attrs[self.buffData.effectValue3]] * self.buffData.effectValue2 / 100 end if self._changeV < 0 then - self._changeV = -self.release:getHurtValue(-self._changeV) + if self.release then + self._changeV = -self.release:getHurtValue(-self._changeV) + end end end _Buff._initDB = function(self, data) @@ -89,7 +91,7 @@ local BuffFactory = { if self._changeV > 0 then self.owner:recover(self._changeV, self.release) -- 防止release不存在,地图点buff elseif self._changeV < 0 then - self.owner:hurt(self.release:getHurtValue(-self._changeV), self.release, {hurtType = 2}) + self.owner:hurt(self.release and self.release:getHurtValue(-self._changeV) or -self._changeV, self.release, {hurtType = 2}) self.owner.hp = math.min(self.owner.hpMax, self.owner.hp) end end -- libgit2 0.21.2