Digital Hourglass reverse led

This is my first question in the Forum, as I am just started with Arduino or any language.
I have an arduino Uno and i am following the Arduino Porjects Book from the StarterKit. I followed and was successful with project 08,"Digital Hourglass", and i would like to make the "clock" go "backwards" by setting leds off once it reached the 6th led. For this i ignored the tilt Switch part.
See my code below, what i am trying to do is combine the project 08 and "for and delay" . Can anyone help me? i have been too many hours trying to find it myself and i am stuck:

unsigned long previousTime = 0; // store the last time an LED was updated
unsigned long currentTime = millis(); 
int timer = 100;           // The higher the number, the slower the timing.
int led=2;
void setup() {
  // use a for loop to initialize each pin as an output:
  for (int thisPin = 2; thisPin < 8; thisPin++)  {
    pinMode(thisPin, OUTPUT);      
  }
}

void loop() {
  // loop from the lowest pin to the highest:
    if(currentTime - previousTime > timer) {
        // save the current time as the last time you changed an LED 
        previousTime = currentTime; 
     
        for (int led = 2; led < 8; led++) { 
        // turn the pin on:
        digitalWrite(led, HIGH);   
        delay(timer);                  
        // turn the pin off:
        digitalWrite(led, LOW);    
        }
         
         
        // loop from the highest pin to the lowest:
        for (int led = 7; led >= 2; led--) { 
        // turn the pin on:
        digitalWrite(led, HIGH);
        delay(timer);
        // turn the pin off:
        digitalWrite(led, LOW);
            }
    led++;
    }
}

after hours and hours i think i found a solution to calm my ansiety...but this is not what i was looking for, as it is not using the for or if functions...

int ledPins[] = {2,3,4,5,6,7};

void setup() {
  for(int i = 0; i < 8; i++){
    pinMode(ledPins[i],OUTPUT);
  }
}

void loop() {
  oneAfterAnotherLoop();
}
void oneAfterAnotherNoLoop(){
  int delayTime = 100;
  digitalWrite(ledPins[0], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[1], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[2], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[3], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[4], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[5], HIGH);
  delay(delayTime);
  digitalWrite(ledPins[5], LOW);
  delay(delayTime);
  digitalWrite(ledPins[4], LOW);
  delay(delayTime);
  digitalWrite(ledPins[3], LOW);
  delay(delayTime);
  digitalWrite(ledPins[2], LOW);
  delay(delayTime);
  digitalWrite(ledPins[1], LOW);
  delay(delayTime);
  digitalWrite(ledPins[0], LOW);
  delay(delayTime);
}

i found this at カジノシークレット(CASINO SECRET)~評判・入金不要ボーナス・マッチボーナス・キャッシュバック・出金スピード・シークレット・カジノ・アプリ・メール・銀行送金・手数料・本人確認・会社・ログインできない?・開かない?・no deposit bonus・Visa・login~, but this is in Spanish.
at least i can keep going on, but i am curious to know if there is no better solution ( i am sure there is)

but i am curious to know if there is no better solution ( i am sure there is)

Of course there is. Think about how YOU would turn the LEDs on in increasing order, and then in decreasing order. All you have is a watch, a pad of paper, and a pencil.

You'd note (on the paper) what time you last turned an LED on (or off). Periodically, you'd see if it was time to turn the next one on (or off). You could use the paper to keep track of what the next state will be, in case you fall asleep and forget.

The blink without delay example shows how to use millis() in place of the watch, and a couple of variables in place of the pencil and paper.

Google state machines to learn how to deal with keeping track of the next state (in case you fall asleep). It's pretty simple, really.