HELP!! Game w/ Shift Register

...And finally the rest:

void shiftOut(int myDataPin, int myClockPin, byte myDataOut) {
  // This shifts 8 bits out MSB first, 
  //on the rising edge of the clock,
  //clock idles low

  //internal function setup
  int i=0;
  int pinState;
  pinMode(myClockPin, OUTPUT);
  pinMode(myDataPin, OUTPUT);

  //clear everything out just in case to
  //prepare shift register for bit shifting
  digitalWrite(myDataPin, 0);
  digitalWrite(myClockPin, 0);

  //for each bit in the byte myDataOut?
  //NOTICE THAT WE ARE COUNTING DOWN in our for loop
  //This means that %00000001 or "1" will go through such
  //that it will be pin Q0 that lights. 
  for (i=7; i>=0; i--)  {
    digitalWrite(myClockPin, 0);

    //if the value passed to myDataOut and a bitmask result 
    // true then... so if we are at i=6 and our value is
    // %11010100 it would the code compares it to %01000000 
    // and proceeds to set pinState to 1.
    if ( myDataOut & (1<<i) ) {
      pinState= 1;
    }
    else {      
      pinState= 0;
    }

    //Sets the pin to HIGH or LOW depending on pinState
    digitalWrite(myDataPin, pinState);
    //register shifts bits on upstroke of clock pin  
    digitalWrite(myClockPin, 1);
    //zero the data pin after shift to prevent bleed through
    digitalWrite(myDataPin, 0);
  }

  //stop shifting
  digitalWrite(myClockPin, 0);
}
void Winner() {
  i2 = 0;
  analogWrite(rdPin, 0);
  clearLCD();
  for(i3 = 0; i3 < 5; i3++) {
    Serial.print("WINNER!!");
    digitalWrite(latchPin, 0);
    shiftOut(dataPin, clockPin, 255);
    digitalWrite(latchPin, 1);
    for(i = 255; i > 0; i--) {
      i2 = i2 + 1;
      analogWrite(blPin, i);
      analogWrite(gnPin, i2);
      delay(1);
    }
    clearLCD();
    digitalWrite(latchPin, 0);
    shiftOut(dataPin, clockPin, 0);
    digitalWrite(latchPin, 1);
    for(i = 0; i < 256; i++) {
      i2 = i2 - 1;
      analogWrite(blPin, i);
      analogWrite(gnPin, i2);
      delay(1);
    } 
  }
  analogWrite(gnPin, 0);
  analogWrite(blPin, 0);
}
void Loser() {
  clearLCD();
  for(i = 0; i < 5; i++) {
    Serial.print("LOSER!!");
    delay(300);
    clearLCD();
    delay(300);
  }
}
void Wrong() {
  randomNumber = random(6);
  switch (randomNumber) {
    case 0:
      Serial.print("Not Quite!");
      break;
    case 1:
      Serial.print("Ouch!");
      break;
    case 2:
      Serial.print("Nope...");
      break;
    case 3:
      Serial.print("Wrong!");
      break;
    case 4:
      Serial.print("Try Again!");
      break;
    case 5:
      Serial.print("Darn!");
      break;
  }
}