Example #1
0
        private Block?GetAnIncorrectFrontEdge()
        {
            var blocks = _cube.GetFrontEdges().Where(b => b.HasColour(Colour.White));

            foreach (var block in blocks)
            {
                var nonFrontSide = GetSideToRotate(block, Side.Front);
                if (block.Front != Colour.White || !RubixCubeStatusEvaluator.SideIsCorrectColour(nonFrontSide, block))
                {
                    return(block);
                }
            }

            return(null);
        }