feature/effects #37

Manually merged
neckrat merged 64 commits from feature/effects into main 2026-05-06 10:19:49 +03:00
Showing only changes of commit b75dca12cb - Show all commits

View File

@ -32,25 +32,6 @@ function behavior:addEffect(effect, stacks, intensity)
task1(function() end)
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

Всё таки позволяет через наложение сильного короткого эффекта поверх слабого длинного получить и сильный, и длинный эффект одновременно?

Всё таки позволяет через наложение сильного короткого эффекта поверх слабого длинного получить и сильный, и длинный эффект одновременно?

да, мы вроде так и договорились по итогу

да, мы вроде так и договорились по итогу

Так вроде смысл реферата по DOS сводился к тому, что так делать не надо? Мы сделали разные выводы?

Так вроде смысл реферата по DOS сводился к тому, что так делать не надо? Мы сделали разные выводы?

Так вроде смысл реферата по DOS сводился к тому, что так делать не надо? Мы сделали разные выводы?
получается, ты сделал

В этот момент новый, невероятно слабый эффект полностью перезапишет сильный эффект высокоуровневого мага.

Так вроде смысл реферата по DOS сводился к тому, что так делать не надо? Мы сделали разные выводы? получается, ты сделал > В этот момент новый, невероятно слабый эффект полностью перезапишет сильный эффект высокоуровневого мага.

видимо ¯(ツ)/¯, я предположил так сделать из-за всех этих скрытых механик, где ты переопределяешь бесконечный эффект конечным и тд

видимо ¯_(ツ)_/¯, я предположил так сделать из-за всех этих скрытых механик, где ты переопределяешь бесконечный эффект конечным и тд

а поддержка бесконечных эффектов же не присутствует в каком-то дополнительном виде, кроме как не указывать эффекту момент потери стака?

а поддержка бесконечных эффектов же не присутствует в каком-то дополнительном виде, кроме как не указывать эффекту момент потери стака?

да, можно добавить просто какое-то магическое значение по типу -1 ради ui, ну или сделать флаг для этого

да, можно добавить просто какое-то магическое значение по типу -1 ради ui, ну или сделать флаг для этого
@ -64,8 +45,17 @@ function behavior:addEffect(effect, stacks, intensity)
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] = {
stacks = stacks,
intensity = intensity