#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
// константа - незмінний
const int btnLeft = 8;
const int btnRight = 2;
int basketY = random(0, 2);
int eggX = 15;
int eggY = random(0, 2);
int score = 0;
byte eggChar[8] = {
B00100,
B01110,
B11111,
B11111,
B11111,
B01110,
B00100,
B00000
};
byte basketChar[8] = {
B11111,
B10001,
B10001,
B10001,
B11111,
B01110,
B00100,
B00000
};
void setup() {
lcd.init();
// lcd.begin(); // begin на СенсоКоті
lcd.backlight();
lcd.createChar(0, eggChar);
lcd.createChar(1, basketChar);
pinMode(btnLeft, INPUT);
pinMode(btnRight, INPUT);
}
void loop() {
delay(50); // Швидкість падіння // FPS 20
// Рух кошика
if (digitalRead(btnLeft)) basketY=0;
if (digitalRead(btnRight)) basketY=1;
// Малюємо все
lcd.clear();
lcd.setCursor(0, basketY);
lcd.write(byte(1)); // Кошик
lcd.setCursor(eggX, eggY);
lcd.write(byte(0));
eggX--;
lcd.setCursor(12, 0);
lcd.print("Eggs");
lcd.setCursor(12, 1);
lcd.print(score);
// tone(ніжкаПєзи, частота, тривалість);
// перевірка яєчка на досягнення корзини(лівого краю)
if(eggX<0){
if(eggY==basketY){
score++;
// tone(11, 1000, 100);
}else{
score--;
}
eggX = 11;
eggY = random(0, 2);
}
}