summaryrefslogtreecommitdiff
path: root/src/main/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/game')
-rw-r--r--src/main/game/domain/board.c4
-rw-r--r--src/main/game/game.c3
-rw-r--r--src/main/game/game.h2
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;