#ifndef __GRID_H #define __GRID_H #include #include #define GRID_WIDTH 10 #define GRID_HEIGHT 16 #define grid_cell(grid, x, y) ((grid)[(x) + ((y) * GRID_WIDTH)]) typedef uint8_t grid_t[GRID_HEIGHT * GRID_WIDTH]; void grid_init(grid_t grid); int grid_check_collision(grid_t grid, int8_t x, int8_t y); // clears all full rows on the board. // Returns the number of rows cleared. uint32_t grid_clear_full_rows(grid_t grid); // Clears the row and moves all rows above down one step. void grid_clear_row(grid_t grid, uint8_t row); #endif /* __GRID_H */