Help with crossing on traffic light project

Interrupt stuff is gone. i have had a look at the code and gone through it and as far as i can see there is no problems but it still doesn't work :frowning:

Thanks for your help by the way, it is appreciated :slight_smile:

int red = 13;
int yellow = 12;
int green = 11;
int redsmall = 10;
int greensmall = 9;
int button = 8;

void setup(){
    pinMode (red, OUTPUT);
    pinMode (yellow, OUTPUT);
    pinMode (green, OUTPUT);
    pinMode (redsmall, OUTPUT);
    pinMode (greensmall, OUTPUT);
    pinMode(button, INPUT);
    
}

void loop() {
    changeLights();
    delay(3000);
        
}

void changeLights(){
  digitalWrite (redsmall, HIGH);
   digitalWrite (yellow, LOW);
  digitalWrite (red, HIGH);
  delay (5000);
  
  digitalWrite (yellow, HIGH);
  delay (2000);
  
  digitalWrite (yellow, LOW);
  digitalWrite (red, LOW);
  digitalWrite (green, HIGH);
      
  delay (5000);
 
  if (digitalRead(button) == HIGH);
  {
    void crossing();
     } 
     
  digitalWrite (yellow, HIGH);
  digitalWrite (green, LOW);
  delay (1000);
  
    
 
}

void crossing(){
  
  digitalWrite (yellow, HIGH);
  digitalWrite (yellow, LOW);
  digitalWrite (red, HIGH);
  delay (1500);
  digitalWrite (redsmall, LOW);
  digitalWrite (greensmall, HIGH);
  delay (7000);
  digitalWrite (greensmall, LOW);
  digitalWrite (redsmall, HIGH);
 }