help with windows electric shouters code

Hello !So your circuit as master works perfectly!I tried to make a modification to your circuit.I don't like my local connection of button(locally) because i have to have my hand at the button in order to move down or up.If i let the button the shouters stops immediately. So i used your circuit for local buttons(and not for masters) by making some extra copy-paste button according to your circuit. For example i made 4 push buttons for 2 electric shouters.What i am trying to do is to put 2 extra button near to the central door(as master) in order to control the 2 shouters. now in your sketch there are 6 buttons and i want the buttonUp10 = 10; //master up to turn on all the Ledup and buttonDown11 = 11; //master down to control the LedDown.I try to make it work but i am very confused.I believe that with this modification the circuit will be perfect.It works well now but i don't want to keep pushing the button locally until the shouters move up or down.I want the same procedure as with masters!
I am sorry for the annoyance.
Below is an example jpg of 4 local wall button and a master of 2 buttons(up and down).As you can see in order to move down or up the shouters i have to keep pressing the button.If i let the hand it immediately stops(it is a little irritating to keep pressing the button).

int led1Up = 2;
int led2Down = 3;
int led7Up = 7;
int led8Down = 8;

int buttonUp1 = 4;
int buttonDown2 = 6;

int buttonUp9 = 9;
int buttonDown12 = 12;

int buttonUp10 = 10; //master up, with this button i want to turn on in the same time led1Up and led7Up
int buttonDown11 = 11; //master down,with this button i want to turn on in the same time led2Down and led8Down

enum State {
  MOVING_UP = 1 ,
  MOVING_DOWN,
  STOPPED
} state ;


enum State1 {
  MOVING_UP1 = 1 ,
  MOVING_DOWN1,
  STOPPED1
} state1 ;


enum State2 {
  MOVING_UP2 = 1 ,
  MOVING_DOWN2,
  STOPPED2
} state2 ;


boolean buttonPressed( byte buttonPin ) {
  // with crude button debounce
  if ( digitalRead( buttonPin ) == LOW ) {
    delay( 500 ) ;
    return true ;
  }
  else {
    return false ;
  }
}




boolean buttonPressed1( byte buttonPin1 ) {
  // with crude button debounce
  if ( digitalRead( buttonPin1 ) == LOW ) {
    delay( 500 ) ;
    return true ;
  }
  else {
    return false ;
  }
}

boolean buttonPressed2( byte buttonPin2 ) {
  // with crude button debounce
  if ( digitalRead( buttonPin2 ) == LOW ) {
    delay( 500 ) ;
    return true ;
  }
  else {
    return false ;
  }
}





void setup()
{
  pinMode(buttonUp1, INPUT_PULLUP);
  pinMode(led1Up, OUTPUT);
  pinMode(buttonDown2, INPUT_PULLUP);
  pinMode(led2Down, OUTPUT);
  state = STOPPED ;


pinMode(buttonUp9, INPUT_PULLUP);
  pinMode(led7Up, OUTPUT);
  pinMode(buttonDown12, INPUT_PULLUP);
  pinMode(led8Down, OUTPUT);
  state1 = STOPPED1 ;


pinMode(buttonUp10, INPUT_PULLUP);

  pinMode(buttonDown11, INPUT_PULLUP);

  state2 = STOPPED2 ;


}

void loop()
{

  static unsigned long upButtonPressedAtMs ;
  static unsigned long downButtonPressedAtMs ;
 static unsigned long upButtonPressedAtMs1 ;
  static unsigned long downButtonPressedAtMs1 ;
  static unsigned long upButtonPressedAtMs2 ;
  static unsigned long downButtonPressedAtMs2 ;

// actions dependent on current state
  if ( state == STOPPED  ) {
    digitalWrite( led1Up, true ) ;
    digitalWrite( led2Down, true ) ;
 

    
  }
  else if ( state == MOVING_UP ) {
    digitalWrite( led1Up, true ) ;
    digitalWrite( led2Down, false ) ;
 

 
    
  }
  else if ( state == MOVING_DOWN ) {
    digitalWrite( led1Up, false ) ;
    digitalWrite( led2Down, true ) ;

    
  }



// check if a state transition necessary

  if ( state == MOVING_UP && millis() - upButtonPressedAtMs > 5000 ) {
    state = STOPPED ;
  }

  if ( state == MOVING_UP &&  buttonPressed( buttonUp1 ) ) {
    state = STOPPED ;
  }

  if ( state == MOVING_UP &&  buttonPressed( buttonDown2 ) ) {
    downButtonPressedAtMs = millis() ;
    state = MOVING_DOWN ;
  }


  if ( state == MOVING_DOWN && millis() - downButtonPressedAtMs > 5000 ) {
    state = STOPPED ;
  }

  if ( state == MOVING_DOWN &&  buttonPressed( buttonDown2 ) ) {
    state = STOPPED ;
  }

  if ( state == MOVING_DOWN &&  buttonPressed( buttonUp1 ) ) {
    upButtonPressedAtMs = millis() ;
    state = MOVING_UP ;
  }


  if ( state == STOPPED && buttonPressed( buttonUp1 ) ) {
    upButtonPressedAtMs = millis() ;
    state = MOVING_UP ;
  }

   if ( state == STOPPED && buttonPressed( buttonDown2 ) ) {
    downButtonPressedAtMs = millis() ;
    state = MOVING_DOWN ;
  }




// actions dependent on current state
  if ( state1 == STOPPED1 ) {
    digitalWrite( led7Up, true ) ;
    digitalWrite( led8Down, true ) ;
  }
  else if ( state1 == MOVING_UP1 ) {
    digitalWrite( led7Up, true ) ;
    digitalWrite( led8Down, false ) ;
  }
  else if ( state1 == MOVING_DOWN1 ) {
    digitalWrite( led7Up, false ) ;
    digitalWrite( led8Down, true ) ;
  }


// check if a state transition necessary

  if ( state1 == MOVING_UP1 && millis() - upButtonPressedAtMs1 > 5000 ) {
    state1 = STOPPED1 ;
  }

  if ( state1 == MOVING_UP1 &&  buttonPressed1( buttonUp9 ) ) {
    state1 = STOPPED1 ;
  }

  if ( state1 == MOVING_UP1 &&  buttonPressed1( buttonDown12 ) ) {
    downButtonPressedAtMs1 = millis() ;
    state1 = MOVING_DOWN1 ;
  }


  if ( state1 == MOVING_DOWN1 && millis() - downButtonPressedAtMs1 > 5000 ) {
    state1 = STOPPED1 ;
  }

  if ( state1 == MOVING_DOWN1 &&  buttonPressed1( buttonDown12 ) ) {
    state1 = STOPPED1 ;
  }

  if ( state1 == MOVING_DOWN1 &&  buttonPressed1( buttonUp9 ) ) {
    upButtonPressedAtMs1 = millis() ;
    state1 = MOVING_UP1 ;
  }


  if ( state1 == STOPPED1 && buttonPressed1( buttonUp9 ) ) {
    upButtonPressedAtMs1 = millis() ;
    state1 = MOVING_UP1 ;
  }

   if ( state1 == STOPPED1 && buttonPressed1( buttonDown12 ) ) {
    downButtonPressedAtMs1 = millis() ;
    state1 = MOVING_DOWN1 ;
  }


// actions dependent on current state
  if ( state2 == STOPPED2  ) {
    digitalWrite( led1Up, true ) ;
    digitalWrite( led2Down, true ) ;
 
   digitalWrite( led7Up, true ) ;
   digitalWrite( led8Down, true ) ;
  }
  else if ( state2 == MOVING_UP2 ) {
    digitalWrite( led1Up, true ) ;
    digitalWrite( led2Down, false ) ;
    
    digitalWrite( led7Up, true ) ;
   digitalWrite( led8Down, false ) ;

 
    
  }
  else if ( state2 == MOVING_DOWN2 ) {
    digitalWrite( led1Up, false ) ;
    digitalWrite( led2Down, true ) ;

    digitalWrite( led7Up, false ) ;
   digitalWrite( led8Down, true ) ;
    
  }


// check if a state transition necessary

  if ( state2 == MOVING_UP2  && millis() - upButtonPressedAtMs2 > 5000)   {
    state2 = STOPPED2;
     
  }

  if ( state2 == MOVING_UP2  && buttonPressed2( buttonUp10 )) {
    state2 = STOPPED2 ;
  
  }

  if ( state2 == MOVING_UP2 &&  buttonPressed2( buttonDown11)) {
    downButtonPressedAtMs2 = millis() ;
    state2 = MOVING_DOWN2 ;
  
  }


  if ( state2 == MOVING_DOWN2 && millis() - downButtonPressedAtMs2 > 5000) {
    state2 = STOPPED2 ;
     state = STOPPED ;
  }

  if ( state2 == MOVING_DOWN2 &&  buttonPressed2( buttonDown11 ) ) {
    state2 = STOPPED2 ;
    state = STOPPED ;
  }

  if ( state2 == MOVING_DOWN2 &&  buttonPressed2( buttonUp10 ) ) {
    upButtonPressedAtMs2 = millis() ;
    state2 = MOVING_UP2 ;
  }


  if ( state2 == STOPPED2 && buttonPressed2( buttonUp10 ) ) {
    upButtonPressedAtMs2 = millis() ;
    state2 = MOVING_UP2 ;
  }

   if ( state2 == STOPPED2 && buttonPressed2( buttonDown11 ) ) {
    downButtonPressedAtMs2 = millis() ;
    state2 = MOVING_DOWN2 ;
  }





}