82 virtual Board* copy()
const;
84 virtual QString variant()
const;
85 virtual bool variantHasDrops()
const;
86 virtual bool variantHasOptionalPromotions()
const;
87 virtual QString defaultFenString()
const;
89 virtual int width()
const;
90 virtual int height()
const;
121 static const unsigned KnightMovement = 2;
123 static const unsigned BishopMovement = 4;
125 static const unsigned RookMovement = 8;
127 static const unsigned FerzMovement = 16;
129 static const unsigned WazirMovement = 64;
131 static const unsigned LanceMovement = 128;
133 static const unsigned SilverMovement = 256;
135 static const unsigned GoldMovement = 512;
140 virtual int promotedPieceType(
int type)
const;
144 virtual int promotionRank()
const;
148 virtual int normalPieceType(
int type)
const;
153 virtual bool ranksAreAllowed()
const;
157 virtual bool hasImpassePointRule()
const;
163 virtual Result impassePointRule(
int points,
int pieces)
const;
166 virtual int reserveType(
int pieceType)
const;
167 virtual void vInitialize();
169 virtual bool vSetFenString(
const QStringList& fen);
172 virtual Move moveFromLanString(
const QString& str);
173 virtual Move moveFromSanString(
const QString& str);
174 virtual void vMakeMove(
const Move& move,
176 virtual void vUndoMove(
const Move& move);
180 virtual bool isLegalPosition();
181 virtual bool vIsLegalMove(
const Move& move);
182 virtual bool inCheck(
Side side,
int square = 0)
const;
191 bool rankIsAllowed(
int pieceType,
int square)
const;
192 bool fileIsAllowed(
int pieceType,
int square)
const;
193 bool inPromotionZone(
int square)
const;
194 Result resultFromImpassePointRule()
const;
201 bool m_multiDigitNotation;
202 bool m_hasImpassePointRule;
Details of a board transition caused by a move.
Definition: boardtransition.h:41
An internal chessboard class.
Definition: board.h:58
FenNotation
Definition: board.h:94
CoordinateSystem
Definition: board.h:64
A small and efficient chessmove class.
Definition: move.h:43
A chess piece.
Definition: piece.h:41
The result of a chess game.
Definition: result.h:35
A board for Shogi.
Definition: shogiboard.h:76
ShogiPieceType
Definition: shogiboard.h:98
@ Knight
Cassia Horse N (Keima) KE.
Definition: shogiboard.h:101
@ PromotedLance
Promoted Incense +L (Narikyō) NY.
Definition: shogiboard.h:113
@ PromotedBishop
Dragon Horse +B (Ryūma) UM.
Definition: shogiboard.h:116
@ PromotedPawn
Reaches Gold +P (Tokin) TO.
Definition: shogiboard.h:112
@ PromotedKnight
Promoted Cassia +N (Narikei) NK.
Definition: shogiboard.h:114
@ SilverGeneral
Silver General S (Ginshō) GI.
Definition: shogiboard.h:102
@ Bishop
Angle Mover B (Kakugyō) KA.
Definition: shogiboard.h:104
@ Lance
Incense Chariot L (Kyōsha) KY.
Definition: shogiboard.h:100
@ Rook
Flying Chariot R (Hisha) HI.
Definition: shogiboard.h:105
@ PromotedSilver
Promoted Silver +S (Narigin) NG.
Definition: shogiboard.h:115
@ GoldGeneral
Gold General G (Kinshō) KI.
Definition: shogiboard.h:103
The side or color of a chess player.
Definition: side.h:36