From 6c7497eee623b5127ed1162dde4165c36bced19a Mon Sep 17 00:00:00 2001 From: MihailRis Date: Wed, 21 Feb 2024 22:04:16 +0300 Subject: [PATCH] player inventory id fix --- src/world/Level.cpp | 2 +- src/world/World.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/world/Level.cpp b/src/world/Level.cpp index 287607ed..c9f74eee 100644 --- a/src/world/Level.cpp +++ b/src/world/Level.cpp @@ -27,7 +27,7 @@ Level::Level(World* world, const Content* content, EngineSettings& settings) { objCounter = 0; physics = new PhysicsSolver(glm::vec3(0, -22.6f, 0)); - auto inv = std::make_shared(world->getNextInventoryId(), DEF_PLAYER_INVENTORY_SIZE); + auto inv = std::make_shared(0, DEF_PLAYER_INVENTORY_SIZE); player = spawnObject(glm::vec3(0, DEF_PLAYER_Y, 0), DEF_PLAYER_SPEED, inv); uint matrixSize = (settings.chunks.loadDistance+ diff --git a/src/world/World.cpp b/src/world/World.cpp index fce0b05c..d442cbd1 100644 --- a/src/world/World.cpp +++ b/src/world/World.cpp @@ -72,6 +72,9 @@ Level* World::create(std::string name, const std::vector& packs) { auto world = new World(name, directory, seed, settings, content, packs); auto level = new Level(world, content, settings); + auto inventory = level->player->getInventory(); + inventory->setId(world->getNextInventoryId()); + level->inventories->store(inventory); return level; } @@ -90,6 +93,7 @@ Level* World::load(fs::path directory, auto level = new Level(world.get(), content, settings); wfile->readPlayer(level->player); + level->inventories->store(level->player->getInventory()); world.release(); return level; }