diff options
| author | Sebastiano Tronto <sebastiano@tronto.net> | 2023-08-16 20:58:17 +0200 |
|---|---|---|
| committer | Sebastiano Tronto <sebastiano@tronto.net> | 2023-08-16 20:58:17 +0200 |
| commit | 4a96e5094257580eb8ad27d3fc484fa19c7f39a4 (patch) | |
| tree | 3d832cecb6c48c0adc52acd07d2e6fad4bd2d577 /src | |
| parent | ba5e8ebe9ab19ea8d69fd081946968cded0eba72 (diff) | |
| download | nissy-classic-4a96e5094257580eb8ad27d3fc484fa19c7f39a4.tar.gz nissy-classic-4a96e5094257580eb8ad27d3fc484fa19c7f39a4.zip | |
Bugfix in DR from EO
Diffstat (limited to '')
| -rw-r--r-- | src/steps.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/steps.c b/src/steps.c index a380494..b499b30 100644 --- a/src/steps.c +++ b/src/steps.c | |||
| @@ -12,6 +12,7 @@ static bool check_corners_URF(Cube cube); | |||
| 12 | static bool check_cornershtr(Cube cube); | 12 | static bool check_cornershtr(Cube cube); |
| 13 | static bool check_eofb(Cube cube); | 13 | static bool check_eofb(Cube cube); |
| 14 | static bool check_drud(Cube cube); | 14 | static bool check_drud(Cube cube); |
| 15 | static bool check_drud_or_drrl(Cube cube); | ||
| 15 | static bool check_htr(Cube cube); | 16 | static bool check_htr(Cube cube); |
| 16 | 17 | ||
| 17 | static int estimate_eofb_HTM(DfsArg *arg); | 18 | static int estimate_eofb_HTM(DfsArg *arg); |
| @@ -551,7 +552,7 @@ dr_eo = { | |||
| 551 | .name = "DR without breaking EO (automatically detected)", | 552 | .name = "DR without breaking EO (automatically detected)", |
| 552 | 553 | ||
| 553 | .final = false, | 554 | .final = false, |
| 554 | .is_done = check_drud, | 555 | .is_done = check_drud_or_drrl, |
| 555 | .estimate = estimate_dr_eofb, | 556 | .estimate = estimate_dr_eofb, |
| 556 | .ready = check_eofb, | 557 | .ready = check_eofb, |
| 557 | .ready_msg = check_eo_msg, | 558 | .ready_msg = check_eo_msg, |
| @@ -570,7 +571,7 @@ dr_eofb = { | |||
| 570 | .name = "DR on U/D or R/L without breaking EO on F/B", | 571 | .name = "DR on U/D or R/L without breaking EO on F/B", |
| 571 | 572 | ||
| 572 | .final = false, | 573 | .final = false, |
| 573 | .is_done = check_drud, | 574 | .is_done = check_drud_or_drrl, |
| 574 | .estimate = estimate_dr_eofb, | 575 | .estimate = estimate_dr_eofb, |
| 575 | .ready = check_eofb, | 576 | .ready = check_eofb, |
| 576 | .ready_msg = check_eo_msg, | 577 | .ready_msg = check_eo_msg, |
| @@ -589,7 +590,7 @@ dr_eorl = { | |||
| 589 | .name = "DR on U/D or F/B without breaking EO on R/L", | 590 | .name = "DR on U/D or F/B without breaking EO on R/L", |
| 590 | 591 | ||
| 591 | .final = false, | 592 | .final = false, |
| 592 | .is_done = check_drud, | 593 | .is_done = check_drud_or_drrl, |
| 593 | .estimate = estimate_dr_eofb, | 594 | .estimate = estimate_dr_eofb, |
| 594 | .ready = check_eofb, | 595 | .ready = check_eofb, |
| 595 | .ready_msg = check_eo_msg, | 596 | .ready_msg = check_eo_msg, |
| @@ -608,7 +609,7 @@ dr_eoud = { | |||
| 608 | .name = "DR on R/L or F/B without breaking EO on U/D", | 609 | .name = "DR on R/L or F/B without breaking EO on U/D", |
| 609 | 610 | ||
| 610 | .final = false, | 611 | .final = false, |
| 611 | .is_done = check_drud, | 612 | .is_done = check_drud_or_drrl, |
| 612 | .estimate = estimate_dr_eofb, | 613 | .estimate = estimate_dr_eofb, |
| 613 | .ready = check_eofb, | 614 | .ready = check_eofb, |
| 614 | .ready_msg = check_eo_msg, | 615 | .ready_msg = check_eo_msg, |
| @@ -1116,6 +1117,12 @@ check_drud(Cube cube) | |||
| 1116 | } | 1117 | } |
| 1117 | 1118 | ||
| 1118 | static bool | 1119 | static bool |
| 1120 | check_drud_or_drrl(Cube cube) | ||
| 1121 | { | ||
| 1122 | return check_drud(cube) || check_drud(apply_trans(rf, cube)); | ||
| 1123 | } | ||
| 1124 | |||
| 1125 | static bool | ||
| 1119 | check_htr(Cube cube) | 1126 | check_htr(Cube cube) |
| 1120 | { | 1127 | { |
| 1121 | return check_drud(cube) && coord_htr_drud.index(cube) == 0; | 1128 | return check_drud(cube) && coord_htr_drud.index(cube) == 0; |
