diff --git a/core/core_bind.cpp b/core/core_bind.cpp
index 8c850307831..d61670ecb7a 100644
--- a/core/core_bind.cpp
+++ b/core/core_bind.cpp
@@ -1439,6 +1439,15 @@ Error ClassDB::class_set_property(Object *p_object, const StringName &p_property
return OK;
}
+Variant ClassDB::class_get_property_default_value(const StringName &p_class, const StringName &p_property) const {
+ bool valid;
+ Variant ret = ::ClassDB::class_get_default_property_value(p_class, p_property, &valid);
+ if (valid) {
+ return ret;
+ }
+ return Variant();
+}
+
bool ClassDB::class_has_method(const StringName &p_class, const StringName &p_method, bool p_no_inheritance) const {
return ::ClassDB::has_method(p_class, p_method, p_no_inheritance);
}
@@ -1573,6 +1582,8 @@ void ClassDB::_bind_methods() {
::ClassDB::bind_method(D_METHOD("class_get_property", "object", "property"), &ClassDB::class_get_property);
::ClassDB::bind_method(D_METHOD("class_set_property", "object", "property", "value"), &ClassDB::class_set_property);
+ ::ClassDB::bind_method(D_METHOD("class_get_property_default_value", "class", "property"), &ClassDB::class_get_property_default_value);
+
::ClassDB::bind_method(D_METHOD("class_has_method", "class", "method", "no_inheritance"), &ClassDB::class_has_method, DEFVAL(false));
::ClassDB::bind_method(D_METHOD("class_get_method_argument_count", "class", "method", "no_inheritance"), &ClassDB::class_get_method_argument_count, DEFVAL(false));
diff --git a/core/core_bind.h b/core/core_bind.h
index d46321cf5c2..5711662a18b 100644
--- a/core/core_bind.h
+++ b/core/core_bind.h
@@ -446,6 +446,8 @@ public:
Variant class_get_property(Object *p_object, const StringName &p_property) const;
Error class_set_property(Object *p_object, const StringName &p_property, const Variant &p_value) const;
+ Variant class_get_property_default_value(const StringName &p_class, const StringName &p_property) const;
+
bool class_has_method(const StringName &p_class, const StringName &p_method, bool p_no_inheritance = false) const;
int class_get_method_argument_count(const StringName &p_class, const StringName &p_method, bool p_no_inheritance = false) const;
diff --git a/doc/classes/ClassDB.xml b/doc/classes/ClassDB.xml
index 3f714060919..fa430c0a835 100644
--- a/doc/classes/ClassDB.xml
+++ b/doc/classes/ClassDB.xml
@@ -91,6 +91,14 @@
Returns the value of [param property] of [param object] or its ancestry.
+
+
+
+
+
+ Returns the default value of [param property] of [param class] or its ancestor classes.
+
+