aboutsummaryrefslogtreecommitdiff
path: root/src/board.h
blob: 3d3fdc26f27c47203f7ce49dc2ecb598d7845216 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once
#include "config.h"

#define BOARD_ROW_UNITS ((BOARD_WIDTH * 2) + 1)
#define BOARD_UNITS BOARD_ROW_UNITS * BOARD_ROW_UNITS

typedef struct {
  char feature;
  int meeple;
  int structure_group;
} BoardUnit;

static const char EMPTY = ' ';
static const char ANY = '*';
static const char SEPARATOR = '+';

static const int NEIGHBOR_INCREMENTS[] = { -BOARD_ROW_UNITS, 1, BOARD_ROW_UNITS, -1 };

void initialize_board(BoardUnit* board);
int translate_coordinate(int index);
int is_center_index(int index);