mirror of
https://github.com/godotengine/godot-docs.git
synced 2026-01-03 05:48:42 +03:00
Add yield with multiple arguments example to GDSCript Basics
This commit is contained in:
@@ -1591,6 +1591,24 @@ You can also get the signal's argument once it's emitted by an object:
|
||||
# Wait for when any node is added to the scene tree.
|
||||
var node = yield(get_tree(), "node_added")
|
||||
|
||||
If there are more than one argument ``yield`` returns an array containing
|
||||
the arguments:
|
||||
|
||||
::
|
||||
|
||||
signal done(input, processed)
|
||||
func process_input(input):
|
||||
print("Processing initialized")
|
||||
yield(get_tree(), "idle_frame")
|
||||
print("Waiting")
|
||||
yield(get_tree(), "idle_frame")
|
||||
emit_signal(input, "Processed " + input)
|
||||
|
||||
func _ready():
|
||||
process_input("Test") # Prints: Processing initialized
|
||||
var data = yield(self, "done") # Prints: waiting
|
||||
print(data[1]) # Prints: Processed Test
|
||||
|
||||
If you're unsure whether a function may yield or not, or whether it may yield
|
||||
multiple times, you can yield to the ``completed`` signal conditionally:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user