:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/3.6/doc/classes/SceneTreeTimer.xml. .. _class_SceneTreeTimer: SceneTreeTimer ============== **Inherits:** :ref:`Reference` **<** :ref:`Object` One-shot timer. .. rst-class:: classref-introduction-group Description ----------- A one-shot timer managed by the scene tree, which emits :ref:`timeout` on completion. See also :ref:`SceneTree.create_timer`. As opposed to :ref:`Timer`, it does not require the instantiation of a node. Commonly used to create a one-shot delay timer as in the following example: :: func some_function(): print("Timer started.") yield(get_tree().create_timer(1.0), "timeout") print("Timer ended.") The timer will be dereferenced after its time elapses. To preserve the timer, you can keep a reference to it. See :ref:`Reference`. .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +---------------------------+-----------------------------------------------------------+ | :ref:`float` | :ref:`time_left` | +---------------------------+-----------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Signals ------- .. _class_SceneTreeTimer_signal_timeout: .. rst-class:: classref-signal **timeout** **(** **)** Emitted when the timer reaches 0. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_SceneTreeTimer_property_time_left: .. rst-class:: classref-property :ref:`float` **time_left** .. rst-class:: classref-property-setget - void **set_time_left** **(** :ref:`float` value **)** - :ref:`float` **get_time_left** **(** **)** The time remaining (in seconds). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`