diff options
-rw-r--r-- | src/main/game/game.c | 13 | ||||
-rw-r--r-- | src/main/game/game.h | 8 |
2 files changed, 17 insertions, 4 deletions
diff --git a/src/main/game/game.c b/src/main/game/game.c index 72d03b1..40547cc 100644 --- a/src/main/game/game.c +++ b/src/main/game/game.c @@ -40,6 +40,8 @@ int sign = 1; int moves = 0; +static void game_draw_field(TrisGame *game, float box_size, float x, float y); + static void draw_sign(float x, float y) { @@ -102,16 +104,21 @@ game_mouse_button_pressed(float x, float y) TrisGame * game_init(int width, int height) { + /* Init of the TrisGame */ TrisGame *game = malloc(sizeof(TrisGame)); if (game == NULL) { log_error("Error allocating memory for the game"); exit(EXIT_FAILURE); } + game->width = width; + game->height = height; + game->cells = list_create(); + engine_init(width, height); ui_set_title("Tris Game"); engine_set_mouse_button_listener(game_mouse_button_pressed); - game_draw_field(0.5, 0, 0); + game_draw_field(game, 0.5, 0, 0); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { @@ -128,8 +135,8 @@ game_start() engine_loop(); } -void -game_draw_field(float _box_size, float x, float y) +static void +game_draw_field(TrisGame *game, float _box_size, float x, float y) { float half_box = _box_size / 2; engine_draw_line(x - half_box, y + half_box * 3, x - half_box, y - half_box * 3); diff --git a/src/main/game/game.h b/src/main/game/game.h index 298cafb..0cb80e0 100644 --- a/src/main/game/game.h +++ b/src/main/game/game.h @@ -20,12 +20,18 @@ #ifndef __GAME_H__ #define __GAME_H__ +#include "../util/list.h" + +typedef struct Cell { + float left, right, top, bottom; +} Cell; + typedef struct TrisGame { int width, height; + list_t *cells; } TrisGame; TrisGame *game_init(int width, int height); void game_start(void); -void game_draw_field(float box_size, float x, float y); #endif /* __GAME_H__ */ |