Un punto de control
Parte de la sección Señales y colisiones del Journey de Godot de Coddy. Lección 20 de 27.
Un punto de control cambia el lugar al que te envían las púas. Así que el punto de inicio pasa a ser una variable en la parte superior de main.gd, donde todas las funciones pueden acceder a ella:
var start_point = Vector2(80, 280)
func _on_spikes_body_entered(body):
body.position = start_pointLas púas te envían adonde sea que apunte start_point en ese momento. Cambia la variable y el siguiente golpe te enviará allí.
Cámbiala con start_point = .... Escribir var start_point = ... dentro de una función crea una variable nueva que solo existe en esa función. La de la parte superior sigue siendo la misma.
Desafío
IntermedioCuando llegues a la bandera:
- Establece
start_pointen la posición del punto de control,$Checkpoint.position. - Pon la bandera de color menta:
$Checkpoint.modulate = Color(0.49, 0.95, 0.75).
Toca la bandera y después los pinchos. Deberías volver a aparecer en la bandera.
Pruébalo tú mismo
extends Node2D
var start_point = Vector2(80, 280)
func _ready():
$Spikes.body_entered.connect(_on_spikes_body_entered)
$Checkpoint.body_entered.connect(_on_checkpoint_body_entered)
func _on_spikes_body_entered(body):
body.position = start_point
func _on_checkpoint_body_entered(body):
pass
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Señales y colisiones
Practica por tu cuenta: Playground de Godot