doc: Sync classref with current source
This commit is contained in:
parent
4e825539e5
commit
932b75e247
6 changed files with 21 additions and 58 deletions
|
|
@ -1367,42 +1367,6 @@
|
|||
[code]wrapi[/code] is more flexible than using the [method posmod] approach by giving the user control over the minimum value.
|
||||
</description>
|
||||
</method>
|
||||
<method name="yield">
|
||||
<return type="GDScriptFunctionState">
|
||||
</return>
|
||||
<argument index="0" name="object" type="Object" default="null">
|
||||
</argument>
|
||||
<argument index="1" name="signal" type="String" default="""">
|
||||
</argument>
|
||||
<description>
|
||||
Stops the function execution and returns the current suspended state to the calling function.
|
||||
From the caller, call [method GDScriptFunctionState.resume] on the state to resume execution. This invalidates the state. Within the resumed function, [code]yield()[/code] returns whatever was passed to the [code]resume()[/code] function call.
|
||||
If passed an object and a signal, the execution is resumed when the object emits the given signal. In this case, [code]yield()[/code] returns the argument passed to [code]emit_signal()[/code] if the signal takes only one argument, or an array containing all the arguments passed to [code]emit_signal()[/code] if the signal takes multiple arguments.
|
||||
You can also use [code]yield[/code] to wait for a function to finish:
|
||||
[codeblock]
|
||||
func _ready():
|
||||
yield(countdown(), "completed") # waiting for the countdown() function to complete
|
||||
print('Ready')
|
||||
|
||||
func countdown():
|
||||
yield(get_tree(), "idle_frame") # returns a GDScriptFunctionState object to _ready()
|
||||
print(3)
|
||||
yield(get_tree().create_timer(1.0), "timeout")
|
||||
print(2)
|
||||
yield(get_tree().create_timer(1.0), "timeout")
|
||||
print(1)
|
||||
yield(get_tree().create_timer(1.0), "timeout")
|
||||
|
||||
# prints:
|
||||
# 3
|
||||
# 2
|
||||
# 1
|
||||
# Ready
|
||||
[/codeblock]
|
||||
When yielding on a function, the [code]completed[/code] signal will be emitted automatically when the function returns. It can, therefore, be used as the [code]signal[/code] parameter of the [code]yield[/code] method to resume.
|
||||
In order to yield on a function, the resulting function should also return a [code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "idle_frame")[/code] from the above example.
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<constants>
|
||||
<constant name="PI" value="3.141593">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue