SOLVED Multiple momentary button push issue

long previousMillis1 = 0;
long previousMillis2 = 0;
long previousMillis3 = 0;

Time variables should be unsigned long, unless you plan to travel faster than the speed of light.

#define IonLED 0
#define PIN 1

Get that crap off the hardware serial pins, so you can debug your code.

  digitalWrite(laserSWITCH, HIGH);
  digitalWrite(IonSWTICH, HIGH);

WTF? Why are you writing to INPUT pins?

  void engineBrighten();

Why do you have a function prototype in the middle of setup()?

  } while (i < 255, c > 0);

Why are you misusing the comma operator?

Add a Serial.begin() call and some Serial.print() statements to figure out what your code is doing. Debugging by guessing sucks.