mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-12-17 03:37:08 -06:00
Compare commits
7 Commits
inventory-
...
object-deb
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2df125e087 | ||
|
|
d58919dcfb | ||
|
|
e756ce4ec4 | ||
|
|
80f909abb9 | ||
|
|
7da061aecf | ||
|
|
c66e86caa2 | ||
|
|
dbb6e3e0b8 |
@@ -324,10 +324,13 @@ Inventory::~Inventory() {
|
|||||||
void Inventory::RegenerateItemIDs() {
|
void Inventory::RegenerateItemIDs() {
|
||||||
std::map<LWOOBJID, Item*> newItems{};
|
std::map<LWOOBJID, Item*> newItems{};
|
||||||
for (auto* const item : items | std::views::values) {
|
for (auto* const item : items | std::views::values) {
|
||||||
|
const bool equipped = item->GetParent() == LWOOBJID_EMPTY && item->IsEquipped();
|
||||||
|
if (equipped) item->UnEquip();
|
||||||
const auto oldID = item->GetId();
|
const auto oldID = item->GetId();
|
||||||
const auto newID = item->GenerateID();
|
const auto newID = item->GenerateID();
|
||||||
LOG("Updating item ID from %llu to %llu", oldID, newID);
|
LOG("Updating item ID from %llu to %llu", oldID, newID);
|
||||||
newItems.insert_or_assign(newID, item);
|
newItems.insert_or_assign(newID, item);
|
||||||
|
if (equipped) item->Equip();
|
||||||
}
|
}
|
||||||
|
|
||||||
// We don't want to delete the item pointers, we're just moving from map to map
|
// We don't want to delete the item pointers, we're just moving from map to map
|
||||||
|
|||||||
Reference in New Issue
Block a user