mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-14 19:11:36 +08:00
[c] Fix for #1064, delay was calculated incorrectly for non-loop previous track entries.
This commit is contained in:
parent
b5e5d4aabb
commit
095424ee98
@ -720,9 +720,14 @@ spTrackEntry* spAnimationState_addAnimation (spAnimationState* self, int trackIn
|
||||
last->next = entry;
|
||||
if (delay <= 0) {
|
||||
float duration = last->animationEnd - last->animationStart;
|
||||
if (duration != 0)
|
||||
delay += duration * (1 + (int)(last->trackTime / duration)) - spAnimationStateData_getMix(self->data, last->animation, animation);
|
||||
else
|
||||
if (duration != 0) {
|
||||
if (last->loop) {
|
||||
delay += duration * (1 + (int) (last->trackTime / duration));
|
||||
} else {
|
||||
delay += duration;
|
||||
}
|
||||
delay -= spAnimationStateData_getMix(self->data, last->animation, animation);
|
||||
} else
|
||||
delay = 0;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user