diff --git a/modules/gdscript/gdscript_editor.cpp b/modules/gdscript/gdscript_editor.cpp index f443e881ac0..7a54af84d86 100644 --- a/modules/gdscript/gdscript_editor.cpp +++ b/modules/gdscript/gdscript_editor.cpp @@ -3567,7 +3567,11 @@ static void _find_call_arguments(GDScriptParser::CompletionContext &p_context, c continue; } - if (options.has(member.function->identifier->name) || completion_context.current_class->has_function(member.function->identifier->name)) { + if (options.has(member.function->identifier->name)) { + continue; + } + + if (completion_context.current_class->has_function(member.get_name()) && completion_context.current_class->get_member(member.get_name()).function != function_node) { continue; } @@ -3611,7 +3615,10 @@ static void _find_call_arguments(GDScriptParser::CompletionContext &p_context, c } for (const MethodInfo &mi : virtual_methods) { - if (options.has(mi.name) || completion_context.current_class->has_function(mi.name)) { + if (options.has(mi.name)) { + continue; + } + if (completion_context.current_class->has_function(mi.name) && completion_context.current_class->get_member(mi.name).function != function_node) { continue; } String method_hint = mi.name; diff --git a/modules/gdscript/tests/scripts/completion/common/override_function_full_name.cfg b/modules/gdscript/tests/scripts/completion/common/override_function_full_name.cfg new file mode 100644 index 00000000000..ecfb9cc9a21 --- /dev/null +++ b/modules/gdscript/tests/scripts/completion/common/override_function_full_name.cfg @@ -0,0 +1,5 @@ +scene="res://completion/get_node/get_node.tscn" +[output] +include=[ + {"display": "_get(property: StringName) -> Variant:"}, +] diff --git a/modules/gdscript/tests/scripts/completion/common/override_function_full_name.gd b/modules/gdscript/tests/scripts/completion/common/override_function_full_name.gd new file mode 100644 index 00000000000..e0b3b2852d9 --- /dev/null +++ b/modules/gdscript/tests/scripts/completion/common/override_function_full_name.gd @@ -0,0 +1,3 @@ +extends Object + +func _getāž”