Atteindre l’objectif
Fait partie de la section Règles du jeu du Journey Godot de Coddy. Leçon 22 sur 29.
Un jeu dans lequel tu peux perdre doit aussi te permettre de gagner. Souvent, il s'agit d'un endroit, comme un drapeau à la fin d'un niveau.
Le drapeau ici est un Area2D appelé Goal. Lorsqu'un corps entre dans la zone, il envoie le signal body_entered avec ce corps. Le joueur appartient au groupe player, donc l'objectif peut le distinguer des autres corps :
func _on_goal_body_entered(body):
if body.is_in_group("player"):
$HUD/Message.text = "You win!"Le HUD comporte une étiquette Message vide au milieu de l'écran.
Défi
FacileFais gagner le joueur en atteignant le drapeau.
- Dans
_ready(), connecte$Goal.body_enteredà_on_goal_body_entered. - Dans
_on_goal_body_entered(body), lorsque le corps appartient au groupeplayer, définis$HUD/Message.textsur"You win!".
Appuie sur « Jouer » et marche jusqu’au drapeau : You win! apparaît sur tout l’écran. Puis appuie sur « Vérifier ».
Essayez vous-même
extends Node2D
func _ready():
pass
Toutes les leçons de Règles du jeu
Entraînez-vous par vous-même : Playground Godot