1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-12-14 01:58:06 +00:00

Big change: spatial_embedding option

This commit is contained in:
Zeno Rogue
2022-12-08 19:38:06 +01:00
parent 90dd9e9866
commit 3e733ae6e9
45 changed files with 981 additions and 527 deletions

View File

@@ -518,7 +518,7 @@ EX namespace mapstream {
f.write(asonov::period_z);
}
#endif
if(prod) {
if(mproduct) {
f.write(hybrid::csteps);
f.write(product::cspin);
f.write(product::cmirror);
@@ -527,7 +527,7 @@ EX namespace mapstream {
if(rotspace) {
f.write(hybrid::csteps);
}
if(hybri) {
if(mhybrid) {
hybrid::in_underlying_geometry([&] { save_geometry(f); });
}
if(fake::in()) {
@@ -661,7 +661,7 @@ EX namespace mapstream {
if(geometry == gRotSpace && vernum >= 0xA833) {
f.read(hybrid::csteps);
}
if(hybri && vernum >= 0xA80C) {
if(mhybrid && vernum >= 0xA80C) {
auto g = geometry;
load_geometry(f);
set_geometry(g);
@@ -688,7 +688,7 @@ EX namespace mapstream {
EX hookset<void(hstream&, int)> hooks_loadmap;
EX cell *save_start() {
return (closed_manifold || euclid || prod || arcm::in() || sol || INVERSE) ? currentmap->gamestart() : cwt.at->master->c7;
return (closed_manifold || euclid || mproduct || arcm::in() || sol || INVERSE) ? currentmap->gamestart() : cwt.at->master->c7;
}
#if CAP_EDIT
@@ -926,7 +926,7 @@ EX namespace mapstream {
for(int k=0; k<i; k++) f.read(kills[k]);
}
int sub = hybri ? 2 : 0;
int sub = mhybrid ? 2 : 0;
while(true) {
cell *c;
int rspin;
@@ -947,7 +947,7 @@ EX namespace mapstream {
// spinval becomes xspinval
rspin = gmod(c2->c.spin(dir) - f.read_char(), c->type - sub);
if(GDIM == 3 && rspin && !hybri) {
if(GDIM == 3 && rspin && !mhybrid) {
println(hlog, "rspin in 3D");
throw hstream_exception();
}