From a74138a0dc5862d2c26eb78a141ba3c3f9d01c6d Mon Sep 17 00:00:00 2001 From: Juan Linietsky Date: Sat, 23 Jan 2016 21:42:15 -0300 Subject: -Some changes to how scenes and scripts are overriden in scene instance and inheritance -Fixes #3127 and also properly fixes #2958 --- core/script_language.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'core/script_language.cpp') diff --git a/core/script_language.cpp b/core/script_language.cpp index 2ce3844ba..0eac39e7d 100644 --- a/core/script_language.cpp +++ b/core/script_language.cpp @@ -92,6 +92,22 @@ void ScriptServer::init_languages() { } } +void ScriptInstance::get_property_state(List > &state) { + + List pinfo; + get_property_list(&pinfo); + for (List::Element *E=pinfo.front();E;E=E->next()) { + + if (E->get().usage&PROPERTY_USAGE_STORAGE) { + Pair p; + p.first=E->get().name; + if (get(p.first,p.second)) + state.push_back(p); + } + } +} + + Variant ScriptInstance::call(const StringName& p_method,VARIANT_ARG_DECLARE) { VARIANT_ARGPTRS; -- cgit v1.2.3-70-g09d2