19#ifndef CRAZYHOUSEBOARD_H
20#define CRAZYHOUSEBOARD_H
22#include "westernboard.h"
42 virtual Board* copy()
const;
44 virtual QString variant()
const;
45 virtual bool variantHasDrops()
const;
46 virtual QString defaultFenString()
const;
66 virtual int promotedPieceType(
int type)
const;
70 virtual bool pawnDropOkOnRank(
int rank)
const;
73 virtual int reserveType(
int pieceType)
const;
76 virtual void vMakeMove(
const Move& move,
78 virtual void vUndoMove(
const Move& move);
84 static int normalPieceType(
int type);
Details of a board transition caused by a move.
Definition: boardtransition.h:41
An internal chessboard class.
Definition: board.h:58
A board for Crazyhouse chess.
Definition: crazyhouseboard.h:36
CrazyhousePieceType
Definition: crazyhouseboard.h:56
@ PromotedBishop
Promoted Bishop.
Definition: crazyhouseboard.h:58
@ PromotedRook
Promoted Rook.
Definition: crazyhouseboard.h:59
@ PromotedQueen
Promoted Queen.
Definition: crazyhouseboard.h:60
A small and efficient chessmove class.
Definition: move.h:43
A chess piece.
Definition: piece.h:41
A board for western chess variants.
Definition: westernboard.h:41