From 3e2e73f6eb02cf8273fe57652bf34a8f9f388cbf Mon Sep 17 00:00:00 2001 From: Sainan Date: Mon, 24 Mar 2025 01:38:32 -0700 Subject: [PATCH] feat: handle Boosters in missionInventoryUpdate (#1311) Closes #751 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/1311 --- src/services/missionInventoryUpdateService.ts | 6 ++++++ src/types/inventoryTypes/inventoryTypes.ts | 1 + src/types/requestTypes.ts | 1 + 3 files changed, 8 insertions(+) diff --git a/src/services/missionInventoryUpdateService.ts b/src/services/missionInventoryUpdateService.ts index 44d0fdeb..86561ed2 100644 --- a/src/services/missionInventoryUpdateService.ts +++ b/src/services/missionInventoryUpdateService.ts @@ -11,6 +11,7 @@ import { logger } from "@/src/utils/logger"; import { IRngResult, getRandomElement, getRandomReward } from "@/src/services/rngService"; import { equipmentKeys, IInventoryDatabase, TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes"; import { + addBooster, addChallenges, addConsumables, addCrewShipAmmo, @@ -284,6 +285,11 @@ export const addMissionInventoryUpdates = async ( upgrade.UpgradeFingerprint = clientUpgrade.UpgradeFingerprint; // primitive way to copy over the riven challenge progress }); break; + case "Boosters": + value.forEach(booster => { + addBooster(booster.ItemType, booster.ExpiryDate, inventory); + }); + break; case "SyndicateId": { inventory.CompletedSyndicates.push(value); break; diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts index d4b99f6c..7e18be4d 100644 --- a/src/types/inventoryTypes/inventoryTypes.ts +++ b/src/types/inventoryTypes/inventoryTypes.ts @@ -365,6 +365,7 @@ export interface IAlignment { export interface IBooster { ExpiryDate: number; ItemType: string; + UsesRemaining?: number; } export interface IChallengeInstanceState { diff --git a/src/types/requestTypes.ts b/src/types/requestTypes.ts index 78e43c5c..7ca33a84 100644 --- a/src/types/requestTypes.ts +++ b/src/types/requestTypes.ts @@ -104,6 +104,7 @@ export type IMissionInventoryUpdateRequest = { }[]; DeathMarks?: string[]; Nemesis?: number; + Boosters?: IBooster[]; } & { [K in TEquipmentKey]?: IEquipmentClient[]; };