0
0
mirror of https://github.com/sp-tarkov/server.git synced 2025-02-13 09:50:43 -05:00
server/project/src/callbacks/LocationCallbacks.ts
Dev 80762d6a00 Handle changes to airdrop endpoint
Reworked airdrop loot generation to incorporate 'radar' drops

Added `forced loot` system to LootGenerator service, can now explicitly define what items it contains

Fixed airdrop system sending incorrect icon to client
2024-09-27 14:30:35 +01:00

35 lines
1.4 KiB
TypeScript

import { LocationController } from "@spt/controllers/LocationController";
import { IEmptyRequestData } from "@spt/models/eft/common/IEmptyRequestData";
import { ILocationsGenerateAllResponse } from "@spt/models/eft/common/ILocationsSourceDestinationBase";
import { IGetBodyResponseData } from "@spt/models/eft/httpResponse/IGetBodyResponseData";
import { IGetAirdropLootRequest } from "@spt/models/eft/location/IGetAirdropLootRequest";
import { IGetAirdropLootResponse } from "@spt/models/eft/location/IGetAirdropLootResponse";
import { HttpResponseUtil } from "@spt/utils/HttpResponseUtil";
import { inject, injectable } from "tsyringe";
@injectable()
export class LocationCallbacks {
constructor(
@inject("HttpResponseUtil") protected httpResponse: HttpResponseUtil,
@inject("LocationController") protected locationController: LocationController,
) {}
/** Handle client/locations */
public getLocationData(
url: string,
info: IEmptyRequestData,
sessionID: string,
): IGetBodyResponseData<ILocationsGenerateAllResponse> {
return this.httpResponse.getBody(this.locationController.generateAll(sessionID));
}
/** Handle client/airdrop/loot */
public getAirdropLoot(
url: string,
info: IGetAirdropLootRequest,
sessionID: string,
): IGetBodyResponseData<IGetAirdropLootResponse> {
return this.httpResponse.getBody(this.locationController.getAirdropLoot(info));
}
}