示例#1
0
        public BoardViewModel(int size)
        {
            BoardSize = size;
            Board     = new Board(size);
            Tiles     = new ObservableCollection <TileViewModel>();

            for (int i = 0; i < BoardSize; i++)
            {
                for (int j = 0; j < BoardSize; j++)
                {
                    TileViewModel tile = new TileViewModel(i, j);
                    if (i == BoardSize / 2 - 1 && j == BoardSize / 2 - 1)
                    {
                        tile.setDisc(new DiscViewModel(i, j, new SolidColorBrush(Colors.White)));
                        Board.Tiles[i, j] = 2;
                    }
                    if (i == BoardSize / 2 && j == BoardSize / 2 - 1)
                    {
                        tile.setDisc(new DiscViewModel(i, j, new SolidColorBrush(Colors.Black)));
                        Board.Tiles[i, j] = 1;
                    }
                    if (i == BoardSize / 2 - 1 && j == BoardSize / 2)
                    {
                        tile.setDisc(new DiscViewModel(i, j, new SolidColorBrush(Colors.Black)));
                        Board.Tiles[i, j] = 1;
                    }
                    if (i == BoardSize / 2 && j == BoardSize / 2)
                    {
                        tile.setDisc(new DiscViewModel(i, j, new SolidColorBrush(Colors.White)));
                        Board.Tiles[i, j] = 2;
                    }
                    Tiles.Add(tile);
                }
            }
        }
示例#2
0
 public bool IsValidPosition(int player, TileViewModel tile)
 {
     return(Board.IsValidPosition(player, tile.PosX, tile.PosY));
 }