Topic was automatically imported from the old Question2Answer platform.
Asked By
Oliver_M
Old Version
Published before Godot 3 was released.
Total newb here, I have a question about something I’m getting stuck on with a new 2D project. I added a sprite background and it shows no problem when I run the test. I setup the esc key as “key_exit” in the Input Map. Then I created a node2D as the root and added the following script to it:
extends Node2D
func _ready():
if Input.is_action_pressed("key_exit"):
get_tree().quit()
It doesn’t work. I’m trying to create a simple loop that listens for esc key presses and quits when I press the escape key. If I add get_tree().quit() without the if condition, it quits as soon as it starts. How do I get it to “listen” for my if condition? What am I doing wrong here?
I know this has already been answered, but if anyone is looking for an up-to-date solution that works with 3.1+ and deals with Node lifecycle via _input rather than _process, here is the quick snippet:
func _input(event):
if Input.is_action_pressed("ui_cancel"):
get_tree().quit()