|
Cute Chess 0.1
|
A board for Judkins shogi. More...
#include <judkinsshogiboard.h>
Public Member Functions | |
| virtual Board * | copy () const |
| virtual QString | defaultFenString () const |
| virtual int | height () const |
| JudkinsShogiBoard () | |
| virtual QString | variant () const |
| virtual int | width () const |
Public Member Functions inherited from Chess::ShogiBoard | |
| virtual CoordinateSystem | coordinateSystem () const |
| virtual Board * | copy () const |
| virtual QString | defaultFenString () const |
| virtual int | height () const |
| virtual QList< Piece > | reservePieceTypes () const |
| virtual Result | result () |
| ShogiBoard () | |
| virtual QString | variant () const |
| virtual bool | variantHasDrops () const |
| virtual bool | variantHasOptionalPromotions () const |
| virtual int | width () const |
Public Member Functions inherited from Chess::Board | |
| Board (Zobrist *zobrist) | |
| virtual CoordinateSystem | coordinateSystem () const |
| virtual Board * | copy () const =0 |
| virtual QString | defaultFenString () const =0 |
| QString | fenString (FenNotation notation=XFen) const |
| GenericMove | genericMove (const Move &move) const |
| virtual int | height () const =0 |
| void | initialize () |
| bool | isLegalMove (const Move &move) |
| virtual bool | isRandomVariant () const |
| bool | isRepetition (const Move &move) |
| bool | isValidSquare (const Square &square) const |
| quint64 | key () const |
| QVector< Move > | legalMoves () |
| void | makeMove (const Move &move, BoardTransition *transition=nullptr) |
| Move | moveFromGenericMove (const GenericMove &move) const |
| Move | moveFromString (const QString &str) |
| QString | moveString (const Move &move, MoveNotation notation) |
| Piece | pieceAt (const Square &square) const |
| Piece | pieceFromSymbol (const QString &pieceSymbol) const |
| QStringList | pieceList (Side side) const |
| QString | pieceString (int pieceType) const |
| QString | pieceSymbol (Piece piece) const |
| int | plyCount () const |
| int | repeatCount () const |
| QString | representation (Piece piece) const |
| int | reserveCount (Piece piece) const |
| virtual QList< Piece > | reservePieceTypes () const |
| void | reset () |
| virtual Result | result ()=0 |
| virtual int | reversibleMoveCount () const |
| bool | setFenString (const QString &fen) |
| Side | sideToMove () const |
| QString | startingFenString () const |
| Side | startingSide () const |
| virtual Result | tablebaseResult (unsigned int *dtm=nullptr) const |
| void | undoMove () |
| virtual Side | upperCaseSide () const |
| virtual QString | variant () const =0 |
| virtual bool | variantHasDrops () const |
| virtual bool | variantHasWallSquares () const |
| virtual int | width () const =0 |
| virtual | ~Board () |
Protected Member Functions | |
| virtual Result | impassePointRule (int points, int) const |
Protected Member Functions inherited from Chess::ShogiBoard | |
| virtual void | generateMovesForPiece (QVarLengthArray< Move > &moves, int pieceType, int square) const |
| virtual bool | hasImpassePointRule () const |
| virtual Result | impassePointRule (int points, int pieces) const |
| virtual bool | inCheck (Side side, int square=0) const |
| virtual bool | isLegalPosition () |
| virtual QString | lanMoveString (const Move &move) |
| virtual Move | moveFromLanString (const QString &str) |
| virtual Move | moveFromSanString (const QString &str) |
| virtual int | normalPieceType (int type) const |
| virtual int | promotedPieceType (int type) const |
| virtual int | promotionRank () const |
| virtual bool | ranksAreAllowed () const |
| virtual int | reserveType (int pieceType) const |
| virtual QString | sanMoveString (const Move &move) |
| virtual QString | vFenString (FenNotation notation) const |
| virtual void | vInitialize () |
| virtual bool | vIsLegalMove (const Move &move) |
| virtual void | vMakeMove (const Move &move, BoardTransition *transition) |
| virtual bool | vSetFenString (const QStringList &fen) |
| virtual void | vUndoMove (const Move &move) |
Protected Member Functions inherited from Chess::Board | |
| void | addToReserve (const Piece &piece, int count=1) |
| int | arraySize () const |
| bool | canMove () |
| virtual int | captureType (const Move &move) const |
| Square | chessSquare (const QString &str) const |
| Square | chessSquare (int index) const |
| void | generateDropMoves (QVarLengthArray< Move > &moves, int pieceType) const |
| void | generateHoppingMoves (int sourceSquare, const QVarLengthArray< int > &offsets, QVarLengthArray< Move > &moves) const |
| void | generateMoves (QVarLengthArray< Move > &moves, int pieceType=Piece::NoPiece) const |
| virtual void | generateMovesForPiece (QVarLengthArray< Move > &moves, int pieceType, int square) const =0 |
| void | generateSlidingMoves (int sourceSquare, const QVarLengthArray< int > &offsets, QVarLengthArray< Move > &moves) const |
| virtual bool | isLegalPosition ()=0 |
| virtual QString | lanMoveString (const Move &move) |
| const Move & | lastMove () const |
| virtual int | maxPieceSymbolLength () const |
| bool | moveExists (const Move &move) const |
| virtual Move | moveFromLanString (const QString &str) |
| virtual Move | moveFromSanString (const QString &str)=0 |
| Piece | pieceAt (int square) const |
| bool | pieceHasMovement (int pieceType, unsigned movement) const |
| void | removeFromReserve (const Piece &piece) |
| virtual int | reserveType (int pieceType) const |
| virtual QString | sanMoveString (const Move &move)=0 |
| void | setPieceType (int type, const QString &name, const QString &symbol, unsigned movement=0, const QString &gsymbol=QString()) |
| void | setSquare (int square, Piece piece) |
| int | squareIndex (const QString &str) const |
| int | squareIndex (const Square &square) const |
| QString | squareString (const Square &square) const |
| QString | squareString (int index) const |
| virtual QString | vFenString (FenNotation notation) const =0 |
| virtual void | vInitialize ()=0 |
| virtual bool | vIsLegalMove (const Move &move) |
| virtual void | vMakeMove (const Move &move, BoardTransition *transition)=0 |
| virtual bool | vSetFenString (const QStringList &fen)=0 |
| virtual void | vUndoMove (const Move &move)=0 |
| void | xorKey (quint64 key) |
Additional Inherited Members | |
Public Types inherited from Chess::Board | |
| enum | CoordinateSystem { NormalCoordinates , InvertedCoordinates } |
| enum | FenNotation { XFen , ShredderFen } |
| enum | MoveNotation { StandardAlgebraic , LongAlgebraic } |
Protected Types inherited from Chess::ShogiBoard | |
| enum | ShogiPieceType { Pawn = 1 , Lance , Knight , SilverGeneral , GoldGeneral , Bishop , Rook , King , PromotedPawn , PromotedLance , PromotedKnight , PromotedSilver , PromotedBishop , PromotedRook } |
Static Protected Attributes inherited from Chess::ShogiBoard | |
| static const unsigned | BishopMovement = 4 |
| static const unsigned | FerzMovement = 16 |
| static const unsigned | GoldMovement = 512 |
| static const unsigned | KnightMovement = 2 |
| static const unsigned | LanceMovement = 128 |
| static const unsigned | RookMovement = 8 |
| static const unsigned | SilverMovement = 256 |
| static const unsigned | WazirMovement = 64 |
A board for Judkins shogi.
Judkins shogi is a variant of Shogi which is played on a 6x6 board. In this variant either side begins with one King, one Gold General, one SilverGeneral, one Knight, one Bishop, one Rook (all on their base rank), and one Pawn in front of the King. Shogi rules apply.
The promotion zone consists of the two highest ranks. In case of a fourfold repetition of moves, the side giving perpetual check loses, else the game is drawn.
Judkins shogi was introduced in 1998 by Paul Judkins, Norwich, UK.
| Chess::JudkinsShogiBoard::JudkinsShogiBoard | ( | ) |
Creates a new JudkinsShogiBoard object.
|
virtual |
Creates and returns a deep copy of this board.
Reimplemented from Chess::ShogiBoard.
|
virtual |
Returns the variant's default starting FEN string.
Reimplemented from Chess::ShogiBoard.
|
virtual |
Returns the height of the board in squares.
Reimplemented from Chess::ShogiBoard.
|
protectedvirtual |
Criteria of impasse rule limit given material value of points and the number of pieces of the side to move in the promotion zone.
Reimplemented from Chess::ShogiBoard.
|
virtual |
Returns the name of the chess variant.
Reimplemented from Chess::ShogiBoard.
|
virtual |
Returns the width of the board in squares.
Reimplemented from Chess::ShogiBoard.