Exemple #1
0
    /// <summary>
    /// Callback to handle when any one of the pattern is selected
    /// </summary>
    /// <param name="dropdown"></param>
    public void OnPatternTypeSelected(Dropdown dropdown)
    {
        currentPattern = (PATTERN_TYPE)dropdown.value;


        switch (currentPattern)
        {
        case PATTERN_TYPE.A:
            minPatternCheck = 5;
            break;

        case PATTERN_TYPE.C:
            minPatternCheck = 6;
            break;

        case PATTERN_TYPE.E:
            minPatternCheck = 10;
            break;

        case PATTERN_TYPE.FOUR_DOTS:
            minPatternCheck = 3;
            break;

        case PATTERN_TYPE.H:
            minPatternCheck = 6;
            break;

        case PATTERN_TYPE.I_SEVEN_DOTS:
            minPatternCheck = 6;
            break;

        case PATTERN_TYPE.L_FIVE_DOTS:
            minPatternCheck = 4;
            break;

        case PATTERN_TYPE.L_FOUR_DOTS:
            minPatternCheck = 3;
            break;

        case PATTERN_TYPE.PLUS_FIVE_DOTS:
            minPatternCheck = 4;
            break;

        case PATTERN_TYPE.SQUARE_FOUR_DOTS:
            minPatternCheck = 3;
            break;

        case PATTERN_TYPE.THREE_DOTS:
            minPatternCheck = 2;
            break;

        case PATTERN_TYPE.T_FIVE_DOTS:
            minPatternCheck = 4;
            break;

        case PATTERN_TYPE.T_FOUR_DOTS:
            minPatternCheck = 3;
            break;
        }
    }
    public void CheckForPattern(PATTERN_TYPE currentPattern)
    {
        //Clearing any previous result data
        if (resultGridIndices.Count > 0)
        {
            resultGridIndices.Clear();
        }

        switch (currentPattern)
        {
        case PATTERN_TYPE.SQUARE_FOUR_DOTS:

            SquarePattern squarePattern = new SquarePattern();
            resultGridIndices = squarePattern.SquarePatternAlgorithm(activeElements);      //Getting the final indices where the pattern has formed
            DebugGridResultMessage(resultGridIndices, "Sqaure is formed at : ");

            break;

        case PATTERN_TYPE.T_FOUR_DOTS:

            T_FOUR_Pattern t_FOUR = new T_FOUR_Pattern();
            resultGridIndices = t_FOUR.T_FourPatternAlgorithm(activeElements);
            DebugGridResultMessage(resultGridIndices, "T with 4 points is formed at :");

            break;

        case PATTERN_TYPE.T_FIVE_DOTS:

            T_FIVE_Pattern t_FIVE = new T_FIVE_Pattern();
            resultGridIndices = t_FIVE.T_FivePatternAlgorithm(activeElements);
            DebugGridResultMessage(resultGridIndices, "T with 5 points is formed at :");

            break;

        case PATTERN_TYPE.PLUS_FIVE_DOTS:

            PlusPattern plusPattern = new PlusPattern();
            resultGridIndices = plusPattern.PlusPatternAlgorithm(activeElements);
            DebugGridResultMessage(resultGridIndices, "Plus is formed at : ");

            break;

        case PATTERN_TYPE.THREE_DOTS:

            ThreeDotsPattern threeDotsPattern = new ThreeDotsPattern();
            resultGridIndices = threeDotsPattern.ThreeDotsAlgorithm(activeElements);
            DebugGridResultMessage(resultGridIndices, "Three Dots is formed at : ");

            break;

        case PATTERN_TYPE.FOUR_DOTS:

            FourDotsPattern fourDotsPattern = new FourDotsPattern();
            resultGridIndices = fourDotsPattern.FourDotsAlgorithm(activeElements);
            DebugGridResultMessage(resultGridIndices, "Four Dots is formed at : ");

            break;
        }
    }