private void MineTile_MouseRightButtonDown(object sender, MouseButtonEventArgs e) { var TileClickedIDObject = ((Button)sender).Tag; int TileClickedID = Convert.ToInt32(TileClickedIDObject); if (Board.TheBoard[TileClickedID].HasBeenClicked == false) { if (Board.TheBoard[TileClickedID].Flagged == false) { Board.TheBoard[TileClickedID].Flagged = true; Board.FlaggedMines += 1; if (Board.TheBoard[TileClickedID].HasMine == true) { Board.CorrectFlaggedMines += 1; } } else { Board.TheBoard[TileClickedID].Flagged = false; Board.FlaggedMines -= 1; if (Board.TheBoard[TileClickedID].HasMine == true) { Board.CorrectFlaggedMines -= 1; } } if (Board.GameWon() == true) { DebugBlock.Text = "Win"; } } }
private void Button_Click(object sender, RoutedEventArgs e) { var TileClickedIDObject = ((Button)sender).Tag; int TileClickedID = Convert.ToInt32(TileClickedIDObject); if (Board.TheBoard[TileClickedID].Flagged == false) { if (Board.TheBoard[TileClickedID].HasMine == true) { Board.TheBoard[TileClickedID].HasBeenClicked = true; Board.RevealAll(); // end game by blowing up DebugBlock.Text = "You died"; } else { if (Board.TheBoard[TileClickedID].MinesSurrounding != 0) { // reveal the number of this tile Board.TheBoard[TileClickedID].HasBeenClicked = true; //DebugBlock.Text = Board.TheBoard[TileClickedID].HasBeenClicked.ToString(); } if (Board.TheBoard[TileClickedID].MinesSurrounding == 0) { // discover the tiles Board.TheBoard[TileClickedID].HasBeenClicked = true; Board.TheBoard[TileClickedID].RevealTiles(TileClickedID); // parameter not needed if function is done properly } } } if (Board.GameWon() == true) { DebugBlock.Text = "Win"; } }