public void SetPiece(CellId identifier, EChessPieceType piece, EChessPieceColor color)
        {
            EChessPieceType  oldPiece = _cells[identifier].PieceType;
            EChessPieceColor oldColor = _cells[identifier].PieceColor;

            _cells[identifier].SetPiece(piece, color);
            CellStatusChanged(this, new CellStatusChangedEventArgs(identifier, oldPiece, oldColor, piece, color));
        }
 public CellStatusChangedEventArgs(CellId identifier, EChessPieceType oldPiece, EChessPieceColor oldColor,
                                   EChessPieceType newPiece, EChessPieceColor newColor)
 {
     Identifier = identifier;
     OldPiece   = oldPiece;
     NewPiece   = newPiece;
     OldColor   = oldColor;
     NewColor   = newColor;
 }
        public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
        {
            EChessPieceType  type  = (EChessPieceType)values[0];
            EChessPieceColor color = (EChessPieceColor)values[1];

            if (type == EChessPieceType.Empty || color == EChessPieceColor.Empty)
            {
                return(new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + "Figures/empty.png", UriKind.Absolute)));
            }

            return(new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + _pieceToImageDictionary[key(type, color)], UriKind.Absolute)));
        }
 public void SetPiece(int row, int col, EChessPieceType piece, EChessPieceColor color)
 {
     SetPiece(keyFor(row, col), piece, color);
 }
 public PieceCapturedEventArgs(EChessPieceType pieceType, EChessPieceColor pieceColor)
 {
     _pieceType  = pieceType;
     _pieceColor = pieceColor;
 }
Example #6
0
 public CellStatus(int rowIndex, int colIndex, EChessPieceType pieceType)
 {
     RowIndex  = rowIndex;
     ColIndex  = colIndex;
     PieceType = pieceType;
 }
Example #7
0
 public CellStatus(int rowIndex, int colIndex)
 {
     RowIndex  = rowIndex;
     ColIndex  = colIndex;
     PieceType = EChessPieceType.Empty;
 }
Example #8
0
 private static Tuple <EChessPieceType, EChessPieceColor> key(EChessPieceType type, EChessPieceColor color)
 {
     return(new Tuple <EChessPieceType, EChessPieceColor>(type, color));
 }
 public void SetPiece(EChessPieceType type, EChessPieceColor color)
 {
     ChessPieceType  = type;
     ChessPieceColor = color;
 }