GDScript: Access outer scope classes

This commit is contained in:
Brian Semrau 2021-10-12 10:49:06 -04:00
parent cb85ef6c38
commit 0ff0f64cd4
3 changed files with 28 additions and 0 deletions

View file

@ -2682,6 +2682,11 @@ void GDScriptAnalyzer::reduce_identifier_from_base(GDScriptParser::IdentifierNod
p_identifier->is_constant = false;
return;
} break;
case GDScriptParser::ClassNode::Member::CLASS: {
resolve_class_interface(member.m_class);
p_identifier->set_datatype(member.m_class->get_datatype());
return;
} break;
default:
break;
}

View file

@ -0,0 +1,19 @@
class A:
var x = 3
class B:
var x = 4
class C:
var x = 5
class Test:
var a = A.new()
var b: B = B.new()
var c := C.new()
func test():
var test_instance := Test.new()
prints(test_instance.a.x)
prints(test_instance.b.x)
prints(test_instance.c.x)

View file

@ -0,0 +1,4 @@
GDTEST_OK
3
4
5