AnnaConnect/types.h

45 lines
648 B
C

/* SPDX-License-Identifier: GPL-2.0-only */
#pragma once
#include <stdint.h>
#include "config.h"
typedef enum {
PUT,
POP
} move_t;
typedef struct {
int player;
int *height;
int *column;
uint8_t rows;
uint8_t columns;
} board_t;
typedef struct {
int *vertical2;
int *horizontal2;
int *diagonalUp2;
int *diagonalDown2;
int *vertical4;
int *horizontal4;
int *diagonalUp4;
int *diagonalDown4;
} directions_t;
typedef struct {
int total;
int horizontal;
int vertical;
int diagonalUp;
int diagonalDown;
} wincount_t;
typedef struct {
wincount_t count0;
wincount_t count1;
int *win0;
int *win1;
directions_t same;
} wins_t;