help with buttons switching with number of pushes

Right,
so switch case stament (no case without switch):

switch (nameofVar) {
  case 0:            //if (namodVar == 0) {}
    digitalWrite(redLED, HIGH);
    digitalWrite(greenLED,LOW);
    digitalWrite(yellowLED, HIGH);
    break;           //stop reading here and exit switch
  case 1:
    digitalWrite(redLED, LOW);
    digitalWrite(greenLED,LOW);
    digitalWrite(yellowLED, HIGH);
    break;
  case 2:
  [...]

Instead of copying all that (

digitalWrite(redLED, LOW);
digitalWrite(greenLED,LOW);
digitalWrite(yellowLED, HIGH);

)over and over
since all that changes is whether (name)LED goes HIGH or LOW
you call a function and feed it the variables nad it'll fit them into the
repeated part. So Lighter(1, 0, 1) would do the same as all the digitalWrites() and the order of the values determines the color(first red, then yellow, then green);

If you were to add more LEDs (as ash901226 posted) you'd modify the function

void Lighter(boolean redState, boolean yellowState, boolean greenState/*, add boolean colorState as much as needed*/) {
  digitalWrite (redLED, redState);
  digitalWrite (yellowLED, yellowState);
  digitalWrite (greenLED, greenState);
  //add digitalWrites() for every new LED;
}

and of course declare pins, variables, set pin mode() etc...