smol refactor effects:addEffect

This commit is contained in:
neckrat 2026-05-01 02:18:12 +03:00
parent 4f7dc9ab14
commit b75dca12cb

View File

@ -32,25 +32,6 @@ function behavior:addEffect(effect, stacks, intensity)
task1(function() end) task1(function() end)
end end
if not birthStatement then return end if not birthStatement then return end
-- проверяем на наличие того же эффекта
if self.effectsProperties[effect] then
-- добавляем в конец очереди эффектов
for i, ef in ipairs(self.effectsPriority) do
if ef == effect then
table.remove(self.effectsProperties, i)
self.effectsProperties[#self.effectsProperties + 1] = ef
end
end
self.effectsProperties[effect] = {
stacks = stacks,
intensity = intensity
}
local task2 = book[effect]:afterBirth(self.owner, intensity)
if task2 then
task2(function() end)
end
return
end
-- проверка на сумму, и её применение -- проверка на сумму, и её применение
for i, ef in ipairs(self.effectsPriority) do for i, ef in ipairs(self.effectsPriority) do
@ -64,8 +45,17 @@ function behavior:addEffect(effect, stacks, intensity)
end end
end end
end end
-- проверяем на наличие такого эффекта
self.effectsPriority[#self.effectsPriority + 1] = effect if self.effectsProperties[effect] then
for i, ef in ipairs(self.effectsPriority) do
if ef == effect then
table.remove(self.effectsProperties, i)
self.effectsProperties[#self.effectsProperties + 1] = ef
end
end
else
self.effectsPriority[#self.effectsPriority + 1] = effect
end
self.effectsProperties[effect] = { self.effectsProperties[effect] = {
stacks = stacks, stacks = stacks,
intensity = intensity intensity = intensity