Menu
CoddyTech

Nieobsłużone wejście

Część sekcji Wejście i ruch ścieżki Godot w Coddy. Lekcja 6 z 28.

Godot może też informować cię o naciśnięciach klawiszy. Każde naciśnięcie i każde zwolnienie klawisza jest zdarzeniem. Godot wysyła każde zdarzenie do funkcji o nazwie _unhandled_input:

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

Funkcja uruchamia się raz dla każdego zdarzenia, a nie w każdej klatce. event.is_action_pressed("action") ma wartość true, gdy zdarzeniem jest naciśnięcie klawisza action. Przy zwolnieniu klawisza ma wartość false.

not zmienia true na false i odwrotnie. Ta linia włącza i wyłącza węzeł:

$Lamp.visible = not $Lamp.visible

Bohater ma ukrytą Lamp na swojej antenie. Klawisze action to E i Enter.

challenge icon

Wyzwanie

Łatwy

Włączaj i wyłączaj lampę bohatera za pomocą klawisza.

  1. W _unhandled_input(event) dodaj instrukcję if dla event.is_action_pressed("action").
  2. W jej wnętrzu ustaw $Lamp.visible na wartość przeciwną do obecnej.

Naciśnij „Graj” i klawisz E: lampa się włączy, a następne naciśnięcie ją wyłączy. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

extends Node2D

func _unhandled_input(event):
	pass
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Wejście i ruch

Poćwicz samodzielnie: Edytor online Godot