From 56aa3e33311e9476588a2c3e35acbd77a6876914 Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Sun, 20 Jul 2025 01:29:08 -0700 Subject: [PATCH] fix: placing decorations in apartment in newer game versions (#2515) Newer game versions use BootLocation instead of IsApartment Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2515 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/services/shipCustomizationsService.ts | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/services/shipCustomizationsService.ts b/src/services/shipCustomizationsService.ts index f49f62d8..7edbdfde 100644 --- a/src/services/shipCustomizationsService.ts +++ b/src/services/shipCustomizationsService.ts @@ -52,12 +52,7 @@ export const handleSetShipDecorations = async ( ): Promise => { const personalRooms = await getPersonalRooms(accountId); - const rooms = - placedDecoration.BootLocation == "SHOP" - ? personalRooms.TailorShop.Rooms - : placedDecoration.IsApartment - ? personalRooms.Apartment.Rooms - : personalRooms.Ship.Rooms; + const rooms = getRoomsForBootLocation(personalRooms, placedDecoration); const roomToPlaceIn = rooms.find(room => room.Name === placedDecoration.Room); @@ -192,12 +187,12 @@ export const handleSetShipDecorations = async ( const getRoomsForBootLocation = ( personalRooms: TPersonalRoomsDatabaseDocument, - bootLocation: TBootLocation | undefined + request: { BootLocation?: TBootLocation; IsApartment?: boolean } ): RoomsType[] => { - if (bootLocation == "SHOP") { + if (request.BootLocation == "SHOP") { return personalRooms.TailorShop.Rooms; } - if (bootLocation == "APARTMENT") { + if (request.BootLocation == "APARTMENT" || request.IsApartment) { return personalRooms.Apartment.Rooms; } return personalRooms.Ship.Rooms; @@ -217,7 +212,7 @@ export const handleSetPlacedDecoInfo = async (accountId: string, req: ISetPlaced const personalRooms = await getPersonalRooms(accountId); - const room = getRoomsForBootLocation(personalRooms, req.BootLocation).find(room => room.Name === req.Room); + const room = getRoomsForBootLocation(personalRooms, req).find(room => room.Name === req.Room); if (!room) { throw new Error(`unknown room: ${req.Room}`); }