From 79a919e9cfc899b8c39fab887ad874864f97fde7 Mon Sep 17 00:00:00 2001 From: Alexander Sedov <alex0player@gmail.com> Date: Mon, 15 Dec 2014 07:12:05 +0300 Subject: [PATCH] removeEffectsFilter now is not limited by effects' number. --- game/modules/tome/class/Actor.lua | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/game/modules/tome/class/Actor.lua b/game/modules/tome/class/Actor.lua index b977ab67ab..32bdd0c267 100644 --- a/game/modules/tome/class/Actor.lua +++ b/game/modules/tome/class/Actor.lua @@ -5515,7 +5515,6 @@ end --- Remove all effects based on a filter function _M:removeEffectsFilter(t, nb, silent, force) - nb = nb or 100000 local effs = {} local removed = 0 @@ -5528,11 +5527,18 @@ function _M:removeEffectsFilter(t, nb, silent, force) end end - while #effs > 0 and nb > 0 do - local eff = rng.tableRemove(effs) - self:removeEffect(eff, silent, force) - nb = nb - 1 - removed = removed + 1 + if nb then + while #effs > 0 and nb > 0 do + local eff = rng.tableRemove(effs) + self:removeEffect(eff, silent, force) + nb = nb - 1 + removed = removed + 1 + end + else + removed = #effs + for i = 1,#effs do + self:removeEffect(effs[i], silent, force) + end end return removed end -- GitLab