You won't be able to respond to the buttons with all the delay statements. You need to look at the 'Blink without delay' example to work out how to restructure your code.
When you have done that it will be clearer what you need to do. In case it is not - use the button press to increment a variable that tells you what pattern number you are supposed to execute, then in the code you go to the right pattern depending on what that variable says it should be.