Score going up without button being pressed

I'm trying to restore an old scoreboard using an Arduino Mega 2560 and modifying a code from another scoreboard project.

But whenever I start the program the score goes up without pressing any buttons, holding down the button will stop the score then it'll continue counting up after I let go.
I did try wiring the buttons to 5v but it still does the same thing.
Also the Red12 isn't lighting up, I tested the wiring and that's all good, so I'm not sure why that's happening.

Any ideas on what I can do to solve these issues would be greatly appreciated!

Here's a video of what's happening

// SHUFFLEBOARD SCOREBOARD RETROFIT - 2021
// FINALIZED Ver 1.0
// by Doug Wynne
 
int greenscore = 0;     // up greenscore intitalized at 0
int redscore = 0;      // up redscore intitalized at 0
int greenbuttonstate = LOW;  // initialize green button state
int redbuttonstate = LOW;   // initialize red button state
int gamepoints = 21;    // defaults game mode 0 (21 pts)


//PIN MAPPING

int go = 0; //gameover light
int p2 = 45; //2 Player Lights
int p4 = 47; //4 Player Lights

//green point lights
int g1 = 1;
int g2 = 2;
int g3 = 3;
int g4 = 4;
int g5 = 5;
int g6 = 6;
int g7 = 7;
int g8 = 8;
int g9 = 9;
int g10 = 10;
int g11 = 11;
int g12 = 12;
int g13 = 13;
int g14 = 14;
int g15 = 15;
int g16 = 16;
int g17 = 17;
int g18 = 18;
int g19 = 19;
int g20 = 20;
int g21 = 21;

//red point lights
int r1 = 22;
int r2 = 23;
int r3 = 24;
int r4 = 25;
int r5 = 26;
int r6 = 27;
int r7 = 28;
int r8 = 29;
int r9 = 30;
int r10 = 31;
int r11 = 32;
int r12 = 33;
int r13 = 34;
int r14 = 35; 
int r15 = 36;
int r16 = 37;
int r17 = 38;
int r18 = 39;
int r19 = 40;
int r20 = 41;
int r21 = 42;

int redbutton = 52;
int greenbutton = 53;

 
void setup() 
{ 
    pinMode(g1, OUTPUT);              //initialize ouputs
    pinMode(g2, OUTPUT);
    pinMode(g3, OUTPUT);  
    pinMode(g4, OUTPUT);
    pinMode(g5, OUTPUT);
    pinMode(g6, OUTPUT);
    pinMode(g7, OUTPUT);
    pinMode(g8, OUTPUT);
    pinMode(g9, OUTPUT);
    pinMode(g10, OUTPUT);
    pinMode(g11, OUTPUT);
    pinMode(g12, OUTPUT);
    pinMode(g13, OUTPUT);
    pinMode(g14, OUTPUT);
    pinMode(g15, OUTPUT);
    pinMode(g16, OUTPUT);
    pinMode(g17, OUTPUT);
    pinMode(g18, OUTPUT);
    pinMode(g19, OUTPUT);
    pinMode(g20, OUTPUT);
    pinMode(g21, OUTPUT);

    pinMode(r1, OUTPUT);              //initialize ouputs
    pinMode(r2, OUTPUT);
    pinMode(r3, OUTPUT);  
    pinMode(r4, OUTPUT);
    pinMode(r5, OUTPUT);
    pinMode(r6, OUTPUT);
    pinMode(r7, OUTPUT);
    pinMode(r8, OUTPUT);
    pinMode(r9, OUTPUT);
    pinMode(r10, OUTPUT);
    pinMode(r11, OUTPUT);
    pinMode(r12, OUTPUT);
    pinMode(r13, OUTPUT);
    pinMode(r14, OUTPUT);
    pinMode(r15, OUTPUT);
    pinMode(r16, OUTPUT);
    pinMode(r17, OUTPUT);
    pinMode(r18, OUTPUT);
    pinMode(r19, OUTPUT);
    pinMode(r20, OUTPUT);
    pinMode(r21, OUTPUT);

    pinMode(go, OUTPUT);
    pinMode(p2, OUTPUT);

    pinMode(redbutton, INPUT);
    pinMode(greenbutton, INPUT);



//INITIALIZE ALL I/O

    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);

    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);

    digitalWrite(go,LOW);
    digitalWrite(p2,HIGH);
} 
 
void loop() 
{  

  //BUTTON INPUT READ
  
  greenbuttonstate = digitalRead(greenbutton);                //check green button pressed
  delay(30);                                //wait for check
  redbuttonstate = digitalRead(redbutton);            //check red button pressed
  delay(30);                                //wait for check


  if(greenbuttonstate == HIGH)                      //if selection button pressed statement
  {
   greenscore=greenscore + 1; 
   delay(200); 
   greenbuttonstate = LOW;
  }

  if(redbuttonstate == HIGH)                      //if selection button pressed statement
  {
   redscore=redscore + 1; 
   delay(200); 
   redbuttonstate = LOW;
  }

  /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  switch(greenscore)
  {
    case 0:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 1:
    digitalWrite(g1,HIGH);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 2:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,HIGH);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 3:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,HIGH);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 4:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,HIGH);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 5:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,HIGH);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 6:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,HIGH);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 7:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,HIGH);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 8:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,HIGH);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 9:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,HIGH);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 10:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,HIGH);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 11:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,HIGH);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 12:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,HIGH);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 13:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,HIGH);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 14:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,HIGH);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 15:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,HIGH);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 16:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,HIGH);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 17:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,HIGH);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 18:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,HIGH);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 19:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,HIGH);
    digitalWrite(g20,LOW);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 20:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,HIGH);
    digitalWrite(g21,LOW);
    greenbuttonstate = LOW;
    break;
    case 21:
    digitalWrite(g1,LOW);             
    digitalWrite(g2,LOW);    
    digitalWrite(g3,LOW);
    digitalWrite(g4,LOW);
    digitalWrite(g5,LOW);
    digitalWrite(g6,LOW);
    digitalWrite(g7,LOW);
    digitalWrite(g8,LOW);
    digitalWrite(g9,LOW);             
    digitalWrite(g10,LOW);    
    digitalWrite(g11,LOW);
    digitalWrite(g12,LOW);
    digitalWrite(g13,LOW);
    digitalWrite(g14,LOW);
    digitalWrite(g15,LOW);
    digitalWrite(g16,LOW);
    digitalWrite(g17,LOW);
    digitalWrite(g18,LOW);
    digitalWrite(g19,LOW);
    digitalWrite(g20,LOW);
    digitalWrite(g21,HIGH);
    greenbuttonstate = LOW;
    break;
  }

///////////////////////////////////////////////////////////////////////////////////////////
  
  switch(redscore)
  {
    case 0: 
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 1:
    digitalWrite(r1,HIGH);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 2:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,HIGH);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 3:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,HIGH);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 4:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,HIGH);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 5:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,HIGH);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 6:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,HIGH);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 7:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,HIGH);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 8:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,HIGH);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 9:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,HIGH);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 10:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,HIGH);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 11:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,HIGH);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,HIGH);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 13:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,HIGH);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 14:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,HIGH);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 15:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,HIGH);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 16:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,HIGH);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 17:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,HIGH);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 18:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,HIGH);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 19:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,HIGH);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 20:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,HIGH);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;
    case 21:
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,HIGH);
    redbuttonstate = LOW;
    break;
  }


////////GAME SCOREKEEPING

while(greenscore == gamepoints)
{
  digitalWrite(p2,LOW);
   digitalWrite(go,HIGH);
   delay(888);  
   digitalWrite(go,LOW);
   delay(888);  
}

while(redscore == gamepoints)
{
  digitalWrite(p2,LOW);
   digitalWrite(go,HIGH);
   delay(888);  
   digitalWrite(go,LOW);
   delay(888);  
}

} 

    

Connect switches to GND and input and try INPUT_PULLUP instead. See S3 below.

1 Like

Suggest you learn how to use arrays.


Also, it’s best to look at switch changes in state rather than switch levels.

As mentioned, switches connected to GND with internal pull-ups enabled (or using external pull-ups) is the best/recommended way to wire them.

You then look for a LOW as a switch press or switch closed condition.


Avoid using delay(…) as it stops code execution for that duration.

Avoid using while(…) as it can stop code execution until an event occurs.

Thanks!
Adding the Pullup the the inputs and swapping the HIGH's and LOW's worked! the buttons are finally working normally

Now I just need to figure out why the Red 12 light isn't lighting up. I swapped it with another light and it worked fine but the other did not. so It seems to be an issue with the pin its connected to (33).
Is there any issues with having an led on pin 33?

EDIT:
Nevermind I figured out the problem. I was missing the "Case 12" in the code. Of course it was something simple XD

Got it all working now, thanks again for the help!

33 is usable.


Why not use an array then use a for( ) loop to set all pins low, then make pins HIGH as needed ? :thinking:


case 0: 
    digitalWrite(r1,LOW);             
    digitalWrite(r2,LOW);    
    digitalWrite(r3,LOW);
    digitalWrite(r4,LOW);
    digitalWrite(r5,LOW);
    digitalWrite(r6,LOW);
    digitalWrite(r7,LOW);
    digitalWrite(r8,LOW);
    digitalWrite(r9,LOW);             
    digitalWrite(r10,LOW);    
    digitalWrite(r11,LOW);
    digitalWrite(r12,LOW);
    digitalWrite(r13,LOW);
    digitalWrite(r14,LOW);
    digitalWrite(r15,LOW);
    digitalWrite(r16,LOW);
    digitalWrite(r17,LOW);
    digitalWrite(r18,LOW);
    digitalWrite(r19,LOW);
    digitalWrite(r20,LOW);
    digitalWrite(r21,LOW);
    redbuttonstate = LOW;
    break;

. . .

that would probably be way better but I know very little about codeing and I don't have enough time to learn how to do an array.

I got it figured out though, turns out I missed the case 12 in the code

Note to self:

When I get time, learn how to use arrays.

1 Like

I think I would have to learn how to code first

If LED pins are in sequence, you do not even need to use arrays.

#define LEDon         HIGH
#define LEDoff        LOW

//red pobyte lights
byte r1 = 22;
byte r2 = 23;
byte r3 = 24;
byte r4 = 25;
byte r5 = 26;
byte r6 = 27;
byte r7 = 28;
byte r8 = 29;
byte r9 = 30;
byte r10 = 31;
byte r11 = 32;
byte r12 = 33;
byte r13 = 34;
byte r14 = 35;
byte r15 = 36;
byte r16 = 37;
byte r17 = 38;
byte r18 = 39;
byte r19 = 40;
byte r20 = 41;
byte r21 = 42;

//**************************************************
void setup()
{
  // put your setup code here, to run once:

} //END of   setup()


//**************************************************
void loop()
{

  //. . .


  case 1:
  {
    allRedLEDsOff();
    digitalWrite(r1, LEDon);
    redbuttonstate = LOW;
  }
  break;


} //END of   loop()


//**************************************************
void allRedLEDsOff()
{
  for (byte x = 22; x <= 42; x++)
  {
    digitalWrite(x, LEDoff);
  }

} //END of   allRedLEDsOff()

Learning how to use arrays will save you time.

With arrays, you would not have needed all of those cases. That's what I mean by saving time.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.