Table of Contents

Class SceneTreeTimer

Namespace
Godot
Assembly
GodotSharp.dll

A one-shot timer managed by the scene tree, which emits Timeout on completion. See also CreateTimer(double, bool, bool, bool).

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:

public async Task SomeFunction()
  {
      GD.Print("Timer started.");
      await ToSignal(GetTree().CreateTimer(1.0f), SceneTreeTimer.SignalName.Timeout);
      GD.Print("Timer ended.");
  }

The timer will be dereferenced after its time elapses. To preserve the timer, you can keep a reference to it. See RefCounted.

Note: The timer is processed after all of the nodes in the current frame, i.e. node's _Process(double) method would be called before the timer (or _PhysicsProcess(double) if process_in_physics in CreateTimer(double, bool, bool, bool) has been set to true).

public class SceneTreeTimer : RefCounted, IDisposable
Inheritance
SceneTreeTimer
Implements
Inherited Members

Properties

TimeLeft

The time remaining (in seconds).

public double TimeLeft { get; set; }

Property Value

double

Methods

HasGodotClassMethod(in godot_string_name)

Check if the type contains a method with the given name. This method is used by Godot to check if a method exists before invoking it. Do not call or override this method.

protected override bool HasGodotClassMethod(in godot_string_name method)

Parameters

method godot_string_name

Name of the method to check for.

Returns

bool

HasGodotClassSignal(in godot_string_name)

Check if the type contains a signal with the given name. This method is used by Godot to check if a signal exists before raising it. Do not call or override this method.

protected override bool HasGodotClassSignal(in godot_string_name signal)

Parameters

signal godot_string_name

Name of the signal to check for.

Returns

bool

InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)

Invokes the method with the given name, using the given arguments. This method is used by Godot to invoke methods from the engine side. Do not call or override this method.

protected override bool InvokeGodotClassMethod(in godot_string_name method, NativeVariantPtrArgs args, out godot_variant ret)

Parameters

method godot_string_name

Name of the method to invoke.

args NativeVariantPtrArgs

Arguments to use with the invoked method.

ret godot_variant

Value returned by the invoked method.

Returns

bool

Events

Timeout

Emitted when the timer reaches 0.

public event Action Timeout

Event Type

Action