aboutsummaryrefslogtreecommitdiff
path: root/saga
diff options
context:
space:
mode:
Diffstat (limited to 'saga')
-rw-r--r--saga/animation.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/saga/animation.cpp b/saga/animation.cpp
index 998351e5a3..5022c7fa96 100644
--- a/saga/animation.cpp
+++ b/saga/animation.cpp
@@ -178,6 +178,7 @@ int Anim::play(uint16 anim_id, int vector_time, bool playing) {
size_t nextf_len;
uint16 frame;
+ int frame_time;
int result;
if (anim_id >= _anim_count) {
@@ -284,13 +285,16 @@ int Anim::play(uint16 anim_id, int vector_time, bool playing) {
link_anim->state = ANIM_PLAYING;
}
anim_id = link_anim_id;
+ frame_time = 0;
+ } else {
+ frame_time = anim->frame_time;
}
event.type = ONESHOT_EVENT;
event.code = ANIM_EVENT;
event.op = EVENT_FRAME;
event.param = anim_id;
- event.time = anim->frame_time + vector_time;
+ event.time = frame_time + vector_time;
_vm->_events->queue(&event);