public Square this[File file, Rank rank] { get { var rankAndFile = new RankFile(file, rank); return(this[rankAndFile]); } set { var rankAndFile = new RankFile(file, rank); this[rankAndFile] = value; } }
public Square this[RankFile rankAndFile] { get { Position position = rankAndFile; return(Squares[position.X, position.Y]); } set { Position position = rankAndFile; Squares[position.X, position.Y] = value; } }
public virtual void UpdateStateToHandleAssignmentToNewSquare() { var currentPosition = new RankFile(this.RankAndFile); this.PositionHistory.Add(currentPosition); }
public void Move(RankFile destination) { Chess.Game.Square destinationSquare = Board[destination]; Move(destinationSquare); }
public Square(IPiece piece, File file, Rank rank) { BoardPosition = new RankFile(file, rank); Piece = new Optional <IPiece>(piece); }
public Square(RankFile rankAndFile) : this(null, rankAndFile) { }
public Square(IPiece piece, RankFile rankAndFile) : this(piece, rankAndFile.File, rankAndFile.Rank) { }