Ajuda com projeto com Lilypad arduino

Olá a todos, queria pedir ajuda com uma prograçao, pois nunca programei e mesmo estando estudando a linguagem, nao estou conseguindo avançar. Queria pelo menos dicas de como conseguir.
Tenho que desenvolver a programaçao para um projeto que funciona assim:

O projeto tem como objetivo desenvolver um jogo que utiliza o microcomputador LilyPad Arduino, para o qual seria desenvolvido uma programação que atendesse as regras do jogo WearClaps, que são:
Jogo em dupla no qual cada jogador, equipado com seu Wearable ou tangível que possui quatro cores diferentes (vermelho, amarelo,azul,verde), deve se movimentar e relacionar a cor sorteada pelo master com a respectiva cor no seu dispositivo para obedecer o comando. Como se trata de um jogo colaborativo, é a dupla que vence ou perde.
O dispositivo se comunica com o master através do Xbee. Conforme o jogo avança, as fases se tornam mais difíceis, pois o intervalo de tempo entre uma cor e outra mostrada pelo master diminui. Enquanto acertam-se as cores, o jogo prossegue. Quando se erra as cores ou o tempo termina, a dupla perde o jogo.

Tenho um codigo ainda muito incompleto, e sei tbem que há erros nele, mas nao sei resolver.

//Definiçao de constantes//
const int redPin=10;
const int portabuzzer = 11;
const int bluePin = 5;
const int yellowPin=7;
const int greenPin=9;
//Definiçao de variaveis//
int yellowValue;
int greenValue;
int redValue;
int blueValue;
int valorlido = 'Y';
int corcerta;
int corerrada;

void setup()
{
pinMode(portabuzzer, OUTPUT);

pinMode(bluePin, INPUT);
digitalWrite(bluePin, HIGH);
blueValue = digitalRead(bluePin);

pinMode(yellowPin, OUTPUT);
digitalWrite(yellowPin, HIGH);
yellowValue = digitalRead(yellowPin);

pinMode(greenPin, INPUT);
digitalWrite(greenPin, HIGH);
greenValue = digitalRead(greenPin);

pinMode(redPin, INPUT);
digitalWrite(redPin, HIGH);
redValue = digitalRead(redPin);

Serial.begin(9600);
Serial.println('passou por aqui');
}
void loop()
{
valorlido=Serial.read();

blueValue = digitalRead(bluePin);
if (blueValue == LOW) {
Serial.println ("blue") ;
beep(portabuzzer,1024,150);

}
yellowValue = digitalRead(yellowPin);
if (yellowValue == LOW) {
Serial.println ("amarelo");
beep(portabuzzer,1024,150);
if(valorlido=='Y')
{
Serial.println ("cor certa") ;
}
else{
Serial.println ("cor errada");
}
}

greenValue = digitalRead(greenPin);
if (greenValue == LOW) {
Serial.println ("verde") ;
beep(portabuzzer,1024,150);
}

redValue = digitalRead(redPin);
if (redValue == LOW) {
Serial.println ("vermelho") ;
beep(portabuzzer,1024,150);
}
}

void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds)
{
int x;
long delayAmount = (long)(1000000/frequencyInHertz);
long loopTime = (long)((timeInMilliseconds1000)/(delayAmount2));
for (x=0;x<loopTime;x++)
{
digitalWrite(speakerPin,HIGH);
delayMicroseconds(delayAmount);
digitalWrite(speakerPin,LOW);
delayMicroseconds(delayAmount);
}

}

Agredeceria mto se alguem pudesse ajudar.

não percebo o jogo, importas-te de explicar melhor? como é que os pinos das cores vão ser activados?

os pinos sao ativados quando a mesma cor do wearable, q no caso é um bracelete, encosta na mesma cor do outro bracelete, os pinos estariam ligados as cores atravez de linha condutiva e as cores teriam pedaços de tecido condutivo. o q tenho q fazer é um programa que receba as quatro cores sorteadas pelo master, e quando se encostar a cor errada, soar um som de erro pelo buzzer, e o master tem q reconhecer esse erro. e a comunicaçao entre o master e o arduino é feita sem fio pelo xbee.e ainda terei q programar o xbee.