forked from OpenWF/SpaceNinjaServer
		
	fix: placing decorations in apartment in newer game versions (#2515)
Newer game versions use BootLocation instead of IsApartment Reviewed-on: OpenWF/SpaceNinjaServer#2515 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									c3f486488f
								
							
						
					
					
						commit
						56aa3e3331
					
				@ -52,12 +52,7 @@ export const handleSetShipDecorations = async (
 | 
				
			|||||||
): Promise<IShipDecorationsResponse> => {
 | 
					): Promise<IShipDecorationsResponse> => {
 | 
				
			||||||
    const personalRooms = await getPersonalRooms(accountId);
 | 
					    const personalRooms = await getPersonalRooms(accountId);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const rooms =
 | 
					    const rooms = getRoomsForBootLocation(personalRooms, placedDecoration);
 | 
				
			||||||
        placedDecoration.BootLocation == "SHOP"
 | 
					 | 
				
			||||||
            ? personalRooms.TailorShop.Rooms
 | 
					 | 
				
			||||||
            : placedDecoration.IsApartment
 | 
					 | 
				
			||||||
              ? personalRooms.Apartment.Rooms
 | 
					 | 
				
			||||||
              : personalRooms.Ship.Rooms;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const roomToPlaceIn = rooms.find(room => room.Name === placedDecoration.Room);
 | 
					    const roomToPlaceIn = rooms.find(room => room.Name === placedDecoration.Room);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -192,12 +187,12 @@ export const handleSetShipDecorations = async (
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
const getRoomsForBootLocation = (
 | 
					const getRoomsForBootLocation = (
 | 
				
			||||||
    personalRooms: TPersonalRoomsDatabaseDocument,
 | 
					    personalRooms: TPersonalRoomsDatabaseDocument,
 | 
				
			||||||
    bootLocation: TBootLocation | undefined
 | 
					    request: { BootLocation?: TBootLocation; IsApartment?: boolean }
 | 
				
			||||||
): RoomsType[] => {
 | 
					): RoomsType[] => {
 | 
				
			||||||
    if (bootLocation == "SHOP") {
 | 
					    if (request.BootLocation == "SHOP") {
 | 
				
			||||||
        return personalRooms.TailorShop.Rooms;
 | 
					        return personalRooms.TailorShop.Rooms;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (bootLocation == "APARTMENT") {
 | 
					    if (request.BootLocation == "APARTMENT" || request.IsApartment) {
 | 
				
			||||||
        return personalRooms.Apartment.Rooms;
 | 
					        return personalRooms.Apartment.Rooms;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    return personalRooms.Ship.Rooms;
 | 
					    return personalRooms.Ship.Rooms;
 | 
				
			||||||
@ -217,7 +212,7 @@ export const handleSetPlacedDecoInfo = async (accountId: string, req: ISetPlaced
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    const personalRooms = await getPersonalRooms(accountId);
 | 
					    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) {
 | 
					    if (!room) {
 | 
				
			||||||
        throw new Error(`unknown room: ${req.Room}`);
 | 
					        throw new Error(`unknown room: ${req.Room}`);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user