improvements to particles and animation can now have variable speed

This commit is contained in:
lustlion
2022-03-09 06:04:36 +01:00
parent e8242f6564
commit d3796a0204
6 changed files with 38 additions and 23 deletions

View File

@@ -1,6 +1,6 @@
Animation = {}
function Animation:new(anim_data)
function Animation:new(anim_data,speed)
local o = {}
o.path = anim_data.path
@@ -8,6 +8,7 @@ function Animation:new(anim_data)
o.imgs = anim_data.imgs
o.subframe = 0
o.frame = 1
o.speed = speed or 1
setmetatable(o, self)
self.__index = self
@@ -46,11 +47,11 @@ end
function Animation:animate()
if self.frames[self.frame] ~= 0 then
-- try to animate
self.subframe = self.subframe + current_dt
self.subframe = self.subframe + 1
if self.subframe > self.frames[self.frame] then
self.subframe = self.subframe - self.frames[self.frame]
self.frame = self.frame + 1
if self.subframe > self.frames[self.frame]*game.framerate then
self.subframe = self.subframe - self.frames[self.frame]*game.framerate
self.frame = self.frame + self.speed
end
-- cycle