Menu
CoddyTech

Onready

Fait partie de la section Nœuds et scènes du Journey Godot de Coddy. Leçon 21 sur 28.

Écrire $Face/Eyes à chaque image revient à chercher le nœud 60 fois par seconde. Il vaut mieux le trouver une seule fois et le conserver dans une variable.

Les variables en haut d’un script sont créées lorsque le nœud est créé. Ses enfants ne sont pas encore attachés : $Face/Eyes ne trouverait donc rien, et Godot ne démarrerait pas le jeu. Ajoute @onready devant, et Godot remplit la variable lorsque le nœud est prêt, juste avant l’exécution de _ready() :

@onready var mouth = $Face/Mouth

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

Ensuite, mouth désigne le nœud dans toutes les fonctions du script.

challenge icon

Défi

Facile

Crée un robot étourdi dont les yeux tournent.

  1. En haut du script, conserve les yeux dans une variable : @onready var eyes = $Face/Eyes.
  2. Dans _process(), fais tourner eyes dans le sens des aiguilles d’une montre, d’un demi-tour (180 degrés) par seconde.

Appuie sur « Jouer » : les yeux tournent autour du milieu du visage et le robot reste immobile. Puis appuie sur « Vérifier ».

Essayez vous-même

extends Node2D

func _process(delta):
	pass

Toutes les leçons de Nœuds et scènes

Entraînez-vous par vous-même : Playground Godot