diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts index e2f4a99d..cef69be7 100644 --- a/src/controllers/api/inventoryController.ts +++ b/src/controllers/api/inventoryController.ts @@ -51,9 +51,11 @@ export const inventoryController: RequestHandler = async (request, response) => if (numArgonCrystals == 0) { break; } - const numStableArgonCrystals = + const numStableArgonCrystals = Math.min( + numArgonCrystals, inventory.FoundToday?.find(x => x.ItemType == "/Lotus/Types/Items/MiscItems/ArgonCrystal") - ?.ItemCount ?? 0; + ?.ItemCount ?? 0 + ); const numDecayingArgonCrystals = numArgonCrystals - numStableArgonCrystals; const numDecayingArgonCrystalsToRemove = Math.ceil(numDecayingArgonCrystals / 2); logger.debug(`ticking argon crystals for day ${i + 1} of ${daysPassed}`, { diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts index 9f9e7327..b15bde8c 100644 --- a/src/services/inventoryService.ts +++ b/src/services/inventoryService.ts @@ -1119,7 +1119,7 @@ export const addMiscItems = (inventory: TInventoryDatabaseDocument, itemsArray: MiscItems[itemIndex].ItemCount += ItemCount; - if (ItemType == "/Lotus/Types/Items/MiscItems/ArgonCrystal") { + if (ItemType == "/Lotus/Types/Items/MiscItems/ArgonCrystal" && ItemCount > 0) { inventory.FoundToday ??= []; let foundTodayIndex = inventory.FoundToday.findIndex(x => x.ItemType == ItemType); if (foundTodayIndex == -1) {