Timer
Ref: Timer
A timer simply counts to zero and then emits a timeout signal:
func ready():
var my_timer = Timer.new()
self.add_child(my_timer)
my_timer.timeout.connect(_on_timer_timeout)
my_timer.wait_time = 10
my_timer.start()
# This would be the timeout.
func _on_timer_timeout():
print("Time to panic!!!")
The quick way to get a timer without instancing:
my_timer = SceneTree.create_timer()
my_timer.timeout.connect(_on_timer_timeout)
my_timer.start(10) # set 10s wait time.
Timers are affected by Engine.time_scale unless ignore_time_scale is true:
my_timer.ignore_time_scale = true