void loop() { // Zufallszahlen 1-6 // solange die Sprachausgabe läuft -> Taster nicht erneut drücken int Minimum = 1; int Maximum = 7; // 5 Durchgänge while (Runde < 6) { // Spieler 1 if (StartSpieler1) { if (Taste_Spieler1.update()) { if (Taste_Spieler1.read() == LOW) { Serial.println("Runde " + String(Runde)); Serial.println("-----------------------------"); // kurzes "Beep" spielen delay(1000); MP3player.SendSingleMIDInote(); // würfeln int Zahl = random(Minimum, Maximum); // Spielstand Serieller Monitor Serial.println("Spieler 1: gewuerfelte Zahl " + String(Zahl)); delay(1000); /* Sprachausgabe gewürfelte Zahl 211 -> Spieler 1 Track(1) ... Track(6) Zahlen von 1 bis 6 /* nach jeder Sprachausgabe ausreichend Zeit lassen Datei muss geladen und abgespielt werden */ MP3player.playTrack(211); delay(2000); MP3player.playTrack(Zahl); // Summe berechnen und ausgeben SummeSpieler1 = SummeSpieler1 + Zahl; Serial.println("Spieler 1: Summe: " + String(SummeSpieler1)); Serial.println("-----------------------------"); delay(2000); // Sprachausgabe: Summe ausgeben // 101 ... 130 Zahlen von 1 bis 30 MP3player.playTrack(100 + SummeSpieler1); delay(2000); // Wechsel -> Spieler2 ist an der Reihe StartSpieler1 = !StartSpieler1; StartSpieler2 = !StartSpieler2; } } } // Spieler 2 if (StartSpieler2) { if (Taste_Spieler2.update()) { if (Taste_Spieler2.read() == LOW) { delay(1000); MP3player.SendSingleMIDInote(); int Zahl = random(Minimum, Maximum); Serial.println("Spieler 2: gewuerfelte Zahl " + String(Zahl)); delay(1000); MP3player.playTrack(212); delay(2000); MP3player.playTrack(Zahl); SummeSpieler2 = SummeSpieler2 + Zahl; Serial.println("Spieler 2: Summe: " + String(SummeSpieler2)); Serial.println("-----------------------------"); delay(2000); // Summe ausgeben MP3player.playTrack(100 + SummeSpieler2); /* ausreichend Zeit lassen Datei muss geladen und abgespielt werden */ delay(2000); // nur bei Spieler2 Runde hochzählen, Spieler1 hat angefangen Runde ++; // Wechsel -> Spieler1 ist an der Reihe StartSpieler1 = !StartSpieler1; StartSpieler2 = !StartSpieler2; } } } } // unentschieden if (SummeSpieler1 == SummeSpieler2) { Serial.println("unentschieden"); Serial.println("-----------------------------"); MP3player.playTrack(200); delay(2000); // alle Werte zurücksetzen Runde = 1; SummeSpieler1 = 0; SummeSpieler2 = 0; } // Sieger Spieler1 if (SummeSpieler1 > SummeSpieler2) { Serial.println("Sieger Spieler 1"); Serial.println("-----------------------------"); MP3player.playTrack(201); delay(2000); // alle Werte zurücksetzen Runde = 1; SummeSpieler1 = 0; SummeSpieler2 = 0; } // Sieger Spieler2 if (SummeSpieler1 < SummeSpieler2) { Serial.println("Sieger Spieler 2"); Serial.println("-----------------------------"); MP3player.playTrack(202); delay(2000); // alle Werte zurücksetzen Runde = 1; SummeSpieler1 = 0; SummeSpieler2 = 0; } }