summaryrefslogtreecommitdiff
path: root/src/resources/animation.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-02-26 21:49:39 +0300
committerAndrei Karas <akaras@inbox.ru>2012-02-26 21:49:39 +0300
commite5272cde78d23a297dad05976e8579b3e5759de4 (patch)
tree598c3636e7409b1db5c5e618b1a31397a8bead20 /src/resources/animation.cpp
parent7d7a01211828a9484ae5fd617e855e349c32f76e (diff)
downloadmv-e5272cde78d23a297dad05976e8579b3e5759de4.tar.gz
mv-e5272cde78d23a297dad05976e8579b3e5759de4.tar.bz2
mv-e5272cde78d23a297dad05976e8579b3e5759de4.tar.xz
mv-e5272cde78d23a297dad05976e8579b3e5759de4.zip
Fix incorrect last dead frame delay for old servers.
Diffstat (limited to 'src/resources/animation.cpp')
-rw-r--r--src/resources/animation.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/resources/animation.cpp b/src/resources/animation.cpp
index 1c1da6ca5..388c1301e 100644
--- a/src/resources/animation.cpp
+++ b/src/resources/animation.cpp
@@ -69,3 +69,17 @@ void Animation::addGoto(std::string name, int rand)
Frame frame = { nullptr, 0, 0, 0, rand, Frame::GOTO, name };
mFrames.push_back(frame);
}
+
+void Animation::setLastFrameDelay(int delay)
+{
+ FramesRevIter it = mFrames.rbegin();
+ FramesRevIter it_end = mFrames.rend();
+ for (; it != it_end; ++ it)
+ {
+ if ((*it).type == Frame::ANIMATION && (*it).image)
+ {
+ (*it).delay = delay;
+ break;
+ }
+ }
+}