diff options
Diffstat (limited to 'src/main/game')
-rw-r--r-- | src/main/game/domain/board.c | 4 | ||||
-rw-r--r-- | src/main/game/game.c | 3 | ||||
-rw-r--r-- | src/main/game/game.h | 2 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/main/game/domain/board.c b/src/main/game/domain/board.c index 6859eae..f169c7e 100644 --- a/src/main/game/domain/board.c +++ b/src/main/game/domain/board.c @@ -41,5 +41,9 @@ board_new(void) exit(EXIT_FAILURE); } + board->default_color = color_new(0.0f, 0.0f, 0.2f, 1.0f); + board->wining_color = color_new(0.0f, 0.5f, 0.0f, 1.0f); + board->draft_color; + return board; } diff --git a/src/main/game/game.c b/src/main/game/game.c index ee35f7d..788b5b2 100644 --- a/src/main/game/game.c +++ b/src/main/game/game.c @@ -73,7 +73,7 @@ check_win(TrisGame *game) if (game->cells[i0]->sign != '\0' && game->cells[i0]->sign == game->cells[i1]->sign && game->cells[i1]->sign == game->cells[i2]->sign) { - engine_set_rendering_background(game->engine, 0.0f, 0.5f, 0.0f, 1.0f); + engine_set_rendering_background_c(game->engine, game->board->wining_color); } } } @@ -136,6 +136,7 @@ game_init(int width, int height) game->sign = SIGN_CIRCLE; game->moves = 0; game->engine = engine_new(width, height); + game->board = board_new(); ui_set_title("Tris Game"); engine_set_mouse_button_listener(game_mouse_button_pressed, game); diff --git a/src/main/game/game.h b/src/main/game/game.h index d119f67..f30296c 100644 --- a/src/main/game/game.h +++ b/src/main/game/game.h @@ -24,9 +24,11 @@ #include "cell.h" #include "../engine/engine.h" +#include "domain/board.h" typedef struct TrisGame { int width, height; + Board *board; Cell *cells[BOARD_SIZE]; char sign; /* x = cross and o = circle */ int moves; |