]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
Slight simplification and optimization of RemoteClient.
authorLars <larsh@apache.org>
Mon, 2 Nov 2020 17:27:15 +0000 (09:27 -0800)
committerlhofhansl <larsh@apache.org>
Wed, 4 Nov 2020 00:23:47 +0000 (16:23 -0800)
src/clientiface.cpp

index f5e32469bb154713df2f50debb440c55b5f8049b..08d5d3be791beb8a7f04c17ec55a2637d16f5fca 100644 (file)
@@ -298,20 +298,14 @@ void RemoteClient::GetNextBlocks (
                        */
                        MapBlock *block = env->getMap().getBlockNoCreateNoEx(p);
 
-                       bool surely_not_found_on_disk = false;
-                       bool block_is_invalid = false;
+                       bool block_not_found = false;
                        if (block) {
                                // Reset usage timer, this block will be of use in the future.
                                block->resetUsageTimer();
 
-                               // Block is dummy if data doesn't exist.
-                               // It means it has been not found from disk and not generated
-                               if (block->isDummy()) {
-                                       surely_not_found_on_disk = true;
-                               }
-
-                               if (!block->isGenerated())
-                                       block_is_invalid = true;
+                               // Check whether the block exists (with data)
+                               if (block->isDummy() || !block->isGenerated())
+                                       block_not_found = true;
 
                                /*
                                        If block is not close, don't send it unless it is near
@@ -325,7 +319,7 @@ void RemoteClient::GetNextBlocks (
                                                continue;
                                }
 
-                               if (m_occ_cull && !block_is_invalid &&
+                               if (m_occ_cull && !block_not_found &&
                                                env->getMap().isBlockOccluded(block, cam_pos_nodes)) {
                                        continue;
                                }
@@ -335,7 +329,7 @@ void RemoteClient::GetNextBlocks (
                                If block has been marked to not exist on disk (dummy) or is
                                not generated and generating new ones is not wanted, skip block.
                        */
-                       if (!generate && (surely_not_found_on_disk || block_is_invalid)) {
+                       if (!generate && block_not_found) {
                                // get next one.
                                continue;
                        }
@@ -343,7 +337,7 @@ void RemoteClient::GetNextBlocks (
                        /*
                                Add inexistent block to emerge queue.
                        */
-                       if (block == NULL || surely_not_found_on_disk || block_is_invalid) {
+                       if (block == NULL || block_not_found) {
                                if (emerge->enqueueBlockEmerge(peer_id, p, generate)) {
                                        if (nearest_emerged_d == -1)
                                                nearest_emerged_d = d;