Beispiel #1
0
        static void Main(string[] args)
        {
            MatrixXO gamePad = new MatrixXO();

            gamePad.InitializeGamePad();
            PrintGamePad(gamePad.GamePad);
            StartGamePlay(gamePad.GamePad);

            Console.ReadLine();
        }
Beispiel #2
0
        public static bool CheckDiagonalAlignement(int x, int y, string[,] gamePad)
        {
            string value = gamePad[x, y];

            if (MatrixXO.IsMiddleAlignedBox(x, y))
            {
                if ((gamePad[0, 0].Equals(value) && gamePad[2, 2].Equals(value)) || (gamePad[0, 2].Equals(value) && gamePad[2, 0].Equals(value)))
                {
                    return(true);
                }
                return(false);
            }
            if (MatrixXO.IsTopCornerAlignedBox(x, y))
            {
                if (MatrixXO.CheckAlignment(x, y).Equals(MatrixXO.LEFT))
                {
                    if ((gamePad[1, 1].Equals(value) && gamePad[2, 2].Equals(value)))
                    {
                        return(true);
                    }
                }
                else if (MatrixXO.CheckAlignment(x, y).Equals(MatrixXO.RIGHT))
                {
                    if ((gamePad[0, 2].Equals(value) && gamePad[2, 0].Equals(value)))
                    {
                        return(true);
                    }
                }
            }
            if (MatrixXO.IsBottomCornerAlignedBox(x, y))
            {
                if (MatrixXO.CheckAlignment(x, y).Equals(MatrixXO.LEFT))
                {
                    if ((gamePad[2, 0].Equals(value) && gamePad[0, 2].Equals(value)))
                    {
                        return(true);
                    }
                }
                else if (MatrixXO.CheckAlignment(x, y).Equals(MatrixXO.RIGHT))
                {
                    if ((gamePad[2, 2].Equals(value) && gamePad[0, 0].Equals(value)))
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
Beispiel #3
0
        public static void CheckAlignment(string[,] gamePad, int x, int y)
        {
            bool   finalResult;
            string result = MatrixXO.CheckAlignment(x, y);

            if (result.Equals(MatrixXO.CENTER))
            {
                if (MatrixXO.IsMiddleAlignedBox(x, y))
                {
                    finalResult = CheckDiagonalAlignement(x, y, gamePad);
                    if (finalResult)
                    {
                        Console.WriteLine($"Game should end because diagonal alignment is formed");
                    }
                }
            }
        }