diff options
Diffstat (limited to 'src/server.cpp')
-rw-r--r-- | src/server.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/server.cpp b/src/server.cpp index 79600a44c..2227cbd00 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -544,10 +544,16 @@ void RemoteClient::GetNextBlocks(Server *server, float dtime, block_is_invalid = true; } - if(block->isFullyGenerated() == false) + /*if(block->isFullyGenerated() == false) { block_is_invalid = true; - } + }*/ + + v2s16 p2d(p.X, p.Z); + ServerMap *map = (ServerMap*)(&server->m_env.getMap()); + v2s16 chunkpos = map->sector_to_chunk(p2d); + if(map->chunkNonVolatile(chunkpos) == false) + block_is_invalid = true; } /* @@ -1711,7 +1717,8 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) writeU16(&reply[0], TOCLIENT_INIT); writeU8(&reply[2], deployed); writeV3S16(&reply[2+1], floatToInt(player->getPosition()+v3f(0,BS/2,0), BS)); - writeU64(&reply[2+1+6], m_env.getServerMap().getSeed()); + //writeU64(&reply[2+1+6], m_env.getServerMap().getSeed()); + // Send as reliable m_con.Send(peer_id, 0, reply, true); |