landsandboat/scripts/effects/evasion_down.lua
claywar 7bba1bdc3a
[type] Add type annotations to Effect scripts
Fix delStatusEffect in atma.lua
2024-08-24 21:26:29 -04:00

26 lines
745 B
Lua

-----------------------------------
-- xi.effect.EVASION_DOWN
-----------------------------------
---@type TEffect
local effectObject = {}
effectObject.onEffectGain = function(target, effect)
local power = math.min(effect:getPower(), target:getStat(xi.mod.EVA))
effect:setPower(power)
target:delMod(xi.mod.EVA, power)
end
-- only Feint uses tick, which restores 10 evasion per tick
effectObject.onEffectTick = function(target, effect)
local power = effect:getPower()
local adj = math.min(power, 10)
effect:setPower(power - adj)
target:addMod(xi.mod.EVA, adj)
end
effectObject.onEffectLose = function(target, effect)
local power = effect:getPower()
target:addMod(xi.mod.EVA, power)
end
return effectObject