diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts index 904c90fa..92281629 100644 --- a/src/services/inventoryService.ts +++ b/src/services/inventoryService.ts @@ -538,15 +538,9 @@ export const addItem = async ( if (!key) return {}; return { QuestKeys: [key] }; } else { - const key = { ItemType: typeName, ItemCount: quantity }; - - const index = inventory.LevelKeys.findIndex(levelKey => levelKey.ItemType == typeName); - if (index != -1) { - inventory.LevelKeys[index].ItemCount += quantity; - } else { - inventory.LevelKeys.push(key); - } - return { LevelKeys: [key] }; + const levelKeyChanges = [{ ItemType: typeName, ItemCount: quantity }]; + addLevelKeys(inventory, levelKeyChanges); + return { LevelKeys: levelKeyChanges }; } } if (typeName in ExportDrones) { @@ -1240,6 +1234,10 @@ export const addRecipes = (inventory: TInventoryDatabaseDocument, itemsArray: IT applyArrayChanges(inventory.Recipes, itemsArray); }; +export const addLevelKeys = (inventory: TInventoryDatabaseDocument, itemsArray: ITypeCount[]): void => { + applyArrayChanges(inventory.LevelKeys, itemsArray); +}; + export const addMods = (inventory: TInventoryDatabaseDocument, itemsArray: IRawUpgrade[]): void => { const { RawUpgrades } = inventory;