godot/doc/classes/SceneTreeTimer.xml

42 lines
1.4 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" ?>
<class name="SceneTreeTimer" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
2019-02-24 02:56:10 +00:00
One-shot timer.
</brief_description>
<description>
2019-02-24 02:56:10 +00:00
A one-shot timer managed by the scene tree, which emits [signal timeout] on completion. See also [method SceneTree.create_timer].
2019-02-25 10:17:56 +00:00
As opposed to [Timer], it does not require the instantiation of a node. Commonly used to create a one-shot delay timer as in the following example:
[codeblocks]
[gdscript]
2019-02-24 02:56:10 +00:00
func some_function():
2019-10-01 08:55:49 +00:00
print("Timer started.")
await get_tree().create_timer(1.0).timeout
2019-10-01 08:55:49 +00:00
print("Timer ended.")
[/gdscript]
[csharp]
public async Task SomeFunction()
{
GD.Print("Timer started.");
await ToSignal(GetTree().CreateTimer(1.0f), SceneTreeTimer.SignalName.Timeout);
GD.Print("Timer ended.");
}
[/csharp]
[/codeblocks]
The timer will be dereferenced after its time elapses. To preserve the timer, you can keep a reference to it. See [RefCounted].
</description>
<tutorials>
</tutorials>
2018-01-11 22:38:35 +00:00
<members>
<member name="time_left" type="float" setter="set_time_left" getter="get_time_left">
The time remaining (in seconds).
2018-01-11 22:38:35 +00:00
</member>
</members>
<signals>
<signal name="timeout">
<description>
2019-02-24 02:56:10 +00:00
Emitted when the timer reaches 0.
</description>
</signal>
</signals>
</class>