mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 05:52:59 +00:00 
			
		
		
		
	equidistant-based lands in weirdhyperbolic are now based off CR4
This commit is contained in:
		
							
								
								
									
										13
									
								
								bigstuff.cpp
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								bigstuff.cpp
									
									
									
									
									
								
							| @@ -438,10 +438,10 @@ bool checkInTree(cell *c, int maxv) { | ||||
| void buildEquidistant(cell *c) { | ||||
|   if(!c) return; | ||||
|   if(c->landparam) return; | ||||
|   if(weirdhyperbolic) { | ||||
|   /* if(weirdhyperbolic) { | ||||
|     c->landparam = 50; | ||||
|     return; | ||||
|     } | ||||
|     } */ | ||||
|   if(geometry) return; | ||||
|   eLand b = c->land; | ||||
|   if(chaosmode && !inmirror(b)) return; | ||||
| @@ -593,10 +593,10 @@ void buildEquidistant(cell *c) { | ||||
|       } | ||||
|     } | ||||
|    | ||||
|   if(c->landparam > 30 && b == laOcean && !generatingEquidistant && hrand(10) < 5)  | ||||
|   if(c->landparam > 30 && b == laOcean && !generatingEquidistant && hrand(10) < 5 && !weirdhyperbolic)  | ||||
|     buildAnotherEquidistant(c); | ||||
|  | ||||
|   if(c->landparam > HAUNTED_RADIUS+5 && b == laGraveyard && !generatingEquidistant && hrand(100) < (nonbitrunc?25:5) && items[itBone] >= 10)  | ||||
|   if(c->landparam > HAUNTED_RADIUS+5 && b == laGraveyard && !generatingEquidistant && hrand(100) < (nonbitrunc?25:5) && items[itBone] >= 10 && !weirdhyperbolic)  | ||||
|     buildAnotherEquidistant(c); | ||||
|   } | ||||
|  | ||||
| @@ -680,13 +680,14 @@ int towerval(cell *c, cellfunction* cf) { | ||||
| /* other geometries */ | ||||
|  | ||||
| void setLandWeird(cell *c) { | ||||
|   if(specialland == laIvoryTower || specialland == laEndorian || specialland == laDungeon || specialland == laOcean) { | ||||
|   // replaced with standard CR4 | ||||
|   /* if(specialland == laIvoryTower || specialland == laEndorian || specialland == laDungeon || specialland == laOcean) { | ||||
|     int d = celldist(c) - (getDistLimit() - 2); | ||||
|     if(d <= 0)  | ||||
|       c->land = laCrossroads4; | ||||
|     else | ||||
|       c->land = specialland, c->landparam = d; | ||||
|     } | ||||
|     } */ | ||||
|   } | ||||
|  | ||||
| void setLandQuotient(cell *c) { | ||||
|   | ||||
| @@ -757,6 +757,7 @@ eLand getNewLand(eLand old) { | ||||
|   if(old == laEFire  && lchance(old)) return hrand(2) ? laEEarth : laEAir; | ||||
|  | ||||
|   if(tactic::on && !(tactic::trailer && old == firstland)) return firstland; | ||||
|   if(weirdhyperbolic && specialland != old) return specialland; | ||||
|  | ||||
|   if(yendor::on && (yendor::clev().flags & YF_WALLS)) { | ||||
|     if(old != yendor::clev().l) return yendor::clev().l; | ||||
|   | ||||
| @@ -99,7 +99,7 @@ void initgame() { | ||||
|   if(firstland == laHauntedWall) firstland = laGraveyard;  | ||||
|   if(firstland == laMercuryRiver) firstland = laTerracotta; | ||||
|   if(firstland == laMountain && !tactic::on) firstland = laJungle; | ||||
|   if(isGravityLand(firstland) && !tactic::on) firstland = laCrossroads; | ||||
|   if(isGravityLand(firstland) && !tactic::on) firstland = weirdhyperbolic ? laCrossroads4 : laCrossroads; | ||||
|    | ||||
|   cwt.c = currentmap->gamestart(); cwt.spin = 0; cwt.mirrored = false; | ||||
|   cwt.c->land = ((geometry || whirl::whirl) && !safety) ? specialland : firstland; | ||||
| @@ -108,8 +108,8 @@ void initgame() { | ||||
|  | ||||
|   if(firstland == laElementalWall) cwt.c->land = randomElementalLand(); | ||||
|    | ||||
|   if(tactic::on && (isGravityLand(firstland) || firstland == laOcean) && firstland != laMountain) | ||||
|     cwt.c->land = nonbitrunc ? laCrossroads : laCrossroads2; | ||||
|   if((tactic::on || weirdhyperbolic) && (isGravityLand(firstland) || firstland == laOcean) && firstland != laMountain) | ||||
|     cwt.c->land = weirdhyperbolic ? laCrossroads4 : nonbitrunc ? laCrossroads : laCrossroads2; | ||||
|   createMov(cwt.c, 0); | ||||
|    | ||||
|   setdist(cwt.c, BARLEV, NULL); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue