我无法在其他脚本中访问实例场景的变量

问题描述 投票:0回答:1

我有一个带有变量的场景,每个景象:@export name:string 如果在我的主要场景中获取其中的3个,并且全部更改了它们的“名称”,那么我如何从控制主场景的脚本中访问该变量,而不是控制“ Caracter”场景的一个场景

很明显,谢谢你

variables instance godot godot4
1个回答
0
投票

解决方法: 实例场景:确保场景(如角色场景)在主要场景中进行了实例。 accessing导出变量:您可以使用get_node()或存储对实例的引用。

示例:

1。查拉克场景(prinne.tscn) 在您的角色场景中,您有一个导出的变量名称:

#字符.gd(附加到角色场景)

extendsnode2d

@导出var名称:字符串

22.main场景(main.tscn) 在您的主要场景中,您将实现角色场景,然后访问其名称变量:

#mainscene.gd(附属于主场景) 扩展Node2D

@export var targue_scene:包装

var targure_instances = []

Func_ready():

#Instance 3 characters for i in range(3): var character = character_scene.instantiate() add_child(character) character.name = "Character " + str(i + 1) # Set the name character_instances.append(character) #Now you can access the name from the main script for character in character_instances: print(character.name) # This will print each character's name

键点: @Export var targue_scene:包装量用于导出场景(您可以在Godot编辑器中分配包装)。 字符的each实例是通过在包装上调用Instantiate()创建的。

您通过直接引用实例访问每个字符的名称变量。
跨不同场景的变量:

通过实现场景并存储参考(在这种情况下为targin_instances),您可以从主场景脚本访问和修改变量(在这种情况下为名称)。 Pisqre参观最新见解! 💡

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.