mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 14:02:59 +00:00 
			
		
		
		
	cleaned up surface flags
This commit is contained in:
		
							
								
								
									
										39
									
								
								landlock.cpp
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								landlock.cpp
									
									
									
									
									
								
							| @@ -1122,6 +1122,13 @@ land_validity_t& land_validity(eLand l) { | ||||
|       return special_geo3; | ||||
|     } | ||||
|    | ||||
|   // not enough space | ||||
|   if(l == laStorms && (old_daily_id < 35 ? !BITRUNCATED : PURE) && elliptic)  | ||||
|     return not_enough_space; | ||||
|  | ||||
|   if(l == laStorms && S7 == 3)  | ||||
|     return not_enough_space; | ||||
|    | ||||
|   // does not agree with the pattern | ||||
|   if(l == laStorms && quotient && geometry != gZebraQuotient)  | ||||
|     return pattern_not_implemented_random; | ||||
| @@ -1130,13 +1137,6 @@ land_validity_t& land_validity(eLand l) { | ||||
|   if(l == laStorms && S7 == 8)  | ||||
|     return pattern_not_implemented_random; | ||||
|    | ||||
|   // not enough space | ||||
|   if(l == laStorms && (old_daily_id < 35 ? !BITRUNCATED : PURE) && elliptic)  | ||||
|     return not_enough_space; | ||||
|  | ||||
|   if(l == laStorms && S7 == 3)  | ||||
|     return not_enough_space; | ||||
|    | ||||
|   // mirrors do not work in gp | ||||
|   if(among(l, laMirror, laMirrorOld) && (GOLDBERG && old_daily_id < 33)) | ||||
|     return dont_work; | ||||
| @@ -1207,7 +1207,7 @@ land_validity_t& land_validity(eLand l) { | ||||
|     if(archimedean && DUAL) | ||||
|       return not_implemented; | ||||
|     // no equidistants supported in these geometries (big sphere is OK though) | ||||
|     if(quotient || elliptic || smallsphere || euwrap) | ||||
|     if(bounded && !bigsphere) | ||||
|       return unbounded_only_except_bigsphere; | ||||
|     // Yendorian only implemented in standard | ||||
|     if(l == laEndorian && geometry) | ||||
| @@ -1324,9 +1324,13 @@ land_validity_t& land_validity(eLand l) { | ||||
|   if(l == laWarpCoast && quotient && geometry != gZebraQuotient && !randomPatternsMode)  | ||||
|     return pattern_incompatibility; | ||||
|    | ||||
|   if(among(l, laEmerald, laCamelot, laDryForest) && VALENCE != 3 && old_daily_id >= 65) | ||||
|     return hedgehogs;   | ||||
|  | ||||
|   // laPower and laEmerald and laPalace -> [partial] in quotients and hyperbolic_non37 | ||||
|   if((l == laPower || l == laEmerald || l == laPalace || l == laWildWest) && !randomPatternsMode) { | ||||
|     if(euclid || bigsphere) ; | ||||
|     else if(old_daily_id <= 65 && a45) ; | ||||
|     else if(!hyperbolic_37) return l == laWildWest ? some0 : pattern_not_implemented_random; | ||||
|     else if(quotient) return pattern_incompatibility; | ||||
|     } | ||||
| @@ -1346,9 +1350,22 @@ land_validity_t& land_validity(eLand l) { | ||||
|    | ||||
|   if(l == laTrollheim && !stdeuc && !bounded) | ||||
|     return some1; | ||||
|    | ||||
|   if(l == laReptile && (a38 || a4 || sphere || !BITRUNCATED || (quotient && geometry != gZebraQuotient))) | ||||
|     return bad_graphics; | ||||
|  | ||||
|   if(l == laReptile) { | ||||
|     if(old_daily_id <= 64) { | ||||
|       if(l == laReptile && (a38 || a4 || sphere || !BITRUNCATED || (quotient && !euwrap && geometry != gZebraQuotient))) | ||||
|         return bad_graphics; | ||||
|       } | ||||
|     else {   | ||||
|       bool reptile_good = false; | ||||
|       if(hyperbolic_37 && BITRUNCATED) reptile_good = true; | ||||
|       if(euclid6) reptile_good = true; | ||||
|       if(quotient && geometry != gZebraQuotient && !euwrap) | ||||
|         reptile_good = false; | ||||
|       if(!reptile_good) | ||||
|         return bad_graphics; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|   if((l == laDragon || l == laReptile) && !stdeuc && !smallbounded && !randomPatternsMode) | ||||
|     return no_fractal_landscapes; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue