From 6c4fb417c5b52d5d43a1d965c451cbc795956a0a Mon Sep 17 00:00:00 2001 From: MihailRis Date: Sat, 10 Aug 2024 00:08:44 +0300 Subject: [PATCH] optimize Chunks::save --- src/voxels/Chunks.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/voxels/Chunks.cpp b/src/voxels/Chunks.cpp index 2ab7e08e..2725cc9b 100644 --- a/src/voxels/Chunks.cpp +++ b/src/voxels/Chunks.cpp @@ -743,13 +743,16 @@ void Chunks::save(Chunk* chunk) { ) ); auto entities = level->entities->getAllInside(aabb); - auto root = dynamic::create_map(); + dynamic::Map_sptr root = nullptr; if (!entities.empty()) { + root = dynamic::create_map(); root->put("data", level->entities->serialize(entities)); level->entities->despawn(std::move(entities)); chunk->flags.entities = true; } - worldFiles->getRegions().put(chunk, json::to_binary(root, true)); + worldFiles->getRegions().put( + chunk, root ? json::to_binary(root, true) : std::vector() + ); } }