From 545b9492028ccdca2c49f3688478992a70494f98 Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Mon, 30 Jun 2025 12:58:24 -0700 Subject: [PATCH] feat: sell crew members (#2366) Closes #2363 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2366 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/controllers/api/sellController.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/controllers/api/sellController.ts b/src/controllers/api/sellController.ts index ff5c8f42..ccc96385 100644 --- a/src/controllers/api/sellController.ts +++ b/src/controllers/api/sellController.ts @@ -58,6 +58,9 @@ export const sellController: RequestHandler = async (req, res) => { if (payload.Items.Hoverboards) { requiredFields.add(InventorySlot.SPACESUITS); } + if (payload.Items.CrewMembers) { + requiredFields.add(InventorySlot.CREWMEMBERS); + } if (payload.Items.CrewShipWeapons || payload.Items.CrewShipWeaponSkins) { requiredFields.add(InventorySlot.RJ_COMPONENT_AND_ARMAMENTS); requiredFields.add("CrewShipRawSalvage"); @@ -181,6 +184,12 @@ export const sellController: RequestHandler = async (req, res) => { inventory.Drones.pull({ _id: sellItem.String }); }); } + if (payload.Items.CrewMembers) { + payload.Items.CrewMembers.forEach(sellItem => { + inventory.CrewMembers.pull({ _id: sellItem.String }); + freeUpSlot(inventory, InventorySlot.CREWMEMBERS); + }); + } if (payload.Items.CrewShipWeapons) { payload.Items.CrewShipWeapons.forEach(sellItem => { if (sellItem.String[0] == "/") { @@ -303,6 +312,7 @@ interface ISellRequest { OperatorAmps?: ISellItem[]; Hoverboards?: ISellItem[]; Drones?: ISellItem[]; + CrewMembers?: ISellItem[]; CrewShipWeapons?: ISellItem[]; CrewShipWeaponSkins?: ISellItem[]; };