Arduino uno UART output to MP3 shield

Hi there im new to all of this, ive been working on a project to get a monster’s jaw working with an UNO board and UART mp3 shield, ive spent 2 days working on the code as im learning as I go, could someone please check this and see if it seems ok, the idea each button will carryout a servo movement and play the corresponding mp3 file 1,2 or 3

//Include in code
#include <Servo.h>
//Class of item
Servo myservo; // Servo object 
//Button locations
int buttonPin1 = 2;  // Button 1 on pin 2
int buttonPin2 = 3;  // Button 2 on pin 3
int buttonPin3 = 4;  // Button 3 on pin 4
int buttonPin4 = 5;  // Button 4 on pin 5
int buttonPin5 = 6;  // Button 5 on pin 6
int buttonPin6 = 7;  // Button 6 on pin 7
//Button states
int button1State = 0;      // val will be used to store the state
int button2State = 0;      // of the input pin 
int button3State = 0;
int button4State = 0;      
int button5State = 0;      
int button6State = 0;
//Return to state
int old_button1State = 0;  // this variable stores the previous
int old_button2State = 0;  // this variable stores the previous
int old_button3State = 0;  // this variable stores the previous
int old_button4State = 0;  // this variable stores the previous
int old_button5State = 0;  // this variable stores the previous
int old_button6State = 0;  // this variable stores the previous
//Servo setup
int pos = 20;  //servo start position
int delayVal =1;  // servo speed
unsigned char cmd_buf[10];
unsigned char i;
void ArduinoMP3Shield_SendCMD(unsigned char *cmd_buf, unsigned len)
{unsigned i;
for(i=0; i<len; i++){
Serial.write(cmd_buf[i]);}}
//Setup
void setup(void) { 
  //Buttons
  pinMode(buttonPin1, INPUT); // and buttonPin is an input 
  pinMode(buttonPin2, INPUT); // and buttonPin is an input 
  pinMode(buttonPin3, INPUT); // and buttonPin is an input 
  pinMode(buttonPin4, INPUT); // and buttonPin is an input 
  pinMode(buttonPin5, INPUT); // and buttonPin is an input 
  pinMode(buttonPin6, INPUT); // and buttonPin is an input 
  //Servo
  myservo.attach(13);   // declare the output pin for the servo
  myservo.write(0);    // Set the initial position of the servo
}
void loop(){ 
  button1State = digitalRead(buttonPin1); // read input value and store it 
  button2State = digitalRead(buttonPin2); // read input value and store it 
  button3State = digitalRead(buttonPin3); // read input value and store it 
  button4State = digitalRead(buttonPin1); // read input value and store it 
  button5State = digitalRead(buttonPin2); // read input value and store it 
  button6State = digitalRead(buttonPin3); // read input value and store it 
 
       //BUTTON 1 CONTROL GROWL AND LOW ROAR
  if ((button1State == HIGH) && (old_button1State == LOW)) { 
     /** wait until arduino mp3 shield get ready */
delay(1000);
Serial.begin(9600);
    cmd_buf[0] = 0x7E;          // START
    cmd_buf[1] = 0x04;          // Length
    cmd_buf[2] = 0xA0;          // Command
    cmd_buf[3] = 0x00;          // file number high byte
    cmd_buf[4] = 0x01;          // file number low byte
    cmd_buf[5] = 0x7E;          // END
    ArduinoMP3Shield_SendCMD(cmd_buf, 6);
    
    for(pos = 0; pos < 20; pos +=1)  // OPEN
    {                                  // in steps of 1 degree 
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(30);                       // waits 15ms for the servo to reach the position 
    } 
    for(pos = 20; pos>0; pos-=1)     // CLOSE 
    {                                
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(50);                        // waits 15ms for the servo to reach the position  
    }
   
    for(pos = 0; pos < 20; pos +=3)  // OPEN 
    {                                  // in steps of 1 degree 
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(50);                       // waits 15ms for the servo to reach the position 
    } 
    for(pos = 20; pos>0; pos-=2.5)     // CLOSE
    {                                
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(20);                        // waits 15ms for the servo to reach the position  
    }
    for(pos = 0; pos < 20; pos +=2.5)    //OPEN
    {
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(50);       
    }
  for(pos = 20; pos>0; pos-=2.5)     // CLOSE
    {                                
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(100);                        // waits 15ms for the servo to reach the position  
    }
    for(pos = 0; pos < 20; pos +=2.5)  // OPEN
    {                                  // in steps of 1 degree 
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(100);                       // waits 15ms for the servo to reach the position 
    } 
    for(pos = 20; pos>0; pos-=2.5)     // CLOSE
    {                                
      myservo.write(pos);              // tell servo to go to position in variable 'pos' 
      delay(150);                        // waits 15ms for the servo to reach the position  
    }
  }
  old_button1State = button1State; // end 
  
               //BUTTON 2 CONTROL BITE
    if ((button2State == HIGH) && (old_button2State == LOW)) {
      /** wait until arduino mp3 shield get ready */
delay(1000);
Serial.begin(9600);
    cmd_buf[0] = 0x7E;          // START
    cmd_buf[1] = 0x04;          // Length
    cmd_buf[2] = 0xA0;          // Command
    cmd_buf[3] = 0x00;          // file number high byte
    cmd_buf[4] = 0x02;          // file number low byte
    cmd_buf[5] = 0x7E;          // END
    ArduinoMP3Shield_SendCMD(cmd_buf, 6);
    
    for(pos = 0; pos < 80; pos += 1)  // goes from 0 degrees to 180 degrees 
  {                                  // in steps of 1 degree 
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(0);                       // waits 15ms for the servo to reach the position 
  } 
  for(pos = 80; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
  {                                
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(2);                        // waits 15ms for the servo to reach the position
    }
  }
  old_button2State = button2State; // end 
  
              //BUTTON 3 CONTROL GROWL
  if ((button3State == HIGH) && (old_button3State == LOW)) {
/** wait until arduino mp3 shield get ready */
delay(1000);
Serial.begin(9600);
    cmd_buf[0] = 0x7E;          // START
    cmd_buf[1] = 0x04;          // Length
    cmd_buf[2] = 0xA0;          // Command
    cmd_buf[3] = 0x00;          // file number high byte
    cmd_buf[4] = 0x03;          // file number low byte
    cmd_buf[5] = 0x7E;          // END
    ArduinoMP3Shield_SendCMD(cmd_buf, 6);
    
    for(int i=0; i<10; i++) //repeats loop x times
    for(pos = 0; pos < 5; pos += 1)  // goes from 0 degrees to 180 degrees 
  {                                  // in steps of 1 degree 
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(15);                       // waits 15ms for the servo to reach the position 
  } 
  for(int i=0; i<10; i++)      //repeats loop x times
  for(pos = 5; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
  {                                
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(15);    // waits 15ms for the servo to reach the position
    
   
 }
  }
  old_button3State = button3State; // end 
}

Thanks in advance
James

  pinMode(buttonPin1, INPUT); // and buttonPin is an input

Isn't that obvious? What isn't obvious is how you have the switches wired. Nor is it obvious why you want to use external resistors with the switches.

{unsigned i;

NOTHING goes on the same line as the {.

Serial.begin(9600);

This belongs in setup().

There is no reason for pos to be global. As it's an int, there is no way to increment it's value by 1/2.