Le joueur uniquement
Fait partie de la section Signaux et collisions du Journey Godot de Coddy. Leçon 4 sur 27.
Une zone remarque chaque corps qui entre. Souvent, un seul doit être pris en compte, comme une porte qui ne s’ouvre que pour le héros.
Utilise if pour vérifier de qui il s’agit :
func _on_body_entered(body):
if body.name == "Player":
print("Hello, player")== vérifie si deux valeurs sont égales. Les lignes sous le if, avec une tabulation supplémentaire, ne s’exécutent que si c’est le cas. Les noms doivent correspondre exactement. "player" avec un p minuscule est un nom différent.
Ici, le rover passe d’abord sur une plaque de pression, puis tu marches dessus.
Défi
FacileFais réagir la plaque uniquement au joueur.
- Dans
_on_body_entered(body), place la lignemodulateà l’intérieur d’unif. - Fais en sorte que le
ifvérifie sibody.nameest égal à"Player", avec==.
Appuie sur « Jouer » : la plaque conserve sa couleur pour le rover et devient menthe quand tu marches dessus. Puis appuie sur « Vérifier ».
Essayez vous-même
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
modulate = Color(0.49, 0.95, 0.75)
Toutes les leçons de Signaux et collisions
Entraînez-vous par vous-même : Playground Godot