Пример #1
0
    void addAllMatch4s_OnBoard_ToGroup(Unit[,] uTable, List <Unit[]> candidatesGroups)
    {
        List <Unit> allUnitsList = BoardUtilities.getAllUnitsList_onTable(uTable);

        while (allUnitsList.Count > 0)
        {
            Unit   tempU            = allUnitsList [0];
            Unit[] match4s_TopRight = BoardUtilities.getmatch4Units_towards_onTable(tempU, new Vector2Int(1, 1), uTable);
            if (match4s_TopRight != null)
            {
                candidatesGroups.Add(match4s_TopRight);
                foreach (Unit U in match4s_TopRight)
                {
                    //					U.testMark (true);//----------------------------
                    U.BelongingBlocks++;
                }
                BoardUtilities.remove_UnitsInSmallList_FromLargeList(match4s_TopRight, allUnitsList);
            }
            else
            {
                BoardUtilities.tryRemoveFromGroup(tempU, allUnitsList);
            }
        }
    }