Beispiel #1
0
        private bool checkForSequenceInDiagonals(eBoardSigns i_MarkedSign)
        {
            bool foundSequence = true;

            for (int i = 1; i <= m_GameBoard.MatrixSideSize; i++) // Check main diagonal.
            {
                if (m_GameBoard.GetBoard()[i, i] != i_MarkedSign)
                {
                    foundSequence = false;
                    break;
                }
            }

            if (!foundSequence) // Check secondary diagonal.
            {
                int cellIndex = m_GameBoard.MatrixSideSize - 1;
                for (int i = 0; i < m_GameBoard.MatrixSideSize; i++)
                {
                    if (m_GameBoard.GetBoard()[i, cellIndex--] != i_MarkedSign)
                    {
                        foundSequence = false;
                        break;
                    }
                }
            }
            return(foundSequence);
        }