AddPromotion

data class AddPromotion(moveGenerators: List<MoveGenerator2D>, region: Region2D, promoPieces: List<Piece2D>, forced: Boolean) : MoveGenerator2D

A piece can be promoted to another piece in a specific region

Constructors

AddPromotion
Link copied to clipboard
fun AddPromotion(move: MoveGenerator2D, region: Region2D, promoPieces: List<Piece2D>, forced: Boolean)
AddPromotion
Link copied to clipboard
fun AddPromotion(moveGenerators: List<MoveGenerator2D>, region: Region2D, promoPieces: List<Piece2D>, forced: Boolean)

Functions

component1
Link copied to clipboard
operator fun component1(): List<MoveGenerator2D>
component2
Link copied to clipboard
operator fun component2(): Region2D
component3
Link copied to clipboard
operator fun component3(): List<Piece2D>
component4
Link copied to clipboard
operator fun component4(): Boolean
copy
Link copied to clipboard
fun copy(moveGenerators: List<MoveGenerator2D>, region: Region2D, promoPieces: List<Piece2D>, forced: Boolean): MoveGenerator2D.AddPromotion
equals
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
generate
Link copied to clipboard
open override fun generate(board: Board2D, coordinate: Coordinate2D, piece: Piece2D, player: Player): List<BasicMove2D>
Takes in the current board, the piece to be moved and its coordinate, and the player who makes the move to return all possible game moves corresponding to the given type of movement.
hashCode
Link copied to clipboard
open override fun hashCode(): Int
toString
Link copied to clipboard
open override fun toString(): String

Properties

forced
Link copied to clipboard
val forced: Boolean
true if the piece must be promoted to one of promoPieces
moveGenerators
Link copied to clipboard
val moveGenerators: List<MoveGenerator2D>
promoPieces
Link copied to clipboard
val promoPieces: List<Piece2D>
a list of pieces that the piece can be promoted to
region
Link copied to clipboard
val region: Region2D
the region that the promotion can occur