You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-12-02 16:48:55 +00:00
Merge pull request #57121 from KoBeWi/noddeganger
Add `DUPLICATE_INTERNAL_STATE` flag
This commit is contained in:
@@ -3060,7 +3060,7 @@ void Node::_duplicate_properties(const Node *p_root, const Node *p_original, Nod
|
||||
p_original->get_property_list(&props);
|
||||
const StringName &script_property_name = CoreStringName(script);
|
||||
for (const PropertyInfo &E : props) {
|
||||
if (!(E.usage & PROPERTY_USAGE_STORAGE)) {
|
||||
if (!(p_flags & DUPLICATE_INTERNAL_STATE) && !(E.usage & PROPERTY_USAGE_STORAGE)) {
|
||||
continue;
|
||||
}
|
||||
const StringName name = E.name;
|
||||
@@ -3840,7 +3840,7 @@ void Node::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_tree"), &Node::get_tree);
|
||||
ClassDB::bind_method(D_METHOD("create_tween"), &Node::create_tween);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("duplicate", "flags"), &Node::duplicate, DEFVAL(DUPLICATE_USE_INSTANTIATION | DUPLICATE_SIGNALS | DUPLICATE_GROUPS | DUPLICATE_SCRIPTS));
|
||||
ClassDB::bind_method(D_METHOD("duplicate", "flags"), &Node::duplicate, DEFVAL(DUPLICATE_DEFAULT));
|
||||
ClassDB::bind_method(D_METHOD("replace_by", "node", "keep_groups"), &Node::replace_by, DEFVAL(false));
|
||||
|
||||
ClassDB::bind_method(D_METHOD("set_scene_instance_load_placeholder", "load_placeholder"), &Node::set_scene_instance_load_placeholder);
|
||||
@@ -3990,6 +3990,8 @@ void Node::_bind_methods() {
|
||||
BIND_ENUM_CONSTANT(DUPLICATE_GROUPS);
|
||||
BIND_ENUM_CONSTANT(DUPLICATE_SCRIPTS);
|
||||
BIND_ENUM_CONSTANT(DUPLICATE_USE_INSTANTIATION);
|
||||
BIND_ENUM_CONSTANT(DUPLICATE_INTERNAL_STATE);
|
||||
BIND_ENUM_CONSTANT(DUPLICATE_DEFAULT);
|
||||
|
||||
BIND_ENUM_CONSTANT(INTERNAL_MODE_DISABLED);
|
||||
BIND_ENUM_CONSTANT(INTERNAL_MODE_FRONT);
|
||||
|
||||
Reference in New Issue
Block a user