mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-04 09:15:29 +01:00 
			
		
		
		
	Cleanup in flat lighting (#7051)
This commit is contained in:
		
							
								
								
									
										30
									
								
								src/light.h
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								src/light.h
									
									
									
									
									
								
							@@ -35,36 +35,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
// This brightness is reserved for sunlight
 | 
			
		||||
#define LIGHT_SUN 15
 | 
			
		||||
 | 
			
		||||
inline u8 diminish_light(u8 light)
 | 
			
		||||
{
 | 
			
		||||
	if (light == 0)
 | 
			
		||||
		return 0;
 | 
			
		||||
	if (light >= LIGHT_MAX)
 | 
			
		||||
		return LIGHT_MAX - 1;
 | 
			
		||||
 | 
			
		||||
	return light - 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
inline u8 diminish_light(u8 light, u8 distance)
 | 
			
		||||
{
 | 
			
		||||
	if (distance >= light)
 | 
			
		||||
		return 0;
 | 
			
		||||
	return light - distance;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
inline u8 undiminish_light(u8 light)
 | 
			
		||||
{
 | 
			
		||||
	assert(light <= LIGHT_SUN);
 | 
			
		||||
	// We don't know if light should undiminish from this particular 0.
 | 
			
		||||
	// Thus, keep it at 0.
 | 
			
		||||
	if (light == 0)
 | 
			
		||||
		return 0;
 | 
			
		||||
	if (light >= LIGHT_MAX)
 | 
			
		||||
		return light;
 | 
			
		||||
 | 
			
		||||
	return light + 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#ifndef SERVER
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 
 | 
			
		||||
@@ -130,18 +130,8 @@ static u8 getInteriorLight(enum LightBank bank, MapNode n, s32 increment,
 | 
			
		||||
	const NodeDefManager *ndef)
 | 
			
		||||
{
 | 
			
		||||
	u8 light = n.getLight(bank, ndef);
 | 
			
		||||
 | 
			
		||||
	while(increment > 0)
 | 
			
		||||
	{
 | 
			
		||||
		light = undiminish_light(light);
 | 
			
		||||
		--increment;
 | 
			
		||||
	}
 | 
			
		||||
	while(increment < 0)
 | 
			
		||||
	{
 | 
			
		||||
		light = diminish_light(light);
 | 
			
		||||
		++increment;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (light > 0)
 | 
			
		||||
		light = rangelim(light + increment, 0, LIGHT_SUN);
 | 
			
		||||
	return decode_light(light);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user