Conditional statement help

Seems like you wanna use a state machine. Define a variable as your state:

byte state = 0;

Then you can specify for every state what you wanna do in this case. One possibility might be to change to another state.

p.e.:

switch (state) {
  case 0:
    if (digitalRead(4) == LOW) {
      state = 1; // change to next state
    }
    breaik;
  case 1:
    // do whatever you think is appropriate here
    break;
  default:
    // show some error because we reached an undefined state
}

This is much easier to maintain than to have dozens of "if" statements with every possibility.