diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts index de73a2efc..c2df25d09 100644 --- a/src/services/inventoryService.ts +++ b/src/services/inventoryService.ts @@ -516,6 +516,11 @@ export const addItem = async ( } }; } + case "Vehicles": + if (typeName == "/Lotus/Types/Vehicles/Motorcycle/MotorcyclePowerSuit") { + return { InventoryChanges: addMotorcycle(inventory, typeName) }; + } + break; } break; } @@ -853,6 +858,20 @@ const addCrewShipHarness = ( return inventoryChanges; }; +const addMotorcycle = ( + inventory: TInventoryDatabaseDocument, + typeName: string, + inventoryChanges: IInventoryChanges = {} +): IInventoryChanges => { + if (inventory.Motorcycles.length != 0) { + throw new Error("refusing to add Motorcycle because account already has one"); + } + const index = inventory.Motorcycles.push({ ItemType: typeName }) - 1; + inventoryChanges.Motorcycles ??= []; + (inventoryChanges.Motorcycles as object[]).push(inventory.Motorcycles[index].toJSON()); + return inventoryChanges; +}; + //TODO: wrong id is not erroring export const addGearExpByCategory = ( inventory: TInventoryDatabaseDocument,