summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChia-Hsiang Cheng <gary.chiahsiang.cheng@gmail.com>2023-08-07 18:21:28 +0800
committerChia-Hsiang Cheng <gary.chiahsiang.cheng@gmail.com>2023-08-07 18:21:28 +0800
commitef5d0b1c06e57aca0d638a46d2824c23f85de6a4 (patch)
tree70816fb84ae8cf806d89cf9753bc109a8d82e7af
parent16a93563bfd3b02ca0a8f6df2026f3a3217f5571 (diff)
downloadredot-engine-ef5d0b1c06e57aca0d638a46d2824c23f85de6a4.tar.gz
Avoid emitting signals if the animation is not ready to be processed
-rw-r--r--scene/animation/animation_blend_tree.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/scene/animation/animation_blend_tree.cpp b/scene/animation/animation_blend_tree.cpp
index 715d8a5bc1..8da1ef8e1d 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);