-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconstants.h
68 lines (53 loc) · 1.29 KB
/
constants.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#ifndef CONSTANTS_H
#define CONSTANTS_H
#define NO_COLOR -1
#define WHITE 0
#define BLACK 1
#define PIECE_TAKEN -1
#define BOX_SQUARES 64
#define BOX_LENGTH 8
#define NO_PIECES 16
#define NO_COORD 2
#define EMPTY_CELL 0
#define KING_WHITE_DEFAULT_POS_Y 4
#define KING_BLACK_DEFAULT_POS_Y 3
#define ROOK_DEFAULT_POS_X 0
#define ROOK_LEFT_DEFAULT_POS_Y 0
#define ROOK_RIGHT_DEFAULT_POS_Y 7
#define PAWN_M 1
#define ROOK_M 2
#define KNIGHT_M 3
#define BLACK_BISHOP_M 4
#define WHITE_BISHOP_M 5
#define QUEEN_M 6
#define KING_M 7
#define PAWN_E 11
#define ROOK_E 12
#define KNIGHT_E 13
#define BLACK_BISHOP_E 14
#define WHITE_BISHOP_E 15
#define QUEEN_E 16
#define KING_E 17
// minimax
#define LOW -1000000
#define HIGH 1000000
#define DEPTH 5
#define PRIORITY_EMPTY_CELL 1
#define PRIORITY_PAWN 3
#define PRIORITY_ROOK 6
#define PRIORITY_KNIGHT 4
#define PRIORITY_WHITE_BISHOP 5
#define PRIORITY_BLACK_BISHOP 5
#define PRIORITY_QUEEN 7
#define PRIORITY_KING 2
#define SCORE_PAWN 100
#define SCORE_ROOK 500
#define SCORE_KNIGHT 300
#define SCORE_WHITE_BISHOP 300
#define SCORE_BLACK_BISHOP 300
#define SCORE_QUEEN 900
#define SCORE_KING 0 // schould be on the board
#define SCORE_KING_SAFE 150
#define SCORE_KING_THREATENED -150
#define SCORE_INV_PRO 250 // score invers proportional
#endif // CONSTANTS_H