private void Down(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((2, 6, 3, 6)); listRotate.Add((2, 7, 3, 7)); listRotate.Add((2, 8, 3, 8)); listRotate.Add((2, 6, 4, 6)); listRotate.Add((2, 7, 4, 7)); listRotate.Add((2, 8, 4, 8)); listRotate.Add((2, 6, 1, 6)); listRotate.Add((2, 7, 1, 7)); listRotate.Add((2, 8, 1, 8)); listRotate.AddRange(GetFaceRotateList(5)); RotateFace(listRotate, rubikCommand.reverse); }
private void Left(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((0, 0, 2, 0)); listRotate.Add((0, 3, 2, 3)); listRotate.Add((0, 6, 2, 6)); listRotate.Add((0, 0, 5, 0)); listRotate.Add((0, 3, 5, 3)); listRotate.Add((0, 6, 5, 6)); listRotate.Add((0, 0, 4, 8)); listRotate.Add((0, 3, 4, 5)); listRotate.Add((0, 6, 4, 2)); listRotate.AddRange(GetFaceRotateList(1)); RotateFace(listRotate, rubikCommand.reverse); }
private void Back(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((0, 2, 1, 0)); listRotate.Add((0, 2, 5, 6)); listRotate.Add((0, 2, 3, 8)); listRotate.Add((0, 1, 1, 3)); listRotate.Add((0, 1, 5, 7)); listRotate.Add((0, 1, 3, 5)); listRotate.Add((0, 0, 1, 6)); listRotate.Add((0, 0, 5, 8)); listRotate.Add((0, 0, 3, 2)); listRotate.AddRange(GetFaceRotateList(4)); RotateFace(listRotate, rubikCommand.reverse); }
private void Right(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((0, 8, 4, 0)); listRotate.Add((0, 5, 4, 3)); listRotate.Add((0, 2, 4, 6)); listRotate.Add((0, 8, 5, 8)); listRotate.Add((0, 5, 5, 5)); listRotate.Add((0, 2, 5, 2)); listRotate.Add((0, 8, 2, 8)); listRotate.Add((0, 5, 2, 5)); listRotate.Add((0, 2, 2, 2)); listRotate.AddRange(GetFaceRotateList(3)); RotateFace(listRotate, rubikCommand.reverse); }
private void Up(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((4, 2, 3, 2)); listRotate.Add((4, 1, 3, 1)); listRotate.Add((4, 0, 3, 0)); listRotate.Add((4, 2, 2, 2)); listRotate.Add((4, 1, 2, 1)); listRotate.Add((4, 0, 2, 0)); listRotate.Add((4, 2, 1, 2)); listRotate.Add((4, 1, 1, 1)); listRotate.Add((4, 0, 1, 0)); listRotate.AddRange(GetFaceRotateList(0)); RotateFace(listRotate, rubikCommand.reverse); }
private void Front(RubikCommand rubikCommand) { List <(int fromLayer, int fromNum, int toLayer, int toNum)> listRotate = new List <(int fromLayer, int fromNum, int toLayer, int toNum)>(); listRotate.Add((0, 6, 3, 0)); listRotate.Add((0, 7, 3, 3)); listRotate.Add((0, 8, 3, 6)); listRotate.Add((0, 6, 5, 2)); listRotate.Add((0, 7, 5, 1)); listRotate.Add((0, 8, 5, 0)); listRotate.Add((0, 6, 1, 8)); listRotate.Add((0, 7, 1, 5)); listRotate.Add((0, 8, 1, 2)); listRotate.AddRange(GetFaceRotateList(2)); RotateFace(listRotate, rubikCommand.reverse); }