### Godot version

v4.2.dev3.mono.official [013e8e3af]

### System information

Godot v4.2.dev3.mono - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3050 Ti Laptop GPU (NVIDIA; 31.0.15.3598) - AMD Ryzen 7 5800H with Radeon Graphics (16 Threads)

### Issue description

When creating and attaching a built-in script to any type of node, trying to drag nodes from the scene-tree results in an error that appears at the bottom-right of the editor, but not in the console window. The error states:

`Can't drop nodes because script 'xxxxxxxx::xxxxxxx' does not inherit Node.`
 Even though the script clearly extends Node or any other type.

### Steps to reproduce

1. Create and add any node type to the scene tree.
2. Attach a new script, choose Built-in from the dialog.
3. Save the scene first, as at the time of writing, Godot suffers from a bug that causes it to crash if the scene was not saved first.
4. Try dragging or even ctrl-dragging a node to the script.
5. Observe the error appear at the bottom-right in a yellow-accent pop-up.
6. Nod and confirm that the bug exists.


### Minimal reproduction project

[can't drag nodes into built-in scripts.zip](https://github.com/godotengine/godot/files/12511196/can.t.drag.nodes.into.built-in.scripts.zip)

Loose files in the archive. Extract into their own folder.
const ScriptLanguage::ScriptTemplate &sinfo = _get_current_template();
	
	if (is_using_templates && !parent_name->get_text().begins_with("\"res:")) {
		if (sinfo.origin == ScriptLanguage::TemplateLocation::TEMPLATE_PROJECT) {
			
			Dictionary dic_templates_project = EditorSettings::get_singleton()->get_project_metadata("script_setup", "templates_dictionary", Dictionary());
			dic_templates_project[parent_name->get_text()] = sinfo.get_hash();
			EditorSettings::get_singleton()->set_project_metadata("script_setup", "templates_dictionary", dic_templates_project);
		} else {
			
			Dictionary dic_templates;
			if (EditorSettings::get_singleton()->has_meta("script_setup_templates_dictionary")) {
				dic_templates = (Dictionary)EditorSettings::get_singleton()->get_meta("script_setup_templates_dictionary");
			}
			dic_templates[parent_name->get_text()] = sinfo.get_hash();
			EditorSettings::get_singleton()->set_meta("script_setup_templates_dictionary", dic_templates);
			
			Dictionary dic_templates_project = EditorSettings::get_singleton()->get_project_metadata("script_setup", "templates_dictionary", Dictionary());
			if (dic_templates_project.has(parent_name->get_text())) {
				dic_templates_project.erase(parent_name->get_text());
				EditorSettings::get_singleton()->set_project_metadata("script_setup", "templates_dictionary", dic_templates_project);
			}
		}
	}
	
	String template_info = U"•  ";
	template_info += TTR("Template:");
	template_info += " " + sinfo.name;