Exemple #1
0
    bool SolveOneCornerPosition(ref List <string> path)
    {
        CubeInfo.Cubie        cubie  = null;
        List <CubeInfo.Cubie> bottom = _cubies.AnalyzeBottomCorners(ref cubie, _solved);

        if (cubie == null)
        {
            return(true);               // no work to do
        }
        FocusCubie(cubie);
        _cubies.EnableColor(cubie, true);

        string[]  down  = { "D", "D'", "D2", "" };
        ArrayList steps = new ArrayList();

        steps.Add(down);
        path = _solver.Search(cubie, _solved, steps, _solver.ScorePositions);

        return(path.Count > 0);
    }