mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-06-18 14:24:07 +00:00
faster get_side hard case
This commit is contained in:
parent
0d60ff6bdc
commit
40792a3aa1
@ -852,12 +852,18 @@ int get_side(twalker what) {
|
|||||||
debuglist = {what, to_what, wl, wr};
|
debuglist = {what, to_what, wl, wr};
|
||||||
throw rulegen_failure("xsidefreeze");
|
throw rulegen_failure("xsidefreeze");
|
||||||
}
|
}
|
||||||
|
bool gl = wl.at->dist <= wr.at->dist;
|
||||||
|
bool gr = wl.at->dist >= wr.at->dist;
|
||||||
|
if(gl) {
|
||||||
treewalk(wl, -1);
|
treewalk(wl, -1);
|
||||||
treewalk(wr, +1);
|
|
||||||
if(wl == to_what) return sidecache[what] = +1;
|
if(wl == to_what) return sidecache[what] = +1;
|
||||||
|
}
|
||||||
|
if(gr) {
|
||||||
|
treewalk(wr, +1);
|
||||||
if(wr == to_what) return sidecache[what] = -1;
|
if(wr == to_what) return sidecache[what] = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
code_t id_at_spin(twalker cw) {
|
code_t id_at_spin(twalker cw) {
|
||||||
code_t res;
|
code_t res;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user