Example #1
0
        private bool checkContinueOfSequence(Utilities.Point i_validStepPoint, int i_xDirection, int i_yDirection, String i_playerShape)
        {
            int currentXpoint = i_validStepPoint.X();
            int currentYpoint = i_validStepPoint.Y();

            currentXpoint += i_xDirection;
            currentYpoint += i_yDirection;

            if ((isPointInBorder(currentXpoint, currentYpoint)))
            {
                if ((m_board[currentXpoint, currentYpoint] != null) && (m_board[currentXpoint, currentYpoint] != i_playerShape))
                {
                    while ((isPointInBorder(currentXpoint, currentYpoint)))
                    {
                        if (m_board[currentXpoint, currentYpoint] == i_playerShape)
                        {
                            return(true);
                        }
                        currentXpoint += i_xDirection;
                        currentYpoint += i_yDirection;
                    }
                }
            }
            return(false);
        }
Example #2
0
        private bool isStepIsValid(List <Utilities.ValidStep> i_validSteps, Utilities.Point i_pointToCheck)
        {
            int sizeOfList = i_validSteps.Count;

            Utilities.ValidStep[] CloneValidSteps = new Utilities.ValidStep[sizeOfList];
            i_validSteps.CopyTo((CloneValidSteps));

            foreach (Utilities.ValidStep currentStepToCheck in CloneValidSteps)
            {
                if (!(currentStepToCheck.GetPoint().X() == i_pointToCheck.X() && currentStepToCheck.GetPoint().Y() == i_pointToCheck.Y()))
                {
                    i_validSteps.Remove(currentStepToCheck);
                }
            }

            return(i_validSteps.Count > 0);
        }