mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2026-05-09 08:32:07 +00:00
backed-map:: precision policy 'random' implemented
This commit is contained in:
+2
-1
@@ -792,7 +792,8 @@ struct hrmap_archimedean : hrmap {
|
||||
void find_cell_connection(cell *c, int d) override {
|
||||
if(PURE) {
|
||||
if(arcm::id_of(c->master) < arcm::current.N * 2) {
|
||||
heptspin hs = heptspin(c->master, d) + wstep + 2 + wstep + 1;
|
||||
bool rev = (precision_policy & 1) && hrand(2);
|
||||
heptspin hs = rev ? heptspin(c->master, d) - 1 + wstep - 2 + wstep: heptspin(c->master, d) + wstep + 2 + wstep + 1;
|
||||
c->c.connect(d, hs.at->c7, hs.spin, hs.mirrored);
|
||||
}
|
||||
else c->c.connect(d, c, d, false);
|
||||
|
||||
+6
-4
@@ -3124,10 +3124,12 @@ EX void setdist(cell *c, int d, cell *from) {
|
||||
exploreland[d][c->land]++;
|
||||
}
|
||||
|
||||
if(d < BARLEV) for(int i=0; i<c->type; i++) {
|
||||
|
||||
setdist(createMov(c, i), d+1, c);
|
||||
if(buggyGeneration) return;
|
||||
if(d < BARLEV) {
|
||||
bool rev = (precision_policy & 1) && currentmap->get_backmap() && hrand(2);
|
||||
for(int i=0; i<c->type; i++) {
|
||||
setdist(createMov(c, rev ? (c->type-1-i) : i), d+1, c);
|
||||
if(buggyGeneration) return;
|
||||
}
|
||||
}
|
||||
|
||||
int eqlevel = max(BARLEV-2, 7);
|
||||
|
||||
Reference in New Issue
Block a user