/
constants.go
115 lines (91 loc) · 1.61 KB
/
constants.go
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package chessImager
type PositionType int
const (
PositionTypeTopLeft PositionType = iota
PositionTypeTopRight
PositionTypeBottomRight
PositionTypeBottomLeft
PositionTypeMiddle
)
type MoveType int
const (
MoveTypeDots MoveType = iota
MoveTypeArrow
)
type HighlightType int
const (
HighlightTypeFull HighlightType = iota
HighlightTypeBorder
HighlightTypeCircle
HighlightTypeFilledCircle
HighlightTypeX
)
type rankFileType int
const (
rank rankFileType = iota
file
)
type chessPiece int
const (
whitePawn chessPiece = iota
whiteBishop
whiteKnight
whiteRook
whiteQueen
whiteKing
blackPawn
blackBishop
blackKnight
blackRook
blackQueen
blackKing
noPiece
)
type boardType int
const (
boardTypeDefault boardType = iota
boardTypeImage
)
type piecesType int
const (
piecesTypeDefault piecesType = iota
piecesTypeImages
piecesTypeImageMap
)
type rankAndFileType int
const (
rankAndFileTypeNone rankAndFileType = iota
rankAndFileTypeInBorder
rankAndFileTypeInSquares
)
type direction int
const (
directionNorth direction = iota * 45
directionNorthEast
directionEast
directionSouthEast
directionSouth
directionSouthWest
directionWest
directionNorthWest
)
type leftRight int
const (
left leftRight = iota
right
)
type moveStatus int
const (
moveStatusNormal moveStatus = iota
moveStatusEmpty
moveStatusKingSideCastling
moveStatusQueenSideCastling
moveStatusIllegal = 99
)
type castlingStatus int
const (
whiteKingSideCastling castlingStatus = iota
whiteQueenSideCastling castlingStatus = iota
blackKingSideCastling castlingStatus = iota
blackQueenSideCastling castlingStatus = iota
)