summaryrefslogtreecommitdiffstats
path: root/game/shared/item_registry.cc
diff options
context:
space:
mode:
authoruntodesu <kirill@untode.su>2025-03-22 15:08:17 +0500
committeruntodesu <kirill@untode.su>2025-03-22 15:08:17 +0500
commite34a973f647bc6b7814ad1f3e837689f8478b84a (patch)
tree7c8cb1702c16eb68e7acf942d46633a3833bba00 /game/shared/item_registry.cc
parentd8f0fcb101c21b3c4d746d20da6e56e7591006e4 (diff)
downloadvoxelius-e34a973f647bc6b7814ad1f3e837689f8478b84a.tar.bz2
voxelius-e34a973f647bc6b7814ad1f3e837689f8478b84a.zip
A bunch of pre-release fixes
- Updated localization for protocol messages - Added item registry check into server-side - Slightly improved how features are stored
Diffstat (limited to 'game/shared/item_registry.cc')
-rw-r--r--game/shared/item_registry.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/game/shared/item_registry.cc b/game/shared/item_registry.cc
index 02164bd..23dffdc 100644
--- a/game/shared/item_registry.cc
+++ b/game/shared/item_registry.cc
@@ -1,6 +1,8 @@
#include "shared/pch.hh"
#include "shared/item_registry.hh"
+#include "core/crc64.hh"
+
#include "shared/voxel_registry.hh"
std::unordered_map<std::string, ItemInfoBuilder> item_registry::builders = {};
@@ -78,3 +80,15 @@ void item_registry::purge(void)
item_registry::names.clear();
item_registry::items.clear();
}
+
+std::uint64_t item_registry::calcualte_checksum(void)
+{
+ std::uint64_t result = 0;
+
+ for(const auto &info : item_registry::items) {
+ result = crc64::get(info->name, result);
+ result += static_cast<std::uint64_t>(info->place_voxel);
+ }
+
+ return result;
+}