Godot 引擎使用组
Godot Engine using groups
我刚刚下载了 Godot 引擎,我尝试使用一组激活 3 个按钮和第 4 个按钮。
那是应该这样做的行:
get_tree().call_group("Buttons", "pressed")
但是什么也没发生。
我做了教程中写的所有内容,但看起来,那一行不想工作。
这一行:
get_tree().call_group("Buttons", "pressed")
对组 "Buttons"
中的对象调用方法 pressed
。如果它什么都不做,这意味着组 "Buttons"
中没有对象有一个 pressed
做某事。
重申失败点是:
"Buttons"
组中没有对象。
"Buttons"
组中有对象,其中 none 个对象有一个方法 pressed
。
或者,如果您更喜欢从 pressed
方法查看它:
- 没有方法
pressed
。
- 有一个方法
pressed
,但是 "Buttons"
组中的 none 个对象有它。
补充:嗯,还有一个失败点:get_tree()
。它可以 return null
(代码是 Node
中的 运行,当前不在场景树中)。或者它可能没有被定义(代码是 运行 而不是 Node
)。但是你会出错。你会看到一个错误,对吧?对吗?
现在,你想做什么? “激活按钮”是什么意思?这是猜测:您想从按钮发出 "pressed"
信号。
要发出信号,您可以像这样使用 emit_signal
:
object.emit_signal("name_of_the_signal", ...)
注意,方法是emit_signal
。 信号不是方法。我们可以使用call_group
来调用emit_signal
方法:
get_tree().call_group("Buttons", "emit_signal", "pressed")
我刚刚下载了 Godot 引擎,我尝试使用一组激活 3 个按钮和第 4 个按钮。
那是应该这样做的行:
get_tree().call_group("Buttons", "pressed")
但是什么也没发生。 我做了教程中写的所有内容,但看起来,那一行不想工作。
这一行:
get_tree().call_group("Buttons", "pressed")
对组 "Buttons"
中的对象调用方法 pressed
。如果它什么都不做,这意味着组 "Buttons"
中没有对象有一个 pressed
做某事。
重申失败点是:
"Buttons"
组中没有对象。"Buttons"
组中有对象,其中 none 个对象有一个方法pressed
。
或者,如果您更喜欢从 pressed
方法查看它:
- 没有方法
pressed
。 - 有一个方法
pressed
,但是"Buttons"
组中的 none 个对象有它。
补充:嗯,还有一个失败点:get_tree()
。它可以 return null
(代码是 Node
中的 运行,当前不在场景树中)。或者它可能没有被定义(代码是 运行 而不是 Node
)。但是你会出错。你会看到一个错误,对吧?对吗?
现在,你想做什么? “激活按钮”是什么意思?这是猜测:您想从按钮发出 "pressed"
信号。
要发出信号,您可以像这样使用 emit_signal
:
object.emit_signal("name_of_the_signal", ...)
注意,方法是emit_signal
。 信号不是方法。我们可以使用call_group
来调用emit_signal
方法:
get_tree().call_group("Buttons", "emit_signal", "pressed")