Tic-tac-toe-game/random/random.ino

52 lines
1.5 KiB
C++

#include <M5Core2.h>
void setup() {
M5.begin();
}
void createGrid() {
M5.Lcd.drawLine(0, 80, 320, 80, WHITE);
M5.Lcd.drawLine(0, 160, 320, 160, WHITE);
M5.Lcd.drawLine(106, 0, 106, 320, WHITE);
M5.Lcd.drawLine(212, 0, 212, 320, WHITE);
}
void createCross(int coord_x, int coord_y) {
int COORDS[3][3][4] = {
{{30, 20, 70, 60}, {136, 20, 176, 60}, {242, 20, 282, 60}} ,
{{30, 100, 70, 140}, {136, 100, 176, 140}, {242, 100, 282, 140}} ,
{{30, 180, 70, 220}, {136, 180, 176, 220}, {242, 180, 282, 220}}
};
M5.Lcd.drawLine(COORDS[coord_x][coord_y][0],COORDS[coord_x][coord_y][1],COORDS[coord_x][coord_y][2],COORDS[coord_x][coord_y][3], WHITE);
M5.Lcd.drawLine(COORDS[coord_x][coord_y][0],COORDS[coord_x][coord_y][3],COORDS[coord_x][coord_y][2],COORDS[coord_x][coord_y][1], WHITE);
}
void createCircle(int coord_x, int coord_y) {
int COORDS[3][3][4] = {
{{30, 20, 70, 60}, {136, 20, 176, 60}, {242, 20, 282, 60}} ,
{{30, 100, 70, 140}, {136, 100, 176, 140}, {242, 100, 282, 140}} ,
{{30, 180, 70, 220}, {136, 180, 176, 220}, {242, 180, 282, 220}}
};
M5.Lcd.drawCircle((COORDS[coord_x][coord_y][0] + COORDS[coord_x][coord_y][2]) / 2, (COORDS[coord_x][coord_y][1] + COORDS[coord_x][coord_y][3]) / 2, 20, WHITE);
}
void loop() {
createGrid();
int x;
int y;
for (x = 0; x < 3; x++) {
for (y = 0; y < 3; y++) {
if ((rand() % 2) == 0) {
createCross(x, y);
delay(500);
} else {
createCircle(x, y);
delay(500);
}
}
}
M5.Lcd.clear();
}