diff --git a/scene/animation/tween.cpp b/scene/animation/tween.cpp index 19ed65c2d70..cb6d5e1624c 100644 --- a/scene/animation/tween.cpp +++ b/scene/animation/tween.cpp @@ -795,8 +795,7 @@ void Tween::_tween_process(float p_delta) { Variant final_val = _get_final_val(data); _apply_tween_value(data, final_val); - // Mark the tween as completed and emit the signal - data.elapsed = 0; + // Emit the signal emit_signal("tween_completed", object, NodePath(Vector(), data.key, false)); // If we are not repeating the tween, remove it