mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 22:12:59 +00:00 
			
		
		
		
	fix to propagate_scale_change
This commit is contained in:
		
							
								
								
									
										13
									
								
								geometry.cpp
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								geometry.cpp
									
									
									
									
									
								
							| @@ -1451,9 +1451,8 @@ EX void check_cgi() { | ||||
|  | ||||
|   } | ||||
|  | ||||
| EX void propagate_scale_change() { | ||||
|  | ||||
|   auto affect = [] (geometry_information*& alt_cgip, const auto& switcher) { | ||||
| /** auxiliary for propagate_scale_change */ | ||||
| template<class T> void affect_scale_change(geometry_information*& alt_cgip, const T& switcher) { | ||||
|   auto gi = alt_cgip; | ||||
|   bool changed = false; | ||||
|   switcher([&] { | ||||
| @@ -1467,9 +1466,11 @@ EX void propagate_scale_change() { | ||||
|   if(changed) switcher(propagate_scale_change); | ||||
|   }; | ||||
|  | ||||
|   if(mhybrid) affect(hybrid::underlying_cgip, [] (const auto& f) { hybrid::in_underlying_geometry(f); }); | ||||
|   if(hybrid::pmap) affect(hybrid::pcgip, [] (const auto& f) { hybrid::in_actual(f); }); | ||||
|   if(fake::in()) affect(fake::underlying_cgip, [] (const auto& f) { fake::in_underlying_geometry(f); }); | ||||
| EX void propagate_scale_change() { | ||||
|  | ||||
|   if(mhybrid) affect_scale_change(hybrid::underlying_cgip, [] (const auto& f) { hybrid::in_underlying_geometry(f); }); | ||||
|   if(hybrid::pmap) affect_scale_change(hybrid::pcgip, [] (const auto& f) { hybrid::in_actual(f); }); | ||||
|   if(fake::in()) affect_scale_change(fake::underlying_cgip, [] (const auto& f) { fake::in_underlying_geometry(f); }); | ||||
|   } | ||||
|  | ||||
| void clear_cgis() { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue