From 57e15bbaf75303e1e2a459eda356b48fbbfb3e16 Mon Sep 17 00:00:00 2001 From: David Husicka Date: Mon, 15 Nov 2021 22:20:16 +0100 Subject: [PATCH] =?UTF-8?q?wtf=20obd=C3=A9ln=C3=ADk=20v=20zad=C3=ADn=C3=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 2048.c | 17 +++++++++-------- 2048.h | 4 ++-- main.c | 2 +- tui.c | 4 ++-- tui.h | 1 - 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/2048.c b/2048.c index 23eec87..c39b31c 100644 --- a/2048.c +++ b/2048.c @@ -6,20 +6,21 @@ void game_add_block(Game game) { size_t x, y; int value; do { - x = rand() % game.field_size; - y = rand() % game.field_size; + x = rand() % game.field_size_x; + y = rand() % game.field_size_y; value = (rand() % 2) + 1; } while (game.field[x][y] != 0); game.field[x][y] = value * 2; } -Game game_init(size_t field_size) { +Game game_init(size_t field_size_x, size_t field_size_y) { Game game; - game.field_size = field_size; + game.field_size_x = field_size_x; + game.field_size_y = field_size_y; game.score = 0; - game.field = malloc(sizeof(uint16_t *) * field_size); - for (size_t i = 0; i < field_size; i++) { - game.field[i] = calloc(field_size, sizeof(uint16_t) * field_size); + game.field = malloc(sizeof(uint16_t *) * field_size_y); + for (size_t i = 0; i < field_size_y; i++) { + game.field[i] = calloc(field_size_x, sizeof(uint16_t) * field_size_x); } time_t t; @@ -30,7 +31,7 @@ Game game_init(size_t field_size) { } void game_destroy(Game game) { - for (size_t i = 0; i < game.field_size; i++) { + for (size_t i = 0; i < game.field_size_y; i++) { free(game.field[i]); } free(game.field); diff --git a/2048.h b/2048.h index fc01302..0d2adee 100644 --- a/2048.h +++ b/2048.h @@ -15,11 +15,11 @@ typedef enum Direction { typedef struct Game { uint32_t score; - size_t field_size; + size_t field_size_x, field_size_y; uint16_t **field; } Game; -Game game_init(size_t field_size); +Game game_init(size_t field_size_x, size_t field_size_y); uint8_t game_move(Game *game, Direction direction); void game_destroy(Game game); diff --git a/main.c b/main.c index 65f12f5..e4c50a2 100644 --- a/main.c +++ b/main.c @@ -5,7 +5,7 @@ int main(int argc, char *argv[]) { Game game; - game = game_init(4); + game = game_init(4, 4); tui_init(); tui_loop(&game); diff --git a/tui.c b/tui.c index 0ab940d..90c66ab 100644 --- a/tui.c +++ b/tui.c @@ -20,8 +20,8 @@ void tui_loop(Game *game) { while(true){ // printing the game state is fun clear(); - for (size_t i = 0; i < game->field_size; i++) { - for (size_t j = 0; j < game->field_size; j++) { + for (size_t i = 0; i < game->field_size_y; i++) { + for (size_t j = 0; j < game->field_size_x; j++) { mvprintw(i * space_between_cells_y, j * space_between_cells_x, "%d", game->field[i][j]); } } diff --git a/tui.h b/tui.h index 6a2a421..99852e6 100644 --- a/tui.h +++ b/tui.h @@ -4,7 +4,6 @@ #define HEADER_TUI typedef struct TUI { - } TUI; void tui_init();