Scorbaord Reset Button Won't Work if 4 - 7 Are Showing!!

Hi I am new to coding!

I’m making a Scoreboard to show fouls in Roller Hockey on a 4 large 7 segment displays and also on a 20 x 4 LCD display. I have 6 buttons with pull down 10 K ohm resisters. 4 buttons for Home and away team buttons up and down, and a button to switch the scores around at half time, a reset button witch I wanted to delay to prevent any accidental pressing.

Everything is working as I want it to except, When the Home Team score shows 4,5,6,or 7 the reset button stops working? at every other time it works with its delay of having to hold down for 3 seconds!
I don’t know where to look to solve this sort of problem so decided to come to the TOP!!

I think I’ve done this right I’ve pasted the main code in the box and attached it to with the other two tabs that drive the Home and Away Team Large LED Displays.

Thanks for any help
Mike

I’ve attach code as it wont allow me to paste it as its to long and I don’t know what to leave out?

ATNumbers.ino (3.6 KB)

HTNumbers.ino (3.58 KB)

Scorboard_Reset_Button_Not_Working.ino (17.9 KB)

I got dizzy reading that code, and trying to find the useful code between all the commented out stuff.

Put EVERY { on a line BY ITSELF. Put EVERY } on a line BY ITSELF. Use Tool + Auto Format to properly indent that mess.

  ResetButton = digitalRead(ResetButtonPin);//Reset Button

  /////////////////////Reset Button////////////
  if (digitalRead(ResetButton) == LOW) {

???!!!??? You read a 0 or 1 from Pin 22 and then read Pin 0 or Pin 1 to get the button input?!?

That should either be:

  ResetButton = digitalRead(ResetButtonPin);//Reset Button

  /////////////////////Reset Button////////////
  if (ResetButton == LOW) {

or

  /////////////////////Reset Button////////////
  if (digitalRead(ResetButtonPin) == LOW) {