summaryrefslogtreecommitdiffstats
path: root/src/ChunkMap.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/ChunkMap.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ChunkMap.h b/src/ChunkMap.h
index 51be5cb3d..6a858b06d 100644
--- a/src/ChunkMap.h
+++ b/src/ChunkMap.h
@@ -280,6 +280,20 @@ public:
/** Touches the chunk, causing it to be loaded or generated */
void TouchChunk(int a_ChunkX, int a_ChunkZ);
+
+ /** Queues the chunk for preparing - making sure that it's generated and lit.
+ The specified chunk is queued to be loaded or generated, and lit if needed.
+ The specified callback is called after the chunk has been prepared. If there's no preparation to do, only the callback is called.
+ It is legal to call without the callback. */
+ void PrepareChunk(int a_ChunkX, int a_ChunkZ, cChunkCoordCallback * a_CallAfter = nullptr); // Lua-accessible
+
+ /** Queues the chunk for generating.
+ First attempts to load the chunk from the storage. If that fails, queues the chunk for generating.
+ The specified callback is called after the chunk has been loaded / generated.
+ It is legal to call without the callback.
+ Returns true if successful, false if not (possibly an out-of-memory error).
+ If the return value is true, the callback was / will be called. */
+ bool GenerateChunk(int a_ChunkX, int a_ChunkZ, cChunkCoordCallback * a_CallAfter = nullptr); // Lua-accessible
/** Marks the chunk as failed-to-load */
void ChunkLoadFailed(int a_ChunkX, int a_ChunkZ);