blob: e0ed427b8b60c2c08ab038bf8a8143a76c5bb009 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#ifndef SRC_MOVES_H_
#define SRC_MOVES_H_
#include "board/board.hpp"
#include <cstdint>
#include <vector>
enum move_generate_options : std::uint8_t {
ALL,
CAPTUARES_ONLY,
NON_CAPTUARES_ONLY,
};
std::vector<uint16_t> GetLegalMoves(Game *g,
const move_generate_options &options);
std::vector<uint16_t> GetPseudoLegalMoves(const Game &g,
const move_generate_options &options);
Position IndexToPosition(int i);
bool IsSquareAttacked(const Game &g, Position square, bool byColor);
GameState GetNewGameState(Game *g);
#endif /* SRC_MOVES_H_ */
|