add "hover" animation

This commit is contained in:
tenplus1 2022-04-30 12:26:36 +01:00
parent 7b429df9e9
commit 7bb5e2b382
2 changed files with 14 additions and 2 deletions

14
api.lua
View File

@ -28,7 +28,7 @@ local use_cmi = minetest.global_exists("cmi")
mobs = {
mod = "redo",
version = "20220421",
version = "20220430",
intllib = S,
invis = minetest.global_exists("invisibility") and invisibility or {}
}
@ -2393,7 +2393,17 @@ function mob_class:do_states(dtime)
and self.animation
and self.animation.fly_start
and self.animation.fly_end then
self:set_animation("fly")
local def = minetest.registered_nodes[self.standing_on] or {}
if def.walkable
and self.animation
and self.animation.hover_start
and self.animation.hover_end then
self:set_animation("hover")
else
self:set_animation("fly")
end
else
self:set_animation("walk")
end

View File

@ -237,6 +237,8 @@ functions needed for the mob to work properly which contains the following:
'die_speed'
'die_loop' when set to false stops the animation looping.
'die_rotate' if true mob spins during death animation.
'hover_start" hover animation when flying/swimming and solid node below
'hover_end"
Using '_loop = false' setting will stop any of the above animations from
looping.