Menu
CoddyTech

Onready

Parte da seção Nós e cenas do Journey de Godot da Coddy. Lição 21 de 28.

Escrever $Face/Eyes em cada quadro procura o nó 60 vezes por segundo. É melhor encontrá-lo uma vez e guardá-lo em uma variável.

As variáveis no início de um script são criadas quando o nó é criado. Seus filhos ainda não estão anexados, então $Face/Eyes não encontraria nada, e Godot não iniciaria o jogo. Coloque @onready antes, e Godot preencherá a variável quando o nó estiver pronto, logo antes de _ready() ser executado:

@onready var mouth = $Face/Mouth

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

Depois disso, mouth é o nó em todas as funções do script.

challenge icon

Desafio

Fácil

Crie um robô tonto cujos olhos giram.

  1. No início do script, mantenha os olhos em uma variável: @onready var eyes = $Face/Eyes.
  2. Em _process(), gire eyes no sentido horário, meia volta (180 graus) por segundo.

Pressione “Jogar”: os olhos circulam o centro do rosto, e o robô fica parado. Depois, pressione “Verificar”.

Experimente você mesmo

extends Node2D

func _process(delta):
	pass

Todas as lições de Nós e cenas

Pratique por conta própria: Playground de Godot