diff options
| author | Sebastiano Tronto <sebastiano@tronto.net> | 2023-10-28 10:19:36 +0200 |
|---|---|---|
| committer | Sebastiano Tronto <sebastiano@tronto.net> | 2023-10-28 10:19:36 +0200 |
| commit | 6c05a5accff2055ddac64504571e52d945bcd372 (patch) | |
| tree | 4ad3f2ab87460ae24231607f33ce261c2262b930 /src/alg.c | |
| parent | fd865fc493af21efe02f54f2a557c36f43aed3c3 (diff) | |
| download | nissy-classic-6c05a5accff2055ddac64504571e52d945bcd372.tar.gz nissy-classic-6c05a5accff2055ddac64504571e52d945bcd372.zip | |
Do not use D for drslice
Diffstat (limited to '')
| -rw-r--r-- | src/alg.c | 17 |
1 files changed, 17 insertions, 0 deletions
| @@ -6,6 +6,7 @@ static bool allowed_HTM(Move m); | |||
| 6 | static bool allowed_URF(Move m); | 6 | static bool allowed_URF(Move m); |
| 7 | static bool allowed_eofb(Move m); | 7 | static bool allowed_eofb(Move m); |
| 8 | static bool allowed_drud(Move m); | 8 | static bool allowed_drud(Move m); |
| 9 | static bool allowed_drud_noD(Move m); | ||
| 9 | static bool allowed_htr(Move m); | 10 | static bool allowed_htr(Move m); |
| 10 | static bool allowed_next_HTM(Move l2, Move l1, Move m); | 11 | static bool allowed_next_HTM(Move l2, Move l1, Move m); |
| 11 | static int axis(Move m); | 12 | static int axis(Move m); |
| @@ -46,6 +47,12 @@ moveset_drud = { | |||
| 46 | }; | 47 | }; |
| 47 | 48 | ||
| 48 | Moveset | 49 | Moveset |
| 50 | moveset_drud_noD = { | ||
| 51 | .allowed = allowed_drud_noD, | ||
| 52 | .allowed_next = allowed_next_HTM, | ||
| 53 | }; | ||
| 54 | |||
| 55 | Moveset | ||
| 49 | moveset_htr = { | 56 | moveset_htr = { |
| 50 | .allowed = allowed_htr, | 57 | .allowed = allowed_htr, |
| 51 | .allowed_next = allowed_next_HTM, | 58 | .allowed_next = allowed_next_HTM, |
| @@ -57,6 +64,7 @@ static Moveset * all_ms[] = { | |||
| 57 | &moveset_URF, | 64 | &moveset_URF, |
| 58 | &moveset_eofb, | 65 | &moveset_eofb, |
| 59 | &moveset_drud, | 66 | &moveset_drud, |
| 67 | &moveset_drud_noD, | ||
| 60 | &moveset_htr, | 68 | &moveset_htr, |
| 61 | }; | 69 | }; |
| 62 | 70 | ||
| @@ -95,6 +103,15 @@ allowed_drud(Move m) | |||
| 95 | } | 103 | } |
| 96 | 104 | ||
| 97 | static bool | 105 | static bool |
| 106 | allowed_drud_noD(Move m) | ||
| 107 | { | ||
| 108 | Move b = base_move(m); | ||
| 109 | |||
| 110 | return b == U || | ||
| 111 | ((b == R || b == L || b == F || b == B) && m == b + 1); | ||
| 112 | } | ||
| 113 | |||
| 114 | static bool | ||
| 98 | allowed_htr(Move m) | 115 | allowed_htr(Move m) |
| 99 | { | 116 | { |
| 100 | Move b = base_move(m); | 117 | Move b = base_move(m); |
