consulta reemplazar for en codigo motor nema17

hola estoy utilizando un motor nema 17 y el driver a4988 con el codigo que adjunto abajo , donde un motor se dirige a una direccion , espera 4 segundos y regresa a otra direccion.yo necesitaria qeu se comporte asi sin el "for", para incluirlo dentro de un condicional . intente sacarlo del for
"reemplazar por ejemplo "for(int x = 0; x < 25; x++)" por x= 25; pero no funciona no cambia la direccion despues..

const int steppin = 10;  // declaramos el pin 10 del arduino como step
  const int dirpin = 12;  // declaramos el pin 12 del arduino con dir
  const int tiempo = 10;  // declaramos la variable tiempo  como (5 milisegundos)


void setup() {
  
  pinMode(steppin,OUTPUT); // declaramos como salidas
  pinMode(dirpin,OUTPUT);  // declaramos como salida
;
////////////////////////////////////////// //////////////////////////////////////////////////
  digitalWrite(dirpin,HIGH);  //  ponemos en alto o 1 logico a pin dir para que gire hacia un sentido
 
for(int x = 0; x < 25; x++){  // creamos un lazo for , en nuetro caso el  motor es de 200 paso, para dar  una vuelta !
    digitalWrite(steppin,HIGH);  // las intrucciones que se encuntran dentro  del lazo
    delay(tiempo);               // son las que aran que nuestro motor se mueva ,es la parte donde van los pulsos
    digitalWrite(steppin,LOW);   // necesarios para que el motor se mueva 
    delay(tiempo);
  }

   delay(4000); 
    
digitalWrite(dirpin,LOW);     //   pones en bajo , o en 0 logico para que gire el el sentido opuesto
    for(int x = 0; x < 280; x++)   // entramos a un nuevo lazo pero ahora  la unica diferencia es que 
    {                              // que dara 400 pasos o 2 vueltas de 360 grados lo demas es igual !
      digitalWrite(steppin,HIGH);    
      delay(tiempo);
      digitalWrite(steppin,LOW);
      delay(tiempo);
    
    }

Explica un poco mejor que es lo que quieres y porque no te sirve asi ,porque no somos adivinos y no estamos dentro de tu cabeza para saber que pretendes.