Nombres flottants
Fait partie de la section Sensations de jeu du Journey Godot de Coddy. Leçon 19 sur 23.
Un nombre qui s’élève après un coup indique au joueur ce qui s’est passé.
La méthode hit() du robot crée déjà un Label qui affiche -1 au-dessus de sa tête. Comme les éclats de la caisse, l’étiquette est ajoutée à get_parent(), afin qu’elle ne bouge pas et ne clignote pas avec le robot.
Pour la faire flotter, animez sa propriété "position:y" vers le haut et sa propriété "modulate:a" jusqu’à 0 en même temps. Quand l’animation est terminée, supprimez l’étiquette avec label.queue_free(). Sinon, elle reste dans le jeu, invisible.
var rise = create_tween()
rise.tween_property(label, "position:y", label.position.y - 40, 0.6)La première valeur de tween_property est le nœud à modifier. Ici, c’est label, et non self.
Défi
MoyenFaites flotter le -1 vers le haut. Après l’ajout de l’étiquette :
- animez sa
"position:y"de 40 pixels vers le haut en 0.6 seconde, - en parallèle, animez son
"modulate:a"jusqu’à0.0, awaitla fin de l’animation avecfinished, puis appelezlabel.queue_free().
Essayez vous-même
extends Node2D
func hit():
modulate = Color(4, 4, 4)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)
var label = Label.new()
label.text = "-1"
label.modulate = Color(1, 0.42, 0.42)
label.position = position + Vector2(-8, -110)
get_parent().add_child(label)
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Sensations de jeu
1Interpolations
Votre première interpolationInterpoler n’importe quelle propriétéDisparition progressiveDécélérationL’un après l’autreEn même tempsUne pièce qui jaillit4Flashs et retours visuels
Flash lors d’un impactGel à l’impactCompression et étirementNombres flottantsEntraînez-vous par vous-même : Playground Godot