Не знаю как оно в луа но в джс работает примерно так:
Работает от 10 до 20, 0.01 это "процент" скорости, чем меньше тем плавнее, но обычно юзают global_vars.frametime
lerp:
function lerp(start, ends, percent)
return start+(ends-start)*percent
end
local ten = 10
function name()
ten = lerp(ten, 20, 0.01)
end