diff options
author | Yohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer> | 2011-06-22 18:18:39 +0200 |
---|---|---|
committer | Yohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer> | 2011-06-23 04:17:28 +0200 |
commit | a3e5eadaa503e16a4e02af40f1d36a2bb0b5c243 (patch) | |
tree | 49d94fee1286d5c8c5dc01fdf22e7b3dda4338a9 /src/being.cpp | |
parent | ba5b70974c5dfa0be3105e72a0a012455b28e7a9 (diff) | |
download | mana-a3e5eadaa503e16a4e02af40f1d36a2bb0b5c243.tar.gz mana-a3e5eadaa503e16a4e02af40f1d36a2bb0b5c243.tar.bz2 mana-a3e5eadaa503e16a4e02af40f1d36a2bb0b5c243.tar.xz mana-a3e5eadaa503e16a4e02af40f1d36a2bb0b5c243.zip |
Made the being death sequence better handled.
Now the death animation is set to the minimum of 1.5 seconds
just as in the older versions, but permit longer sequences
as well.
I didn't put a maximum hard cap on it as it may be a burden
for the maintainers whatever the hard cap would be,
and as it isn't vital to set one anyway.
Resolves: Mana-Mantis #364.
Reviewed-by: bjorn, Jaxad0127.
Diffstat (limited to 'src/being.cpp')
-rw-r--r-- | src/being.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/being.cpp b/src/being.cpp index 42043313..4f546f6d 100644 --- a/src/being.cpp +++ b/src/being.cpp @@ -893,10 +893,12 @@ void Being::logic() ActorSprite::logic(); - // Remove it after 3 secs. TODO: Just play the dead animation before removing + // Remove it after 1.5 secs if the dead animation isn't long enough, + // or simply play it until it's finished. if (!isAlive() && Net::getGameHandler()->removeDeadBeings() && - get_elapsed_time(mActionTime) > 3000) + get_elapsed_time(mActionTime) > std::max(getDuration(), 1500)) { + if (getType() != PLAYER) actorSpriteManager->destroy(this); } |