diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-05-31 12:36:37 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-31 12:36:37 +0200 |
commit | 68bf4eb100a6b49133157b0ecf8c55119b575be8 (patch) | |
tree | f3e013edc038bbb6433b676cd0da3d21ee262459 /modules/gdscript/gdscript_compiler.cpp | |
parent | cf9aad63badbb3cc002071335fdddc9153491d3b (diff) | |
parent | eba3e0a9fce1f10e8ad7311e84e9f3d38dae008e (diff) | |
download | redot-engine-68bf4eb100a6b49133157b0ecf8c55119b575be8.tar.gz |
Merge pull request #61440 from vnen/gdscript-scene-unique-nodes
GDScript: Support `%` in shorthand for `get_node`
Diffstat (limited to 'modules/gdscript/gdscript_compiler.cpp')
-rw-r--r-- | modules/gdscript/gdscript_compiler.cpp | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/modules/gdscript/gdscript_compiler.cpp b/modules/gdscript/gdscript_compiler.cpp index 478fafc930..910f94a936 100644 --- a/modules/gdscript/gdscript_compiler.cpp +++ b/modules/gdscript/gdscript_compiler.cpp @@ -667,20 +667,8 @@ GDScriptCodeGenerator::Address GDScriptCompiler::_parse_expression(CodeGen &code case GDScriptParser::Node::GET_NODE: { const GDScriptParser::GetNodeNode *get_node = static_cast<const GDScriptParser::GetNodeNode *>(p_expression); - String node_name; - if (get_node->string != nullptr) { - node_name += String(get_node->string->value); - } else { - for (int i = 0; i < get_node->chain.size(); i++) { - if (i > 0) { - node_name += "/"; - } - node_name += get_node->chain[i]->name; - } - } - Vector<GDScriptCodeGenerator::Address> args; - args.push_back(codegen.add_constant(NodePath(node_name))); + args.push_back(codegen.add_constant(NodePath(get_node->full_path))); GDScriptCodeGenerator::Address result = codegen.add_temporary(_gdtype_from_datatype(get_node->get_datatype())); |