Attention | Topic was automatically imported from the old Question2Answer platform. | |
Asked By | christianbegg2 |
I am making a platformer and I want to add a checkpoint system so you will restart the level. How do I do that?
Attention | Topic was automatically imported from the old Question2Answer platform. | |
Asked By | christianbegg2 |
I am making a platformer and I want to add a checkpoint system so you will restart the level. How do I do that?
Reply From: | kidscancode |
Give the player a variable to record its start point:
var spawn_point = Vector2(100, 100) # coordinates of your initial spawn point
Make an Area2D where you want the checkpoint to be. You can use a rectangle or circle shape - whatever you prefer. Connect the area’s body_entered
signal and use this to set the player’s spawn point:
func _on_Area2D_body_entered(body):
if body.name == 'Player':
body.spawn_point = position # using the Area2D's position
Now your player can reset itself to the spawn point whenever it dies:
if health <= 0:
position = spawn_point
health = 100 # or whatever