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); } }
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); } }