diff options
author | George Marques <george@gmarqu.es> | 2019-01-17 16:03:15 -0200 |
---|---|---|
committer | George Marques <george@gmarqu.es> | 2019-01-23 17:42:06 -0200 |
commit | ba13aae9af5c0996ff49bb2b6bbaec2f17039b4a (patch) | |
tree | 52da23ff8caa460cf6e6649ac4660deddb22dd15 /modules/gdscript/gdscript_parser.cpp | |
parent | 2c9536b655d006c697a3cf830ad3352f1a1ed9f2 (diff) | |
download | redot-engine-ba13aae9af5c0996ff49bb2b6bbaec2f17039b4a.tar.gz |
GDScript: allow local classes to be used as types
Diffstat (limited to 'modules/gdscript/gdscript_parser.cpp')
-rw-r--r-- | modules/gdscript/gdscript_parser.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp index a012ccad30..ebc83b45a9 100644 --- a/modules/gdscript/gdscript_parser.cpp +++ b/modules/gdscript/gdscript_parser.cpp @@ -5438,6 +5438,12 @@ GDScriptParser::DataType GDScriptParser::_resolve_type(const DataType &p_source, // Inner classes ClassNode *outer_class = p; while (outer_class) { + if (outer_class->name == id) { + found = true; + result.kind = DataType::CLASS; + result.class_type = outer_class; + break; + } for (int i = 0; i < outer_class->subclasses.size(); i++) { if (outer_class->subclasses[i] == p) { continue; |