Menu
CoddyTech

Onready

Część sekcji Węzły i sceny ścieżki Godot w Coddy. Lekcja 21 z 28.

Zapisywanie $Face/Eyes w każdej klatce powoduje wyszukiwanie węzła 60 razy na sekundę. Lepiej znaleźć go raz i przechowywać w zmiennej.

Zmienne na początku skryptu są tworzone, gdy węzeł jest tworzony. Jego elementy potomne nie są jeszcze do niego dołączone, więc $Face/Eyes niczego nie znajdzie i Godot nie uruchomi gry. Umieść @onready na początku, a Godot wypełni zmienną, gdy węzeł będzie gotowy, tuż przed uruchomieniem _ready():

@onready var mouth = $Face/Mouth

func _ready():
	mouth.position.y += 2

Od tej pory mouth jest węzłem dostępnym w każdej funkcji skryptu.

challenge icon

Wyzwanie

Łatwy

Stwórz oszołomionego robota, którego oczy się kręcą.

  1. Na początku skryptu przechowuj oczy w zmiennej: @onready var eyes = $Face/Eyes.
  2. W _process() obracaj eyes zgodnie z ruchem wskazówek zegara o pół obrotu (180 stopni) co sekundę.

Naciśnij „Graj”: oczy krążą wokół środka twarzy, a robot pozostaje nieruchomy. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

extends Node2D

func _process(delta):
	pass

Wszystkie lekcje w sekcji Węzły i sceny

Poćwicz samodzielnie: Edytor online Godot