summaryrefslogtreecommitdiffstats
path: root/scene/animation/tween.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scene/animation/tween.cpp')
-rw-r--r--scene/animation/tween.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/scene/animation/tween.cpp b/scene/animation/tween.cpp
index 1b8c410101..1cc29fd1f2 100644
--- a/scene/animation/tween.cpp
+++ b/scene/animation/tween.cpp
@@ -104,7 +104,15 @@ Ref<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePat
CHECK_VALID();
Vector<StringName> property_subnames = p_property.get_as_property_path().get_subnames();
- if (!_validate_type_match(p_target->get_indexed(property_subnames), p_to)) {
+#ifdef DEBUG_ENABLED
+ bool prop_valid;
+ const Variant &prop_value = p_target->get_indexed(property_subnames, &prop_valid);
+ ERR_FAIL_COND_V_MSG(!prop_valid, nullptr, vformat("The tweened property \"%s\" does not exist in object \"%s\".", p_property, p_target));
+#else
+ const Variant &prop_value = p_target->get_indexed(property_subnames);
+#endif
+
+ if (!_validate_type_match(prop_value, p_to)) {
return nullptr;
}