Switching Neopixel Color animations with push button

I am trying to switch the colors of the firing animations for my proton gun program. I cant seem to get it to happen. Here is the portion of the code I have been working on:

unsigned long prevFireMillis = 0;
const int fire_interval = 50;     // interval at which to cycle lights (milliseconds).
int fireSeqNum = 0;
int fireSeqTotal = 5;

//counter variables for Mode Button
int modePushCounter = 0;
int modeButtonState = 0;
int modeLastButtonState =0;

//fire sequence color initialization
uint32_t color1 = noseJewel.Color(255, 255, 255);//white
uint32_t color2 = noseJewel.Color(0, 0, 255);//blue
uint32_t color3 = noseJewel.Color(255, 0, 0);//red
uint32_t color4 = noseJewel.Color(0, 255, 0);//green
uint32_t color5 = noseJewel.Color(255, 0, 255);//purple

//read mode button pin
void buttoncounter(int modePushCounter){
modeButtonState = digitalRead(fireModeButton);
  // compare mode button state to its previous state
  if (modeButtonState != modeLastButtonState){
    //if the state has changed, increment counter
      if (modeButtonState == HIGH){
        //if the current state is HIGH then the button went from off to on
        modePushCounter++;
        }
  }
  //save current state as last state
  modeLastButtonState=modeButtonState;
  
  if (modePushCounter >3){
    modePushCounter = 0;
    if (modePushCounter = 1){
      uint32_t color2 = noseJewel.Color(0, 255, 0);//green
      uint32_t color3 = noseJewel.Color(0, 255, 0);//green
      uint32_t color4 = noseJewel.Color(0, 255, 0);//green
    }    
     if (modePushCounter = 2){
      uint32_t color2 = noseJewel.Color(0, 0, 255);//blue
      uint32_t color3 = noseJewel.Color(0, 0, 255);//blue
      uint32_t color4 = noseJewel.Color(0, 0, 255);//blue
    }
     if (modePushCounter = 3){
      uint32_t color2 = noseJewel.Color(255, 165, 0);//orange
      uint32_t color3 = noseJewel.Color(255, 165, 0);//orange
      uint32_t color4 = noseJewel.Color(255, 165, 0);//orange
    }else{
      uint32_t color2 = noseJewel.Color(0, 0, 255);//blue
      uint32_t color3 = noseJewel.Color(255, 0, 0);//red
      uint32_t color4 = noseJewel.Color(0, 255, 0);//green
    }
  }
 }

void clearFireStrobe() {
  for ( int i = 0; i < 7; i++) {
    noseJewel.setPixelColor(i, 0);
  }
  noseJewel.show();
  fireSeqNum = 0;
}

void fireStrobe(int currentMillis) {
    buttoncounter(modePushCounter);
    if (currentMillis - prevFireMillis > fire_interval) {
    prevFireMillis = currentMillis;
    switch ( fireSeqNum ) {
      case 0:
        noseJewel.setPixelColor(0, color1);
        noseJewel.setPixelColor(1, color1);
        noseJewel.setPixelColor(2, 0);
        noseJewel.setPixelColor(3, color1);
        noseJewel.setPixelColor(4, 0);
        noseJewel.setPixelColor(5, color1);
        noseJewel.setPixelColor(6, 0);
        break;
      case 1:
        noseJewel.setPixelColor(0, color2);
        noseJewel.setPixelColor(1, color3);
        noseJewel.setPixelColor(2, color1);
        noseJewel.setPixelColor(3, color3);
        noseJewel.setPixelColor(4, color1);
        noseJewel.setPixelColor(5, color3);
        noseJewel.setPixelColor(6, color1);
        break;
      case 2:
        noseJewel.setPixelColor(0, color3);
        noseJewel.setPixelColor(1, 0);
        noseJewel.setPixelColor(2, color2);
        noseJewel.setPixelColor(3, 0);
        noseJewel.setPixelColor(4, color2);
        noseJewel.setPixelColor(5, 0);
        noseJewel.setPixelColor(6, color3);
        break;
      case 3:
        noseJewel.setPixelColor(0, color3);
        noseJewel.setPixelColor(1, color3);
        noseJewel.setPixelColor(2, color1);
        noseJewel.setPixelColor(3, color3);
        noseJewel.setPixelColor(4, color1);
        noseJewel.setPixelColor(5, color3);
        noseJewel.setPixelColor(6, color1);
        break;
      case 4:
        noseJewel.setPixelColor(0, color3);
        noseJewel.setPixelColor(1, 0);
        noseJewel.setPixelColor(2, color1);
        noseJewel.setPixelColor(3, 0);
        noseJewel.setPixelColor(4, color3);
        noseJewel.setPixelColor(5, 0);
        noseJewel.setPixelColor(6, color1);
        break;
      case 5:
        noseJewel.setPixelColor(0, color5);
        noseJewel.setPixelColor(1, color4);
        noseJewel.setPixelColor(2, color3);
        noseJewel.setPixelColor(3, color2);
        noseJewel.setPixelColor(4, color5);
        noseJewel.setPixelColor(5, color1);
        noseJewel.setPixelColor(6, color2);
        break;
    }
  
    noseJewel.show();
  
    fireSeqNum++;
    if ( fireSeqNum > fireSeqTotal ) {
      fireSeqNum = 0;
    }
  }
}

As you can see, I am setting up a counter for how many times the button is pushed, and trying to use that number to change the colors in the firing sequence. Perhaps I have it in the wrong place in the loop?

I am prone to mistakes as Im pretty new to this. Any help you can offer is appreciated.

Where is the loop()?

When you do void buttoncounter(int modePushCounter){ you are declaring at every call a local variable modePushCounter so you will not remember the previous count.

Even if you were counting you have a few more bugs to iron out such as

if (modePushCounter [color=red]=[/color] 1){
...
if (modePushCounter [color=red]=[/color] 2){

(everywhere)

Also For sake of accuracy/improving your code, your fire interval should be unsigned and buttoN states variables should just be byte and initialized with LOW rather than 0 (or may be HIGH actually if you use PULLUP) for readability

I cant post all of the code, because its beyond the 9000 character limit. I will try the things you suggested.

I cant post all of the code, because its beyond the 9000 character limit.

If you'd actually read the stickies, you'd know that there is a simple solution for that "problem".