CHALLENGE 1: A "jump" Action That Fires Once Per Press ==================================================================== TASK ---- In the Input Map, create a "jump" action bound to the spacebar. Write a script that prints "Jump!" the moment the action is pressed - but only once per press, not repeatedly while held. SETUP ----- 1. Project > Project Settings > Input Map. 2. Type "jump" in the action name field, click "Add." 3. Click the "+" next to "jump" and press the spacebar to bind it. SOLUTION CODE ------------- extends Node2D func _physics_process(delta: float) -> void: if Input.is_action_just_pressed("jump"): print("Jump!") WHY THIS WORKS AS AN ANSWER ---------------------------- This is exactly why Input.is_action_just_pressed() exists alongside Input.is_action_pressed(). is_action_pressed() would return true on every single _physics_process call for as long as the spacebar stays down - at 60 physics frames per second, holding the key for even half a second would print "Jump!" around 30 times, not once. is_action_just_pressed() instead only returns true on the exact frame the button transitions from up to down - the very first frame of the press. On every later frame, even while the key is still held, it returns false, so the print only happens exactly once per press. This is the standard choice for a one-shot action like a jump, a menu confirm, or firing a single shot - anywhere the action should trigger once, not repeat for as long as the button is down.