示例#1
0
    IEnumerator RunHighlightTest()
    {
        RubicsCubeSolver solver = new RubicsCubeSolver();

        List <Move> moves = solver.ShuffleCube(25);

        moves.ForEach(m => DoMove(m));

        ICubeAlgorithm alg = new SimpleCubeAlgorithm();

        alg.DoMoves(moves);
        yield return(new WaitForSeconds(5));

        while (!alg.IsSolved())
        {
            moves = alg.GetNextSolutionMoves();

            foreach (Move m in moves)
            {
                rotatorsController.OnHighlightMoveStart(m);
                yield return(new WaitForSeconds(1));

                DoMove(m);
                rotatorsController.OnHighlightMoveStop(m);
                yield return(new WaitForSeconds(0.5f));
            }

            alg.DoMoves(moves);
        }
    }
示例#2
0
    void RunTest()
    {
        RubicsCubeSolver solver = new RubicsCubeSolver();

        List <Move> moves = solver.ShuffleCube(100);

        moves.ForEach(m => DoMove(m));

        ICubeAlgorithm alg = new SimpleCubeAlgorithm();

        alg.DoMoves(moves);

        while (!alg.IsSolved())
        {
            moves = alg.GetNextSolutionMoves();
            moves.ForEach(m => DoMove(m));
            alg.DoMoves(moves);
        }
    }