From 522924a823afa761526c846c2a8765d0f2f0eeea Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Wed, 30 Jul 2025 01:49:55 -0700 Subject: [PATCH] chore: remove empty ModularParts arrays from equipment (#2565) Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2565 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/services/inventoryService.ts | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts index 681ed578d..8d2295d65 100644 --- a/src/services/inventoryService.ts +++ b/src/services/inventoryService.ts @@ -25,7 +25,8 @@ import { INemesisWeaponTargetFingerprint, INemesisPetTargetFingerprint, IDialogueDatabase, - IKubrowPetPrintClient + IKubrowPetPrintClient, + equipmentKeys } from "@/src/types/inventoryTypes/inventoryTypes"; import { IGenericUpdate, IUpdateNodeIntrosResponse } from "@/src/types/genericUpdate"; import { IKeyChainRequest, IMissionInventoryUpdateRequest } from "@/src/types/requestTypes"; @@ -2117,6 +2118,21 @@ export const cleanupInventory = (inventory: TInventoryDatabaseDocument): void => inventory.LotusCustomization.syancol = {}; } } + + { + let numFixed = 0; + for (const equipmentKey of equipmentKeys) { + for (const item of inventory[equipmentKey]) { + if (item.ModularParts?.length === 0) { + item.ModularParts = undefined; + ++numFixed; + } + } + } + if (numFixed != 0) { + logger.debug(`removed ModularParts from ${numFixed} non-modular items`); + } + } }; export const getDialogue = (inventory: TInventoryDatabaseDocument, dialogueName: string): IDialogueDatabase => {