diff options
author | Mattes D <github@xoft.cz> | 2014-12-11 17:06:18 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-12-11 17:06:18 +0100 |
commit | 781b3303a5aeb1ac572d83452186ed3777040487 (patch) | |
tree | 43cec18a07f201e8c94e9ac318f4635b0d4053bb /src/ChunkMap.h | |
parent | Cosmetic touchups. (diff) | |
parent | Added a cWorld:PrepareChunk function. (diff) | |
download | cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar.gz cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar.bz2 cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar.lz cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar.xz cuberite-781b3303a5aeb1ac572d83452186ed3777040487.tar.zst cuberite-781b3303a5aeb1ac572d83452186ed3777040487.zip |
Diffstat (limited to 'src/ChunkMap.h')
-rw-r--r-- | src/ChunkMap.h | 14 |
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); |