fix: ignore parts without premiumPrice when generating daily special (#1316)
Some checks failed
Build Docker image / docker (push) Waiting to run
Build / build (20) (push) Has been cancelled
Build / build (22) (push) Has been cancelled
Build / build (18) (push) Has been cancelled

Reviewed-on: #1316
This commit is contained in:
Sainan 2025-03-25 03:26:18 -07:00
parent a12e5968da
commit 3ba58114b9

View File

@ -21,7 +21,7 @@ import { IInventoryChanges } from "@/src/types/purchaseTypes";
export const modularWeaponSaleController: RequestHandler = async (req, res) => {
const partTypeToParts: Record<string, string[]> = {};
for (const [uniqueName, data] of Object.entries(ExportWeapons)) {
if (data.partType) {
if (data.partType && data.premiumPrice) {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
partTypeToParts[data.partType] ??= [];
partTypeToParts[data.partType].push(uniqueName);
@ -147,11 +147,7 @@ const getModularWeaponSale = (
const parts = partTypes.map(partType => rng.randomElement(partTypeToParts[partType]));
let partsCost = 0;
for (const part of parts) {
const meta = ExportWeapons[part];
if (!meta.premiumPrice) {
throw new Error(`no premium price for ${part}`);
}
partsCost += meta.premiumPrice;
partsCost += ExportWeapons[part].premiumPrice!;
}
return {
Name: name,