This probably isn't interesting to anyone, but I am doing a turn based game so I am playing around with this. You can use coroutines to wait till a function is finished and wait for a timer, which I am doing in my game:
func _ready():
yield(wait(2),"completed")
print("time is up")
func wait(amt):
$Timer.start(amt)
yield($Timer,"timeout")
I don't know how you get it to format. I pressed the code button.