diff options
Diffstat (limited to 'src/main/game/domain')
-rw-r--r-- | src/main/game/domain/board.c | 13 | ||||
-rw-r--r-- | src/main/game/domain/board.h | 6 |
2 files changed, 16 insertions, 3 deletions
diff --git a/src/main/game/domain/board.c b/src/main/game/domain/board.c index e7ae40f..82b1784 100644 --- a/src/main/game/domain/board.c +++ b/src/main/game/domain/board.c @@ -20,6 +20,7 @@ #include <stdlib.h> #include <log.h> #include "board.h" +#include "../../util/list.h" static Log *log = NULL; @@ -31,7 +32,7 @@ init_log(void) } Board * -board_new(void) +board_new(float left, float right, float top, float bottom, float box_size) { init_log(); @@ -45,5 +46,15 @@ board_new(void) board->wining_color = color_new(0.0f, 0.5f, 0.0f, 1.0f); board->draft_color = color_new(0.1f, 0.3f, 0.5f, 1.0f); + board->lines = list_create(); + + /* Vertical lines */ + list_add(board->lines, engine_line_new(left + box_size, top, left + box_size, bottom)); + list_add(board->lines, engine_line_new(right - box_size, top, right - box_size, bottom)); + + /* Horizontal lines */ + list_add(board->lines, engine_line_new(left, top + box_size, right, top + box_size)); + list_add(board->lines, engine_line_new(left, bottom - box_size, right, bottom - box_size)); + return board; } diff --git a/src/main/game/domain/board.h b/src/main/game/domain/board.h index 2d63809..5ed1bf2 100644 --- a/src/main/game/domain/board.h +++ b/src/main/game/domain/board.h @@ -20,14 +20,16 @@ #ifndef __GAME_BOARD_H__ #define __GAME_BOARD_H__ -#include "../../engine/domain/color.h" +#include "../../util/list.h" +#include "../../engine/engine.h" typedef struct { Color *default_color; Color *wining_color; Color *draft_color; + list_t *lines; } Board; -Board *board_new(void); +Board *board_new(float left, float right, float top, float bottom, float box_size); #endif /* __GAME_BOARD_H__ */ |