示例#1
0
        public MainViewModel()
        {
            // init the chess board
            Board  = new ChessBoardViewModel(onChessFieldClicked);
            Menu   = new MenuViewModel(this);
            Status = new StatusBarViewModel();

            // try to restore the last game
            ReloadLastGame();
        }
        public ChessBoardViewModel InitChessBoard(FigureTypes figure, int startPos)
        {
            _chessBoard = new ChessBoardViewModel
            {
                Figure         = figure,
                FigurePosition = startPos,
                PossibleMoves  = new ChessBoard(figure, startPos).PossibleMoves
            };

            return(_chessBoard);
        }
        public ChessBoardViewModel MoveTo(int pos)
        {
            ChessBoardViewModel chessBoard;

            if (_chessBoard.PossibleMoves.Contains(pos))
            {
                _chessBoard.FigurePosition = pos;
                _chessBoard.PossibleMoves  = new ChessBoard(_chessBoard.Figure, pos).PossibleMoves;
                chessBoard = _chessBoard;
            }
            else
            {
                chessBoard = new ChessBoardViewModel {
                    Msg = "Niewłaściwy ruch !"
                };
            }

            return(chessBoard);
        }
示例#4
0
 public void SetupGameProvider(GameProvider provider)
 {
     this.viewModel   = new ChessBoardViewModel(provider);
     this.DataContext = this.viewModel;
 }