Paso 5: Apriete el código
Mientras que integra la opción de 2 jugadores en el juego me di cuenta de la función input() de ambas opciones en el mismo. Todo lo que necesitaba hacer era añadir un par de líneas de código al final de la función para que el juego puede manejar la vuelta contando en base a qué juego se está jugando. Para el juego de jugador 1 se compara el número de vueltas para el límite de giro y anunciar al jugador como un ganador si el contador de vuelta es mayor. La opción de 2 jugadores comprueba para asegurarse de que los jugadores no van a exceder el límite de 100 vuelta del juego.Luego pasé por el código para encontrar otras maneras para apretarlo. Me di cuenta de que cualquier momento era golpear un botón o un LED debe ser luz de las mismas líneas básicas de código donde. Así que creado 4 funciones para llamar a cada vez que se pulsa un botón o el juego era iluminación LED para que usted pueda memorizar.
void button1() //LED muestra y tono sonaba para el LED rojo y el botón 1
{
digitalWrite (ledpin [0], HIGH);
speakerpin.Play (NOTE_G3, 100);
Delay(200);
digitalWrite (ledpin [0], LOW);
Delay(300);
}void button2()
{
digitalWrite (ledpin [1], HIGH);
speakerpin.Play (NOTE_A3, 100);
Delay(200);
digitalWrite (ledpin [1], LOW);
Delay(300);
}void button3()
{
digitalWrite (ledpin [2], HIGH);
speakerpin.Play (NOTE_B3, 100);
Delay(200);
digitalWrite (ledpin [2], LOW);
Delay(300);
}void button4()
{
digitalWrite (ledpin [3], HIGH);
speakerpin.Play (NOTE_C4, 100);
Delay(200);
digitalWrite (ledpin [3], LOW);
Delay(300);
}
Todo lo que necesitaba es una función por botón/LED de color. Cualquier momento una luces del LED o el botón es pulsado el LED se enciende para arriba, la misma nota se juega y el LED se apaga. Estas funciones se utilizan 22 tiempo en todo el código. Reducir el código en aproximadamente 1000 bytes.
Muchos otros poco ajustes y cambios que a lo largo del proceso de codificación que ayudan a ajustar el código y hacerlo más eficiente.