From c7a4a68d283d486b65727c970821af7c248795ff Mon Sep 17 00:00:00 2001 From: MirceaKitsune Date: Sun, 25 Nov 2012 12:52:53 +0200 Subject: [PATCH] Implement death animation, but it currently loops constantly after the player dies (the player gets up and falls to the ground forever) --- mods/default/player.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mods/default/player.lua b/mods/default/player.lua index 4868c1f9..25c2532a 100644 --- a/mods/default/player.lua +++ b/mods/default/player.lua @@ -72,7 +72,7 @@ function on_step(dtime) end local animation_speed_modified = animation_speed - if controls.sneak and (walking or controls.LMB) then + if controls.sneak and pl:get_hp() ~= 0 and (walking or controls.LMB) then animation_speed_modified = animation_speed_modified / 2 -- Refresh player animation below if not player_sneak[name] then @@ -87,7 +87,13 @@ function on_step(dtime) end end - if walking and controls.LMB then + if pl:get_hp() == 0 then + if player_anim[name] ~= ANIM_DEATH then + -- TODO: The death animation currently loops, we must make it play only once then stay at the last frame somehow + pl:set_animation({x=anim.death_START, y=anim.death_END}, animation_speed_modified, animation_blend) + player_anim[name] = ANIM_DEATH + end + elseif walking and controls.LMB then if player_anim[name] ~= ANIM_WALK_MINE then pl:set_animation({x=anim.walk_mine_START, y=anim.walk_mine_END}, animation_speed_modified, animation_blend) player_anim[name] = ANIM_WALK_MINE -- 2.25.1