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