Entrada não tratada
Parte da seção Entrada e movimento do Journey de Godot da Coddy. Lição 6 de 28.
O Godot também pode informar você sobre as teclas. Cada pressionamento e cada soltura de tecla são um evento. O Godot envia cada evento para uma função chamada _unhandled_input:
func _unhandled_input(event):
if event.is_action_pressed("action"):
print("Action!")A função é executada uma vez por evento, não a cada quadro. event.is_action_pressed("action") é verdadeiro quando o evento é o pressionamento da tecla action. Ao soltar a tecla, é falso.
not transforma true em false e vice-versa. Esta linha liga e desliga um nó:
$Lamp.visible = not $Lamp.visibleO herói tem uma Lamp oculta na antena. As teclas action são E e Enter.
Desafio
FácilLigue e desligue a lâmpada do herói com uma tecla.
- Em
_unhandled_input(event), adicione umifparaevent.is_action_pressed("action"). - Dentro dele, defina
$Lamp.visiblecomo o oposto do valor atual.
Pressione “Jogar” e pressione E: a lâmpada acende e, ao pressionar novamente, ela apaga. Em seguida, clique em “Verificar”.
Experimente você mesmo
extends Node2D
func _unhandled_input(event):
pass
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Entrada e movimento
1Ações de entrada
Pressione para moverEsquerda e direitaUm eixoQuatro direçõesRecém-pressionadoEntrada não tratadaPratique por conta própria: Playground de Godot