diff --git a/spine-c/spine-c/include/spine/AnimationState.h b/spine-c/spine-c/include/spine/AnimationState.h index 2cdcc6ebf..6df64edb1 100644 --- a/spine-c/spine-c/include/spine/AnimationState.h +++ b/spine-c/spine-c/include/spine/AnimationState.h @@ -120,7 +120,7 @@ spAnimationState* spAnimationState_create (spAnimationStateData* data); void spAnimationState_dispose (spAnimationState* self); void spAnimationState_update (spAnimationState* self, float delta); -void spAnimationState_apply (spAnimationState* self, struct spSkeleton* skeleton); +int /**bool**/ spAnimationState_apply (spAnimationState* self, struct spSkeleton* skeleton); void spAnimationState_clearTracks (spAnimationState* self); void spAnimationState_clearTrack (spAnimationState* self, int trackIndex); diff --git a/spine-c/spine-c/src/spine/AnimationState.c b/spine-c/spine-c/src/spine/AnimationState.c index 503337637..0e1f8a481 100644 --- a/spine-c/spine-c/src/spine/AnimationState.c +++ b/spine-c/spine-c/src/spine/AnimationState.c @@ -327,7 +327,7 @@ int /*boolean*/ _spAnimationState_updateMixingFrom (spAnimationState* self, spTr return 0; } -void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) { +int spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) { _spAnimationState* internal = SUB_CAST(_spAnimationState, self); spTrackEntry* current; int i, ii, n; @@ -337,6 +337,7 @@ void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) { int /*boolean*/ firstFrame; float* timelinesRotation; spTimeline* timeline; + int applied = 0; if (internal->animationsChanged) _spAnimationState_animationsChanged(self); @@ -344,6 +345,7 @@ void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) { float mix; current = self->tracks[i]; if (!current || current->delay > 0) continue; + applied = -1; /* Apply mixing from entries first. */ mix = current->alpha; @@ -381,6 +383,7 @@ void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) { } _spEventQueue_drain(internal->queue); + return applied; } float _spAnimationState_applyMixingFrom (spAnimationState* self, spTrackEntry* to, spSkeleton* skeleton) {