mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 05:52:59 +00:00 
			
		
		
		
	more work on Euclidean Squares
This commit is contained in:
		| @@ -158,7 +158,6 @@ void drawSpeed(const transmatrix& V) { | |||||||
|  |  | ||||||
| int ctof(cell *c) { | int ctof(cell *c) { | ||||||
|   if(nontruncated) return 1; |   if(nontruncated) return 1; | ||||||
|   if(euclid && a4) return !(eupattern(c) & 1); |  | ||||||
|   // if(euclid) return 0; |   // if(euclid) return 0; | ||||||
|   return ishept(c) ? 1 : 0; |   return ishept(c) ? 1 : 0; | ||||||
|   // c->type == 6 ? 0 : 1; |   // c->type == 6 ? 0 : 1; | ||||||
| @@ -2860,7 +2859,7 @@ void floorShadow(cell *c, const transmatrix& V, int col, bool warp) { | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   else if(c->land == laDual && !nontruncated) { |   else if(c->land == laDual && !nontruncated) { | ||||||
|     if(euclid && ishex1(c)) |     if(euclid && !a4 && ishex1(c)) | ||||||
|       queuepolyat(V * pispin, shBigTriShadow, col, PPR_WALLSHADOW); |       queuepolyat(V * pispin, shBigTriShadow, col, PPR_WALLSHADOW); | ||||||
|     else |     else | ||||||
|       queuepolyat(V, shBigTriShadow, col, PPR_WALLSHADOW); |       queuepolyat(V, shBigTriShadow, col, PPR_WALLSHADOW); | ||||||
| @@ -2884,7 +2883,7 @@ void plainfloor(cell *c, bool warp, const transmatrix &V, int col, int prio) { | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   else if(c->land == laDual && !nontruncated) { |   else if(c->land == laDual && !nontruncated) { | ||||||
|     if(euclid && ishex1(c)) |     if(euclid && !a4 && ishex1(c)) | ||||||
|       queuepolyat(V * pispin, shBigTriangle, col, prio); |       queuepolyat(V * pispin, shBigTriangle, col, prio); | ||||||
|     else |     else | ||||||
|       queuepolyat(V, shBigTriangle, col, prio); |       queuepolyat(V, shBigTriangle, col, prio); | ||||||
| @@ -2964,7 +2963,7 @@ void placeSidewall(cell *c, int i, int sidepar, const transmatrix& V, bool warp, | |||||||
|   if(warp && !ishept(c) && (!c->mov[i] || !ishept(c->mov[i]))) return; |   if(warp && !ishept(c) && (!c->mov[i] || !ishept(c->mov[i]))) return; | ||||||
|   if(c->land == laDual && !nontruncated) { |   if(c->land == laDual && !nontruncated) { | ||||||
|     if(ctof(c)) return; |     if(ctof(c)) return; | ||||||
|     if(euclid ? (ishex1(c) ? !(i&1) : (i&1)) : !(i&1)) return; |     if((euclid && !a4) ? (ishex1(c) ? !(i&1) : (i&1)) : !(i&1)) return; | ||||||
|     } |     } | ||||||
|   int prio; |   int prio; | ||||||
|   /* if(mirr) prio = PPR_GLASS - 2; |   /* if(mirr) prio = PPR_GLASS - 2; | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								init.cpp
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								init.cpp
									
									
									
									
									
								
							| @@ -360,7 +360,7 @@ void addMessage(string s, char spamtype = 0); | |||||||
| #define a467 (S3 == 4 && S7 >= 6) | #define a467 (S3 == 4 && S7 >= 6) | ||||||
| #define a38 (S7 == 8) | #define a38 (S7 == 8) | ||||||
| #define sphere4 (sphere && S7 == 4) | #define sphere4 (sphere && S7 == 4) | ||||||
| #define stdeuc (geometry == gNormal || geometry == gEuclid) | #define stdeuc (geometry == gNormal || geometry == gEuclid || geometry == gEuclidSquare) | ||||||
| #define smallsphere (S7 < 5) | #define smallsphere (S7 < 5) | ||||||
| #define bigsphere (S7 == 5) | #define bigsphere (S7 == 5) | ||||||
| #define ap4 (a4 && nontruncated) | #define ap4 (a4 && nontruncated) | ||||||
|   | |||||||
							
								
								
									
										13
									
								
								pattern2.cpp
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								pattern2.cpp
									
									
									
									
									
								
							| @@ -7,7 +7,7 @@ int eupattern(cell *c) { | |||||||
|     if(torus) return (decodeId(c->master)*2) % 3; |     if(torus) return (decodeId(c->master)*2) % 3; | ||||||
|     eucoord x, y; |     eucoord x, y; | ||||||
|     decodeMaster(c->master, x, y); |     decodeMaster(c->master, x, y); | ||||||
|     return (x&1) + (y&1);   |     return ((x&1) - (y&1)) % 3; | ||||||
|     } |     } | ||||||
|   if(torus) return (decodeId(c->master)*2) % 3; |   if(torus) return (decodeId(c->master)*2) % 3; | ||||||
|   eucoord x, y; |   eucoord x, y; | ||||||
| @@ -18,6 +18,12 @@ int eupattern(cell *c) { | |||||||
|   return z; |   return z; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  | int eupattern4(cell *c) { | ||||||
|  |   eucoord x, y; | ||||||
|  |   decodeMaster(c->master, x, y); | ||||||
|  |   return (x&1) + ((y&1)) * 2; | ||||||
|  |   } | ||||||
|  |  | ||||||
| bool ishept(cell *c) { | bool ishept(cell *c) { | ||||||
|   // EUCLIDEAN |   // EUCLIDEAN | ||||||
|   if(euclid) return eupattern(c) == 0; |   if(euclid) return eupattern(c) == 0; | ||||||
| @@ -850,7 +856,10 @@ int pattern_threecolor(cell *c) { | |||||||
|     int i = si.id; |     int i = si.id; | ||||||
|     return i >> 2; |     return i >> 2; | ||||||
|     } |     } | ||||||
|   if(euclid) return (eupattern(c)+1) % 3; |   if(euclid) { | ||||||
|  |     if(a4 && nontruncated) return eupattern4(c); | ||||||
|  |     return eupattern(c) % 3; | ||||||
|  |     } | ||||||
|   if(S7 == 4 && S3 == 3) { |   if(S7 == 4 && S3 == 3) { | ||||||
|     int codesN[6] = {0,1,2,1,2,0}; |     int codesN[6] = {0,1,2,1,2,0}; | ||||||
|     if(nontruncated)  |     if(nontruncated)  | ||||||
|   | |||||||
							
								
								
									
										61
									
								
								polygons.cpp
									
									
									
									
									
								
							
							
						
						
									
										61
									
								
								polygons.cpp
									
									
									
									
									
								
							| @@ -1,3 +1,4 @@ | |||||||
|  |  | ||||||
| // HyperRogue, shapes used for the vector graphics | // HyperRogue, shapes used for the vector graphics | ||||||
| // Copyright (C) 2011-2016 Zeno Rogue, see 'hyper.cpp' for details | // Copyright (C) 2011-2016 Zeno Rogue, see 'hyper.cpp' for details | ||||||
|  |  | ||||||
| @@ -1241,6 +1242,9 @@ void buildpolys() { | |||||||
|   double eps = hexhexdist * .05; |   double eps = hexhexdist * .05; | ||||||
|   if(euclid) trihepta0 = hexhexdist * .5 - eps * sqrt(3)/2, trihepta1 = hexhexdist * sqrt(3)/2 - eps; // .5-.1; .75-.05 |   if(euclid) trihepta0 = hexhexdist * .5 - eps * sqrt(3)/2, trihepta1 = hexhexdist * sqrt(3)/2 - eps; // .5-.1; .75-.05 | ||||||
|    |    | ||||||
|  |   if(euclid && a4)  | ||||||
|  |     trihepta0 = trihepta1 = crossf * 1.35 / 2; | ||||||
|  |  | ||||||
|   if(sphere&&S7==3) trihepta0 *= 1.3, trihepta1 *= 1.6; |   if(sphere&&S7==3) trihepta0 *= 1.3, trihepta1 *= 1.6; | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -1291,6 +1295,14 @@ void buildpolys() { | |||||||
|    |    | ||||||
|   double floorrad1 = strict ? hcrossf : euclid ? shexf*fac80*spzoom : shexf*fac94; |   double floorrad1 = strict ? hcrossf : euclid ? shexf*fac80*spzoom : shexf*fac94; | ||||||
|    |    | ||||||
|  |   if(euclid && a4) { | ||||||
|  |     if(nontruncated) | ||||||
|  |       floorrad0 = floorrad1 = rhexf * .94; | ||||||
|  |     else | ||||||
|  |       floorrad0 = hexvdist * .9, | ||||||
|  |       floorrad1 = rhexf * .8; | ||||||
|  |     } | ||||||
|  |    | ||||||
|   bshape(shFloor[0], PPR_FLOOR); |   bshape(shFloor[0], PPR_FLOOR); | ||||||
|   for(int t=0; t<=S6; t++) hpcpush(ddi(S7 + t*S14, floorrad0) * C0); |   for(int t=0; t<=S6; t++) hpcpush(ddi(S7 + t*S14, floorrad0) * C0); | ||||||
|  |  | ||||||
| @@ -1449,10 +1461,10 @@ void buildpolys() { | |||||||
|     } |     } | ||||||
|    |    | ||||||
|   bshape(shWall[1], PPR_WALL); |   bshape(shWall[1], PPR_WALL); | ||||||
|   if(S7 == 6) { |   if(S7 == 6 || S7 == 4) { | ||||||
|     for(int t=0; t<=S6; t++) { |     for(int t=0; t<=S6; t++) { | ||||||
|       hpcpush(ddi(S7 + t*S14, shexf*fac80) * C0); |       hpcpush(ddi(S7 + t*S14, shexf*fac80) * C0); | ||||||
|       hpcpush(ddi(S14 + t*S14, shexf*.2) * C0); |       if(t != S6) hpcpush(ddi(S14 + t*S14, shexf*.2) * C0); | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   else |   else | ||||||
| @@ -1720,6 +1732,7 @@ void buildpolys() { | |||||||
|   // if(euclid) espzoom6 *= 1.5, espzoomd7 *= 1.2; |   // if(euclid) espzoom6 *= 1.5, espzoomd7 *= 1.2; | ||||||
|    |    | ||||||
|   double octroll = a38 ? .2 : a46 ? -.2 : a47 ? .1 : 0; |   double octroll = a38 ? .2 : a46 ? -.2 : a47 ? .1 : 0; | ||||||
|  |   if(euclid && a4) octroll += M_PI/4; | ||||||
|  |  | ||||||
|   double ffscale6 = gsca(a4,.675); |   double ffscale6 = gsca(a4,.675); | ||||||
|   double ffspin6 = grot(a4,.125); |   double ffspin6 = grot(a4,.125); | ||||||
| @@ -1746,7 +1759,7 @@ void buildpolys() { | |||||||
|   bshape(shChargedFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9)*ffscale2, 7, ffspin2); |   bshape(shChargedFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9)*ffscale2, 7, ffspin2); | ||||||
|   bshape(shChargedFloor[1], PPR_FLOOR, scalef*spzoomd7, 9); |   bshape(shChargedFloor[1], PPR_FLOOR, scalef*spzoomd7, 9); | ||||||
|   bshape(shChargedFloor[2], PPR_FLOOR, scalef*espzoom6, 7); |   bshape(shChargedFloor[2], PPR_FLOOR, scalef*espzoom6, 7); | ||||||
|   bshape(shChargedFloor[3], 12, spzoomd7 * gsca(a4,1.2,sphere&&nontruncated,.9)* ntscale, 10, ntrot); // nontruncated variant |   bshape(shChargedFloor[3], 12, spzoomd7 * gsca(a4 && euclid, .4, a4,1.2,sphere&&nontruncated,.9)* ntscale, 10, ntrot + grot(euclid && a4 && nontruncated, M_PI/4 + .1)); // nontruncated variant | ||||||
|  |  | ||||||
|   bshape(shSStarFloor[0], PPR_FLOOR, scalef*spzoom6*gsca(sphere,.8)*ffscale2, 11, grot(a4,.775)); |   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(shSStarFloor[1], PPR_FLOOR, scalef*spzoomd7*gsca(a4,.85), 12, octroll); | ||||||
| @@ -1758,14 +1771,14 @@ void buildpolys() { | |||||||
|   else bshape(shOverFloor[1], PPR_FLOOR, scalef*spzoom7, 15); |   else bshape(shOverFloor[1], PPR_FLOOR, scalef*spzoom7, 15); | ||||||
|   bshape(shOverFloor[2], PPR_FLOOR, euclid?scalef*1.2:spzoom7, 16); |   bshape(shOverFloor[2], PPR_FLOOR, euclid?scalef*1.2:spzoom7, 16); | ||||||
|   bshape(shTriFloor[0], PPR_FLOOR, scalef*espzoom6*gsca(sphere,.9, a4,.9)*ffscale2, 17, ffspin2 + grot(a47,.1)); |   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)); |   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); |   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(nontruncated) 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); |   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(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), 23); |   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), 24, octroll - grot(a47,.1)); |   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), 25, ntrot); |   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(shNewFloor[0], PPR_FLOOR, scalef*espzoom6 * ffscale2, 26, ffspin2); |   bshape(shNewFloor[0], PPR_FLOOR, scalef*espzoom6 * ffscale2, 26, ffspin2); | ||||||
|   bshape(shNewFloor[1], PPR_FLOOR, scalef*espzoomd7 * ffscale2, 27, octroll); |   bshape(shNewFloor[1], PPR_FLOOR, scalef*espzoomd7 * ffscale2, 27, octroll); | ||||||
|  |  | ||||||
| @@ -1827,7 +1840,7 @@ void buildpolys() { | |||||||
|   bshape(shTriheptaEucShadow[1], PPR_FLOOR,  scalef*SHADMUL, 43); |   bshape(shTriheptaEucShadow[1], PPR_FLOOR,  scalef*SHADMUL, 43); | ||||||
|   bshape(shTriheptaEucShadow[2], PPR_FLOOR,  scalef*SHADMUL, 44); |   bshape(shTriheptaEucShadow[2], PPR_FLOOR,  scalef*SHADMUL, 44); | ||||||
|   bshape(shPalaceFloor[0], PPR_FLOOR,  scalef*espzoom6*ffscale2, 45, grot(a4,.775)); |   bshape(shPalaceFloor[0], PPR_FLOOR,  scalef*espzoom6*ffscale2, 45, grot(a4,.775)); | ||||||
|   bshape(shPalaceFloor[1], PPR_FLOOR,  scalef*espzoomd7*gsca(a4,.85), 46, grot(a46,-.3, a38, -.6)); |   bshape(shPalaceFloor[1], PPR_FLOOR,  scalef*espzoomd7*gsca(a4,.85), 46, grot(a46,-.3, a38, -.6) + grot(euclid&&a4, M_PI/4)); | ||||||
|  |  | ||||||
|   bshape(shMercuryBridge[0], PPR_FLOOR,  scalef*spzoom6, 365); |   bshape(shMercuryBridge[0], PPR_FLOOR,  scalef*spzoom6, 365); | ||||||
|   bshape(shMercuryBridge[1], PPR_FLOOR,  scalef*spzoomd7, 366); |   bshape(shMercuryBridge[1], PPR_FLOOR,  scalef*spzoomd7, 366); | ||||||
| @@ -1850,10 +1863,12 @@ void buildpolys() { | |||||||
|   bshape(shRoseFloor[2], PPR_FLOOR,  1, 173); // nontruncated |   bshape(shRoseFloor[2], PPR_FLOOR,  1, 173); // nontruncated | ||||||
|   bshape(shRoseFloor[0], PPR_FLOOR,  gsca(euclid,.9), 174); |   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)); |   bshape(shRoseFloor[1], PPR_FLOOR,  gsca(euclid,.9) * scalef * gsca(ap4,.85), 175, grot(ap4, M_PI/8)); | ||||||
|   bshape(shTurtleFloor[0], PPR_FLOOR,  gsca(euclid,.9, sphere, .9*1.3, a4, 1.6, a38, 1.3, a467, 1.4), 176); |  | ||||||
|   bshape(shTurtleFloor[1], PPR_FLOOR, scalef * gsca(euclid,.9, a4, .9, a47,1.3), 177, octroll - grot(a47,.1)); |   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[2], PPR_FLOOR,  ntscale * gsca(sphere && nontruncated, .9), 178, ntrot); // nontruncated |   bshape(shTurtleFloor[1], PPR_FLOOR, scalef * gsca(euclid,.9, a4, .9, a47,1.3) * gsca(euclid&&a4, .8), 177, octroll - grot(a47,.1)); | ||||||
|   bshape(shDragonFloor[0], PPR_FLOOR_DRAGON, gsca(a4,1.6, a38, 1.3), 181, ffspin2); |   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(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); |   bshape(shDragonFloor[1], PPR_FLOOR_DRAGON, gsca(sphere, .9, a38, 1.1, a4,.9) * scalef, 182, octroll); | ||||||
|   bshape(shDragonFloor[2], PPR_FLOOR,  scalef * 1.1, 183); |   bshape(shDragonFloor[2], PPR_FLOOR,  scalef * 1.1, 183); | ||||||
|   bshape(shZebra[0], PPR_FLOOR,  scalef, 162); |   bshape(shZebra[0], PPR_FLOOR,  scalef, 162); | ||||||
| @@ -3354,28 +3369,28 @@ NEWSHAPE | |||||||
| #define DESERTFLOOR (nontruncated ? shCloudFloor : shDesertFloor)[ct6] | #define DESERTFLOOR (nontruncated ? shCloudFloor : shDesertFloor)[ct6] | ||||||
| #define BUTTERFLYFLOOR (nontruncated ? shFloor : shButterflyFloor)[ct6] | #define BUTTERFLYFLOOR (nontruncated ? shFloor : shButterflyFloor)[ct6] | ||||||
| #define PALACEFLOOR (nontruncated?shFloor:shPalaceFloor)[ct6] | #define PALACEFLOOR (nontruncated?shFloor:shPalaceFloor)[ct6] | ||||||
| #define SSTARFLOOR (nontruncated ? shCloudFloor : shSStarFloor)[ct6] // untested | #define SSTARFLOOR (nontruncated ? shCloudFloor : shSStarFloor)[ct6] | ||||||
| #define POWERFLOOR (nontruncated ? shStarFloor : shPowerFloor)[ct6] // untested | #define POWERFLOOR (nontruncated ? shStarFloor : shPowerFloor)[ct6] | ||||||
| #define CHARGEDFLOOR (nontruncated ? shChargedFloor[3] : ct6 ? shFloor[1] : shChargedFloor[0]) // scale! | #define CHARGEDFLOOR (nontruncated ? shChargedFloor[3] : ct6 ? shFloor[1] : shChargedFloor[0]) | ||||||
| #define DEMONFLOOR shDemonFloor[ct6] // untested | #define DEMONFLOOR shDemonFloor[ct6] | ||||||
| #define NEWFLOOR (nontruncated ? shCloudFloor : shNewFloor)[ct6] // untested | #define NEWFLOOR (nontruncated ? shCloudFloor : shNewFloor)[ct6] | ||||||
| #define CROSSFLOOR (nontruncated ? shFloor : shCrossFloor)[ct6] // untested | #define CROSSFLOOR (nontruncated ? shFloor : shCrossFloor)[ct6] | ||||||
| #define TROLLFLOOR shTrollFloor[ct6] // tested? | #define TROLLFLOOR shTrollFloor[ct6] | ||||||
| #define BARROWFLOOR shBarrowFloor[euclid?0:nontruncated?2:ct6] | #define BARROWFLOOR shBarrowFloor[(euclid&&!a4)?0:nontruncated?2:ct6] | ||||||
| #define LAVAFLOOR (nontruncated ? shFloor : shLavaFloor)[ct6] | #define LAVAFLOOR (nontruncated ? shFloor : shLavaFloor)[ct6] | ||||||
| #define TRIFLOOR ((nontruncated ? shFloor : shTriFloor)[ct6]) | #define TRIFLOOR ((nontruncated ? shFloor : shTriFloor)[ct6]) | ||||||
| #define TURTLEFLOOR shTurtleFloor[nontruncated ? 2 : ct6] | #define TURTLEFLOOR shTurtleFloor[nontruncated ? 2 : ct6] | ||||||
| #define ROSEFLOOR shRoseFloor[ct6] | #define ROSEFLOOR shRoseFloor[ct6] | ||||||
|  |  | ||||||
| #define ECT (euclid?2:ct6) | #define ECT ((euclid&&!a4)?2:ct6) | ||||||
|  |  | ||||||
| // no eswap | // no eswap | ||||||
| #define PLAINFLOOR shFloor[ct6] | #define PLAINFLOOR shFloor[ct6] | ||||||
| #define FULLFLOOR shFullFloor[ct6] | #define FULLFLOOR shFullFloor[ct6] | ||||||
| #define CAVEFLOOR shCaveFloor[ECT] | #define CAVEFLOOR shCaveFloor[ECT] | ||||||
| #define OVERFLOOR shOverFloor[ECT] | #define OVERFLOOR shOverFloor[euclid&&a4&&nontruncated?2:ECT] | ||||||
| #define CLOUDFLOOR shCloudFloor[ECT] | #define CLOUDFLOOR shCloudFloor[ECT] | ||||||
| #define FEATHERFLOOR shFeatherFloor[ECT] | #define FEATHERFLOOR shFeatherFloor[euclid&&a4&&nontruncated?2:ECT] | ||||||
| #define MFLOOR1 shMFloor[ct6] | #define MFLOOR1 shMFloor[ct6] | ||||||
| #define MFLOOR2 shMFloor2[ct6] | #define MFLOOR2 shMFloor2[ct6] | ||||||
| #define STARFLOOR shStarFloor[ECT] | #define STARFLOOR shStarFloor[ECT] | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue