e qui la parte che da problemi
void gioco()
{
while(d==0)
{
premuto1=analogRead(button1);
premuto2=analogRead(button2);
premuto3=analogRead(button3);
a=analogRead(button1);
b=analogRead(button2);
c=analogRead(button3);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("benvenuti");
lcd.setCursor(0,1);
lcd.print("nell'arduquiz");
delay(5000);
lcd.clear();
lcd.print("istruzioni");
delay(2500);
lcd.clear();
lcd.print("tasto 3");
lcd.setCursor(0,1);
lcd.print("saltare la domanda");
delay(2500);
lcd.clear();
lcd.print("gli altri 2 servono ");
lcd.setCursor(0,1);
lcd.print("per indicare le risposte");
delay(2500);
lcd.clear();
lcd.print("risposta giusta");
lcd.setCursor(0,1);
lcd.print("+1000 punti");
delay(2000);
lcd.clear();
lcd.print("risposta sbagliata");
lcd.setCursor(0,1);
lcd.print("- 150 punti");
delay(2000);
lcd.clear();
lcd.print("risposta saltata");
lcd.setCursor(0,1);
lcd.print("+ 0 punti");
delay(2000);
lcd.clear();
lcd.print("per ricominciare");
lcd.setCursor(0,1);
lcd.print("tasto reset");
delay(2000);
lcd.clear();
lcd.print("ogni domanda resta");
lcd.setCursor(0,1);
lcd.print("scritta x 5s");
delay(2000);
lcd.clear();
lcd.print("sono gentile e ");
lcd.setCursor(0,1);
lcd.print("ti regalo un punto");
delay(2000);
lcd.clear();
lcd.print("tasto 1 per iniziare");
delay(1000);
while(!(premuto1>=600))
{
premuto1=analogRead(button1);
premuto2=analogRead(button2);
premuto3=analogRead(button3);
a=analogRead(button1);
b=analogRead(button2);
c=analogRead(button3);
}
if(premuto1>=600)
{
lcd.clear();
lcd.print("ok allora iniziamo :)");
delay(2000);
lcd.clear();
lcd.print("3....");
delay(1000);
lcd.clear();
lcd.print("2.....");
delay(1000);
lcd.clear();
lcd.print("1.........");
delay(1000);
lcd.clear();
lcd.print("viaaaaaaaaaa :)");
delay(500);
lcd.clear();
lcd.print("quale e' la");
lcd.setCursor(0,1);
lcd.print("capitale d'Italia");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("tasto 1 = Roma");
lcd.setCursor(0,1);
lcd.print("tasto 2 = Milano");
delay(1000);
a=0;
b=0;
c=0;
while (! ((a>=600) || (b>=600) || (c>=600))){
premuto1=analogRead(button1);
premuto2=analogRead(button2);
premuto3=analogRead(button3);
a=analogRead(button1);
b=analogRead(button2);
c=analogRead(button3);
}
if(premuto1>600)
{
punteggio+1000; // qui non da i punti
punteggio2=punteggio;
}
if(premuto2>=600)
{
punteggio=punteggio - 150;
punteggio2=punteggio;
}
if(premuto3>=600);
{
punteggio=punteggio + 1;
}
lcd.clear();
lcd.print("punteggio");
lcd.setCursor(0,1);
lcd.print(punteggio);
delay(1000);
lcd.clear();
lcd.print("quale e' la capitale");
lcd.setCursor(0,1);
lcd.print("dell'India");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("tasto 1 = guarana'");
lcd.setCursor(0,1);
lcd.print("tasto 2 = New Delhi");
delay(1000);
while (! ((a>=600) || (b>=600) || (c>=600))){ // da qui in poi non si ferma più ad aspettare la risposta
premuto1=analogRead(button1);
premuto2=analogRead(button2);
premuto3=analogRead(button3);
a=analogRead(button1);
b=analogRead(button2);
c=analogRead(button3);
}
if(premuto1==HIGH)
{
punteggio=punteggio - 150;
punteggio2=punteggio;
}
if(premuto2==HIGH)
{
punteggio=punteggio + 1000;
punteggio2=punteggio;
}
if(premuto3==HIGH)
{
punteggio=punteggio + 0;
punteggio2=punteggio;
}
lcd.print("punteggio");
lcd.setCursor(0,1);
lcd.print(punteggio);
delay(1500);
lcd.clear();
lcd.print("quanto fa");
lcd.setCursor(0,1);
lcd.print("1+1-1x1:1");
delay(5000);
lcd.print("tasto 1=0");
lcd.setCursor(0,1);
lcd.print("tasto 2=1");
while (! ((a>=600) || (b>=600) || (c>=600))){
premuto1=analogRead(button1);
premuto2=analogRead(button2);
premuto3=analogRead(button3);
a=analogRead(button1);
b=analogRead(button2);
c=analogRead(button3);
}
if(premuto1>600);
{
punteggio=punteggio-150;
}
if(premuto2>600);
{
punteggio=punteggio+1000;
}
if(premuto3>600)
{
punteggio=punteggio+0;
}
lcd.clear();
lcd.print("punteggio");
lcd.setCursor(0,1);
lcd.print(punteggio);
delay(1000);
lcd.clear();
}
}
if(premuto1<600)
{
delay(10);
}
}
ho dovuto inserire il codice in 2 risposte perchè era troppo lungo