diff --git a/editor/inspector/editor_resource_picker.cpp b/editor/inspector/editor_resource_picker.cpp index 078a07a128..0e0ad0f99b 100644 --- a/editor/inspector/editor_resource_picker.cpp +++ b/editor/inspector/editor_resource_picker.cpp @@ -1408,17 +1408,17 @@ bool EditorResourcePicker::_is_uniqueness_enabled(bool p_check_recursive) { } Ref parent_resource = _has_parent_resource(); EditorNode *en = EditorNode::get_singleton(); - bool internal_to_scene = edited_resource->is_built_in(); + bool internal_to_scene = en->is_resource_internal_to_scene(edited_resource); List node_list = en->get_editor_selection()->get_full_selected_node_list(); // Todo: Implement a more elegant solution for multiple selected Nodes. This should suffice for the time being. if (node_list.size() > 1 && !p_check_recursive) { - return node_list.size() != EditorNode::get_singleton()->get_resource_count(edited_resource) || !internal_to_scene; + return node_list.size() != en->get_resource_count(edited_resource) || !internal_to_scene; } if (!internal_to_scene) { - if (parent_resource.is_valid() && parent_resource->is_built_in() && (!EditorNode::get_singleton()->is_resource_internal_to_scene(parent_resource) || en->get_resource_count(parent_resource) > 1)) { - return false; + if (parent_resource.is_valid() && (!en->is_resource_internal_to_scene(parent_resource) || en->get_resource_count(parent_resource) > 1)) { + return !parent_resource->is_built_in(); } else if (!p_check_recursive) { return true; }