summaryrefslogtreecommitdiffstats
path: root/core/object/script_language.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-06-22 16:22:27 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-06-22 16:22:27 +0200
commitded2a4ae54a86a9509abd8c16216145bea0156f4 (patch)
tree741b456a6b0e7b03a8047ea714d9808f602fbdf7 /core/object/script_language.cpp
parente526f12c6f42e753d7dba1f3f5c2f9756e2eb5be (diff)
parent175e5bcf4ec0047b7f47399feff708b38416797c (diff)
downloadredot-engine-ded2a4ae54a86a9509abd8c16216145bea0156f4.tar.gz
Merge pull request #93452 from raulsntos/core/placeholder-has-method
Lookup method also in base scripts of a PlaceHolderScriptInstance
Diffstat (limited to 'core/object/script_language.cpp')
-rw-r--r--core/object/script_language.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/core/object/script_language.cpp b/core/object/script_language.cpp
index eb7d560a5d..0b528e908a 100644
--- a/core/object/script_language.cpp
+++ b/core/object/script_language.cpp
@@ -697,7 +697,13 @@ bool PlaceHolderScriptInstance::has_method(const StringName &p_method) const {
}
if (script.is_valid()) {
- return script->has_method(p_method);
+ Ref<Script> scr = script;
+ while (scr.is_valid()) {
+ if (scr->has_method(p_method)) {
+ return true;
+ }
+ scr = scr->get_base_script();
+ }
}
return false;
}