extends Mouvement
class_name PingPong
## Pour descendre doucement un objet a vitesse constante


const vitesse: float = 20.0 # px / sec

var depart: float # px du bord gauche
var longueur: float # px de long
var temps: float = 0.0 # sec
var calibrage_fait := false


## Descente tranquille
func bouger(noeud: Node2D, delta: float) -> void:
	calibrer(noeud.position.x)
	temps += delta
	noeud.position.x = depart + pingpong(temps * vitesse, longueur)


func calibrer(position_x: float):
	if calibrage_fait:
		return

	depart = position_x
	var largeur_niveau = ProjectSettings.get_setting("display/window/size/viewport_width")
	assert(largeur_niveau > 0)
	longueur = largeur_niveau - 2 * depart
	print("Calcul ping pong ", self, " depuis ", depart, " sur ", longueur, " px.")
	calibrage_fait = true
