From 7b10068370e42def4e28785d2e49acba52bad1fd Mon Sep 17 00:00:00 2001 From: madmaxoft Date: Sun, 18 Aug 2013 22:44:22 +0200 Subject: Implemented cWorld:QueueSetBlock(), as requested for delayed blocksetting. Untested yet, so might not work. --- source/ChunkMap.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'source/ChunkMap.cpp') diff --git a/source/ChunkMap.cpp b/source/ChunkMap.cpp index 5a16495e6..cd4955077 100644 --- a/source/ChunkMap.cpp +++ b/source/ChunkMap.cpp @@ -1171,6 +1171,23 @@ void cChunkMap::SetBlock(int a_BlockX, int a_BlockY, int a_BlockZ, BLOCKTYPE a_B +void cChunkMap::QueueSetBlock(int a_BlockX, int a_BlockY, int a_BlockZ, BLOCKTYPE a_BlockType, BLOCKTYPE a_BlockMeta, Int64 a_Tick) +{ + int ChunkX, ChunkZ, X = a_BlockX, Y = a_BlockY, Z = a_BlockZ; + cChunkDef::AbsoluteToRelative(X, Y, Z, ChunkX, ChunkZ); + + cCSLock Lock(m_CSLayers); + cChunkPtr Chunk = GetChunk(ChunkX, ZERO_CHUNK_Y, ChunkZ); + if ((Chunk != NULL) && Chunk->IsValid()) + { + Chunk->QueueSetBlock(X, Y, Z, a_BlockType, a_BlockMeta, a_Tick); + } +} + + + + + bool cChunkMap::GetBlockTypeMeta(int a_BlockX, int a_BlockY, int a_BlockZ, BLOCKTYPE & a_BlockType, NIBBLETYPE & a_BlockMeta) { int ChunkX, ChunkZ, X = a_BlockX, Y = a_BlockY, Z = a_BlockZ; -- cgit v1.2.3