83 lines
4.4 KiB
TypeScript
83 lines
4.4 KiB
TypeScript
import { ApplicationContext } from "../context/ApplicationContext";
|
|
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
import { TraderHelper } from "../helpers/TraderHelper";
|
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
import { ICreateGroupRequestData } from "../models/eft/match/ICreateGroupRequestData";
|
|
import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData";
|
|
import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData";
|
|
import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData";
|
|
import { IGetRaidConfigurationRequestData } from "../models/eft/match/IGetRaidConfigurationRequestData";
|
|
import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData";
|
|
import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult";
|
|
import { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
|
import { IMatchConfig } from "../models/spt/config/IMatchConfig";
|
|
import { IPmcConfig } from "../models/spt/config/IPmcConfig";
|
|
import { ILogger } from "../models/spt/utils/ILogger";
|
|
import { ConfigServer } from "../servers/ConfigServer";
|
|
import { SaveServer } from "../servers/SaveServer";
|
|
import { BotGenerationCacheService } from "../services/BotGenerationCacheService";
|
|
import { BotLootCacheService } from "../services/BotLootCacheService";
|
|
import { MatchLocationService } from "../services/MatchLocationService";
|
|
import { ProfileSnapshotService } from "../services/ProfileSnapshotService";
|
|
export declare class MatchController {
|
|
protected logger: ILogger;
|
|
protected saveServer: SaveServer;
|
|
protected profileHelper: ProfileHelper;
|
|
protected matchLocationService: MatchLocationService;
|
|
protected traderHelper: TraderHelper;
|
|
protected botLootCacheService: BotLootCacheService;
|
|
protected configServer: ConfigServer;
|
|
protected profileSnapshotService: ProfileSnapshotService;
|
|
protected botGenerationCacheService: BotGenerationCacheService;
|
|
protected applicationContext: ApplicationContext;
|
|
protected matchConfig: IMatchConfig;
|
|
protected inraidConfig: IInRaidConfig;
|
|
protected pmcConfig: IPmcConfig;
|
|
constructor(logger: ILogger, saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, botLootCacheService: BotLootCacheService, configServer: ConfigServer, profileSnapshotService: ProfileSnapshotService, botGenerationCacheService: BotGenerationCacheService, applicationContext: ApplicationContext);
|
|
getEnabled(): boolean;
|
|
/** Handle raid/profile/list */
|
|
getProfile(info: IGetProfileRequestData): IPmcData[];
|
|
/** Handle client/match/group/create */
|
|
createGroup(sessionID: string, info: ICreateGroupRequestData): any;
|
|
/** Handle client/match/group/delete */
|
|
deleteGroup(info: any): void;
|
|
/** Handle match/group/start_game */
|
|
joinMatch(info: IJoinMatchRequestData, sessionId: string): IJoinMatchResult;
|
|
/** Handle client/match/group/status */
|
|
getGroupStatus(info: IGetGroupStatusRequestData): any;
|
|
/**
|
|
* Handle /client/raid/configuration
|
|
* @param request Raid config request
|
|
* @param sessionID Session id
|
|
*/
|
|
startOfflineRaid(request: IGetRaidConfigurationRequestData, sessionID: string): void;
|
|
/**
|
|
* Convert a difficulty value from pre-raid screen to a bot difficulty
|
|
* @param botDifficulty dropdown difficulty value
|
|
* @returns bot difficulty
|
|
*/
|
|
protected convertDifficultyDropdownIntoBotDifficulty(botDifficulty: string): string;
|
|
/** Handle client/match/offline/end */
|
|
endOfflineRaid(info: IEndOfflineRaidRequestData, sessionId: string): void;
|
|
/**
|
|
* Was extract by car
|
|
* @param extractName name of extract
|
|
* @returns true if car extract
|
|
*/
|
|
protected extractWasViaCar(extractName: string): boolean;
|
|
/**
|
|
* Handle when a player extracts using a car - Add rep to fence
|
|
* @param extractName name of the extract used
|
|
* @param pmcData Player profile
|
|
* @param sessionId Session id
|
|
*/
|
|
protected handleCarExtract(extractName: string, pmcData: IPmcData, sessionId: string): void;
|
|
/**
|
|
* Update players fence trader standing value in profile
|
|
* @param pmcData Player profile
|
|
* @param fenceId Id of fence trader
|
|
* @param extractName Name of extract used
|
|
*/
|
|
protected updateFenceStandingInProfile(pmcData: IPmcData, fenceId: string, extractName: string): void;
|
|
}
|