Ejemplo n.º 1
0
 public ChessCellModel(int row, int col)
 {
     RowIndex   = row;
     ColIndex   = col;
     PieceType  = EChessPieceType.Empty;
     PieceColor = EChessPieceColor.Empty;
 }
        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;
 }
Ejemplo n.º 4
0
        private bool CanActivePlayerMove(EChessPieceColor color)
        {
            switch (color)
            {
            case EChessPieceColor.Black when _gameLogic.ActivePlayer == EActivePlayer.Black:
            case EChessPieceColor.White when _gameLogic.ActivePlayer == EActivePlayer.White:
                return(true);

            default:
                return(false);
            }
        }
        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;
 }
Ejemplo n.º 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;
 }