From ef5d0b1c06e57aca0d638a46d2824c23f85de6a4 Mon Sep 17 00:00:00 2001 From: Chia-Hsiang Cheng Date: Mon, 7 Aug 2023 18:21:28 +0800 Subject: [PATCH] Avoid emitting signals if the animation is not ready to be processed --- scene/animation/animation_blend_tree.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scene/animation/animation_blend_tree.cpp b/scene/animation/animation_blend_tree.cpp index 715d8a5bc14..8da1ef8e1d9 100644 --- a/scene/animation/animation_blend_tree.cpp +++ b/scene/animation/animation_blend_tree.cpp @@ -150,7 +150,7 @@ double AnimationNodeAnimation::_process(double p_time, bool p_seek, bool p_is_ex // Emit start & finish signal. Internally, the detections are the same for backward. // We should use call_deferred since the track keys are still being prosessed. - if (state->tree) { + if (state->tree && !p_test_only) { // AnimationTree uses seek to 0 "internally" to process the first key of the animation, which is used as the start detection. if (p_seek && !p_is_external_seeking && cur_time == 0) { state->tree->call_deferred(SNAME("emit_signal"), "animation_started", animation);