print(f"⬅️ Recule à gauche : ({ligne}, {n_colonne})")
voiture.position=(ligne,n_colonne)
whilen_colone+voiture.taille<6andself.GRILLE[ligne][n_colone+voiture.taille]=="":# tanque la voiture peut rester dans les limites de la grille en ne depassant pas la colonne 5 et que
# que la cas suivante est vide on continue la boucle
n_colone+=1
ifn_colone==colone:# si le deplacement n'as pas eu lieu on essaie vers la gauche
whilen_colone>0andself.GRILLE[ligne][n_colone-1]=="":# tant que on ne depasse pas la limite de la grille et que la case a gauche est vide on continiue la boucle
n_colone-=1
voiture.position=(ligne,n_colone)# on reinitialise la position
whilen_ligne+voiture.taille<6andself.GRILLE[n_ligne+voiture.taille][colone]=="":# tanque la voiture peut rester dans les limites de la grille en ne depassant pas la loigne 5 et que
# que la cas suivante est vide on continue la boucle
print(f"🚗 Nouvelle position de {voiture.couleur} : ({voiture.position[0]}, {voiture.position[1]})")
# Si bloqué en bas, essayer en haut
ifn_ligne==ligne:# si le placement n'a pas eu lieu on essaie vers le bas
whilen_ligne>0andself.GRILLE[n_ligne-1][colone]=="":# tant que on ne depasse pas la limite de la grille et que la case a gauche est vide on continiue la boucle
n_ligne-=1# on reinitialise la ligne
# ✅ Mise à jour de la grille
voiture.position=(n_ligne,colone)
self.remplir_grille()
print("🔄 Grille après mise à jour :")
self.afficher_grille()
# def deplacement(self, couleur:int):
# """ me permet de deplacer des voitures
#
# Précondition :
# Exemple(s) :
# $$$
# """
#
# for voiture in self.vehicules: # on parcour la liste des vehicules
# if voiture.couleur.lower() == couleur.lower():# on cherche la couleur sans se soucier de la casse de l'ecriture de la couleur
# ligne, colone = voiture.position
# n_colone = colone
# n_ligne = ligne
# # Effacer l'ancienne position avant de déplacer la voiture
# if voiture.orientation == "H":
# for i in range(voiture.taille):
# self.GRILLE[ligne][colone + i] = " "
# else:
# for i in range(voiture.taille):
# self.GRILLE[ligne + i][colone] = " "
#
# if voiture.orientation == "H":
# while n_colone + voiture.taille < 6 and self.GRILLE[ligne][n_colone + voiture.taille] == " ": # tanque la voiture peut rester dans les limites de la grille en ne depassant pas la colonne 5 et que
# # que la cas suivante est vide on continue la boucle
# n_colone+= 1
# if n_colone == colone: # si le deplacement n'as pas eu lieu on essaie vers la gauche
# while n_colone > 0 and self.GRILLE[ligne][n_colone - 1] == " " : # tant que on ne depasse pas la limite de la grille et que la case a gauche est vide on continiue la boucle
# n_colone -= 1
# voiture.position = (ligne, n_colone) # on reinitialise la position
# elif voiture.orientation == "V":
# while n_ligne + voiture.taille < 6 and self.GRILLE[n_ligne + voiture.taille][colone] == " ": # tanque la voiture peut rester dans les limites de la grille en ne depassant pas la loigne 5 et que
# # que la cas suivante est vide on continue la boucle
#
# n_ligne += 1
#
# # Si bloqué en bas, essayer en haut
# if n_ligne == ligne: # si le placement n'a pas eu lieu on essaie vers le bas
# while n_ligne > 0 and self.GRILLE[n_ligne - 1][colone] == " ": # tant que on ne depasse pas la limite de la grille et que la case a gauche est vide on continiue la boucle