示例#1
0
        public void Square_CheckTest()
        {
            var s = new SquareCheck();

            Assert.IsTrue(s.Square_Check(new[] { 0, 0, 0, 3, 3, 3, 3, 0 }));
            Assert.IsFalse(s.Square_Check(new[] { 0, 2, 0, 4, 0, 7, 12, 2 }));
            Assert.IsTrue(s.Square_Check(new[] { 2, 1, 5, 2, 1, 4, 4, 5 }));
            Assert.IsFalse(s.Square_Check(new[] { 3, 4, 4, 3, 6, 5, 5, 6 }));
            Assert.IsTrue(s.Square_Check(new[] { 3, 4, 4, 3, 5, 4, 4, 5 }));
            Assert.IsFalse(s.Square_Check(new[] { -1, 1, -1, 3, 1, 3, 1, 0 }));
            Assert.IsTrue(s.Square_Check(new[] { 5, 7, 3, 1, 7, 3, 1, 5 }));
            Assert.IsTrue(s.Square_Check(new[] { 8, 5, 5, -2, -2, 1, 1, 8 }));
            Assert.IsFalse(s.Square_Check(new[] { -4, -7, -8, -3, -2, 8, -5, 0 }));
            Assert.IsTrue(s.Square_Check(new[] { 9, 6, 5, 6, 9, 2, 5, 2 }));
            Assert.IsFalse(s.Square_Check(new[] { -4, 4, -10, -5, 0, -7, 0, 1 }));
        }
示例#2
0
        public static void Main()
        {
            startTime = DateTime.Now;
            StartingScreen.PrintStartingScreen();

            string boardSizeSelection = StartingScreen.ManageStartingScreen();

            bool isPlaying = true;
            bool winner    = false;

            BoardState.InitializeBoardState(boardSizeSelection);
            //Matrix.PrintMatrix();

            while (isPlaying == true)
            {
                string tileChoice = UserSelection.SelectTile();

                if (tileChoice != "marked")
                {
                    var squaresToModify = SquareCheck.SquareCheckHandler(tileChoice);

                    foreach (var tile in squaresToModify)
                    {
                        if (tile.Value == Tiles.BombTile())
                        {
                            isPlaying = false;
                        }
                    }

                    BoardState.UpdateTheBoardState(squaresToModify);
                }

                bool wonGame = WinCondition.CheckWinCondition(BoardState.gameboardSize);
                if (wonGame)
                {
                    winner    = true;
                    isPlaying = false; Console.WriteLine("YOU WIN!!!!");
                }
            }
            GameOver.PrintGameOver();

            bool deciding = true;

            while (deciding)
            {
                Console.WriteLine("Would you like to play again? (y/n)");
                string response = Console.ReadLine();

                if (winner)
                {
                    UserSelection.ClearCurrentConsoleLine(Console.CursorTop, 3);
                }
                else
                {
                    UserSelection.ClearCurrentConsoleLine(Console.CursorTop, 2);
                }

                if (response.ToLower() == "y")
                {
                    deciding = false;
                    GameOver.EraseGameOver();
                    BoardState.EraseTheBoard();
                    Main();
                }
                if (response.ToLower() == "n")
                {
                    return;
                }
            }
        }