From ffb7b04852fa865efd0183081eede928738a60cd Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Thu, 20 Nov 2025 19:45:25 +0100 Subject: [PATCH] fix: don't throw if removeRequiredItems fails to remove an item --- src/services/questService.ts | 51 +++++++++++++++++------------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/src/services/questService.ts b/src/services/questService.ts index b13732cc..1a40e7f1 100644 --- a/src/services/questService.ts +++ b/src/services/questService.ts @@ -610,21 +610,18 @@ export const removeRequiredItems = async (inventory: TInventoryDatabaseDocument, } case "/Lotus/Types/Recipes/WarframeRecipes/ChromaBlueprint": { - await addItems(inventory, [ - { - ItemType: "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconABlueprint", - ItemCount: -1 - }, - { - ItemType: "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconBBlueprint", - ItemCount: -1 - }, - { - ItemType: "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconCBlueprint", - ItemCount: -1 + const itemsToRemove = [ + "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconABlueprint", + "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconBBlueprint", + "/Lotus/Types/Recipes/WarframeRecipes/ChromaBeaconCBlueprint" + ]; + for (const itemToRemove of itemsToRemove) { + try { + await addItem(inventory, itemToRemove, -1, undefined, undefined, undefined, true); + } catch (e) { + logger.debug(`removeRequiredItems: Couldn't remove ${itemToRemove}: ${(e as Error).message}`); } - ]); - + } break; } @@ -637,20 +634,20 @@ export const removeRequiredItems = async (inventory: TInventoryDatabaseDocument, if (!inventory.MiscItems.find(i => i.ItemType == recipe.resultType)) { await addItem(inventory, recipe.resultType); if (recipe.consumeOnUse) await addItem(inventory, recipeItem.ItemType, -1); - await addItems(inventory, [ - { - ItemType: "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartA", - ItemCount: -1 - }, - { - ItemType: "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartB", - ItemCount: -1 - }, - { - ItemType: "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartC", - ItemCount: -1 + const itemsToRemove = [ + "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartA", + "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartB", + "/Lotus/Types/Keys/BardQuest/BardQuestSequencerPartC" + ]; + for (const itemToRemove of itemsToRemove) { + try { + await addItem(inventory, itemToRemove, -1, undefined, undefined, undefined, true); + } catch (e) { + logger.debug( + `removeRequiredItems: Couldn't remove ${itemToRemove}: ${(e as Error).message}` + ); } - ]); + } } } break; -- 2.49.1