diff --git a/src/light.h b/src/light.h index f8c4b83c3..203bd851e 100644 --- a/src/light.h +++ b/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 /** diff --git a/src/mapblock_mesh.cpp b/src/mapblock_mesh.cpp index 48171c84c..bdf791c0b 100644 --- a/src/mapblock_mesh.cpp +++ b/src/mapblock_mesh.cpp @@ -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); }