Package rules

Types

AbstractCastling
Link copied to clipboard
abstract class AbstractCastling<C : AbstractChess2D>(castleWidth: Int, p1CanCastleLeft: Boolean, p1CanCastleRight: Boolean, p2CanCastleLeft: Boolean, p2CanCastleRight: Boolean) : SpecialRules2D<C>
General Castling Logic
CapablancaCastling
Link copied to clipboard
class CapablancaCastling : AbstractCastling<CapablancaChess>
Castling in Capablanca chess
CastlingDirection
Link copied to clipboard
enum CastlingDirection : Enum<CastlingDirection>
Represents the direction the castling may happen LEFT represents queenside castling (castling with the queenside/left rook) RIGHT represents kingside castling (castling with the kingside/right rook)
Chess960Castling
Link copied to clipboard
class Chess960Castling : AbstractCastling<Chess960>
Castling in chess 960
Enpassant
Link copied to clipboard
class Enpassant : SpecialRules2D<AbstractChess2D>
En Passant in standard chessSpecial pawn capture that can only occur immediately after a pawn makes a move of two squares from its starting square, and it could have been captured by an enemy pawn had it advanced only one square
ForcedCaptureRule
Link copied to clipboard
class ForcedCaptureRule : SpecialRules2D<AbstractChess2D>
Forced capture rule used in checker and anti chess.
GeneralsRule
Link copied to clipboard
class GeneralsRule : SpecialRules2D<AbstractChess2D>
Flying general rule in Janggi and Xiangqi.
SpecialRules
Link copied to clipboard
interface SpecialRules<out G : GameType<B, MG, P, C>, B : Board<B, MG, P, C>, MG : MoveGenerator<B, MG, P, C>, P : Piece<B, MG, P, C>, C : Coordinate>
Represents special rules that can occur under certain conditions
SpecialRules2D
Link copied to clipboard
interface SpecialRules2D<out G : GameType2D> : SpecialRules<G, Board2D, MoveGenerator2D, Piece2D, Coordinate2D>
Implementation of the SpecialRule interface for a 2d square board.
SpecialRules3D
Link copied to clipboard
interface SpecialRules3D<out G : GameType3D> : SpecialRules<G, Board3D, MoveGenerator3D, Piece3D, Coordinate3D>
Implementation of the SpecialRule interface for a 2d square board.
StandardCastling
Link copied to clipboard
class StandardCastling(p1CanCastleLeft: Boolean, p1CanCastleRight: Boolean, p2CanCastleLeft: Boolean, p2CanCastleRight: Boolean) : AbstractCastling<StandardChess>
Castling in standard chess.