My player character will only get deleted once after death, all other times after that, it will just spawn in another player without removing the previous one. Here is part of the script
func _on_player_one_respawn_timeout():
playerone.living = true # This does nothing
remove_child(playerone) # Use queue_free instead
new_objone = player_scene.instantiate() #I'm assuming this is correct.
new_objone.position = $PlayerOneRespawnSpot.position #swap with line below
get_parent().add_child(new_objone) #swap with line above.
playerone = new_objone
readytorespawnone = true
I should note that this is the level script, and not the character script, when I added the queue free thing, it just went to the player one main scene.