From 495dbba80912ffd8363ce99ba7566ad6a5f5eded Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Thu, 4 Jan 2018 18:39:04 +0100 Subject: [PATCH] renamed 'truncated' to 'chamfered' --- achievement.cpp | 16 +++---- barriers.cpp | 86 ++++++++++++++++++------------------- bigstuff.cpp | 18 ++++---- blizzard.cpp | 4 +- cell.cpp | 20 ++++----- classes.h | 2 +- commandline.cpp | 2 +- complex.cpp | 24 +++++------ config.cpp | 10 ++--- fieldpattern.cpp | 10 ++--- game.cpp | 12 +++--- geom-exp.cpp | 24 +++++------ geometry.cpp | 8 ++-- graph.cpp | 56 ++++++++++++------------ help.cpp | 2 +- heptagon.cpp | 4 +- hud.cpp | 8 ++-- hyper.h | 8 ++-- hyperpoint.cpp | 2 +- hypgraph.cpp | 4 +- init.cpp | 2 +- kohonen.cpp | 2 +- landgen.cpp | 48 ++++++++++----------- landlock.cpp | 32 +++++++------- language-cz.cpp | 10 ++--- language-pl.cpp | 12 +++--- language-ru.cpp | 10 ++--- mapeditor.cpp | 10 ++--- menus.cpp | 2 +- monstergen.cpp | 4 +- orbgen.cpp | 2 +- pattern2.cpp | 80 +++++++++++++++++------------------ polygons.cpp | 108 +++++++++++++++++++++++------------------------ rogueviz.cpp | 6 +-- scores.cpp | 2 +- shmup.cpp | 8 ++-- system.cpp | 18 ++++---- textures.cpp | 10 ++--- tour.cpp | 8 ++-- yendor.cpp | 8 ++-- 40 files changed, 351 insertions(+), 351 deletions(-) diff --git a/achievement.cpp b/achievement.cpp index b70a14df..6a8c9c62 100644 --- a/achievement.cpp +++ b/achievement.cpp @@ -82,7 +82,7 @@ vector achievementsReceived; bool wrongMode(char flags) { if(cheater) return true; if(flags == 'x') return false; - if(nontruncated != (flags == '7')) return true; + if(nonchamfered != (flags == '7')) return true; if(euclid != (flags == 'e')) return true; if(flags == 'E' && S7 < 5) return false; if(sphere != (flags == 'E')) return true; @@ -482,7 +482,7 @@ void achievement_score(int cat, int number) { if(sphere && cat != LB_HALLOWEEN) return; if(quotient) return; if(elliptic && cat != LB_HALLOWEEN) return; - if(nontruncated) return; + if(nonchamfered) return; if(randomPatternsMode) return; if(shmup::on && cat != LB_PURE_TACTICS_SHMUP && cat != LB_PURE_TACTICS_COOP) return; if(yendor::on && cat != LB_YENDOR_CHALLENGE) return; @@ -567,7 +567,7 @@ void achievement_final(bool really_final) { } if(sphere && specialland == laHalloween) { - if(shmup::on || chaosmode || nontruncated || numplayers() > 1 || tactic::on || randomPatternsMode) + if(shmup::on || chaosmode || nonchamfered || numplayers() > 1 || tactic::on || randomPatternsMode) return; achievement_score(LB_HALLOWEEN, items[itTreat]); } @@ -581,21 +581,21 @@ void achievement_final(bool really_final) { int specials = 0; if(shmup::on) specials++; if(chaosmode) specials++; - if(nontruncated) specials++; + if(nonchamfered) specials++; if(inv::on) specials++; if(specials > 1) return; if(numplayers() > 1 && chaosmode) return; - if(numplayers() > 1 && nontruncated) return; + if(numplayers() > 1 && nonchamfered) return; if(numplayers() > 1 && inv::on) return; int total_improved = 0; specific_improved = 0; specific_what = 0; - if(!shmup::on && !chaosmode && !nontruncated && numplayers() == 1 && !inv::on) improveItemScores(); + if(!shmup::on && !chaosmode && !nonchamfered && numplayers() == 1 && !inv::on) improveItemScores(); - int sid = nontruncated ? 57 : chaosmode ? 53 : shmup::on ? (numplayers() > 1 ? 44 : 28) : + int sid = nonchamfered ? 57 : chaosmode ? 53 : shmup::on ? (numplayers() > 1 ? 44 : 28) : inv::on ? 69 : (numplayers() > 1 ? 61 : 0); @@ -654,7 +654,7 @@ void achievement_victory(bool hyper) { if(euclid) return; if(sphere) return; if(quotient) return; - if(nontruncated) return; + if(nonchamfered) return; if(randomPatternsMode) return; if(hyper && shmup::on) return; if(yendor::on) return; diff --git a/barriers.cpp b/barriers.cpp index 539a8507..e0bc4ed1 100644 --- a/barriers.cpp +++ b/barriers.cpp @@ -8,20 +8,20 @@ bool checkBarriersFront(cellwalker bb, int q, bool cross) { if(bb.c->mpdist < BARLEV) return false; if(bb.c->mpdist == BUGLEV) return false; if(bb.c->bardir != NODIR) return false; - if(bb.spin == (nontruncated ? 3 : 0)) {q--; if(!q) return true; } + if(bb.spin == (nonchamfered ? 3 : 0)) {q--; if(!q) return true; } if(!cross) for(int i=0; i<7; i++) { cellwalker bb2 = bb; cwspin(bb2, i); cwstep(bb2); if(bb2.c->bardir != NODIR) return false; - if(!nontruncated) { + if(!nonchamfered) { cwspin(bb2, 4); cwstep(bb2); if(bb2.c->bardir != NODIR) return false; } } cwstep(bb); - if(!nontruncated) { cwspin(bb, 3); cwstep(bb); cwspin(bb, 3); cwstep(bb); } + if(!nonchamfered) { cwspin(bb, 3); cwstep(bb); cwspin(bb, 3); cwstep(bb); } return checkBarriersBack(bb, q); } @@ -48,13 +48,13 @@ bool checkBarriersBack(cellwalker bb, int q, bool cross) { cellwalker bb2 = bb; cwspin(bb2, i); cwstep(bb2); if(bb2.c->bardir != NODIR) return false; - if(!nontruncated) { + if(!nonchamfered) { cwspin(bb2, 4); cwstep(bb2); if(bb2.c->bardir != NODIR) return false; } } - cwspin(bb, 3); cwstep(bb); cwspin(bb, nontruncated ? 5 : 4); + cwspin(bb, 3); cwstep(bb); cwspin(bb, nonchamfered ? 5 : 4); // bool create = cwstepcreates(bb); cwstep(bb); cwspin(bb, 3); // if(create && bb.spin == 0) return true; @@ -87,12 +87,12 @@ bool checkBarriersNowall(cellwalker bb, int q, int dir, eLand l1=laNone, eLand l } } - if(nontruncated && S3==4) { + if(nonchamfered && S3==4) { cwspin(bb, dir); cwstep(bb); cwspin(bb, dir); } - else if(nontruncated) { + else if(nonchamfered) { cwspin(bb, 3*dir); cwstep(bb); cwspin(bb, -3*dir); @@ -158,7 +158,7 @@ void setland(cell *c, eLand l) { void extendcheck(cell *c) { return; - if(!nontruncated && c->landparam == 0 && c->barleft != NOWALLSEP) { + if(!nonchamfered && c->landparam == 0 && c->barleft != NOWALLSEP) { raiseBuggyGeneration(c, "extend error"); } } @@ -176,7 +176,7 @@ void extendBarrierFront(cell *c) { cellwalker bb(c, c->bardir); setbarrier(bb.c); cwstep(bb); - if(!nontruncated) { + if(!nonchamfered) { bb.c->barleft = c->barleft; bb.c->barright = c->barright; setbarrier(bb.c); @@ -212,7 +212,7 @@ void extendBarrierFront(cell *c) { extendBarrier(bb.c); for(int a=-3; a<=3; a++) if(a) { - bb.c = c; bb.spin = c->bardir; cwspin(bb, nontruncated?-a:a); cwstep(bb); + bb.c = c; bb.spin = c->bardir; cwspin(bb, nonchamfered?-a:a); cwstep(bb); setland(bb.c, a > 0 ? c->barright : c->barleft); } } @@ -224,8 +224,8 @@ void extendBarrierBack(cell *c) { extendcheck(c); cellwalker bb(c, c->bardir); setbarrier(bb.c); - cwspin(bb, 3); cwstep(bb); cwspin(bb, nontruncated?5:4); - setland(bb.c, nontruncated ? c->barleft : c->barright); + cwspin(bb, 3); cwstep(bb); cwspin(bb, nonchamfered?5:4); + setland(bb.c, nonchamfered ? c->barleft : c->barright); cwstep(bb); cwspin(bb, 3); bb.c->bardir = bb.spin; bb.c->barleft = c->barright; @@ -236,7 +236,7 @@ void extendBarrierBack(cell *c) { //printf("[D heat %d]\n", (ht^11)); // needed for CR2 to work - if(!nontruncated) { + if(!nonchamfered) { cwstep(bb); bb.c->barleft = c->barright; bb.c->barright = c->barleft; @@ -255,12 +255,12 @@ void extendNowall(cell *c) { c->barleft = NOWALLSEP_USED; cellwalker cw(c, c->bardir); - if(!nontruncated) { + if(!nonchamfered) { cwstep(cw); setland(cw.c, c->barright); } - if(nontruncated && S3 == 4) { + if(nonchamfered && S3 == 4) { cwstep(cw); setland(cw.c, c->barright); cw.c->barleft = NOWALLSEP_USED; @@ -270,12 +270,12 @@ void extendNowall(cell *c) { } for(int i=-1; i<2; i+=2) { - if(nontruncated && S3==4) { + if(nonchamfered && S3==4) { cwspin(cw, i); cwstep(cw); cwspin(cw, i); } - else if(nontruncated) { + else if(nonchamfered) { cwspin(cw, 3*i); cwstep(cw); cwspin(cw, -3*i); @@ -286,7 +286,7 @@ void extendNowall(cell *c) { } if(cw.c->barleft != NOWALLSEP_USED) { cw.c->barleft = NOWALLSEP; - if(S3 == 4 && nontruncated) { + if(S3 == 4 && nonchamfered) { cw.c->barright = c->barright; cw.c->bardir = cw.spin; setland(cw.c, c->land); @@ -298,19 +298,19 @@ void extendNowall(cell *c) { printf("barright\n"); }// NONEDEBUG setland(cw.c, c->barright); - if(!nontruncated) cwspin(cw, i); + if(!nonchamfered) cwspin(cw, i); cw.c->bardir = cw.spin; - if(!nontruncated) cwspin(cw, -i); + if(!nonchamfered) cwspin(cw, -i); } extendcheck(cw.c); extendBarrier(cw.c); } - if(nontruncated && S3==4) { + if(nonchamfered && S3==4) { cwspin(cw, -i); cwstep(cw); cwspin(cw, -i); } - else if(nontruncated) { + else if(nonchamfered) { cwspin(cw, 3*i); cwstep(cw); cwspin(cw, -3*i); @@ -325,7 +325,7 @@ void extendNowall(cell *c) { bool gotit = false; void extendCR5(cell *c) { - if(nontruncated) return; + if(nonchamfered) return; // if(c->barright == laCrossroads5) extendCR5(c); eLand forbidden = c->barleft; eLand forbidden2 = laNone; @@ -391,14 +391,14 @@ void extendBarrier(cell *c) { if(firstmirror && c->barleft == laMirror && hrand(100) < 60) { cellwalker cw(c, c->bardir); - if(!nontruncated) cwstep(cw); + if(!nonchamfered) cwstep(cw); if(cw.c->land != laMirrorWall) if(buildBarrier6(cw, 1)) return; } - if(firstmirror && (nontruncated?c->barleft == laMirror : c->barright == laMirror) && hrand(100) < 60) { + if(firstmirror && (nonchamfered?c->barleft == laMirror : c->barright == laMirror) && hrand(100) < 60) { cellwalker cw(c, c->bardir); - if(nontruncated) { + if(nonchamfered) { cwspin(cw, -3); cwstep(cw); cwspin(cw, -3); // cwspin(cw, 3); cwstep(cw); cwspin(cw, -2); cwstep(cw); cwspin(cw, 3); } @@ -414,7 +414,7 @@ void extendBarrier(cell *c) { ) { cellwalker cw(c, c->bardir); - if(nontruncated) { + if(nonchamfered) { cwstep(cw); if(isbar4(cw.c)) { cwstep(cw); cwspin(cw, 3); cwstep(cw); cwspin(cw, -1); cwstep(cw); @@ -478,7 +478,7 @@ bool buildBarrier6(cellwalker cw, int type) { if(buggyGeneration) return true; - if(!nontruncated) { + if(!nonchamfered) { cwstep(b[0]); cwspin(b[1], 1); cwstep(b[1]); cwspin(b[1], 3); cwstep(b[1]); cwspin(b[2], 4); cwstep(b[2]); @@ -506,18 +506,18 @@ bool buildBarrier6(cellwalker cw, int type) { } if(type == 1) { - if(!(nontruncated?checkBarriersFront:checkBarriersBack)(b[1], 6, true)) return false; - if(!(nontruncated?checkBarriersFront:checkBarriersBack)(b[2], 6, true)) return false; + if(!(nonchamfered?checkBarriersFront:checkBarriersBack)(b[1], 6, true)) return false; + if(!(nonchamfered?checkBarriersFront:checkBarriersBack)(b[2], 6, true)) return false; } else { - if(!(nontruncated?checkBarriersFront:checkBarriersBack)(b[0], 6, true)) return false; - if(!(nontruncated?checkBarriersFront:checkBarriersBack)(b[3], 6, true)) return false; + if(!(nonchamfered?checkBarriersFront:checkBarriersBack)(b[0], 6, true)) return false; + if(!(nonchamfered?checkBarriersFront:checkBarriersBack)(b[3], 6, true)) return false; } for(int d=0; d<4; d++) { b[d].c->bardir = b[d].spin; - if(nontruncated) { + if(nonchamfered) { b[0].c->barleft = laMirrored, b[0].c->barright = laMirrored2; b[1].c->barleft = laMirror, b[1].c->barright = laMirrored; b[2].c->barleft = laMirrored2, b[2].c->barright = laMirrored; @@ -530,17 +530,17 @@ bool buildBarrier6(cellwalker cw, int type) { b[3].c->barleft = laMirrored2, b[3].c->barright = laMirrored; } - (nontruncated?extendBarrierFront:extendBarrierBack)(b[d].c); + (nonchamfered?extendBarrierFront:extendBarrierBack)(b[d].c); } - if(nontruncated && false) { + if(nonchamfered && false) { for(int z=0; z<4; z++) b[z].c->item = eItem(1+z+4*type); for(int a=0; a<4; a++) extendBarrierBack(cwpeek(b[a],0)); } - if(!nontruncated) { + if(!nonchamfered) { setland(cwpeek(cw, 1), laMirrorWall); setland(cwpeek(cw, 2), laMirrored); setland(cwpeek(cw, 3), laMirrorWall2); @@ -594,11 +594,11 @@ bool buildBarrier4(cell *c, int d, int mode, eLand ll, eLand lr) { cellwalker b1(c, d); cellwalker b2(c, d); - if(nontruncated) cwstep(b2); + if(nonchamfered) cwstep(b2); else { cwstep(b2); cwspin(b2, 3); cwstep(b2); cwspin(b2, 3); cwstep(b2); } cellwalker b3(c, d); - if(nontruncated) { + if(nonchamfered) { cwspin(b3, -1); cwstep(b3); cwspin(b3, 3); } else { @@ -606,7 +606,7 @@ bool buildBarrier4(cell *c, int d, int mode, eLand ll, eLand lr) { } cellwalker b4(c, d); - if(nontruncated) { + if(nonchamfered) { cwspin(b4, 1); cwstep(b4); cwspin(b4, -3); } else { @@ -642,16 +642,16 @@ bool buildBarrier4(cell *c, int d, int mode, eLand ll, eLand lr) { c= b4.c; d=b4.spin; c->bardir = d, c->barleft = ll, c->barright = xr; extendBarrierFront(c); - if(!nontruncated) for(int a=-3; a<=3; a++) if(a) { + if(!nonchamfered) for(int a=-3; a<=3; a++) if(a) { setland(cwpeek(b1, a), a > 0 ? lr : ll); setland(cwpeek(b2, a), a > 0 ? xr : xl); setland(cwpeek(b3, a), a > 0 ? lr : xl); setland(cwpeek(b4, a), a > 0 ? xr : ll); } - if(nontruncated) setbarrier(b1.c), setbarrier(b2.c), setbarrier(b3.c), setbarrier(b4.c); + if(nonchamfered) setbarrier(b1.c), setbarrier(b2.c), setbarrier(b3.c), setbarrier(b4.c); - if(!nontruncated) { + if(!nonchamfered) { cell *cp; cp = cwpeek(b1, 0); cp->barleft = ll; cp->barright = lr; setbarrier(cp); @@ -782,7 +782,7 @@ bool buildBarrierNowall(cell *c, eLand l2, bool force) { } for(int i=0; i<3; i++) { - int d = (S3>3 && nontruncated) ? (2+(i&1)) : dtab[i]; + int d = (S3>3 && nonchamfered) ? (2+(i&1)) : dtab[i]; if(force) d=1; cellwalker cw(c, d); diff --git a/bigstuff.cpp b/bigstuff.cpp index 7d519009..212e1f33 100644 --- a/bigstuff.cpp +++ b/bigstuff.cpp @@ -44,7 +44,7 @@ int euclidAlt(short x, short y) { if(specialland == laTemple || specialland == laClearing) { if(euclid6) return max(int(x), x+y); - else if(nontruncated) + else if(nonchamfered) return x + abs(y); else return max(x, y); @@ -57,7 +57,7 @@ int euclidAlt(short x, short y) { max(int(x+y), int(y)) + 3), max(int(x), int(-y)) + 3 ); - else if(nontruncated) + else if(nonchamfered) return 3 - min(abs(x-y), abs(x+y)); else return 3 - min(abs(x), abs(y)); @@ -594,7 +594,7 @@ void buildEquidistant(cell *c) { if(c->landparam > 30 && b == laOcean && !generatingEquidistant && hrand(10) < 5) buildAnotherEquidistant(c); - if(c->landparam > HAUNTED_RADIUS+5 && b == laGraveyard && !generatingEquidistant && hrand(100) < (nontruncated?25:5) && items[itBone] >= 10) + if(c->landparam > HAUNTED_RADIUS+5 && b == laGraveyard && !generatingEquidistant && hrand(100) < (nonchamfered?25:5) && items[itBone] >= 10) buildAnotherEquidistant(c); } @@ -971,7 +971,7 @@ void buildBigStuff(cell *c, cell *from) { else if(weirdhyperbolic) ; // non-Nowall barriers not implemented yet in weird hyperbolic - else if(c->land == laCrossroads2 && !nontruncated) + else if(c->land == laCrossroads2 && !nonchamfered) buildCrossroads2(c); else if(c->land == laPrairie && c->LHU.fi.walldist == 0) { @@ -1010,7 +1010,7 @@ void buildBigStuff(cell *c, cell *from) { c->land == laHaunted ? 0 : (c->land == laGraveyard && !deepOcean) ? 0 : (c->land == laGraveyard && items[itBone] >= 10) ? 120 : - c->land == laOcean ? (deepOcean ? (nontruncated ? 250 : 2000) : 0) : + c->land == laOcean ? (deepOcean ? (nonchamfered ? 250 : 2000) : 0) : c->land == laDragon ? 120 : 50)) { @@ -1065,7 +1065,7 @@ void buildBigStuff(cell *c, cell *from) { if(c->land == laOcean && ctof(c) && deepOcean && !generatingEquidistant && !peace::on && (quickfind(laWhirlpool) || ( - hrand(2000) < (nontruncated ? 500 : 1000) && !tactic::on && !yendor::on))) + hrand(2000) < (nonchamfered ? 500 : 1000) && !tactic::on && !yendor::on))) createAlternateMap(c, 2, hsA); if(c->land == laCaribbean && ctof(c)) @@ -1178,7 +1178,7 @@ void moreBigStuff(cell *c) { } if(q == 1) buildCamelotWall(c); // towers of Camelot - if(q == 0 && !nontruncated) { + if(q == 0 && !nonchamfered) { c->monst = moKnight; c->wall = waTower; forCellEx(c2, c) { @@ -1203,7 +1203,7 @@ void moreBigStuff(cell *c) { } if(d == 1) { // roughly as many knights as table cells - if(hrand(nontruncated ? 2618 : 1720) < 1000) + if(hrand(nonchamfered ? 2618 : 1720) < 1000) c->monst = moKnight; if(!euclid) for(int i=0; imaster->move[i]); for(int i=0; itype; i++) @@ -1237,7 +1237,7 @@ void moreBigStuff(cell *c) { c->land = laTemple, c->wall = waNone, c->monst = moNone, c->item = itNone; } if(d % TEMPLE_EACH==0) { - if((weirdhyperbolic && nontruncated) ? hrand(100) < 50 : pseudohept(c)) + if((weirdhyperbolic && nonchamfered) ? hrand(100) < 50 : pseudohept(c)) c->wall = waColumn; else { if(!euclid) for(int i=0; imaster->move[i]); diff --git a/blizzard.cpp b/blizzard.cpp index 682792ba..78167321 100644 --- a/blizzard.cpp +++ b/blizzard.cpp @@ -1,7 +1,7 @@ double randd() { return (rand() % 1000000) / 1000000. + .0000005; } double cellgfxdist(cell *c, int i) { - return nontruncated ? tessf : (c->type == 6 && (i&1)) ? hexhexdist : crossf; + return nonchamfered ? tessf : (c->type == 6 && (i&1)) ? hexhexdist : crossf; } transmatrix cellrelmatrix(cell *c, int i) { @@ -13,7 +13,7 @@ hyperpoint randomPointIn(int t) { while(true) { hyperpoint h = spin(2*M_PI*(randd()-.5)/t) * tC0(xpush(asinh(randd()))); double d = - nontruncated ? tessf : t == 6 ? hexhexdist : crossf; + nonchamfered ? tessf : t == 6 ? hexhexdist : crossf; if(hdist0(h) < hdist0(xpush(-d) * h)) return spin(2*M_PI/t * (rand() % t)) * h; } diff --git a/cell.cpp b/cell.cpp index efd5e83d..1b2f8613 100644 --- a/cell.cpp +++ b/cell.cpp @@ -70,7 +70,7 @@ hrmap_hyperbolic::hrmap_hyperbolic() { h.spintable = 0; h.alt = NULL; h.distance = 0; - isnontruncated = nontruncated; + isnonchamfered = nonchamfered; h.c7 = newCell(S7, origin); } @@ -89,10 +89,10 @@ vector siblings; struct hrmap_spherical : hrmap { heptagon *dodecahedron[12]; - bool isnontruncated; + bool isnonchamfered; hrmap_spherical() { - isnontruncated = nontruncated; + isnonchamfered = nonchamfered; for(int i=0; i ph(nontruncated, isnontruncated); + dynamicval ph(nonchamfered, isnonchamfered); for(int i=0; i void build_euclidean_moves(cell *c, int vec, const T& builder) { int x, y; tie(x,y) = vec_to_pair(vec); - c->type = a4 ? (nontruncated || ((x^y^1) & 1) ? 4 : 8) : 6; + c->type = a4 ? (nonchamfered || ((x^y^1) & 1) ? 4 : 8) : 6; if(c->type == 4) { - int m = nontruncated ? 1 : 2; + int m = nonchamfered ? 1 : 2; builder(euclid_getvec(+1,+0), 0, 2 * m); builder(euclid_getvec(+0,+1), 1, 3 * m); builder(euclid_getvec(-1,+0), 2, 0 * m); @@ -726,7 +726,7 @@ cell *createMov(cell *c, int d) { } if(c->mov[d]) return c->mov[d]; - else if(nontruncated) { + else if(nonchamfered) { heptagon *h2 = createStep(c->master, d); merge(c,d,h2->c7,c->master->spin(d),false); } @@ -840,7 +840,7 @@ heptagon deletion_marker; void clearHexes(heptagon *at) { if(at->c7) { - if(!nontruncated) for(int i=0; i<7; i++) + if(!nonchamfered) for(int i=0; i<7; i++) clearcell(at->c7->mov[i]); clearcell(at->c7); } @@ -880,7 +880,7 @@ void verifycell(cell *c) { for(int i=0; imov[i]; if(c2) { - if(!euclid && !nontruncated && c == c->master->c7) verifycell(c2); + if(!euclid && !nonchamfered && c == c->master->c7) verifycell(c2); if(c2->mov[c->spn(i)] && c2->mov[c->spn(i)] != c) { printf("cell error %p:%d [%d] %p:%d [%d]\n", c, i, c->type, c2, c->spn(i), c2->type); exit(1); @@ -1341,7 +1341,7 @@ int celldistance(cell *c1, cell *c2) { if(ac == xtgt) return d; ac = chosenDown(ac, 1, 1, celldist); if(ac == tgt) return d+2; - if(!nontruncated) { + if(!nonchamfered) { ac = chosenDown(ac, 1, 1, celldist); if(ac == tgt) { if(chosenDown(ac0, 1, 0, celldist) == diff --git a/classes.h b/classes.h index 5bee0049..2cb1b89f 100644 --- a/classes.h +++ b/classes.h @@ -205,7 +205,7 @@ struct geometryinfo { int vertex; int quotientstyle; eGeometryClass cclass; - array distlimit; // truncated, non-truncated + array distlimit; // chamfered, non-chamfered }; static const int qZEBRA = 1; diff --git a/commandline.cpp b/commandline.cpp index 7ee3c91b..ca085135 100644 --- a/commandline.cpp +++ b/commandline.cpp @@ -182,7 +182,7 @@ else if(args()[0] == '-' && args()[1] == x && args()[2] == '0') { showstartmenu TOGGLE('o', vid.usingGL, switchGL()) TOGGLE('C', chaosmode, restartGame('C')) - TOGGLE('7', nontruncated, restartGame('7')) + TOGGLE('7', nonchamfered, restartGame('7')) TOGGLE('f', vid.full, switchFullscreen()) TOGGLE('T', tactic::on, restartGame('t')) TOGGLE('S', shmup::on, restartGame('s')) diff --git a/complex.cpp b/complex.cpp index 80bde3a5..66d6ccbb 100644 --- a/complex.cpp +++ b/complex.cpp @@ -747,7 +747,7 @@ namespace clearing { } int d = celldistAlt(c); - if(nontruncated) { + if(nonchamfered) { for(int i=0; itype; i++) { cellwalker C2 = cw; cwstep(C2); @@ -1321,9 +1321,9 @@ namespace mirror { v.push_back(1); stepcount++; if(stepcount > 10000) { printf("failhep\n"); return cw; } } - if(nontruncated && cwpeek(cw,0) == cwcopy.c) + if(nonchamfered && cwpeek(cw,0) == cwcopy.c) v.pop_back(); - if(nontruncated && cwpeek(cw,3)->land == laMirrored && cwpeek(cw,2)->land == laMirrorWall) { + if(nonchamfered && cwpeek(cw,3)->land == laMirrored && cwpeek(cw,2)->land == laMirrorWall) { cw.mirrored = !cw.mirrored; auto p = traceback(v, cw); if(p.first) return p.second; @@ -1828,7 +1828,7 @@ namespace heat { cell *c = playerpos(i); if(!c) continue; double xrate = (c->land == laCocytus && shmup::on) ? rate/3 : rate; - if(nontruncated) xrate *= 1.7; + if(nonchamfered) xrate *= 1.7; if(!shmup::on) xrate /= FIX94; if(isIcyLand(c)) HEAT(c) += (markOrb(itOrbWinter) ? -1.2 : 1.2) * xrate; @@ -1843,7 +1843,7 @@ namespace heat { for(int i=0; iland == laCocytus && shmup::on) ? 1/3. : 1; - if(nontruncated) xrate *= 1.7; + if(nonchamfered) xrate *= 1.7; if(!shmup::on) xrate /= FIX94; if(c->cpdist > 7 && !doall) break; @@ -2524,7 +2524,7 @@ namespace sword { } void shuffle(int i) { - sword::angle[i] = euclid ? S7*hrand(6) : nontruncated ? 3*hrand(S14)+1 : hrand(S42); + sword::angle[i] = euclid ? S7*hrand(6) : nonchamfered ? 3*hrand(S14)+1 : hrand(S42); } void reset() { @@ -2709,7 +2709,7 @@ namespace prairie { c->LHU.fi.rval = (y&15); } else if(sphere) { - c->LHU.fi.rval = celldistance(c, cwt.c) + 8 - (nontruncated ? 2 : 3); + c->LHU.fi.rval = celldistance(c, cwt.c) + 8 - (nonchamfered ? 2 : 3); } else if(weirdhyperbolic) { c->LHU.fi.rval = max(celldist(c), 15); @@ -2771,8 +2771,8 @@ namespace prairie { } } - #define RLOW (sphere?(nontruncated?7:6):nontruncated?4:2) - #define RHIGH (sphere?(nontruncated?8:9):nontruncated?11:13) + #define RLOW (sphere?(nonchamfered?7:6):nonchamfered?4:2) + #define RHIGH (sphere?(nonchamfered?8:9):nonchamfered?11:13) bool isriver(cell *c) { return c->land == laPrairie && c->LHU.fi.rval <= RHIGH && c->LHU.fi.rval >= RLOW; @@ -2934,7 +2934,7 @@ namespace prairie { else if(!enter && isriver(cwt.c)) enter = cwt.c; if(size(tchoices)) { if(lasttreasure && lasttreasure->item == itGreenGrass) { - if(celldistance(lasttreasure, cwt.c) >= (nontruncated ? 7 : 10)) { + if(celldistance(lasttreasure, cwt.c) >= (nonchamfered ? 7 : 10)) { lasttreasure->item = itNone; forCellEx(c2, lasttreasure) if(c2->item == itGreenGrass) c2->item = itNone; } @@ -3310,7 +3310,7 @@ namespace halloween { else if(CHANCE(5) && itr >= 60) { dragoncount++; } - else if(dragoncount && !nontruncated && !mcount) { + else if(dragoncount && !nonchamfered && !mcount) { bool fill = false; for(int i=0; i<4; i++) if(!dragoncells[i] || dragoncells[i]->monst) diff --git a/config.cpp b/config.cpp index bd2a6a50..5100792e 100644 --- a/config.cpp +++ b/config.cpp @@ -321,7 +321,7 @@ void initConfig() { addsaver(hardcore, "mode-hardcore", false); addsaver(chaosmode, "mode-chaos"); addsaver(inv::on, "mode-Orb Strategy"); - addsaver(nontruncated, "mode-heptagonal", false); + addsaver(nonchamfered, "mode-heptagonal", false); addsaver(peace::on, "mode-peace"); addsaver(peace::otherpuzzles, "mode-peace-submode"); addsaverenum(specialland, "land for special modes"); @@ -337,7 +337,7 @@ void initConfig() { } bool inSpecialMode() { - return chaosmode || nontruncated || peace::on || tour::on || + return chaosmode || nonchamfered || peace::on || tour::on || yendor::on || tactic::on || randomPatternsMode || geometry != gNormal || pmodel != mdDisk || vid.alpha != 1 || vid.scale != 1 || rug::rugged || vid.monmode != DEFAULT_MONMODE || @@ -350,7 +350,7 @@ void resetModes(char leave = 'c') { if(shmup::on != (leave == 's')) restartGame('s'); if(inv::on != (leave == 'i')) restartGame('i'); if(chaosmode != (leave == 'C')) restartGame('C'); - if(nontruncated != (leave == '7')) restartGame('7'); + if(nonchamfered != (leave == '7')) restartGame('7'); if(peace::on != (leave == 'P')) restartGame('P'); #if CAP_TOUR if(tour::on != (leave == 'T')) restartGame('T'); @@ -454,11 +454,11 @@ void loadOldConfig(FILE *f) { shmup::loadConfig(f); - aa = rug::renderonce; bb = rug::rendernogl; cc = nontruncated; dd = chaosmode; + aa = rug::renderonce; bb = rug::rendernogl; cc = nonchamfered; dd = chaosmode; int ee = vid.steamscore; double rs = 2/rug::model_distance; err=fscanf(f, "%d%d%d%d%lf%d%d", &aa, &bb, &rug::texturesize, &cc, &rs, &ee, &dd); - rug::renderonce = aa; rug::rendernogl = bb; nontruncated = cc; chaosmode = dd; vid.steamscore = ee; + rug::renderonce = aa; rug::rendernogl = bb; nonchamfered = cc; chaosmode = dd; vid.steamscore = ee; rug::model_distance = 2/rs; aa=conformal::autobandhistory; diff --git a/fieldpattern.cpp b/fieldpattern.cpp index 01cb9f6e..def1f065 100644 --- a/fieldpattern.cpp +++ b/fieldpattern.cpp @@ -383,7 +383,7 @@ struct fpattern { dists[at] = i; for(int q=0; qtype; i++) { cell *c2 = c->mov[i]; if(c2 && c2->item == itCompass) toomany = true; - if(c2 && !nontruncated) for(int j=0; jtype; j++) + if(c2 && !nonchamfered) for(int j=0; jtype; j++) if(c2->mov[j] && c2->mov[j]->item == itCompass) toomany = true; } @@ -2677,7 +2677,7 @@ void buildRosemap() { } -int getDistLimit() { return ginf[geometry].distlimit[nontruncated]; } +int getDistLimit() { return ginf[geometry].distlimit[nonchamfered]; } bool nogoSlow(cell *to, cell *from) { if(cellEdgeUnstable(to) && gravityLevel(to) >= gravityLevel(from)) return true; @@ -3077,7 +3077,7 @@ void toggleGates(cell *ct, eWall type, int rad) { void toggleGates(cell *ct, eWall type) { playSound(ct, "click"); numgates = 0; - if(type == waClosePlate && nontruncated) + if(type == waClosePlate && nonchamfered) toggleGates(ct, type, 2); else toggleGates(ct, type, 3); @@ -6771,11 +6771,11 @@ ld circlesizeD[10000]; int lastsize; void computeSizes() { - lastsize = nontruncated ? 44 : 76; + lastsize = nonchamfered ? 44 : 76; circlesize[0] = 1; - if(!nontruncated) { + if(!nonchamfered) { circlesize[1] = 1*7; circlesize[2] = 2*7; circlesize[3] = 4*7; @@ -7523,7 +7523,7 @@ bool movepcto(int d, int subdir, bool checkonly) { if(checkonly) return false; if(nonAdjacent(cwt.c,c2)) addMessage(XLAT( - nontruncated ? + nonchamfered ? "You cannot move between the cells without dots here!" : "You cannot move between the triangular cells here!" )); diff --git a/geom-exp.cpp b/geom-exp.cpp index ce401b1f..90d8d3f9 100644 --- a/geom-exp.cpp +++ b/geom-exp.cpp @@ -10,7 +10,7 @@ string euchelp = "You can try many different geometries here. We start by gluing " "n-gons in such a way that k of them meet in every vertex. " "Depending on n and k, this either folds into a sphere, unfolds into a plane, " - "or requires a hyperbolic space. The result may be then 'truncated' by " + "or requires a hyperbolic space. The result may be then 'chamfered' by " "replacing each vertex by a 2k-gon. Furthermore, you can play " "with quotient geometries. For example, the elliptic geometry is " "obtained from the sphere by making the antipodes be the same point, " @@ -18,7 +18,7 @@ string euchelp = "Have fun experimenting! " "Achievements and leaderboards do not work in geometry experiments, " "except some specific ones.\n\n" - "In standard geometry (truncated or not), you can play the full game, but in other geometries " + "In standard geometry (chamfered or not), you can play the full game, but in other geometries " "you select a particular land. Lands are unlocked by visiting them in this " "session, or permanently by collecting 25 treasure. Try Crossroads in Euclidean " "or chaos mode in non-standard non-quotient hyperbolic to visit many lands. " @@ -41,7 +41,7 @@ void showQuotientConfig() { nextPrimes(gxcur); for(int i=0; i g(geometry, gNormal); // precalc(); } // for(int i=0; itype == 6 ? 0 : 1; @@ -238,8 +238,8 @@ int displaydir(cell *c, int d) { } double hexshiftat(cell *c) { - if(ctof(c) && S7==6 && S3 == 4 && !nontruncated) return hexshift + 2*M_PI/S7; - if(ctof(c) && (S7==8 || S7 == 4) && S3 == 3 && !nontruncated) return hexshift + 2*M_PI/S7; + if(ctof(c) && S7==6 && S3 == 4 && !nonchamfered) return hexshift + 2*M_PI/S7; + if(ctof(c) && (S7==8 || S7 == 4) && S3 == 3 && !nonchamfered) return hexshift + 2*M_PI/S7; if(hexshift && ctof(c)) return hexshift; return 0; } @@ -291,11 +291,11 @@ void drawPlayerEffects(const transmatrix& V, cell *c, bool onplayer) { if(!euclid) for(int a=0; a=4 && si.id < 16) j = 2; else if(si.id >= 16 && si.id < 28) j = 1; else if(si.id >= 28 && si.id < 40) j = 3; @@ -2330,7 +2330,7 @@ void drawReptileFloor(const transmatrix& V, cell *c, int col, bool usefloor) { int j; if(!wmescher) j = 4; - else if(nontruncated) j = 0; + else if(nonchamfered) j = 0; else if(si.id < 4) j = 0; else if(si.id >=4 && si.id < 16) j = 1; else if(si.id >= 16 && si.id < 28) j = 2; @@ -2388,7 +2388,7 @@ void drawReptileFloor(const transmatrix& V, cell *c, int col, bool usefloor) { } void drawEmeraldFloor(const transmatrix& V, cell *c, int col) { - if(!euclid && !nontruncated) { + if(!euclid && !nonchamfered) { auto si = patterns::getpatterninfo(c, 'f', patterns::SPF_SYM0123); int j = -1; @@ -2928,7 +2928,7 @@ bool noAdjacentChasms(cell *c) { void floorShadow(cell *c, const transmatrix& V, int col, bool warp) { if(pmodel == mdHyperboloid || pmodel == mdBall) return; // shadows break the depth testing - if(shmup::on || nontruncated) warp = false; + if(shmup::on || nonchamfered) warp = false; dynamicval p(poly_outline, OUTLINE_TRANS); if(wmescher && qfi.special) { queuepolyat(V * qfi.spin * shadowmulmatrix, *qfi.shape, col, PPR_WALLSHADOW); @@ -2945,7 +2945,7 @@ void floorShadow(cell *c, const transmatrix& V, int col, bool warp) { queuepolyat(V * applyPatterndir(c, si), shTriheptaFloorShadow[ctof(c)], col, PPR_WALLSHADOW); } } - else if(c->land == laDual && !nontruncated) { + else if(c->land == laDual && !nonchamfered) { if(euclid && !a4 && ishex1(c)) queuepolyat(V * pispin, shBigTriShadow, col, PPR_WALLSHADOW); else @@ -2969,7 +2969,7 @@ void plainfloor(cell *c, bool warp, const transmatrix &V, int col, int prio) { queuepolyat(V * applyPatterndir(c, si), shTriheptaFloor[sphere ? ctof(c) : si.id], col, prio); } } - else if(c->land == laDual && !nontruncated) { + else if(c->land == laDual && !nonchamfered) { if(euclid && !a4 && ishex1(c)) queuepolyat(V * pispin, shBigTriangle, col, prio); else @@ -2987,7 +2987,7 @@ void qplainfloor(cell *c, bool warp, const transmatrix &V, int col) { auto si = patterns::getpatterninfo(c, 0, 0); qfloor(c, V, applyPatterndir(c, si), shTriheptaFloor[si.id], col); } - else if(c->land == laDual && !nontruncated) + else if(c->land == laDual && !nonchamfered) qfloor_eswap(c, V, shBigTriangle, col); else { qfloor(c, V, shFloor[ctof(c)], col); @@ -2997,7 +2997,7 @@ void qplainfloor(cell *c, bool warp, const transmatrix &V, int col) { int wavephase; void warpfloor(cell *c, const transmatrix& V, int col, int prio, bool warp) { - if(shmup::on || nontruncated) warp = false; + if(shmup::on || nonchamfered) warp = false; #if CAP_TEXTURE if(qfi.tinf) { queuetable(V*qfi.spin, &qfi.tinf->vertices[0], size(qfi.tinf->vertices) / 3, 0, texture::recolor(col), prio); @@ -3049,9 +3049,9 @@ void escherSidewall(cell *c, int sidepar, const transmatrix& V, int col) { } void placeSidewall(cell *c, int i, int sidepar, const transmatrix& V, bool warp, bool mirr, int col) { - if(shmup::on || nontruncated) warp = false; + if(shmup::on || nonchamfered) warp = false; if(warp && !ishept(c) && (!c->mov[i] || !ishept(c->mov[i]))) return; - if(c->land == laDual && !nontruncated) { + if(c->land == laDual && !nonchamfered) { if(ctof(c)) return; if((euclid && !a4) ? (ishex1(c) ? !(i&1) : (i&1)) : !(i&1)) return; } @@ -3076,7 +3076,7 @@ void placeSidewall(cell *c, int i, int sidepar, const transmatrix& V, bool warp, // prio += c->cpdist - c->mov[i]->cpdist; queuepolyat(V2, - (qfi.tinf?shFullFloorSide:mirr?shMFloorSide:warp?shTriheptaSide:(c->land == laDual&&!nontruncated)?shBigTriSide:shFloorSide)[sidepar][ctof(c)], col, prio); + (qfi.tinf?shFullFloorSide:mirr?shMFloorSide:warp?shTriheptaSide:(c->land == laDual&&!nonchamfered)?shBigTriSide:shFloorSide)[sidepar][ctof(c)], col, prio); } bool openorsafe(cell *c) { @@ -3602,7 +3602,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { auto si = patterns::getpatterninfo0(c); #endif - bool eoh = euclid || nontruncated; + bool eoh = euclid || nonchamfered; if(c->wall == waChasm) { if(c->land == laZebra) fd++; @@ -3648,7 +3648,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { onleft = !onleft; if(c->type == 6 && c->mov[d]->barleft == laMirror) onleft = !onleft; - if(nontruncated) onleft = !onleft; + if(nonchamfered) onleft = !onleft; if(d == -1) { for(d=0; d<6; d++) @@ -3768,11 +3768,11 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { else if(isWarped(c) && euclid) qfloor_eswap(c, Vf, shTriheptaFloor[ctof(c)], darkena(fcol, fd, 0xFF)); - else if(c->land == laDual && !nontruncated && !ctof(c)) { + else if(c->land == laDual && !nonchamfered && !ctof(c)) { qfloor_eswap(c, Vf, shBigTriangle, darkena(fcol, fd, 0xFF)); } - else if(isWarped(c) && !nontruncated && !shmup::on) { + else if(isWarped(c) && !nonchamfered && !shmup::on) { auto si = patterns::getpatterninfo(c, 0, 0); if(si.id < 13) qfloor(c, Vf, applyPatterndir(c, si), shTriheptaFloor[si.id], darkena(fcol, fd, 0xFF)); @@ -3867,7 +3867,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { else if(c->land == laTortoise) qfloor_eswap(c, Vf, TURTLEFLOOR, darkena(fcol, fd, 0xFF)); - else if(c->land == laDragon && !nontruncated) { + else if(c->land == laDragon && !nonchamfered) { /* if(!wmspatial || noAdjacentChasms(c)) */ qfloor(c, Vf, DRAGONFLOOR, darkena(fcol, fd, 0xFF)); /* if(wmspatial) @@ -4056,7 +4056,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { if(pseudohept(c) && ( c->land == laRedRock || vid.darkhepta || - (c->land == laClearing && nontruncated))) { + (c->land == laClearing && nonchamfered))) { queuepoly((*Vdp), shHeptaMarker, wmblack ? 0x80808080 : 0x00000080); } @@ -4541,7 +4541,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { calcAirdir(c2); // printf("airdir = %d\n", airdir); transmatrix V0 = ddspin(c, i, S42); - double ph = ticks / (nontruncated?150:75.0) + airdir * M_PI / (S21+.0); + double ph = ticks / (nonchamfered?150:75.0) + airdir * M_PI / (S21+.0); int aircol = 0x8080FF00 | int(32 + 32 * -cos(ph)); @@ -4586,7 +4586,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { transmatrix V0 = spin((hdir) * M_PI / S42); - double ldist = nontruncated ? crossf : c->type == 6 ? .2840 : 0.3399; + double ldist = nonchamfered ? crossf : c->type == 6 ? .2840 : 0.3399; poly_outline = OUTLINE_TRANS; queuepoly((*Vdp)*V0*xpush(ldist*(2*ph1-1)), shDisk, aircol); @@ -4611,7 +4611,7 @@ void drawcell(cell *c, transmatrix V, int spinv, bool mirrored) { int prec = sphere ? 3 : 1; - if(nontruncated) { + if(nonchamfered) { double x = hcrossf; for(int t=0; tmov[t] && c->mov[t] < c) @@ -5010,7 +5010,7 @@ void drawthemap() { mmspatial = vid.monmode == 4 || vid.monmode == 5; DEBB(DF_GRAPH, (debugfile,"draw the map\n")); - fanframe = ticks / (nontruncated ? 300 : 150.0) / M_PI; + fanframe = ticks / (nonchamfered ? 300 : 150.0) / M_PI; for(int m=0; mdm4 = parent->dm4+1; if(fixdistance != COMPUTE) h->distance = fixdistance; - else if(nontruncated) h->distance = parent->distance + 1; + else if(nonchamfered) h->distance = parent->distance + 1; else if(parent->s == hsOrigin) h->distance = parent->distance + 2; else if(S3 == 4) { h->distance = parent->distance + 2; @@ -127,7 +127,7 @@ heptagon *buildHeptagon(heptagon *parent, int d, hstate s, int pard = 0, int fix else h->distance = parent->distance + 2; } else { - h->distance = parent->distance - (nontruncated?1:2); + h->distance = parent->distance - (nonchamfered?1:2); if(S3 == 4 && S7 == 5) { if(h->s == hsOrigin) { printf("had to cheat!\n"); diff --git a/hud.cpp b/hud.cpp index 64e86eb5..e32614f4 100644 --- a/hud.cpp +++ b/hud.cpp @@ -343,21 +343,21 @@ void drawStats() { if(d >= 0 && d < 64) qty[d]++; } if(geometry == gNormal) - for(int i=nontruncated?6:8; i<=15; i++) + for(int i=nonchamfered?6:8; i<=15; i++) qty[i] = - nontruncated ? + nonchamfered ? 3*qty[i-1] - qty[i-2] : qty[i-1] + qty[i-2] + qty[i-3] - qty[i-4]; if(geometry == gEuclid) for(int i=8; i<=15; i++) qty[i] = 6*i; for(int i=0; i<64; i++) if(qty[i]) dialog::addInfo(its(qty[i]), distcolors[i&7]); - if(geometry == gNormal && !nontruncated) { + if(geometry == gNormal && !nonchamfered) { dialog::addBreak(200); dialog::addHelp("a(d+4) = a(d+3) + a(d+2) + a(d+1) - a(d)"); dialog::addInfo("a(d) ~ 1.72208ᵈ", forecolor); } - if(geometry == gNormal && nontruncated) { + if(geometry == gNormal && nonchamfered) { dialog::addBreak(200); dialog::addHelp("a(d+2) = 3a(d+1) - a(d+2)"); dialog::addInfo("a(d) ~ 2.61803ᵈ", forecolor); diff --git a/hyper.h b/hyper.h index 7cc78dee..9cd47dff 100644 --- a/hyper.h +++ b/hyper.h @@ -1201,7 +1201,7 @@ void checkStunKill(cell *dest); void clearMessages(); void resetGeometry(); -extern bool nontruncated; +extern bool nonchamfered; namespace svg { void circle(int x, int y, int size, int col); @@ -2191,13 +2191,13 @@ struct hrmap { struct hrmap_hyperbolic : hrmap { heptagon *origin; - bool isnontruncated; + bool isnonchamfered; hrmap_hyperbolic(); heptagon *getOrigin() { return origin; } ~hrmap_hyperbolic() { DEBMEM ( verifycells(origin); ) // printf("Deleting hyperbolic map: %p\n", this); - dynamicval ph(nontruncated, isnontruncated); + dynamicval ph(nonchamfered, isnonchamfered); clearfrom(origin); } void verify() { verifycells(origin); } @@ -2431,7 +2431,7 @@ inline hyperpoint tC0(const transmatrix &T) { transmatrix actualV(const heptspin& hs, const transmatrix& V); transmatrix cview(); -extern string truncatenames[2]; +extern string chamfernames[2]; extern bool need_mouseh; extern int whateveri, whateveri2; diff --git a/hyperpoint.cpp b/hyperpoint.cpp index 9bd4c352..60d8de87 100644 --- a/hyperpoint.cpp +++ b/hyperpoint.cpp @@ -4,7 +4,7 @@ eGeometry geometry, targetgeometry; // for the pure heptagonal grid -bool nontruncated = false; +bool nonchamfered = false; // hyperbolic points and matrices diff --git a/hypgraph.cpp b/hypgraph.cpp index 194e3055..5f8c0f50 100644 --- a/hypgraph.cpp +++ b/hypgraph.cpp @@ -330,7 +330,7 @@ bool confusingGeometry() { } transmatrix actualV(const heptspin& hs, const transmatrix& V) { - return (hs.spin || nontruncated) ? V * spin(hs.spin*2*M_PI/S7 + (nontruncated ? M_PI:0)) : V; + return (hs.spin || nonchamfered) ? V * spin(hs.spin*2*M_PI/S7 + (nonchamfered ? M_PI:0)) : V; } void drawrec(const heptspin& hs, int lev, hstate s, const transmatrix& V) { @@ -349,7 +349,7 @@ void drawrec(const heptspin& hs, int lev, hstate s, const transmatrix& V) { if(lev <= 0) return; - if(!nontruncated) for(int d=0; dwall = waPalace; if(gs == 3) - c->wall = nontruncated ? waOpenGate : waClosedGate; + c->wall = nonchamfered ? waOpenGate : waClosedGate; if(gs == 4 && hrand(100) < 40) c->wall = waClosePlate; if(gs == 6) @@ -192,7 +192,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { bool lookingForPrincess = !euclid && c->master->alt && !princess::challenge; bool pgate = false; - if(nontruncated) { + if(nonchamfered) { int i = fiftyval049(c); if(i >= 8 && i <= 14 && !polarb50(c)) pgate = true; } @@ -228,9 +228,9 @@ void giantLandSwitch(cell *c, int d, cell *from) { } } } - else if((hrand(100) < (lookingForPrincess ? (nontruncated ? 11 : 7) : 5) && cdist50(c)) || + else if((hrand(100) < (lookingForPrincess ? (nonchamfered ? 11 : 7) : 5) && cdist50(c)) || (cdist50(c) == 0 && polarb50(c) && hrand(100) < 60)) { - c->wall = hrand(100) < (lookingForPrincess ? (nontruncated ? 25 : 30):50) ? waClosePlate : waOpenPlate; + c->wall = hrand(100) < (lookingForPrincess ? (nonchamfered ? 25 : 30):50) ? waClosePlate : waOpenPlate; } else if(hrand(100) < (lookingForPrincess ? 3 : 5)) c->wall = waTrapdoor; @@ -245,9 +245,9 @@ void giantLandSwitch(cell *c, int d, cell *from) { if(princess::generating) { // no Opening Plates nearby - if(d <= 7 && c->wall == waOpenPlate && !nontruncated) + if(d <= 7 && c->wall == waOpenPlate && !nonchamfered) c->wall = waNone; - if(d <= 7 && c->wall == waClosePlate && nontruncated) + if(d <= 7 && c->wall == waClosePlate && nonchamfered) c->wall = waOpenPlate; // no monsters nearby if(d>0) c->monst = moNone; @@ -346,7 +346,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { c->wall = waCavewall; else c->wall = waCavefloor; } - else if(nontruncated) { + else if(nonchamfered) { if(polarb50(c)) c->wall = waCavewall; else c->wall = waCavefloor; @@ -367,7 +367,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { c->monst = moSeep; ONEMPTY { - if(hrand(nontruncated?400:1000) < PT(100 + 2 * (kills[moMiner] + kills[moLancer] + kills[moFlailer]), 200) && notDippingFor(itEmerald)) { + if(hrand(nonchamfered?400:1000) < PT(100 + 2 * (kills[moMiner] + kills[moLancer] + kills[moFlailer]), 200) && notDippingFor(itEmerald)) { // do not destroy walls! bool ok = true; for(int i=0; itype; i++) if(c->mov[i]->wall == waCavewall) ok = false; @@ -966,7 +966,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laHalloween: if(d == 9) { - if(nontruncated) { + if(nonchamfered) { int fv = c->master->fiftyval; if(fv == 1 || fv == 4 || fv == 2) c->wall = waChasm; @@ -1075,7 +1075,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { if(ctof(c)) { int id = c->master->fiftyval; if(id == 1) c->wall = waCharged; - if(id == (elliptic && !nontruncated ? 3 : 9)) c->wall = waGrounded; + if(id == (elliptic && !nonchamfered ? 3 : 9)) c->wall = waGrounded; } } else if(S7 == 4) { @@ -1097,7 +1097,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { } } } - else if(nontruncated) { + else if(nonchamfered) { int i = zebra40(c); if((i == 5 || i == 8) && hrand(100) < 20) c->wall = hrand(2) ? waCharged : waGrounded; else if(i == 15) c->wall = waSandstone; @@ -1221,7 +1221,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laHell: if(d == 9) { - if(hrand(1000) < (nontruncated ? 16 : 36) && celldist(c) >= 3) { + if(hrand(1000) < (nonchamfered ? 16 : 36) && celldist(c) >= 3) { for(int i=0; itype; i++) { cell *c2 = createMov(c, i); setdist(c2, d+1, c); @@ -1273,7 +1273,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laHive: if(d == 9) { - if(hrand(2000) < (chaosmode ? 1000 : nontruncated?200:2) && !safety) + if(hrand(2000) < (chaosmode ? 1000 : nonchamfered?200:2) && !safety) hive::createBugArmy(c); if(hrand(2000) < 100 && !c->wall && !c->item && !c->monst) { int nww = 0; @@ -1493,14 +1493,14 @@ void giantLandSwitch(cell *c, int d, cell *from) { if(d == 7 && c->wall == waNone) buildPrizeMirror(c, 1000); ONEMPTY { - if(hrand((doCross && celldist(c) <= 5) ?450:16000) < 30+items[itRedGem]+yendor::hardness() && !pseudohept(c) && !c->monst && !c->wall && !(nontruncated && S3==4)) { + if(hrand((doCross && celldist(c) <= 5) ?450:16000) < 30+items[itRedGem]+yendor::hardness() && !pseudohept(c) && !c->monst && !c->wall && !(nonchamfered && S3==4)) { int i = -1; for(int t=0; ttype; t++) if(c->mov[t]->mpdist > c->mpdist && !pseudohept(c->mov[t])) i = t; if(i != -1 && !peace::on) generateSnake(c, i); } - else if(hrand(16000) < 50+items[itRedGem]+yendor::hardness() && (nontruncated?hrand(10)<3:!ishept(c)) && !c->monst) + else if(hrand(16000) < 50+items[itRedGem]+yendor::hardness() && (nonchamfered?hrand(10)<3:!ishept(c)) && !c->monst) c->monst = moRedTroll, c->mondir = NODIR; } @@ -1530,7 +1530,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { if(hrand(1000) < 150 && celldist(c) >= 3 && !pseudohept(c)) c->wall = waSmallTree; int q = 0; - if(!nontruncated && !chaosmode) for(int i=0; itype; i++) + if(!nonchamfered && !chaosmode) for(int i=0; itype; i++) if(c->mov[i] && !isWarped(c->mov[i]->land) && c->mov[i]->land != laCrossroads4) q++; if(q == 1) c->wall = waWarpGate; @@ -1539,7 +1539,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { if(c->land == laWarpSea) { c->wall = waSea; int q = 0; - if(!nontruncated && !chaosmode) for(int i=0; itype; i++) + if(!nonchamfered && !chaosmode) for(int i=0; itype; i++) if(c->mov[i] && !isWarped(c->mov[i]->land)) q++; if(q == 1) c->wall = waWarpGate; } @@ -1660,7 +1660,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { } else if(items[itHunting] < 10) { vector next; - forCellEx(c2, c) if(c2->mpdist > 7 && (nontruncated || !ctof(c2))) next.push_back(c2); + forCellEx(c2, c) if(c2->mpdist > 7 && (nonchamfered || !ctof(c2))) next.push_back(c2); if(size(next)) { c->item = itHunting; cell *c3 = next[hrand(size(next))]; @@ -1840,7 +1840,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laMirrorOld: ONEMPTY { - if((nontruncated?pseudohept(c):!ishept(c)) && hrand(5000) < 120 && (peace::on || notDippingFor(itShard))) + if((nonchamfered?pseudohept(c):!ishept(c)) && hrand(5000) < 120 && (peace::on || notDippingFor(itShard))) c->wall = hrand(2) ? waMirror : waCloud; else if(ishept(c) && hrand(5000) < 10 * PRIZEMUL) placePrizeOrb(c); @@ -1853,7 +1853,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laMirror: ONEMPTY { - if((nontruncated?pseudohept(c):!ishept(c)) && hrand(1250) < 120 && (peace::on || notDippingFor(itShard))) + if((nonchamfered?pseudohept(c):!ishept(c)) && hrand(1250) < 120 && (peace::on || notDippingFor(itShard))) c->wall = hrand(2) ? waMirror : waCloud; else if(ishept(c) && hrand(5000) < 10 * PRIZEMUL) placePrizeOrb(c); @@ -1954,7 +1954,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { else si.id = (zebra40(c)&2) ? 0 : zebra40(c) == 4 ? 8 : 1; c->wall = waSea; - if(among(si.id, 0, 4, 16, nontruncated ? -1 : 24)) + if(among(si.id, 0, 4, 16, nonchamfered ? -1 : 24)) c->wall = waDock; if(si.id == 8 && hrand(100) < 75) { c->wall = waBoat; @@ -2025,7 +2025,7 @@ void giantLandSwitch(cell *c, int d, cell *from) { case laCrossroads5: if(c->wall == waTower) c->land = laCamelot; ONEMPTY { - if(nontruncated && c->land == laCrossroads5 && hrand(100) < 60) + if(nonchamfered && c->land == laCrossroads5 && hrand(100) < 60) c->wall = waBarrier; else if(!ctof(c) && !inv::on && items[itShard] >= 10 && hrand(8000) < 120*orbcrossfun(items[itShard])) c->wall = hrand(2) ? waMirror : waCloud; @@ -2237,7 +2237,7 @@ void setdist(cell *c, int d, cell *from) { if(buggyGeneration) { if(d < BARLEV) for(int i=0; itype; i++) { - setdist(createMov(c, i), d+(nontruncated?2:1), c); + setdist(createMov(c, i), d+(nonchamfered?2:1), c); } if(d >= BARLEV) c->item = itBuggy2; return; @@ -2322,7 +2322,7 @@ void setdist(cell *c, int d, cell *from) { placeLocalOrbs(c); } - if(nontruncated && c->wall == waMirrorWall && c->land == laMirror) + if(nonchamfered && c->wall == waMirrorWall && c->land == laMirror) c->land = laMirrorWall; // , c->item = itPirate; // not really a proper bugfix if(d == 7) playSeenSound(c); diff --git a/landlock.cpp b/landlock.cpp index 6f64a5b5..5ccb78b2 100644 --- a/landlock.cpp +++ b/landlock.cpp @@ -1020,10 +1020,10 @@ int isLandValid(eLand l) { return 1; // not enough space - if(l == laStorms && nontruncated && elliptic) + if(l == laStorms && nonchamfered && elliptic) return 0; - if(l == laStorms && nontruncated && S3 == 3) + if(l == laStorms && nonchamfered && S3 == 3) return 0; // available only in weird geometries @@ -1043,8 +1043,8 @@ int isLandValid(eLand l) { if((l == laWildWest || l == laDual) && normalgame) return 0; - // Crystal World is designed for truncated geometries - if(l == laDual && nontruncated) + // Crystal World is designed for chamfered geometries + if(l == laDual && nonchamfered) return 0; if(l == laHaunted && chaosmode) @@ -1093,11 +1093,11 @@ int isLandValid(eLand l) { // works correctly only in some geometries if(l == laClearing) - if(chaosmode || !(stdeuc || a38 || (a45 && !nontruncated) || (a47 && !nontruncated))) + if(chaosmode || !(stdeuc || a38 || (a45 && !nonchamfered) || (a47 && !nonchamfered))) return 0; - // does not work in non-truncated a4 - if(l == laOvergrown && a4 && nontruncated) + // does not work in non-chamfered a4 + if(l == laOvergrown && a4 && nonchamfered) return 0; // does not work in bounded either @@ -1116,9 +1116,9 @@ int isLandValid(eLand l) { if((l == laBlizzard || l == laVolcano) && elliptic && S7 < 5) return 0; - // Kraken does not really work in odd non-truncated geometries + // Kraken does not really work in odd non-chamfered geometries // (but we do have to allow it in Standard) - if(l == laKraken && nontruncated && (S7&1)) { + if(l == laKraken && nonchamfered && (S7&1)) { if(!geometry) return 1; return 0; } @@ -1129,7 +1129,7 @@ int isLandValid(eLand l) { // works in most spheres, Zebra quotient, and stdeuc if(l == laWhirlwind) - if(!(stdeuc || quotient == 1 || (S7 == 4 && !nontruncated) || (bigsphere && nontruncated && !elliptic))) + if(!(stdeuc || quotient == 1 || (S7 == 4 && !nonchamfered) || (bigsphere && nonchamfered && !elliptic))) return 0; // needs standard/Euclidean (needs fractal landscape) @@ -1151,12 +1151,12 @@ int isLandValid(eLand l) { if(l == laDragon && bounded) return 0; - // Graveyard pattern does not work on non-truncated weird geometries + // Graveyard pattern does not work on non-chamfered weird geometries if(l == laGraveyard) return geosupport_graveyard(); - // Warped Coast does not work on non-truncated S3s (except standard heptagonal where we have to keep it) - if(l == laWarpCoast && (S3==3) && nontruncated) { + // Warped Coast does not work on non-chamfered S3s (except standard heptagonal where we have to keep it) + if(l == laWarpCoast && (S3==3) && nonchamfered) { if(!geometry) return 1; return 0; } @@ -1174,7 +1174,7 @@ int isLandValid(eLand l) { if(l == laTrollheim && !stdeuc) return 1; - if(l == laReptile && (!stdeuc || nontruncated)) + if(l == laReptile && (!stdeuc || nonchamfered)) return 1; if(l == laCrossroads && weirdhyperbolic) @@ -1190,14 +1190,14 @@ int isLandValid(eLand l) { if(l == laCrossroads4 && !(stdeuc || smallbounded)) return 0; - if(l == laZebra && !(stdeuc || (a4 && nontruncated) || a46 || quotient == 1)) + if(l == laZebra && !(stdeuc || (a4 && nonchamfered) || a46 || quotient == 1)) return 0; if(l == laCrossroads3 && euclid) return 1; // because it is not accurate if(l == laPrairie) { - if(stdeuc || (bigsphere && !nontruncated && !elliptic) || (quotient == 2)) ; + if(stdeuc || (bigsphere && !nonchamfered && !elliptic) || (quotient == 2)) ; else if(!bounded) return 1; else return 0; } diff --git a/language-cz.cpp b/language-cz.cpp index 38e253fb..8ca4b48f 100644 --- a/language-cz.cpp +++ b/language-cz.cpp @@ -6354,7 +6354,7 @@ S( "You can try many different geometries here. We start by gluing " "n-gons in such a way that k of them meet in every vertex. " "Depending on n and k, this either folds into a sphere, unfolds into a plane, " - "or requires a hyperbolic space. The result may be then 'truncated' by " + "or requires a hyperbolic space. The result may be then 'chamfered' by " "replacing each vertex by a 2k-gon. Furthermore, you can play " "with quotient geometries. For example, the elliptic geometry is " "obtained from the sphere by making the antipodes be the same point, " @@ -6362,7 +6362,7 @@ S( "Have fun experimenting! " "Achievements and leaderboards do not work in geometry experiments, " "except some specific ones.\n\n" - "In standard geometry (truncated or not), you can play the full game, but in other geometries " + "In standard geometry (chamfered or not), you can play the full game, but in other geometries " "you select a particular land. Lands are unlocked by visiting them in this " "session, or permanently by collecting 25 treasure. Try Crossroads in Euclidean " "or chaos mode in non-standard non-quotient hyperbolic to visit many lands. " @@ -6407,7 +6407,7 @@ S("tetrahedron (buggy)", "čtyřstěn (problémový)") S("tetrahedron", "čtyřstěn") // in case if it gets better S("land", "kraj") -S("truncated", "seříznutí") +S("chamfered", "seříznutí") S("does not matter", "nehraje roli") S("sides per face", "počet stran") S("faces per vertex", "stupeň vrcholů") @@ -6418,8 +6418,8 @@ S("quotient space", "kvocientový prostor") S("size of the world", "velikost světa") S("flat", "placka") -// truncated or not truncated -S(" (t)", " (s)") +// chamfered or not chamfered +S(" (c)", " (s)") S(" (n)", " (n)") S("(locked)", "(uzamčeno)") diff --git a/language-pl.cpp b/language-pl.cpp index 5c2b8859..3802c40d 100644 --- a/language-pl.cpp +++ b/language-pl.cpp @@ -6206,7 +6206,7 @@ S( "You can try many different geometries here. We start by gluing " "n-gons in such a way that k of them meet in every vertex. " "Depending on n and k, this either folds into a sphere, unfolds into a plane, " - "or requires a hyperbolic space. The result may be then 'truncated' by " + "or requires a hyperbolic space. The result may be then 'chamfered' by " "replacing each vertex by a 2k-gon. Furthermore, you can play " "with quotient geometries. For example, the elliptic geometry is " "obtained from the sphere by making the antipodes be the same point, " @@ -6214,7 +6214,7 @@ S( "Have fun experimenting! " "Achievements and leaderboards do not work in geometry experiments, " "except some specific ones.\n\n" - "In standard geometry (truncated or not), you can play the full game, but in other geometries " + "In standard geometry (chamfered or not), you can play the full game, but in other geometries " "you select a particular land. Lands are unlocked by visiting them in this " "session, or permanently by collecting 25 treasure. Try Crossroads in Euclidean " "or chaos mode in non-standard non-quotient hyperbolic to visit many lands. " @@ -6257,7 +6257,7 @@ S("tetrahedron (buggy)", "czworościan (bugi)") S("tetrahedron", "czworościan") // in case if it gets better S("land", "kraina") -S("truncated", "przycięte") +S("chamfered", "przycięte") S("does not matter", "bez znaczenia") S("sides per face", "boki ścian") S("faces per vertex", "wierzchołki") @@ -6268,8 +6268,8 @@ S("quotient space", "przestrzeń ilorazowa") S("size of the world", "wielkość świata") S("flat", "płaska") -// truncated or not truncated -S(" (t)", " (p)") +// chamfered or not chamfered +S(" (c)", " (p)") S(" (n)", " (n)") S("(locked)", "(blok)") @@ -6285,7 +6285,7 @@ S("Not implemented for spherical geometry. Please tell me if you really want thi #undef Orb // Hypersian Rug -S("This makes sense only in hyperbolic or Torus geometry.", "To ma sens tylko w geometrii hiperbolicznej i na torusie.") +// S("This makes sense only in hyperbolic or Torus geometry.", "To ma sens tylko w geometrii hiperbolicznej i na torusie.") // for the map editor N("Dragon Head", GEN_F, "Głowa Smoka", "Głowy Smoka", "Głowę Smoka", "Głową Smoka") diff --git a/language-ru.cpp b/language-ru.cpp index baa5b706..6aea1cab 100644 --- a/language-ru.cpp +++ b/language-ru.cpp @@ -6429,7 +6429,7 @@ S( "You can try many different geometries here. We start by gluing " "n-gons in such a way that k of them meet in every vertex. " "Depending on n and k, this either folds into a sphere, unfolds into a plane, " - "or requires a hyperbolic space. The result may be then 'truncated' by " + "or requires a hyperbolic space. The result may be then 'chamfered' by " "replacing each vertex by a 2k-gon. Furthermore, you can play " "with quotient geometries. For example, the elliptic geometry is " "obtained from the sphere by making the antipodes be the same point, " @@ -6437,7 +6437,7 @@ S( "Have fun experimenting! " "Achievements and leaderboards do not work in geometry experiments, " "except some specific ones.\n\n" - "In standard geometry (truncated or not), you can play the full game, but in other geometries " + "In standard geometry (chamfered or not), you can play the full game, but in other geometries " "you select a particular land. Lands are unlocked by visiting them in this " "session, or permanently by collecting 25 treasure. Try Crossroads in Euclidean " "or chaos mode in non-standard non-quotient hyperbolic to visit many lands. " @@ -6478,7 +6478,7 @@ S("tetrahedron (buggy)", "тетраэдр (ошибки)") S("tetrahedron", "тетраэдр") // in case if it gets better S("land", "земля") -S("truncated", "усеченный") +S("chamfered", "усеченный") S("does not matter", "не важно") S("sides per face", "сторон у клетка") S("faces per vertex", "клеток в вершине") @@ -6489,8 +6489,8 @@ S("quotient space", "факторпространство") S("size of the world", "размер мира") S("flat", "плоскость") -// truncated or not truncated -S(" (t)", " (у)") +// chamfered or not chamfered +S(" (c)", " (у)") S(" (n)", " (н)") S("(locked)", "(закрыто)") diff --git a/mapeditor.cpp b/mapeditor.cpp index c71956a3..d2dee33c 100644 --- a/mapeditor.cpp +++ b/mapeditor.cpp @@ -88,7 +88,7 @@ namespace mapstream { int32_t i = VERNUM; save(i); save(patterns::whichPattern); save(geometry); - save(nontruncated); + save(nonchamfered); if(geometry == gTorus) { save(torusconfig::qty); save(torusconfig::dx); @@ -173,7 +173,7 @@ namespace mapstream { if(vernum >= 10203) { load(geometry); - load(nontruncated); + load(nonchamfered); if(geometry == gTorus) { load(torusconfig::qty); load(torusconfig::dx); @@ -609,7 +609,7 @@ namespace mapeditor { if(painttype == 4 && radius) { if(where.c->type != copysource.c->type) return; if(where.spin<0) where.spin=0; - if(!nontruncated && !ctof(mouseover) && ((where.spin&1) != (copysource.spin&1))) + if(!nonchamfered && !ctof(mouseover) && ((where.spin&1) != (copysource.spin&1))) cwspin(where, 1); } if(painttype != 4) copysource.c = NULL; @@ -1258,7 +1258,7 @@ namespace mapeditor { fscanf(f, "%d%d%d%d\n", &tg, &nt, &wp, &patterns::subpattern_flags); patterns::whichPattern = wp; if(tg != geometry) { targetgeometry = eGeometry(tg); restartGame('g', 0, true); } - if(nt != nontruncated) { restartGame('7', 0, true); } + if(nt != nonchamfered) { restartGame('7', 0, true); } } while(true) { @@ -1302,7 +1302,7 @@ namespace mapeditor { fprintf(f, "HyperRogue saved picture\n"); fprintf(f, "%x\n", VERNUM_HEX); if(VERNUM_HEX >= 0xA0A0) - fprintf(f, "%d %d %d %d\n", geometry, nontruncated, patterns::whichPattern, patterns::subpattern_flags); + fprintf(f, "%d %d %d %d\n", geometry, nonchamfered, patterns::whichPattern, patterns::subpattern_flags); for(int i=0; i 1), 's'); if(!shmup::on) dialog::addSelItem(XLAT("hardcore mode"), hardcore && !pureHardcore() ? XLAT("PARTIAL") : ONOFF(hardcore), 'h'); diff --git a/monstergen.cpp b/monstergen.cpp index 716c9ec6..bd8ef79b 100644 --- a/monstergen.cpp +++ b/monstergen.cpp @@ -635,7 +635,7 @@ void generateSnake(cell *c, int i) { c->monst = moHexSnake; int cpair = (1<mov[i])); preventbarriers(c); - int len = nontruncated ? 2 : ROCKSNAKELENGTH; + int len = nonchamfered ? 2 : ROCKSNAKELENGTH; cell *c2 = c; vector rocksnake; while(--len) { @@ -659,7 +659,7 @@ void generateSnake(cell *c, int i) { i = goodsteps[hrand(size(goodsteps))]; } } - if(size(rocksnake) < ROCKSNAKELENGTH/2 && !nontruncated) { + if(size(rocksnake) < ROCKSNAKELENGTH/2 && !nonchamfered) { for(int i=0; imonst = moNone; } diff --git a/orbgen.cpp b/orbgen.cpp index d8dfd8da..3c74209d 100644 --- a/orbgen.cpp +++ b/orbgen.cpp @@ -378,7 +378,7 @@ ld orbcrossfun(int tr) { bool buildPrizeMirror(cell *c, int freq) { if(inv::on) return false; - if(c->type == 7 && !nontruncated) return false; + if(c->type == 7 && !nonchamfered) return false; if(items[itShard] < 25) return false; if(freq && hrand(freq * 100 / orbprizefun(items[itShard])) >= 100) return false; diff --git a/pattern2.cpp b/pattern2.cpp index bf502939..e926b70c 100644 --- a/pattern2.cpp +++ b/pattern2.cpp @@ -205,7 +205,7 @@ int fiftyval200(cell *c) { // zebraval -int dir_truncated457(cell *c) { +int dir_chamfered457(cell *c) { int wset = 0; int has1 = 0; for(int i=0; i<4; i++) { @@ -233,7 +233,7 @@ int zebra40(cell *c) { } else if(ctof(c)) return (c->master->zebraval/10); else if(a4) { - int ws = dir_truncated457(c); + int ws = dir_chamfered457(c); if(ws < 0) return -ws; int tot = 0; array zebras; @@ -526,7 +526,7 @@ namespace patterns { si.dir = i; } else { - int d = dir_truncated457(c); + int d = dir_chamfered457(c); if(d >= 0) si.dir = d; else si.dir = (zebra40(createMov(c, 0)) & 4) ? 2 : 0; } @@ -540,11 +540,11 @@ namespace patterns { si.id = (c->master->fiftyval >> 1) & 3; else si.id = 0; - if(nontruncated) + if(nonchamfered) si.id *= 4; else si.id += 4; - si.dir = (pat == PAT_COLORING && !nontruncated ? 1 : 0) + (c->master->fiftyval | (c->master->fiftyval & 8 ? 0 : 2)); + si.dir = (pat == PAT_COLORING && !nonchamfered ? 1 : 0) + (c->master->fiftyval | (c->master->fiftyval & 8 ? 0 : 2)); si.symmetries = 2; si.id += 8; si.id %= 12; @@ -687,13 +687,13 @@ namespace patterns { if(subpattern_flags & SPF_FULLSYM) si.symmetries = 1; } - if(sphere && !(nontruncated) && !(S7 == 3)) + if(sphere && !(nonchamfered) && !(S7 == 3)) si.symmetries = ctof(c) ? 1 : 2; if(sphere && (sub & SPF_EXTRASYM)) { si.symmetries = ctof(c) ? 1 : 2; } if(a38) - si.symmetries = (ctof(c) && !nontruncated) ? 1 : 2; + si.symmetries = (ctof(c) && !nonchamfered) ? 1 : 2; if(a457) { si.symmetries = ctof(c) ? 1 : 2; if(!ctof(c)) si.dir = 0; @@ -746,7 +746,7 @@ namespace patterns { si.id = zebra40(c); // 4 to 43 int t4 = si.id>>2, tcdir = 0; - if(nontruncated) tcdir = si.id^1; + if(nonchamfered) tcdir = si.id^1; else if(t4 == 10) tcdir = si.id-20; else if(t4 >= 4 && t4 < 7) tcdir = 40 + (si.id&3); @@ -801,11 +801,11 @@ namespace patterns { int look_for = -1; int shft = 0; if(inr(si.id, 0, 4)) { - look_for = si.id + (nontruncated ? 4 : 60); + look_for = si.id + (nonchamfered ? 4 : 60); if(symRotation) si.symmetries = 1; } - else if(inr(si.id, 4, 32)) look_for = si.id + (nontruncated ? 28 : 168); - else if(inr(si.id, 32, 60)) look_for = si.id + (nontruncated ? -28 : 112); + else if(inr(si.id, 4, 32)) look_for = si.id + (nonchamfered ? 28 : 168); + else if(inr(si.id, 32, 60)) look_for = si.id + (nonchamfered ? -28 : 112); else if(inr(si.id, 60, 88)) look_for = si.id - 56, shft = si.reflect ? 1 : 5; else if(inr(si.id, 88, 116)) look_for = si.id - 84, shft = 3; else if(inr(si.id, 116, 144)) look_for = si.id + 56; @@ -849,7 +849,7 @@ namespace patterns { if(euclid) // use the torus ID si.id = fieldpattern::fieldval_uniq(c); - else if(nontruncated) + else if(nonchamfered) // use the actual field codes si.id = fieldpattern::fieldval(c).first; else @@ -888,7 +888,7 @@ namespace patterns { } int geosupport_threecolor() { - if(!nontruncated) { + if(!nonchamfered) { if(S7 % 2) return 1; return 2; } @@ -898,8 +898,8 @@ int geosupport_threecolor() { } int geosupport_graveyard() { - // always works in truncated geometries - if(!nontruncated) return 2; + // always works in chamfered geometries + if(!nonchamfered) return 2; // always works in patterns supporting three-color return geosupport_threecolor(); @@ -911,19 +911,19 @@ int pattern_threecolor(cell *c) { patterns::val38(c, si, patterns::SPF_ROT, patterns::PAT_COLORING); return si.id >> 2; } - if(a46 && !nontruncated) { + if(a46 && !nonchamfered) { patterns::patterninfo si; patterns::val46(c, si, 0, patterns::PAT_COLORING); int i = si.id; return i >> 2; } if(euclid) { - if(a4 && nontruncated) return eupattern4(c); + if(a4 && nonchamfered) return eupattern4(c); return eupattern(c) % 3; } if(S7 == 4 && S3 == 3) { int codesN[6] = {0,1,2,1,2,0}; - if(nontruncated) + if(nonchamfered) return codesN[c->master->fiftyval]; if(ctof(c)) return 0; @@ -935,7 +935,7 @@ int pattern_threecolor(cell *c) { return 2 - (c->spin(i)&1); } } - if(stdhyperbolic && nontruncated) { + if(stdhyperbolic && nonchamfered) { int z = zebra40(c); if(z == 5 || z == 8 || z == 15) return 0; if(z == 10 || z == 12 || z == 7) return 2; @@ -943,16 +943,16 @@ int pattern_threecolor(cell *c) { if(z == 14 || z == 11) return 4; return 1; } - if(a46 && nontruncated) { + if(a46 && nonchamfered) { patterns::patterninfo si; patterns::val46(c, si, 0, patterns::PAT_COLORING); return si.id; } - if(S7 == 5 && nontruncated) { + if(S7 == 5 && nonchamfered) { const int codes[12] = {1, 2, 0, 3, 2, 0, 0, 1, 3, 1, 2, 3}; return codes[c->master->fiftyval]; } - if(S7 == 3 && nontruncated) + if(S7 == 3 && nonchamfered) return c->master->fiftyval; return !ishept(c); } @@ -965,7 +965,7 @@ bool pseudohept(cell *c) { } bool warptype(cell *c) { - if(a4 && nontruncated) { + if(a4 && nonchamfered) { if(euclid) return among(eupattern4(c), 1, 2); else @@ -1123,7 +1123,7 @@ namespace patterns { } dialog::addItem(XLAT("football"), 'F'); - if(S3 == 4 && nontruncated) + if(S3 == 4 && nonchamfered) dialog::addItem(XLAT("chessboard"), 'c'); dialog::addItem(XLAT("nice coloring"), 'T'); @@ -1205,7 +1205,7 @@ namespace patterns { if(stdhyperbolic || euclid) dialog::addBoolItem(XLAT("Palace Pattern"), (whichPattern == PAT_PALACE), PAT_PALACE); - if(nontruncated && S3 == 4) + if(nonchamfered && S3 == 4) dialog::addBoolItem(XLAT("chessboard"), (whichPattern == PAT_CHESS), PAT_CHESS); if(a38 || a46 || euclid || S3 == 4) @@ -1232,7 +1232,7 @@ namespace patterns { if((euclid && whichPattern == PAT_COLORING) || (a38 && whichPattern == PAT_COLORING) || - (a4 && nontruncated && whichPattern == PAT_COLORING && !a46)) + (a4 && nonchamfered && whichPattern == PAT_COLORING && !a46)) dialog::addBoolItem(XLAT("edit all three colors"), subpattern_flags & SPF_ROT, '0'); if(euclid && whichPattern == PAT_COLORING) @@ -1241,8 +1241,8 @@ namespace patterns { if(a46 && whichPattern == PAT_COLORING) dialog::addBoolItem(XLAT("rotate the color groups"), subpattern_flags & SPF_CHANGEROT, '4'); - if(a46 && whichPattern == PAT_COLORING && !nontruncated) - dialog::addBoolItem(XLAT("edit both truncated colors"), subpattern_flags & SPF_TWOCOL, '5'); + if(a46 && whichPattern == PAT_COLORING && !nonchamfered) + dialog::addBoolItem(XLAT("edit both chamfered colors"), subpattern_flags & SPF_TWOCOL, '5'); if( (whichPattern == PAT_EMERALD && (stdhyperbolic || a38)) || @@ -1261,15 +1261,15 @@ namespace patterns { if(euclid && among(whichPattern, PAT_COLORING, 0)) dialog::addBoolItem(XLAT("full symmetry"), subpattern_flags & SPF_FULLSYM, '!'); - if(a38 && nontruncated && whichPattern == 0) { + if(a38 && nonchamfered && whichPattern == 0) { dialog::addBoolItem(XLAT("extra symmetries"), subpattern_flags & SPF_EXTRASYM, '='); } - if(a46 && nontruncated && whichPattern == PAT_COLORING) { + if(a46 && nonchamfered && whichPattern == PAT_COLORING) { dialog::addBoolItem(XLAT("extra symmetries"), subpattern_flags & SPF_EXTRASYM, '='); } - if((a38 || (sphere && S7 == 4) || euclid4 || a46) && !nontruncated) { + if((a38 || (sphere && S7 == 4) || euclid4 || a46) && !nonchamfered) { dialog::addBoolItem(XLAT("alternate coloring"), subpattern_flags & SPF_ALTERNATE, '\''); dialog::addBoolItem(XLAT("football pattern"), subpattern_flags & SPF_FOOTBALL, '*'); } @@ -1347,7 +1347,7 @@ namespace patterns { struct changeable_pattern_geometry { eGeometry geo; - bool nontrunc; + bool nonchamf; char whichPattern; int subpattern_flags; }; @@ -1441,14 +1441,14 @@ namespace patterns { for(int j=0; jmaster->move[i] < c->master) { - queueline(tC0(V), V*xspinpush0((nontruncated?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); + queueline(tC0(V), V*xspinpush0((nonchamfered?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); } break; } @@ -1675,20 +1675,20 @@ namespace linepatterns { case patBigRings: { if(pseudohept(c) && !euclid) for(int i=0; imaster->move[i] && c->master->move[i] < c->master && c->master->move[i]->dm4 == c->master->dm4) - queueline(tC0(V), V*xspinpush0((nontruncated?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); + queueline(tC0(V), V*xspinpush0((nonchamfered?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); break; } case patTree: if(ctof(c) && !euclid) - queueline(tC0(V), V*ddi0(nontruncated?S42:0, tessf), col, 2); + queueline(tC0(V), V*ddi0(nonchamfered?S42:0, tessf), col, 2); break; case patAltTree: if(ctof(c) && !euclid && c->master->alt) { for(int i=0; imaster->move[i] && c->master->move[i]->alt == c->master->alt->move[0]) - queueline(tC0(V), V*xspinpush0((nontruncated?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); + queueline(tC0(V), V*xspinpush0((nonchamfered?M_PI:0) -2*M_PI*i/S7, tessf), col, 2); } break; diff --git a/polygons.cpp b/polygons.cpp index c3c7ff08..5697d857 100644 --- a/polygons.cpp +++ b/polygons.cpp @@ -1098,12 +1098,12 @@ hyperpoint hpxd(ld d, ld x, ld y, ld z) { double scalef; hyperpoint hpxyzsc(double x, double y, double z) { - if(nontruncated) return hpxd(scalef, x, y, z); + if(nonchamfered) return hpxd(scalef, x, y, z); else return hpxyz(x,y,z); } hyperpoint turtlevertex(int u, double x, double y, double z) { - ld scale = nontruncated ? scalef : 1; + ld scale = nonchamfered ? scalef : 1; if(u) scale /= 2; return hpxd(scale, x, y, z); } @@ -1148,7 +1148,7 @@ void bshape(hpcshape& sh, int p, double shzoom, int shapeid, double bonus = 0) { while(polydata[whereis + 2*qty] != NEWSHAPE) qty++; double shzoomx = shzoom; double shzoomy = shzoom; - if(shzoom == WOLF) shzoomx = 1.5 * (nontruncated ? crossf / hcrossf : 1), shzoomy = 1.6 * (nontruncated ? crossf / hcrossf : 1); + if(shzoom == WOLF) shzoomx = 1.5 * (nonchamfered ? crossf / hcrossf : 1), shzoomy = 1.6 * (nonchamfered ? crossf / hcrossf : 1); int rots2 = rots; // shapes 368..370 are specially designed if(!(shapeid >= 368 && shapeid <= 370)) { @@ -1267,21 +1267,21 @@ void buildpolys() { } // scales - scalef = nontruncated ? crossf / hcrossf7 : hcrossf / hcrossf7; + scalef = nonchamfered ? crossf / hcrossf7 : hcrossf / hcrossf7; if(euclid) scalef *= .52/crossf; - double scalef2 = nontruncated ? crossf / hcrossf7 * .88 : euclid ? scalef : hcrossf / hcrossf7; + double scalef2 = nonchamfered ? crossf / hcrossf7 * .88 : euclid ? scalef : hcrossf / hcrossf7; double spzoom = sphere ? 1.4375 : 1; double spzoom6 = sphere ? 1.2375 : 1; double spzoom7 = sphere ? .8 : 1; - double spzoomd7 = (nontruncated && sphere) ? 1 : spzoom7; + double spzoomd7 = (nonchamfered && sphere) ? 1 : spzoom7; double fac80 = a45 ? 1.4 : a46 ? 1.2 : (a38) ? .7 : .8; - double fac94 = euclid ? .8 : a4 ? (nontruncated ? 1.1 : .9) : .94; + double fac94 = euclid ? .8 : a4 ? (nonchamfered ? 1.1 : .9) : .94; if(euclid) fac80 = fac94 = .9; @@ -1296,11 +1296,11 @@ void buildpolys() { #define SHADMUL (S3==4 ? 1.05 : 1.3) // procedural floors - double shexf = nontruncated ? crossf* .55 : hexf; + double shexf = nonchamfered ? crossf* .55 : hexf; double p = -.006; - int td = ((nontruncated || euclid) && !(S7&1)) ? S42+S6 : 0; + int td = ((nonchamfered || euclid) && !(S7&1)) ? S42+S6 : 0; double trihepta0 = scalef*spzoom6*(.2776+p) * gsca(a4, 1.3, a46, .975, a47, .85, a38, .9) * bscale6; double trihepta1 = (sphere ? .54 : scalef*spzoom6*(.5273-2*p)) * gsca(a4, .8, a46, 1.075, sphere4, 1.3) * bscale7; @@ -1353,16 +1353,16 @@ void buildpolys() { bool strict = false; - if(a4 && nontruncated) fac94 *= 1.1; + if(a4 && nonchamfered) fac94 *= 1.1; - if(a46 && nontruncated) fac94 *= .9; + if(a46 && nonchamfered) fac94 *= .9; double floorrad0 = shexf*fac80*spzoom; double floorrad1 = strict ? hcrossf : euclid ? shexf*fac80*spzoom : shexf*fac94; if(euclid4) { - if(nontruncated) + if(nonchamfered) floorrad0 = floorrad1 = rhexf * .94; else floorrad0 = hexvdist * .9, @@ -1513,7 +1513,7 @@ void buildpolys() { hpcpush(ddi(0, -shexf*2.4) * C0); bshape(shMirror, PPR_WALL); - if(nontruncated) { + if(nonchamfered) { for(int t=0; t<=S7; t++) hpcpush(ddi(t*12, shexf*MF(fac80,7)) * C0); } else { @@ -1577,9 +1577,9 @@ void buildpolys() { } double disksize = crossf; - if(nontruncated && a38) disksize *= 2; + if(nonchamfered && a38) disksize *= 2; else if(a38) disksize *= 1.5; - else if(nontruncated && S6 == 8) disksize *= 1.5; + else if(nonchamfered && S6 == 8) disksize *= 1.5; bshape(shDisk, PPR_ITEM); for(int i=0; i<=S84; i+=S3) @@ -1793,9 +1793,9 @@ void buildpolys() { if(a38) spzoom6 *= .9; - if(a4 && !nontruncated) spzoom6 *= 1.9, spzoom7 *= .9, spzoomd7 *= .9; - if(a46 && !nontruncated) spzoom6 *= .9; - if(a47 && !nontruncated) spzoom6 *= .85; + if(a4 && !nonchamfered) spzoom6 *= 1.9, spzoom7 *= .9, spzoomd7 *= .9; + if(a46 && !nonchamfered) spzoom6 *= .9; + if(a47 && !nonchamfered) spzoom6 *= .85; double espzoom6 = spzoom6, espzoomd7 = spzoomd7; @@ -1823,18 +1823,18 @@ void buildpolys() { bshape(shCrossFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9)*ffscale2, 5, ffspin2); bshape(shCrossFloor[1], PPR_FLOOR, scalef*espzoomd7*gsca(sphere,.9)*ffscale2 * gsca(a47,1.3), 6, octroll); - double ntscale = gsca(nontruncated, gsca(a38, 1.4, a47, 2, a46, 1.525)); - double ntrot = grot(a46&&nontruncated, .25, a38&&nontruncated, -.2); + double ntscale = gsca(nonchamfered, gsca(a38, 1.4, a47, 2, a46, 1.525)); + double ntrot = grot(a46&&nonchamfered, .25, a38&&nonchamfered, -.2); bshape(shChargedFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9)*ffscale2, 7, ffspin2); bshape(shChargedFloor[1], PPR_FLOOR, scalef*spzoomd7, 9); bshape(shChargedFloor[2], PPR_FLOOR, scalef*espzoom6, 7); - bshape(shChargedFloor[3], 12, spzoomd7 * gsca(a4 && euclid, .4, a4,1.2,sphere&&nontruncated,.9)* ntscale, 10, ntrot + grot(euclid4 && nontruncated, M_PI/4 + .1)); // nontruncated variant + bshape(shChargedFloor[3], 12, spzoomd7 * gsca(a4 && euclid, .4, a4,1.2,sphere&&nonchamfered,.9)* ntscale, 10, ntrot + grot(euclid4 && nonchamfered, M_PI/4 + .1)); // nonchamfered variant bshape(shSStarFloor[0], PPR_FLOOR, scalef*spzoom6*gsca(sphere,.8)*ffscale2, 11, grot(a4,.775)); bshape(shSStarFloor[1], PPR_FLOOR, scalef*spzoomd7*gsca(a4,.85), 12, octroll); bshape(shOverFloor[0], PPR_FLOOR, scalef*spzoom * gsca(a47,1.3, a45,1.3, a46,1.1), 13, grot(a47,-.75, a45,-.7, a46,.9)); - if(nontruncated) { + if(nonchamfered) { if(a4) bshape(shOverFloor[1], PPR_FLOOR, 1, 368 + S7 - 5, 0); else bshape(shOverFloor[1], PPR_FLOOR, gsca(a38,1.3, sphere, .83), 14, octroll + grot(a38,.4)); } @@ -1843,12 +1843,12 @@ void buildpolys() { bshape(shTriFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9, a4,.9)*ffscale2, 17, ffspin2 + grot(a47,.1)); bshape(shTriFloor[1], PPR_FLOOR, scalef*espzoomd7*ffscale2*gsca(a4,1.2, a47,1.5), 18, octroll + grot(a4,.25, a47,-.1, sphere4,.7) + grot(euclid&&a4, M_PI/8)); bshape(shFeatherFloor[0], PPR_FLOOR, scalef*spzoom6*ffscale2, 19, ffspin2); - if(nontruncated) bshape(shFeatherFloor[1], PPR_FLOOR, sphere ? .83 : gsca(ap4,1.1) * ntscale, 20, ntrot); + if(nonchamfered) bshape(shFeatherFloor[1], PPR_FLOOR, sphere ? .83 : gsca(ap4,1.1) * ntscale, 20, ntrot); else bshape(shFeatherFloor[1], PPR_FLOOR, scalef*spzoom7*gsca(sphere,1.1,a4,1.1)*ffscale2*ntscale, 21, sphere?1.3:ntrot); bshape(shFeatherFloor[2], PPR_FLOOR, scalef*1.1, 22); // Euclidean variant bshape(shBarrowFloor[0], PPR_FLOOR, gsca(euclid,.9) * spzoom6 * gsca(a467,1.7, a46,.8, a38,1.4) * gsca(euclid&&a4, .7), 23); - bshape(shBarrowFloor[1], PPR_FLOOR, spzoomd7 * gsca(a4,1.15, a467,1.9, a46,.8, a38,1.5, sphere&&nontruncated,.9) * gsca(euclid&&a4, .5), 24, octroll - grot(a47,.1)); - bshape(shBarrowFloor[2], PPR_FLOOR, ntscale*gsca(sphere||euclid,.9) * gsca(euclid&&a4&&nontruncated, .5), 25, ntrot + grot(euclid&&a4&&nontruncated, M_PI/4)); + bshape(shBarrowFloor[1], PPR_FLOOR, spzoomd7 * gsca(a4,1.15, a467,1.9, a46,.8, a38,1.5, sphere&&nonchamfered,.9) * gsca(euclid&&a4, .5), 24, octroll - grot(a47,.1)); + bshape(shBarrowFloor[2], PPR_FLOOR, ntscale*gsca(sphere||euclid,.9) * gsca(euclid&&a4&&nonchamfered, .5), 25, ntrot + grot(euclid&&a4&&nonchamfered, M_PI/4)); bshape(shNewFloor[0], PPR_FLOOR, scalef*espzoom6 * ffscale2, 26, ffspin2); bshape(shNewFloor[1], PPR_FLOOR, scalef*espzoomd7 * ffscale2, 27, octroll); @@ -1930,7 +1930,7 @@ void buildpolys() { zoomShape(shDesertFloor[j], shRedRockFloor[i-1][j], 1 - .1 * i, PPR_FLOORa+i); bshape(shPowerFloor[0], PPR_FLOOR_DRAGON, scalef*espzoom6*gsca(sphere,.8)*ffscale2, 57, ffspin2); bshape(shPowerFloor[1], PPR_FLOOR_DRAGON, scalef*espzoomd7*ffscale2, 58, octroll); - bshape(shRoseFloor[2], PPR_FLOOR, 1, 173); // nontruncated + bshape(shRoseFloor[2], PPR_FLOOR, 1, 173); // nonchamfered bshape(shRoseFloor[0], PPR_FLOOR, gsca(euclid,.9), 174); bshape(shRoseFloor[1], PPR_FLOOR, gsca(euclid,.9) * scalef * gsca(ap4,.85), 175, grot(ap4, M_PI/8)); @@ -1942,7 +1942,7 @@ void buildpolys() { bshape(shTurtleFloor[0], PPR_FLOOR, gsca(euclid,.9, sphere, .9*1.3, a4, 1.6, a38, 1.3, a467, 1.4) * gsca(euclid&&a4, .9), 176); bshape(shTurtleFloor[1], PPR_FLOOR, scalef * gsca(euclid,.9, a4, .9, a47,1.3) * gsca(euclid&&a4, .8), 177, octroll - grot(a47,.1)); - bshape(shTurtleFloor[2], PPR_FLOOR, ntscale * gsca(sphere && nontruncated, .9) * gsca(euclid&&a4&&nontruncated, .5), 178, ntrot + grot(euclid&&a4&&nontruncated, M_PI/4)); // nontruncated + bshape(shTurtleFloor[2], PPR_FLOOR, ntscale * gsca(sphere && nonchamfered, .9) * gsca(euclid&&a4&&nonchamfered, .5), 178, ntrot + grot(euclid&&a4&&nonchamfered, M_PI/4)); // nonchamfered bshape(shDragonFloor[0], PPR_FLOOR_DRAGON, gsca(a4,1.6, a38, 1.3) * gsca(euclid&&a4, .5), 181, ffspin2); bshape(shDragonFloor[1], PPR_FLOOR_DRAGON, gsca(sphere, .9, a38, 1.1, a4,.9) * scalef, 182, octroll); @@ -1951,7 +1951,7 @@ void buildpolys() { bshape(shZebra[1], PPR_FLOOR, scalef, 163); bshape(shZebra[2], PPR_FLOOR, scalef, 164); bshape(shZebra[3], PPR_FLOOR, scalef, 165); - bshape(shZebra[4], PPR_FLOOR, 1, 166); // for nontruncated + bshape(shZebra[4], PPR_FLOOR, 1, 166); // for nonchamfered bshape(shEmeraldFloor[0], PPR_FLOOR, scalef, 167); // 4 bshape(shEmeraldFloor[1], PPR_FLOOR, scalef, 168); // 12 bshape(shEmeraldFloor[2], PPR_FLOOR, scalef, 169); // 16 @@ -1965,9 +1965,9 @@ void buildpolys() { bshape(shTower[4], PPR_FLOOR_TOWER, scalef, 200); // 9 bshape(shTower[5], PPR_FLOOR_TOWER, scalef, 201); // 10 bshape(shTower[6], PPR_FLOOR_TOWER, scalef, 202); // 10 - bshape(shTower[7], PPR_FLOOR_TOWER, 1, 203); // nontruncated 7 - bshape(shTower[8], PPR_FLOOR_TOWER, 1, 204); // nontruncated 11 - bshape(shTower[9], PPR_FLOOR_TOWER, 1, 205); // nontruncated 15 + bshape(shTower[7], PPR_FLOOR_TOWER, 1, 203); // nonchamfered 7 + bshape(shTower[8], PPR_FLOOR_TOWER, 1, 204); // nonchamfered 11 + bshape(shTower[9], PPR_FLOOR_TOWER, 1, 205); // nonchamfered 15 bshape(shTower[10], PPR_FLOOR_TOWER, scalef, 206); // Euclidean // structures & walls @@ -2000,17 +2000,17 @@ void buildpolys() { copyshape(shJoint, shDisk, PPR_ONTENTACLE); bshape(shTentHead, PPR_ONTENTACLE, scalef, 79); bshape(shWormHead, PPR_ONTENTACLE, scalef, 80); - if(nontruncated) bshape(shDragonSegment, PPR_TENTACLE1, 1, 233); + if(nonchamfered) bshape(shDragonSegment, PPR_TENTACLE1, 1, 233); else bshape(shDragonSegment, PPR_TENTACLE1, scalef, 234); bshape(shDragonWings, PPR_ONTENTACLE, scalef, 237); bshape(shDragonLegs, PPR_TENTACLE0, scalef, 238); - if(nontruncated) bshape(shDragonTail, PPR_TENTACLE1, 1, 239); + if(nonchamfered) bshape(shDragonTail, PPR_TENTACLE1, 1, 239); else bshape(shDragonTail, PPR_TENTACLE1, scalef, 240); bshape(shDragonNostril, PPR_ONTENTACLE_EYES, scalef, 241); bshape(shDragonHead, PPR_ONTENTACLE, scalef, 242); - if(nontruncated) bshape(shSeaTentacle, PPR_TENTACLE1, 1, 245); + if(nonchamfered) bshape(shSeaTentacle, PPR_TENTACLE1, 1, 245); else bshape(shSeaTentacle, PPR_TENTACLE1, 1, 246); - ld ksc = nontruncated ? 1.8 : 1.5; + ld ksc = nonchamfered ? 1.8 : 1.5; bshape(shKrakenHead, PPR_ONTENTACLE, ksc, 247); bshape(shKrakenEye, PPR_ONTENTACLE_EYES, ksc, 248); bshape(shKrakenEye2, PPR_ONTENTACLE_EYES2, ksc, 249); @@ -2241,10 +2241,10 @@ void buildpolys() { for(int v=0; v<13; v++) for(int z=0; z<2; z++) copyshape(shTortoise[v][4+z], shTortoise[v][2+z], shTortoise[v][2+z].prio + (PPR_CARRIED-PPR_ITEM)); - if(nontruncated) bshape(shMagicSword, PPR_MAGICSWORD, 1, 243); + if(nonchamfered) bshape(shMagicSword, PPR_MAGICSWORD, 1, 243); else bshape(shMagicSword, PPR_MAGICSWORD, 1, 244); - if(nontruncated) bshape(shMagicShovel, PPR_MAGICSWORD, 1, 333); + if(nonchamfered) bshape(shMagicShovel, PPR_MAGICSWORD, 1, 333); else bshape(shMagicShovel, PPR_MAGICSWORD, 1, 333); bshape(shBead0, 20, 1, 250); @@ -2378,7 +2378,7 @@ bool isSpecial(const hpcshape &h) { const hpcshape& getSeabed(const hpcshape& c) { if(&c == &shCloudFloor[2]) return shCloudSeabed[2]; if(&c == &shCaveFloor[2]) return shCaveSeabed[2]; - if(nontruncated || euclid || sphere) return c; + if(nonchamfered || euclid || sphere) return c; if(&c == &shFloor[0]) return shFullFloor[0]; if(&c == &shFloor[1]) return shFullFloor[1]; if(&c == &shCaveFloor[0]) return shCaveSeabed[0]; @@ -3430,7 +3430,7 @@ NEWSHAPE, 366, 1, 2, 0.120242,0.202432, 0.476077,0.202192, NEWSHAPE, 367, 1, 2, -0.096569,0.019944, 0.040859,0.019906, 0.037742,0.058710, 0.116624,-0.000000, -// overgrown for 4-5 to 4-7 non-truncated +// overgrown for 4-5 to 4-7 non-chamfered NEWSHAPE, 368, 5, 1, -0.722750,-0.522024, -0.310675,-0.189104, -0.809015,-0.052887, -0.464722,0.060902, -1.057795,0.207750, NEWSHAPE, 369, 6, 1, 1.125689,-0.648796, 0.574166,-0.456509, 0.822679,-1.131184, 0.174168,-0.605003, 0.411340,-1.336854, NEWSHAPE, 370, 7, 1, 1.034599,-1.366924, 0.528060,-0.892063, 0.490794,-1.701844, 0.081991,-0.819912, 0.042928,-1.637383, @@ -3457,20 +3457,20 @@ NEWSHAPE /* floors */ // need eswap -#define DESERTFLOOR (nontruncated ? shCloudFloor : shDesertFloor)[ct6] -#define BUTTERFLYFLOOR (nontruncated ? shFloor : shButterflyFloor)[ct6] -#define PALACEFLOOR (nontruncated?shFloor:shPalaceFloor)[ct6] -#define SSTARFLOOR (nontruncated ? shCloudFloor : shSStarFloor)[ct6] -#define POWERFLOOR (nontruncated ? shStarFloor : shPowerFloor)[ct6] -#define CHARGEDFLOOR (nontruncated ? shChargedFloor[3] : ct6 ? shFloor[1] : shChargedFloor[0]) +#define DESERTFLOOR (nonchamfered ? shCloudFloor : shDesertFloor)[ct6] +#define BUTTERFLYFLOOR (nonchamfered ? shFloor : shButterflyFloor)[ct6] +#define PALACEFLOOR (nonchamfered?shFloor:shPalaceFloor)[ct6] +#define SSTARFLOOR (nonchamfered ? shCloudFloor : shSStarFloor)[ct6] +#define POWERFLOOR (nonchamfered ? shStarFloor : shPowerFloor)[ct6] +#define CHARGEDFLOOR (nonchamfered ? shChargedFloor[3] : ct6 ? shFloor[1] : shChargedFloor[0]) #define DEMONFLOOR shDemonFloor[ct6] -#define NEWFLOOR (nontruncated ? shCloudFloor : shNewFloor)[ct6] -#define CROSSFLOOR (nontruncated ? shFloor : shCrossFloor)[ct6] +#define NEWFLOOR (nonchamfered ? shCloudFloor : shNewFloor)[ct6] +#define CROSSFLOOR (nonchamfered ? shFloor : shCrossFloor)[ct6] #define TROLLFLOOR shTrollFloor[ct6] -#define BARROWFLOOR shBarrowFloor[(euclid&&!a4)?0:nontruncated?2:ct6] -#define LAVAFLOOR (nontruncated ? shFloor : shLavaFloor)[ct6] -#define TRIFLOOR ((nontruncated ? shFloor : shTriFloor)[ct6]) -#define TURTLEFLOOR shTurtleFloor[nontruncated ? 2 : ct6] +#define BARROWFLOOR shBarrowFloor[(euclid&&!a4)?0:nonchamfered?2:ct6] +#define LAVAFLOOR (nonchamfered ? shFloor : shLavaFloor)[ct6] +#define TRIFLOOR ((nonchamfered ? shFloor : shTriFloor)[ct6]) +#define TURTLEFLOOR shTurtleFloor[nonchamfered ? 2 : ct6] #define ROSEFLOOR shRoseFloor[ct6] #define ECT ((euclid&&!a4)?2:ct6) @@ -3479,14 +3479,14 @@ NEWSHAPE #define PLAINFLOOR shFloor[ct6] #define FULLFLOOR shFullFloor[ct6] #define CAVEFLOOR shCaveFloor[ECT] -#define OVERFLOOR shOverFloor[euclid&&a4&&nontruncated?2:ECT] +#define OVERFLOOR shOverFloor[euclid&&a4&&nonchamfered?2:ECT] #define CLOUDFLOOR shCloudFloor[ECT] -#define FEATHERFLOOR shFeatherFloor[euclid&&a4&&nontruncated?2:ECT] +#define FEATHERFLOOR shFeatherFloor[euclid&&a4&&nonchamfered?2:ECT] #define MFLOOR1 shMFloor[ct6] #define MFLOOR2 shMFloor2[ct6] #define STARFLOOR shStarFloor[ECT] #define DRAGONFLOOR shDragonFloor[ECT] -#define SWITCHFLOOR shSwitchFloor[nontruncated?2:ct6] +#define SWITCHFLOOR shSwitchFloor[nonchamfered?2:ct6] // fix Warp // fix Kraken diff --git a/rogueviz.cpp b/rogueviz.cpp index d9a08cd5..165583f1 100644 --- a/rogueviz.cpp +++ b/rogueviz.cpp @@ -520,7 +520,7 @@ namespace sag { } void initSnake(int n) { - if(sphere && nontruncated) n = 12; + if(sphere && nonchamfered) n = 12; else if(sphere) n = 32; numsnake = n; snakecells.resize(numsnake); @@ -1127,7 +1127,7 @@ void drawVertex(const transmatrix &V, cell *c, shmup::monster *m) { } hyperpoint h = tC0(V * m->at); - transmatrix V2 = rgpushxto0(h) * ypush(nontruncated ? .3 : .2); + transmatrix V2 = rgpushxto0(h) * ypush(nonchamfered ? .3 : .2); if(doshow) queuestr(V2, (svg::in ? .28 : .2) * crossf / hcrossf, vd.name, backcolor ? 0x000000 : 0xFFFF00, svg::in ? 0 : 1); lastptd().info = vd.info; } @@ -1768,7 +1768,7 @@ using namespace tour; string cname() { if(euclid) return "coord-6.txt"; - if(nontruncated) return "coord-7.txt"; + if(nonchamfered) return "coord-7.txt"; return "coord-67.txt"; } diff --git a/scores.cpp b/scores.cpp index 383e3396..6648f15c 100644 --- a/scores.cpp +++ b/scores.cpp @@ -43,7 +43,7 @@ int modediff(score *S) { if(S->box[238]) g = gSphere; if(S->box[239]) g = gElliptic; if(max(S->box[197], 1) != multi::players) diff += 8; - if(S->box[186] != nontruncated) diff += 16; + if(S->box[186] != nonchamfered) diff += 16; if(S->box[196] != chaosmode) diff += 32; if(S->box[119] != shmup::on) diff += 64; if(pureHardcore() && !isHardcore(S)) diff += 128; diff --git a/shmup.cpp b/shmup.cpp index 96adfc23..b1a74049 100644 --- a/shmup.cpp +++ b/shmup.cpp @@ -3344,7 +3344,7 @@ transmatrix calc_relative_matrix_help(cell *c, heptagon *h1) { transmatrix gm = Id; heptagon *h2 = c->master; transmatrix where = Id; - if(!nontruncated) for(int d=0; dc7->mov[d] == c) + if(!nonchamfered) for(int d=0; dc7->mov[d] == c) where = hexmove[d]; // always add to last! while(h1 != h2) { @@ -3413,8 +3413,8 @@ void virtualRebase(cell*& base, transmatrix& at, bool tohex) { hs.h = h; hs.spin = d; heptspin hs2 = hsstep(hs, 0); - transmatrix V2 = spin((nontruncated?M_PI:0)-hs2.spin*2*M_PI/S7) * invheptmove[d]; - if(nontruncated) V2 = V2 * spin(M_PI); + transmatrix V2 = spin((nonchamfered?M_PI:0)-hs2.spin*2*M_PI/S7) * invheptmove[d]; + if(nonchamfered) V2 = V2 * spin(M_PI); double newz = (V2 * at * C0) [2]; if(newz < currz) { currz = newz; @@ -3424,7 +3424,7 @@ void virtualRebase(cell*& base, transmatrix& at, bool tohex) { } if(!newbase) { - if(tohex && !nontruncated) for(int d=0; dspn(d)*2*M_PI/S6) * invhexmove[d]; double newz = (V2 *at * C0) [2]; diff --git a/system.cpp b/system.cpp index be63f8bf..0cf34fbb 100644 --- a/system.cpp +++ b/system.cpp @@ -114,7 +114,7 @@ void initgame() { if(firstland == laElementalWall) cwt.c->land = randomElementalLand(); if(tactic::on && (isGravityLand(firstland) || firstland == laOcean) && firstland != laMountain) - cwt.c->land = nontruncated ? laCrossroads : laCrossroads2; + cwt.c->land = nonchamfered ? laCrossroads : laCrossroads2; createMov(cwt.c, 0); setdist(cwt.c, BARLEV, NULL); @@ -547,7 +547,7 @@ void applyBoxes() { applyBoxBool(survivalist); if(loadingHi) applyBoxI(itLotus); else applyBoxNum(truelotus, "lotus/escape"); - applyBoxBool(nontruncated, "heptagons only"); + applyBoxBool(nonchamfered, "heptagons only"); applyBoxI(itRose); applyBoxOrb(itOrbBeauty); applyBoxI(itCoral); @@ -686,7 +686,7 @@ void loadBoxHigh() { dynamicval sp2(geometry, (eGeometry) savebox[116]); dynamicval sp3(shmup::on, savebox[119]); dynamicval sp4(chaosmode, savebox[196]); - dynamicval sp5(nontruncated, savebox[186]); + dynamicval sp5(nonchamfered, savebox[186]); if(savebox[238]) geometry = gSphere; if(savebox[239]) geometry = gElliptic; @@ -822,7 +822,7 @@ void saveStats(bool emergency = false) { fprintf(f, "Total enemies killed: %d\n", tkills()); fprintf(f, "cells generated: %d\n", cellcount); if(pureHardcore()) fprintf(f, "Pure hardcore mode\n"); - if(nontruncated) fprintf(f, "Heptagons only mode\n"); + if(nonchamfered) fprintf(f, "Heptagons only mode\n"); if(chaosmode) fprintf(f, "Chaos mode\n"); if(shmup::on) fprintf(f, "Shoot-em up mode\n"); if(inv::on) fprintf(f, "Inventory mode\n"); @@ -1013,7 +1013,7 @@ namespace gamestack { gdn.View = View; gdn.geometry = geometry; gdn.shmup = shmup::on; - gdn.hepta = nontruncated; + gdn.hepta = nonchamfered; gd.push_back(gdn); } @@ -1024,7 +1024,7 @@ namespace gamestack { viewctr = gdn.viewctr; View = gdn.View; geometry = gdn.geometry; - nontruncated = gdn.hepta; + nonchamfered = gdn.hepta; if(shmup::on) shmup::clearMonsters(); shmup::on = gdn.shmup; resetGeometry(); @@ -1105,7 +1105,7 @@ void restartGame(char switchWhat, bool push, bool keep_screens) { if(switchWhat == 'T') { geometry = gNormal; yendor::on = tactic::on = princess::challenge = peace::on = inv::on = false; - chaosmode = nontruncated = randomPatternsMode = false; + chaosmode = nonchamfered = randomPatternsMode = false; shmup::on = false; resetGeometry(); tour::on = !tour::on; @@ -1113,7 +1113,7 @@ void restartGame(char switchWhat, bool push, bool keep_screens) { #endif if(switchWhat == '7') { if(euclid6) geometry = gNormal; - nontruncated = !nontruncated; + nonchamfered = !nonchamfered; resetGeometry(); #if CAP_TEXTURE if(texture::tstate == texture::tsActive) @@ -1126,7 +1126,7 @@ void restartGame(char switchWhat, bool push, bool keep_screens) { if(geometry == targetgeometry) geometry = gNormal; else geometry = targetgeometry; if(chaosmode && (euclid || sphere || quotient)) chaosmode = false; - if(nontruncated && euclid6) nontruncated = false; + if(nonchamfered && euclid6) nonchamfered = false; resetGeometry(); #if CAP_TEXTURE diff --git a/textures.cpp b/textures.cpp index 0c3f2b27..f8d4cf3c 100644 --- a/textures.cpp +++ b/textures.cpp @@ -367,7 +367,7 @@ bool apply(cell *c, const transmatrix &V, int col) { typedef tuple texture_parameters; -static const auto current_texture_parameters = tie(geometry, nontruncated, patterns::whichPattern, patterns::subpattern_flags, pmodel, vid.scale, vid.alpha); +static const auto current_texture_parameters = tie(geometry, nonchamfered, patterns::whichPattern, patterns::subpattern_flags, pmodel, vid.scale, vid.alpha); texture_parameters orig_texture_parameters; @@ -655,7 +655,7 @@ patterns::patterninfo si_save; saverlist texturesavers; -bool target_nontrunc; +bool target_nonchamf; void init_textureconfig() { texturesavers = move(savers); @@ -673,7 +673,7 @@ void init_textureconfig() { addsaver(vid.yposition, "Y position", 0); addsaver(vid.xposition, "X position", 0); addsaver(vid.camera_angle, "camera angle", 0); - addsaverenum(target_nontrunc, "chamfering", false); + addsaverenum(target_nonchamf, "chamfering", false); // ... geometry parameters addsaver(patterns::whichPattern, "pattern", 0); @@ -707,7 +707,7 @@ bool save_textureconfig() { if(!f) return false; targetgeometry = geometry; - target_nontrunc = nontruncated; + target_nonchamf = nonchamfered; for(auto s: texturesavers) if(s->dosave()) fprintf(f, "%s=%s\n", s->name.c_str(), s->save().c_str()); @@ -736,7 +736,7 @@ bool load_textureconfig() { return load_textureconfig(); } - if(nontruncated != target_nontrunc) { + if(nonchamfered != target_nonchamf) { restartGame('7'); } } diff --git a/tour.cpp b/tour.cpp index 1645bfcb..972829df 100644 --- a/tour.cpp +++ b/tour.cpp @@ -79,7 +79,7 @@ bool handleKeyTour(int sym, int uni) { int flags = slides[currentslide].flags; if((sym == SDLK_RETURN || sym == SDLK_KP_ENTER) && (!inhelp || (flags & QUICKSKIP))) { popScreenAll(); - if(geometry || nontruncated) { + if(geometry || nonchamfered) { popGame(); if(!(flags & QUICKGEO)) return true; } @@ -91,7 +91,7 @@ bool handleKeyTour(int sym, int uni) { return true; } if(sym == SDLK_BACKSPACE) { - if(geometry || nontruncated) { + if(geometry || nonchamfered) { popGame(); if(!(flags & QUICKGEO)) return true; } @@ -139,7 +139,7 @@ bool handleKeyTour(int sym, int uni) { } } - if(geometry || nontruncated) { + if(geometry || nonchamfered) { popGame(); presentation(pmGeometryReset); return true; @@ -253,7 +253,7 @@ namespace ss { dialog::display(); keyhandler = [] (int sym, int uni) { if(uni >= 'a' && uni < 'a' + sssize) { - if(geometry || nontruncated) { + if(geometry || nonchamfered) { popGame(); presentation(pmGeometryReset); } diff --git a/yendor.cpp b/yendor.cpp index fcd8723f..c2293e75 100644 --- a/yendor.cpp +++ b/yendor.cpp @@ -817,12 +817,12 @@ int modecode() { else if(pureHardcore()) xcode ++; if(euclid) xcode += 6; - else if(nontruncated) xcode += 3; + else if(nonchamfered) xcode += 3; if(sphere) { xcode += 9; if(elliptic) xcode += 6; - if(nontruncated) xcode += 3; + if(nonchamfered) xcode += 3; } if(chaosmode) xcode += 21; @@ -857,7 +857,7 @@ void buildmodetable() { extern bool hardcore; hardcore = (b%3 == 1); shmup::on = (b%3 == 2); - nontruncated = (b/3)%7 == 1 || (b/3)%7 == 4 || (b/3)%7 == 6; + nonchamfered = (b/3)%7 == 1 || (b/3)%7 == 4 || (b/3)%7 == 6; geometry = gNormal; if((b/3)%7 == 2) geometry = gEuclid; if((b/3)%7 >= 3) geometry = gSphere; @@ -876,7 +876,7 @@ void buildmodetable() { if(hardcore) printf(" hardcore"); else if(shmup::on) printf(" shmup"); else printf(" softcore"); - if(nontruncated) printf(" heptagonal"); + if(nonchamfered) printf(" heptagonal"); if(euclid) printf(" euclidean"); else if(elliptic) printf(" elliptic"); else if(sphere) printf(" spherical");