Simplyfing Code?

If you want an action to start if a button is pressed, and continue until another button is pressed, you need to separate the button press reading from the action.

When the button is pressed, set a flag indicating which action is to occur.

After reading all the buttons, perform the correct action.

int action = 0;
void loop()
{
   if(digitalRead(buttonPin1) == HIGH)
      action = 1;
   if(digitalRead(buttonPin2) == HIGH)
      action = 2;

   switch(action)
   {
      case 1:
         animation1();
         break;
      case 2:
         animation2();
         break;
      default:
         break;
   }
}