Don't use Pin 1 if you don't have to. Pins 0 and 1 are used for hardware Serial and are very handy for talking to the PC.
You did well putting the LED pin numbers in an array but you left the Button pin number array empty.
At the top of the loop() you might want to put the current button and led states into one number:
int buttons = 0;
int leds = 0;
for (int i=0; i<maxbuttonpins; i++)
buttons |= (1<<i);
leds |= (1<<i);
Then you can do things like:
if (buttons == 0) // No buttons are pushed
if (leds == 0) // No LED's are lit
if (buttons == leds) // The button (or buttons) that correspond to the lit LED (or LEDS) are pressed
if ((buttons & leds) != 0) // At least one button corresponding to a lit LED is pressed
If no LED's are lit and no buttons are pressed you probably want to:
delay some random interval
pick an LED at random and turn it on
If an LED is lit and the corresponding button is not pressed, check the timer
if the timer has expired, turn off the LED and note the failure. Keep an array of fails per button.
If the number of fails has hit the limit, blink the LED for the failing user. GAME OVER
If an LED is lit and the corresponding button is pressed, turn off the LED (or turn them all off if that's easier)
You may want to check for buttons pressed that DON'T correspond to a lit LED and count those as failures because the other people should not be pressing their buttons. If you do that, make sure the person who just extinguished a light is not penalized for having the button still down after the light has gone off.