Menu
CoddyTech

Entrada no gestionada

Parte de la sección Entrada y movimiento del Journey de Godot de Coddy. Lección 6 de 28.

Godot también puede informarte sobre las teclas. Cada pulsación y cada liberación de una tecla es un evento. Godot envía cada evento a una función llamada _unhandled_input:

func _unhandled_input(event):
	if event.is_action_pressed("action"):
		print("Action!")

La función se ejecuta una vez por evento, no en cada fotograma. event.is_action_pressed("action") es true cuando el evento corresponde a la tecla action al presionarse. Al soltarla, es false.

not convierte true en false y viceversa. Esta línea enciende y apaga un nodo:

$Lamp.visible = not $Lamp.visible

El héroe tiene una Lamp oculta en su antena. Las teclas de action son E y Enter.

challenge icon

Desafío

Fácil

Enciende y apaga la lámpara del héroe con una tecla.

  1. En _unhandled_input(event), añade un if para event.is_action_pressed("action").
  2. Dentro, establece $Lamp.visible en lo contrario de lo que sea.

Pulsa «Jugar» y pulsa E: la lámpara se enciende y, al pulsar de nuevo, se apaga. Después, pulsa «Comprobar».

Pruébalo tú mismo

extends Node2D

func _unhandled_input(event):
	pass
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Entrada y movimiento

Practica por tu cuenta: Playground de Godot