6 Leds avec bouton poussoir

Pour éteindre toutes les Leds d'un coup j'ai rajouté le else mais rien ne se passe lorsque j'appuie sur le bouton poussoir car toutes les leds restent allumées

//le bouton est connecté à la broche 2 de la carte Adruino
const int bouton = 2;
int compteur=0;
const int ledCount = 6;
int etatboutonprecedent; 
int etatBouton;

int ledPins[] = {3, 4, 5, 6, 7, 8}; 
void setup()
{
   etatboutonprecedent= LOW;
    pinMode(bouton, INPUT); //le bouton est une entrée
    etatBouton = LOW; //on initialise l'état du bouton comme "relaché"
    for (int thisLed = 0; thisLed < ledCount; thisLed++) {
    pinMode(ledPins[thisLed], OUTPUT);
}
}
void loop()

{    
  
  
  etatBouton = digitalRead(bouton); //Rappel : bouton = 2


   
    if(etatBouton == HIGH) 
    {
      if (etatboutonprecedent== LOW)
      {
        
      digitalWrite(ledPins[compteur], HIGH);
      compteur ++;
      delay(500);
     
    }
    }
    else {
      if (compteur == 6)
      {
      if (etatboutonprecedent == HIGH)
      {
      digitalWrite(ledPins[compteur], HIGH);
      }
      }  
//      
//    }
//    if(compteur == 6)
//    {
//      compteur = 0; 
//    }
//     
      }  
 
     }

Si tu veux éteindre routes les leds, il faut que tu les éteignes toutes qaund le compteur vaut 6

void loop()
{
 static int etatBoutonPrec=HIGH;
 static int compteur=0;
 
 int etatBouton = digitalRead(bouton);

 if (etatBouton == LOW && etatBoutonPrec==HIGH)
 {
   if (compteur<ledCount)
   {
     digitalWrite(ledPins[compteur++],HIGH);
   }
   else
   {
     // éteint toutes les leds
     for (int i=0; i<ledCount; i++)
      digitalWrite(ledPins[i],LOW);
     compteur=0;
   }
 }
 etatBoutonPrec=etatBouton;
 delay(10); // anti rebond
}

Ca marche merci Kamill