summaryrefslogtreecommitdiff
path: root/src/voxelalgorithms.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/voxelalgorithms.h')
-rw-r--r--src/voxelalgorithms.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/voxelalgorithms.h b/src/voxelalgorithms.h
index 2eba6a176..f2b2fde32 100644
--- a/src/voxelalgorithms.h
+++ b/src/voxelalgorithms.h
@@ -25,6 +25,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <set>
#include <map>
+class Map;
+class MapBlock;
+
namespace voxalgo
{
@@ -52,6 +55,23 @@ SunlightPropagateResult propagateSunlight(VoxelManipulator &v, VoxelArea a,
std::set<v3s16> & light_sources,
INodeDefManager *ndef);
+/*!
+ * Updates the lighting on the map.
+ * The result will be correct only if
+ * no nodes were changed except the given one.
+ *
+ * \param p position of the changed node
+ * \param oldnode this node was overwritten on the map
+ * \param modified_blocks output, contains all map blocks that
+ * the function modified
+ */
+void update_lighting_node(
+ Map *map,
+ INodeDefManager *ndef,
+ v3s16 p,
+ MapNode oldnode,
+ std::map<v3s16, MapBlock*> &modified_blocks);
+
} // namespace voxalgo
#endif