#include "Button.h"
#include "GameMemory.h"
Button Buttons[4];
GameMemory GM;
int16_t TimerLeds[4];
uint8_t StateLeds[4];
uint8_t LedPinStart = 6;
uint16_t PreMillis = 0;
void InitButtons()
{
Buttons[0].Init(2, ButtonClick);
Buttons[1].Init(3, ButtonClick);
Buttons[2].Init(4, ButtonClick);
Buttons[3].Init(5, ButtonClick);
}
void setup()
{
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("setup start!!!");
GM.Init(LedPinStart);
GM.Intro();
GM.ResetGame();
GM.Start();
InitButtons();
PreMillis = millis();
}
void loop()
{
// put your main code here, to run repeatedly:
const uint16_t DeltaMillis = millis() - PreMillis;
PreMillis = millis();
for(uint8_t i = 0; i < 4; i++)
Buttons[i].Loop(DeltaMillis);
GM.Loop(DeltaMillis);
}
void ButtonClick(const Button* _self)
{
Serial.print("Button click - ID = ");
Serial.println(_self->ID);
GM.Input(_self->ID);
}