diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts index 79147039..2a9b359a 100644 --- a/src/services/inventoryService.ts +++ b/src/services/inventoryService.ts @@ -239,7 +239,14 @@ export const addItem = async ( } }; } else if (ExportResources[typeName].productCategory == "CrewShips") { - const inventoryChanges = addCrewShip(inventory, typeName); + const inventoryChanges = { + ...addCrewShip(inventory, typeName), + // fix to unlock railjack modding, item bellow supposed to be obtained from archwing quest + ...(!inventory.CrewShipHarnesses?.length + ? addCrewShipHarness(inventory, "/Lotus/Types/Game/CrewShip/RailJack/DefaultHarness") + : {}) + }; + return { InventoryChanges: inventoryChanges }; } else if (ExportResources[typeName].productCategory == "ShipDecorations") { const changes = [ @@ -804,6 +811,17 @@ const addCrewShip = ( return inventoryChanges; }; +const addCrewShipHarness = ( + inventory: TInventoryDatabaseDocument, + typeName: string, + inventoryChanges: IInventoryChanges = {} +): IInventoryChanges => { + const index = inventory.CrewShipHarnesses.push({ ItemType: typeName }) - 1; + inventoryChanges.CrewShipHarnesses ??= []; + (inventoryChanges.CrewShipHarnesses as object[]).push(inventory.CrewShipHarnesses[index].toJSON()); + return inventoryChanges; +}; + //TODO: wrong id is not erroring export const addGearExpByCategory = ( inventory: TInventoryDatabaseDocument,