Update types for example 2 and 3
This commit is contained in:
parent
8efe048c1d
commit
ccfa42319f
@ -10,6 +10,7 @@ export declare class BotCallbacks {
|
|||||||
constructor(botController: BotController, httpResponse: HttpResponseUtil);
|
constructor(botController: BotController, httpResponse: HttpResponseUtil);
|
||||||
/**
|
/**
|
||||||
* Handle singleplayer/settings/bot/limit
|
* Handle singleplayer/settings/bot/limit
|
||||||
|
* Is called by client to define each bot roles wave limit
|
||||||
* @returns string
|
* @returns string
|
||||||
*/
|
*/
|
||||||
getBotLimit(url: string, info: IEmptyRequestData, sessionID: string): string;
|
getBotLimit(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||||
|
@ -13,6 +13,9 @@ export declare class BundleCallbacks {
|
|||||||
protected httpConfig: IHttpConfig;
|
protected httpConfig: IHttpConfig;
|
||||||
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
|
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
|
||||||
sendBundle(sessionID: string, req: any, resp: any, body: any): any;
|
sendBundle(sessionID: string, req: any, resp: any, body: any): any;
|
||||||
|
/**
|
||||||
|
* Handle singleplayer/bundles
|
||||||
|
*/
|
||||||
getBundles(url: string, info: any, sessionID: string): string;
|
getBundles(url: string, info: any, sessionID: string): string;
|
||||||
getBundle(url: string, info: any, sessionID: string): string;
|
getBundle(url: string, info: any, sessionID: string): string;
|
||||||
}
|
}
|
||||||
|
@ -15,15 +15,21 @@ export declare class CustomizationCallbacks {
|
|||||||
protected httpResponse: HttpResponseUtil;
|
protected httpResponse: HttpResponseUtil;
|
||||||
constructor(customizationController: CustomizationController, saveServer: SaveServer, httpResponse: HttpResponseUtil);
|
constructor(customizationController: CustomizationController, saveServer: SaveServer, httpResponse: HttpResponseUtil);
|
||||||
/**
|
/**
|
||||||
* Handles client/trading/customization/storage
|
* Handle client/trading/customization/storage
|
||||||
* @returns
|
* @returns IGetSuitsResponse
|
||||||
*/
|
*/
|
||||||
getSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetSuitsResponse>;
|
getSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetSuitsResponse>;
|
||||||
/**
|
/**
|
||||||
* Handles client/trading/customization
|
* Handle client/trading/customization
|
||||||
* @returns ISuit[]
|
* @returns ISuit[]
|
||||||
*/
|
*/
|
||||||
getTraderSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISuit[]>;
|
getTraderSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISuit[]>;
|
||||||
|
/**
|
||||||
|
* Handle CustomizationWear event
|
||||||
|
*/
|
||||||
wearClothing(pmcData: IPmcData, body: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
wearClothing(pmcData: IPmcData, body: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/**
|
||||||
|
* Handle CustomizationBuy event
|
||||||
|
*/
|
||||||
buyClothing(pmcData: IPmcData, body: IBuyClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
buyClothing(pmcData: IPmcData, body: IBuyClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,6 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|||||||
import { IGlobals } from "../models/eft/common/IGlobals";
|
import { IGlobals } from "../models/eft/common/IGlobals";
|
||||||
import { ICustomizationItem } from "../models/eft/common/tables/ICustomizationItem";
|
import { ICustomizationItem } from "../models/eft/common/tables/ICustomizationItem";
|
||||||
import { IHandbookBase } from "../models/eft/common/tables/IHandbookBase";
|
import { IHandbookBase } from "../models/eft/common/tables/IHandbookBase";
|
||||||
import { IQuest } from "../models/eft/common/tables/IQuest";
|
|
||||||
import { IGetItemPricesResponse } from "../models/eft/game/IGetItemPricesResponse";
|
import { IGetItemPricesResponse } from "../models/eft/game/IGetItemPricesResponse";
|
||||||
import { IHideoutArea } from "../models/eft/hideout/IHideoutArea";
|
import { IHideoutArea } from "../models/eft/hideout/IHideoutArea";
|
||||||
import { IHideoutProduction } from "../models/eft/hideout/IHideoutProduction";
|
import { IHideoutProduction } from "../models/eft/hideout/IHideoutProduction";
|
||||||
@ -24,42 +23,54 @@ export declare class DataCallbacks {
|
|||||||
protected hideoutController: HideoutController;
|
protected hideoutController: HideoutController;
|
||||||
constructor(httpResponse: HttpResponseUtil, databaseServer: DatabaseServer, ragfairController: RagfairController, hideoutController: HideoutController);
|
constructor(httpResponse: HttpResponseUtil, databaseServer: DatabaseServer, ragfairController: RagfairController, hideoutController: HideoutController);
|
||||||
/**
|
/**
|
||||||
* Handles client/settings
|
* Handle client/settings
|
||||||
* @returns ISettingsBase
|
* @returns ISettingsBase
|
||||||
*/
|
*/
|
||||||
getSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISettingsBase>;
|
getSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISettingsBase>;
|
||||||
/**
|
/**
|
||||||
* Handles client/globals
|
* Handle client/globals
|
||||||
* @returns IGlobals
|
* @returns IGlobals
|
||||||
*/
|
*/
|
||||||
getGlobals(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGlobals>;
|
getGlobals(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGlobals>;
|
||||||
/**
|
/**
|
||||||
* Handles client/items
|
* Handle client/items
|
||||||
* @returns string
|
* @returns string
|
||||||
*/
|
*/
|
||||||
getTemplateItems(url: string, info: IEmptyRequestData, sessionID: string): string;
|
getTemplateItems(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||||
/**
|
/**
|
||||||
* Handles client/handbook/templates
|
* Handle client/handbook/templates
|
||||||
* @returns IHandbookBase
|
* @returns IHandbookBase
|
||||||
*/
|
*/
|
||||||
getTemplateHandbook(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHandbookBase>;
|
getTemplateHandbook(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHandbookBase>;
|
||||||
/**
|
/**
|
||||||
* Handles client/customization
|
* Handle client/customization
|
||||||
* @returns Record<string, ICustomizationItem
|
* @returns Record<string, ICustomizationItem
|
||||||
*/
|
*/
|
||||||
getTemplateSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, ICustomizationItem>>;
|
getTemplateSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, ICustomizationItem>>;
|
||||||
/**
|
/**
|
||||||
* Handles client/account/customization
|
* Handle client/account/customization
|
||||||
* @returns string[]
|
* @returns string[]
|
||||||
*/
|
*/
|
||||||
getTemplateCharacter(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string[]>;
|
getTemplateCharacter(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string[]>;
|
||||||
getTemplateQuests(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IQuest[]>;
|
/**
|
||||||
|
* Handle client/hideout/settings
|
||||||
|
* @returns IHideoutSettingsBase
|
||||||
|
*/
|
||||||
getHideoutSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutSettingsBase>;
|
getHideoutSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutSettingsBase>;
|
||||||
getHideoutAreas(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutArea[]>;
|
getHideoutAreas(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutArea[]>;
|
||||||
gethideoutProduction(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutProduction[]>;
|
gethideoutProduction(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutProduction[]>;
|
||||||
getHideoutScavcase(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutScavCase[]>;
|
getHideoutScavcase(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutScavCase[]>;
|
||||||
|
/**
|
||||||
|
* Handle client/languages
|
||||||
|
*/
|
||||||
getLocalesLanguages(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, string>>;
|
getLocalesLanguages(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, string>>;
|
||||||
|
/**
|
||||||
|
* Handle client/menu/locale
|
||||||
|
*/
|
||||||
getLocalesMenu(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
getLocalesMenu(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
||||||
|
/**
|
||||||
|
* Handle client/locale
|
||||||
|
*/
|
||||||
getLocalesGlobal(url: string, info: IEmptyRequestData, sessionID: string): string;
|
getLocalesGlobal(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||||
/**
|
/**
|
||||||
* Handle client/hideout/qte/list
|
* Handle client/hideout/qte/list
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { DialogueController } from "../controllers/DialogueController";
|
import { DialogueController } from "../controllers/DialogueController";
|
||||||
import { OnUpdate } from "../di/OnUpdate";
|
import { OnUpdate } from "../di/OnUpdate";
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
||||||
import { IAcceptFriendRequestData } from "../models/eft/dialog/IAcceptFriendRequestData";
|
import { IAcceptFriendRequestData, ICancelFriendRequestData } from "../models/eft/dialog/IAcceptFriendRequestData";
|
||||||
import { IChatServer } from "../models/eft/dialog/IChatServer";
|
import { IChatServer } from "../models/eft/dialog/IChatServer";
|
||||||
import { IClearMailMessageRequest } from "../models/eft/dialog/IClearMailMessageRequest";
|
import { IClearMailMessageRequest } from "../models/eft/dialog/IClearMailMessageRequest";
|
||||||
import { IDeleteFriendRequest } from "../models/eft/dialog/IDeleteFriendRequest";
|
import { IDeleteFriendRequest } from "../models/eft/dialog/IDeleteFriendRequest";
|
||||||
@ -33,13 +33,13 @@ export declare class DialogueCallbacks implements OnUpdate {
|
|||||||
protected dialogueController: DialogueController;
|
protected dialogueController: DialogueController;
|
||||||
constructor(hashUtil: HashUtil, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, dialogueController: DialogueController);
|
constructor(hashUtil: HashUtil, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, dialogueController: DialogueController);
|
||||||
/**
|
/**
|
||||||
* Handles client/friend/list
|
* Handle client/friend/list
|
||||||
* @returns IGetFriendListDataResponse
|
* @returns IGetFriendListDataResponse
|
||||||
*/
|
*/
|
||||||
getFriendList(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetFriendListDataResponse>;
|
getFriendList(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetFriendListDataResponse>;
|
||||||
/**
|
/**
|
||||||
* Handles client/chatServer/list
|
* Handle client/chatServer/list
|
||||||
* @returns
|
* @returns IChatServer[]
|
||||||
*/
|
*/
|
||||||
getChatServerList(url: string, info: IGetChatServerListRequestData, sessionID: string): IGetBodyResponseData<IChatServer[]>;
|
getChatServerList(url: string, info: IGetChatServerListRequestData, sessionID: string): IGetBodyResponseData<IChatServer[]>;
|
||||||
/** Handle client/mail/dialog/list */
|
/** Handle client/mail/dialog/list */
|
||||||
@ -50,21 +50,47 @@ export declare class DialogueCallbacks implements OnUpdate {
|
|||||||
getMailDialogInfo(url: string, info: IGetMailDialogInfoRequestData, sessionID: string): IGetBodyResponseData<DialogueInfo>;
|
getMailDialogInfo(url: string, info: IGetMailDialogInfoRequestData, sessionID: string): IGetBodyResponseData<DialogueInfo>;
|
||||||
/** Handle client/mail/dialog/remove */
|
/** Handle client/mail/dialog/remove */
|
||||||
removeDialog(url: string, info: IRemoveDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
removeDialog(url: string, info: IRemoveDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/** Handle client/mail/dialog/pin */
|
||||||
pinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
pinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/** Handle client/mail/dialog/unpin */
|
||||||
unpinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
unpinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/** Handle client/mail/dialog/read */
|
||||||
setRead(url: string, info: ISetDialogReadRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
setRead(url: string, info: ISetDialogReadRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
/**
|
/**
|
||||||
* Handles client/mail/dialog/getAllAttachments
|
* Handle client/mail/dialog/getAllAttachments
|
||||||
* @returns IGetAllAttachmentsResponse
|
* @returns IGetAllAttachmentsResponse
|
||||||
*/
|
*/
|
||||||
getAllAttachments(url: string, info: IGetAllAttachmentsRequestData, sessionID: string): IGetBodyResponseData<IGetAllAttachmentsResponse>;
|
getAllAttachments(url: string, info: IGetAllAttachmentsRequestData, sessionID: string): IGetBodyResponseData<IGetAllAttachmentsResponse>;
|
||||||
|
/** Handle client/mail/msg/send */
|
||||||
|
sendMessage(url: string, request: ISendMessageRequest, sessionID: string): IGetBodyResponseData<string>;
|
||||||
/** Handle client/friend/request/list/outbox */
|
/** Handle client/friend/request/list/outbox */
|
||||||
listOutbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
listOutbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/**
|
||||||
|
* Handle client/friend/request/list/inbox
|
||||||
|
*/
|
||||||
listInbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
listInbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/**
|
||||||
|
* Handle client/friend/request/send
|
||||||
|
*/
|
||||||
sendFriendRequest(url: string, request: IFriendRequestData, sessionID: string): IGetBodyResponseData<IFriendRequestSendResponse>;
|
sendFriendRequest(url: string, request: IFriendRequestData, sessionID: string): IGetBodyResponseData<IFriendRequestSendResponse>;
|
||||||
|
/**
|
||||||
|
* Handle client/friend/request/accept
|
||||||
|
*/
|
||||||
acceptFriendRequest(url: string, request: IAcceptFriendRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
acceptFriendRequest(url: string, request: IAcceptFriendRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
|
/**
|
||||||
|
* Handle client/friend/request/cancel
|
||||||
|
*/
|
||||||
|
cancelFriendRequest(url: string, request: ICancelFriendRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
|
/** Handle client/friend/delete */
|
||||||
deleteFriend(url: string, request: IDeleteFriendRequest, sessionID: string): INullResponseData;
|
deleteFriend(url: string, request: IDeleteFriendRequest, sessionID: string): INullResponseData;
|
||||||
sendMessage(url: string, request: ISendMessageRequest, sessionID: string): IGetBodyResponseData<number>;
|
/** Handle client/friend/ignore/set */
|
||||||
|
ignoreFriend(url: string, request: {
|
||||||
|
uid: string;
|
||||||
|
}, sessionID: string): any;
|
||||||
|
/** Handle client/friend/ignore/remove */
|
||||||
|
unIgnoreFriend(url: string, request: {
|
||||||
|
uid: string;
|
||||||
|
}, sessionID: string): any;
|
||||||
clearMail(url: string, request: IClearMailMessageRequest, sessionID: string): IGetBodyResponseData<any[]>;
|
clearMail(url: string, request: IClearMailMessageRequest, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
removeMail(url: string, request: IRemoveMailMessageRequest, sessionID: string): IGetBodyResponseData<any[]>;
|
removeMail(url: string, request: IRemoveMailMessageRequest, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
onUpdate(timeSinceLastRun: number): Promise<boolean>;
|
onUpdate(timeSinceLastRun: number): Promise<boolean>;
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import { GameController } from "../controllers/GameController";
|
import { GameController } from "../controllers/GameController";
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
||||||
import { ICheckVersionResponse } from "../models/eft/game/ICheckVersionResponse";
|
import { ICheckVersionResponse } from "../models/eft/game/ICheckVersionResponse";
|
||||||
|
import { ICurrentGroupResponse } from "../models/eft/game/ICurrentGroupResponse";
|
||||||
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
||||||
import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData";
|
import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData";
|
||||||
import { IGameKeepAliveResponse } from "../models/eft/game/IGameKeepAliveResponse";
|
import { IGameKeepAliveResponse } from "../models/eft/game/IGameKeepAliveResponse";
|
||||||
@ -41,8 +42,17 @@ declare class GameCallbacks {
|
|||||||
* @returns IGameConfigResponse
|
* @returns IGameConfigResponse
|
||||||
*/
|
*/
|
||||||
getGameConfig(url: string, info: IGameEmptyCrcRequestData, sessionID: string): IGetBodyResponseData<IGameConfigResponse>;
|
getGameConfig(url: string, info: IGameEmptyCrcRequestData, sessionID: string): IGetBodyResponseData<IGameConfigResponse>;
|
||||||
|
/**
|
||||||
|
* Handle client/server/list
|
||||||
|
*/
|
||||||
getServer(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IServerDetails[]>;
|
getServer(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IServerDetails[]>;
|
||||||
getCurrentGroup(url: string, info: IEmptyRequestData, sessionID: string): any;
|
/**
|
||||||
|
* Handle client/match/group/current
|
||||||
|
*/
|
||||||
|
getCurrentGroup(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ICurrentGroupResponse>;
|
||||||
|
/**
|
||||||
|
* Handle client/checkVersion
|
||||||
|
*/
|
||||||
validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ICheckVersionResponse>;
|
validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ICheckVersionResponse>;
|
||||||
/**
|
/**
|
||||||
* Handle client/game/keepalive
|
* Handle client/game/keepalive
|
||||||
|
@ -23,11 +23,11 @@ export declare class HideoutCallbacks implements OnUpdate {
|
|||||||
constructor(hideoutController: HideoutController, // TODO: delay needed
|
constructor(hideoutController: HideoutController, // TODO: delay needed
|
||||||
configServer: ConfigServer);
|
configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Handle HideoutUpgrade
|
* Handle HideoutUpgrade event
|
||||||
*/
|
*/
|
||||||
upgrade(pmcData: IPmcData, body: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
upgrade(pmcData: IPmcData, body: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutUpgradeComplete
|
* Handle HideoutUpgradeComplete event
|
||||||
*/
|
*/
|
||||||
upgradeComplete(pmcData: IPmcData, body: IHideoutUpgradeCompleteRequestData, sessionID: string): IItemEventRouterResponse;
|
upgradeComplete(pmcData: IPmcData, body: IHideoutUpgradeCompleteRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
@ -35,19 +35,19 @@ export declare class HideoutCallbacks implements OnUpdate {
|
|||||||
*/
|
*/
|
||||||
putItemsInAreaSlots(pmcData: IPmcData, body: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
putItemsInAreaSlots(pmcData: IPmcData, body: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutTakeItemsFromAreaSlots
|
* Handle HideoutTakeItemsFromAreaSlots event
|
||||||
*/
|
*/
|
||||||
takeItemsFromAreaSlots(pmcData: IPmcData, body: IHideoutTakeItemOutRequestData, sessionID: string): IItemEventRouterResponse;
|
takeItemsFromAreaSlots(pmcData: IPmcData, body: IHideoutTakeItemOutRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutToggleArea
|
* Handle HideoutToggleArea event
|
||||||
*/
|
*/
|
||||||
toggleArea(pmcData: IPmcData, body: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
toggleArea(pmcData: IPmcData, body: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutSingleProductionStart
|
* Handle HideoutSingleProductionStart event
|
||||||
*/
|
*/
|
||||||
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutScavCaseProductionStart
|
* Handle HideoutScavCaseProductionStart event
|
||||||
*/
|
*/
|
||||||
scavCaseProductionStart(pmcData: IPmcData, body: IHideoutScavCaseStartRequestData, sessionID: string): IItemEventRouterResponse;
|
scavCaseProductionStart(pmcData: IPmcData, body: IHideoutScavCaseStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
@ -55,7 +55,7 @@ export declare class HideoutCallbacks implements OnUpdate {
|
|||||||
*/
|
*/
|
||||||
continuousProductionStart(pmcData: IPmcData, body: IHideoutContinuousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
continuousProductionStart(pmcData: IPmcData, body: IHideoutContinuousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle HideoutTakeProduction
|
* Handle HideoutTakeProduction event
|
||||||
*/
|
*/
|
||||||
takeProduction(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
takeProduction(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
@ -12,6 +12,7 @@ export declare class InraidCallbacks {
|
|||||||
constructor(inraidController: InraidController, httpResponse: HttpResponseUtil);
|
constructor(inraidController: InraidController, httpResponse: HttpResponseUtil);
|
||||||
/**
|
/**
|
||||||
* Handle client/location/getLocalloot
|
* Handle client/location/getLocalloot
|
||||||
|
* Store active map in profile + applicationContext
|
||||||
* @param url
|
* @param url
|
||||||
* @param info register player request
|
* @param info register player request
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
|
@ -23,7 +23,7 @@ export declare class InsuranceCallbacks implements OnUpdate {
|
|||||||
*/
|
*/
|
||||||
getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData<IGetInsuranceCostResponseData>;
|
getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData<IGetInsuranceCostResponseData>;
|
||||||
/**
|
/**
|
||||||
* Handle Insure
|
* Handle Insure event
|
||||||
* @returns IItemEventRouterResponse
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
@ -26,16 +26,20 @@ export declare class InventoryCallbacks {
|
|||||||
splitItem(pmcData: IPmcData, body: IInventorySplitRequestData, sessionID: string): IItemEventRouterResponse;
|
splitItem(pmcData: IPmcData, body: IInventorySplitRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse;
|
mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
transferItem(pmcData: IPmcData, body: IInventoryTransferRequestData, sessionID: string): IItemEventRouterResponse;
|
transferItem(pmcData: IPmcData, body: IInventoryTransferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle Swap */
|
||||||
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
foldItem(pmcData: IPmcData, body: IInventoryFoldRequestData, sessionID: string): IItemEventRouterResponse;
|
foldItem(pmcData: IPmcData, body: IInventoryFoldRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
toggleItem(pmcData: IPmcData, body: IInventoryToggleRequestData, sessionID: string): IItemEventRouterResponse;
|
toggleItem(pmcData: IPmcData, body: IInventoryToggleRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse;
|
tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse;
|
bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse;
|
examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle ReadEncyclopedia */
|
||||||
readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse;
|
readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle ApplyInventoryChanges */
|
||||||
sortInventory(pmcData: IPmcData, body: IInventorySortRequestData, sessionID: string): IItemEventRouterResponse;
|
sortInventory(pmcData: IPmcData, body: IInventorySortRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
createMapMarker(pmcData: IPmcData, body: IInventoryCreateMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
createMapMarker(pmcData: IPmcData, body: IInventoryCreateMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
deleteMapMarker(pmcData: IPmcData, body: IInventoryDeleteMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
deleteMapMarker(pmcData: IPmcData, body: IInventoryDeleteMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
editMapMarker(pmcData: IPmcData, body: IInventoryEditMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
editMapMarker(pmcData: IPmcData, body: IInventoryEditMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle OpenRandomLootContainer */
|
||||||
openRandomLootContainer(pmcData: IPmcData, body: IOpenRandomLootContainerRequestData, sessionID: string): IItemEventRouterResponse;
|
openRandomLootContainer(pmcData: IPmcData, body: IOpenRandomLootContainerRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,10 @@ export declare class LocationCallbacks {
|
|||||||
protected httpResponse: HttpResponseUtil;
|
protected httpResponse: HttpResponseUtil;
|
||||||
protected locationController: LocationController;
|
protected locationController: LocationController;
|
||||||
constructor(httpResponse: HttpResponseUtil, locationController: LocationController);
|
constructor(httpResponse: HttpResponseUtil, locationController: LocationController);
|
||||||
|
/** Handle client/locations */
|
||||||
getLocationData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ILocationsGenerateAllResponse>;
|
getLocationData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ILocationsGenerateAllResponse>;
|
||||||
|
/** Handle client/location/getLocalloot */
|
||||||
getLocation(url: string, info: IGetLocationRequestData, sessionID: string): IGetBodyResponseData<ILocationBase>;
|
getLocation(url: string, info: IGetLocationRequestData, sessionID: string): IGetBodyResponseData<ILocationBase>;
|
||||||
|
/** Handle client/location/getAirdropLoot */
|
||||||
getAirdropLoot(url: string, info: IEmptyRequestData, sessionID: string): string;
|
getAirdropLoot(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||||
}
|
}
|
||||||
|
@ -27,11 +27,14 @@ export declare class MatchCallbacks {
|
|||||||
protected matchController: MatchController;
|
protected matchController: MatchController;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer);
|
constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer);
|
||||||
|
/** Handle client/match/updatePing */
|
||||||
updatePing(url: string, info: IUpdatePingRequestData, sessionID: string): INullResponseData;
|
updatePing(url: string, info: IUpdatePingRequestData, sessionID: string): INullResponseData;
|
||||||
exitMatch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
exitMatch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
||||||
|
/** Handle client/match/group/exit_from_menu */
|
||||||
exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
||||||
startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
||||||
stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData;
|
||||||
|
/** Handle client/match/group/invite/send */
|
||||||
sendGroupInvite(url: string, info: ISendGroupInviteRequest, sessionID: string): IGetBodyResponseData<string>;
|
sendGroupInvite(url: string, info: ISendGroupInviteRequest, sessionID: string): IGetBodyResponseData<string>;
|
||||||
/** Handle client/match/group/invite/accept */
|
/** Handle client/match/group/invite/accept */
|
||||||
acceptGroupInvite(url: string, info: IAcceptGroupInviteRequest, sessionID: string): IGetBodyResponseData<IAcceptGroupInviteResponse[]>;
|
acceptGroupInvite(url: string, info: IAcceptGroupInviteRequest, sessionID: string): IGetBodyResponseData<IAcceptGroupInviteResponse[]>;
|
||||||
@ -39,21 +42,32 @@ export declare class MatchCallbacks {
|
|||||||
cancelGroupInvite(url: string, info: ICancelGroupInviteRequest, sessionID: string): IGetBodyResponseData<boolean>;
|
cancelGroupInvite(url: string, info: ICancelGroupInviteRequest, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
/** Handle client/match/group/transfer */
|
/** Handle client/match/group/transfer */
|
||||||
transferGroup(url: string, info: ITransferGroupRequest, sessionID: string): IGetBodyResponseData<boolean>;
|
transferGroup(url: string, info: ITransferGroupRequest, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
|
/** Handle client/match/group/invite/cancel-all */
|
||||||
cancelAllGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
cancelAllGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
||||||
|
/** @deprecated - not called on raid start/end or game start/exit */
|
||||||
putMetrics(url: string, info: IPutMetricsRequestData, sessionID: string): INullResponseData;
|
putMetrics(url: string, info: IPutMetricsRequestData, sessionID: string): INullResponseData;
|
||||||
|
/** Handle raid/profile/list */
|
||||||
getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
||||||
serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
|
/** Handle match/group/start_game */
|
||||||
joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData<IJoinMatchResult>;
|
joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData<IJoinMatchResult>;
|
||||||
|
/** Handle client/getMetricsConfig */
|
||||||
getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData<string>;
|
getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData<string>;
|
||||||
/**
|
/**
|
||||||
|
* @deprecated - not called on raid start/end or game start/exit
|
||||||
* Handle client/match/group/status
|
* Handle client/match/group/status
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData<any>;
|
getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||||
|
/** Handle client/match/group/create */
|
||||||
createGroup(url: string, info: ICreateGroupRequestData, sessionID: string): IGetBodyResponseData<any>;
|
createGroup(url: string, info: ICreateGroupRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||||
|
/** Handle client/match/group/delete */
|
||||||
deleteGroup(url: string, info: any, sessionID: string): INullResponseData;
|
deleteGroup(url: string, info: any, sessionID: string): INullResponseData;
|
||||||
leaveGroup(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
leaveGroup(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<boolean>;
|
||||||
|
/** Handle client/match/group/player/remove */
|
||||||
removePlayerFromGroup(url: string, info: IRemovePlayerFromGroupRequest, sessionID: string): INullResponseData;
|
removePlayerFromGroup(url: string, info: IRemovePlayerFromGroupRequest, sessionID: string): INullResponseData;
|
||||||
|
/** Handle client/match/offline/end */
|
||||||
endOfflineRaid(url: string, info: IEndOfflineRaidRequestData, sessionID: string): INullResponseData;
|
endOfflineRaid(url: string, info: IEndOfflineRaidRequestData, sessionID: string): INullResponseData;
|
||||||
|
/** Handle client/raid/configuration */
|
||||||
getRaidConfiguration(url: string, info: IGetRaidConfigurationRequestData, sessionID: string): INullResponseData;
|
getRaidConfiguration(url: string, info: IGetRaidConfigurationRequestData, sessionID: string): INullResponseData;
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,10 @@ import { INoteActionData } from "../models/eft/notes/INoteActionData";
|
|||||||
export declare class NoteCallbacks {
|
export declare class NoteCallbacks {
|
||||||
protected noteController: NoteController;
|
protected noteController: NoteController;
|
||||||
constructor(noteController: NoteController);
|
constructor(noteController: NoteController);
|
||||||
|
/** Handle AddNote event */
|
||||||
addNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
addNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle EditNote event */
|
||||||
editNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
editNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle DeleteNote event */
|
||||||
deleteNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
deleteNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,10 @@ export declare class NotifierCallbacks {
|
|||||||
* and the client would abort the connection due to spam.
|
* and the client would abort the connection due to spam.
|
||||||
*/
|
*/
|
||||||
sendNotification(sessionID: string, req: any, resp: any, data: any): void;
|
sendNotification(sessionID: string, req: any, resp: any, data: any): void;
|
||||||
|
/** Handle push/notifier/get */
|
||||||
|
/** Handle push/notifier/getwebsocket */
|
||||||
getNotifier(url: string, info: any, sessionID: string): IGetBodyResponseData<any[]>;
|
getNotifier(url: string, info: any, sessionID: string): IGetBodyResponseData<any[]>;
|
||||||
|
/** Handle client/notifier/channel/create */
|
||||||
createNotifierChannel(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<INotifierChannel>;
|
createNotifierChannel(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<INotifierChannel>;
|
||||||
/**
|
/**
|
||||||
* Handle client/game/profile/select
|
* Handle client/game/profile/select
|
||||||
|
@ -10,7 +10,10 @@ export declare class PresetBuildCallbacks {
|
|||||||
protected httpResponse: HttpResponseUtil;
|
protected httpResponse: HttpResponseUtil;
|
||||||
protected presetBuildController: PresetBuildController;
|
protected presetBuildController: PresetBuildController;
|
||||||
constructor(httpResponse: HttpResponseUtil, presetBuildController: PresetBuildController);
|
constructor(httpResponse: HttpResponseUtil, presetBuildController: PresetBuildController);
|
||||||
|
/** Handle client/handbook/builds/my/list */
|
||||||
getHandbookUserlist(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<WeaponBuild[]>;
|
getHandbookUserlist(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<WeaponBuild[]>;
|
||||||
|
/** Handle SaveBuild event */
|
||||||
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RemoveBuild event*/
|
||||||
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -20,16 +20,17 @@ export declare class ProfileCallbacks {
|
|||||||
protected timeUtil: TimeUtil;
|
protected timeUtil: TimeUtil;
|
||||||
protected profileController: ProfileController;
|
protected profileController: ProfileController;
|
||||||
constructor(httpResponse: HttpResponseUtil, timeUtil: TimeUtil, profileController: ProfileController);
|
constructor(httpResponse: HttpResponseUtil, timeUtil: TimeUtil, profileController: ProfileController);
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/create
|
||||||
|
*/
|
||||||
createProfile(url: string, info: IProfileCreateRequestData, sessionID: string): IGetBodyResponseData<any>;
|
createProfile(url: string, info: IProfileCreateRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/game/profile/list
|
||||||
* Get the complete player profile (scav + pmc character)
|
* Get the complete player profile (scav + pmc character)
|
||||||
* @param url
|
|
||||||
* @param info Empty
|
|
||||||
* @param sessionID Session id
|
|
||||||
* @returns Profile object
|
|
||||||
*/
|
*/
|
||||||
getProfileData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
getProfileData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/game/profile/savage/regenerate
|
||||||
* Handle the creation of a scav profile for player
|
* Handle the creation of a scav profile for player
|
||||||
* Occurs post-raid and when profile first created immediately after character details are confirmed by player
|
* Occurs post-raid and when profile first created immediately after character details are confirmed by player
|
||||||
* @param url
|
* @param url
|
||||||
@ -40,33 +41,40 @@ export declare class ProfileCallbacks {
|
|||||||
regenerateScav(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
regenerateScav(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
||||||
/**
|
/**
|
||||||
* Handle client/game/profile/voice/change event
|
* Handle client/game/profile/voice/change event
|
||||||
* @param url
|
|
||||||
* @param info Change voice request object
|
|
||||||
* @param sessionID Session id
|
|
||||||
* @returns Client response
|
|
||||||
*/
|
*/
|
||||||
changeVoice(url: string, info: IProfileChangeVoiceRequestData, sessionID: string): INullResponseData;
|
changeVoice(url: string, info: IProfileChangeVoiceRequestData, sessionID: string): INullResponseData;
|
||||||
/**
|
/**
|
||||||
* Handle client/game/profile/nickname/change event
|
* Handle client/game/profile/nickname/change event
|
||||||
* Client allows player to adjust their profile name
|
* Client allows player to adjust their profile name
|
||||||
* @param url
|
|
||||||
* @param info Change nickname request object
|
|
||||||
* @param sessionID Session id
|
|
||||||
* @returns client response
|
|
||||||
*/
|
*/
|
||||||
changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/nickname/validate
|
||||||
|
*/
|
||||||
validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/nickname/reserved
|
||||||
|
*/
|
||||||
getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/profile/status
|
||||||
* Called when creating a character when choosing a character face/voice
|
* Called when creating a character when choosing a character face/voice
|
||||||
* @param url
|
|
||||||
* @param info response (empty)
|
|
||||||
* @param sessionID
|
|
||||||
* @returns
|
|
||||||
*/
|
*/
|
||||||
getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<GetProfileStatusResponseData>;
|
getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<GetProfileStatusResponseData>;
|
||||||
|
/**
|
||||||
|
* Handle client/profile/settings
|
||||||
|
*/
|
||||||
getProfileSettings(url: string, info: IGetProfileSettingsRequest, sessionId: string): IGetBodyResponseData<string>;
|
getProfileSettings(url: string, info: IGetProfileSettingsRequest, sessionId: string): IGetBodyResponseData<string>;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/search
|
||||||
|
*/
|
||||||
searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData<ISearchFriendResponse[]>;
|
searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData<ISearchFriendResponse[]>;
|
||||||
|
/**
|
||||||
|
* Handle launcher/profile/info
|
||||||
|
*/
|
||||||
getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string;
|
getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string;
|
||||||
getAllMiniProfiles(url: string, info: any, sessionID: string): string;
|
/**
|
||||||
|
* Handle /launcher/profiles
|
||||||
|
*/
|
||||||
|
getAllMiniProfiles(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||||
}
|
}
|
||||||
|
@ -17,17 +17,28 @@ export declare class QuestCallbacks {
|
|||||||
protected questController: QuestController;
|
protected questController: QuestController;
|
||||||
protected repeatableQuestController: RepeatableQuestController;
|
protected repeatableQuestController: RepeatableQuestController;
|
||||||
constructor(httpResponse: HttpResponseUtil, questController: QuestController, repeatableQuestController: RepeatableQuestController);
|
constructor(httpResponse: HttpResponseUtil, questController: QuestController, repeatableQuestController: RepeatableQuestController);
|
||||||
|
/**
|
||||||
|
* Handle RepeatableQuestChange event
|
||||||
|
*/
|
||||||
changeRepeatableQuest(pmcData: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
changeRepeatableQuest(pmcData: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/**
|
||||||
|
* Handle QuestAccept event
|
||||||
|
*/
|
||||||
acceptQuest(pmcData: IPmcData, body: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
acceptQuest(pmcData: IPmcData, body: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/**
|
||||||
|
* Handle QuestComplete event
|
||||||
|
*/
|
||||||
completeQuest(pmcData: IPmcData, body: ICompleteQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
completeQuest(pmcData: IPmcData, body: ICompleteQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/**
|
||||||
|
* Handle QuestHandover event
|
||||||
|
*/
|
||||||
handoverQuest(pmcData: IPmcData, body: IHandoverQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
handoverQuest(pmcData: IPmcData, body: IHandoverQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle client/quest/list
|
* Handle client/quest/list
|
||||||
* @param url
|
|
||||||
* @param info
|
|
||||||
* @param sessionID
|
|
||||||
* @returns
|
|
||||||
*/
|
*/
|
||||||
listQuests(url: string, info: IListQuestsRequestData, sessionID: string): IGetBodyResponseData<IQuest[]>;
|
listQuests(url: string, info: IListQuestsRequestData, sessionID: string): IGetBodyResponseData<IQuest[]>;
|
||||||
|
/**
|
||||||
|
* Handle client/repeatalbeQuests/activityPeriods
|
||||||
|
*/
|
||||||
activityPeriods(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcDataRepeatableQuest[]>;
|
activityPeriods(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcDataRepeatableQuest[]>;
|
||||||
}
|
}
|
||||||
|
@ -32,16 +32,25 @@ export declare class RagfairCallbacks implements OnLoad, OnUpdate {
|
|||||||
constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer);
|
constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer);
|
||||||
onLoad(): Promise<void>;
|
onLoad(): Promise<void>;
|
||||||
getRoute(): string;
|
getRoute(): string;
|
||||||
|
onUpdate(timeSinceLastRun: number): Promise<boolean>;
|
||||||
|
/**
|
||||||
|
* Handle client/ragfair/search
|
||||||
|
* Handle client/ragfair/find
|
||||||
|
*/
|
||||||
search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData<IGetOffersResult>;
|
search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData<IGetOffersResult>;
|
||||||
|
/** Handle client/ragfair/itemMarketPrice */
|
||||||
getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData<IGetItemPriceResult>;
|
getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData<IGetItemPriceResult>;
|
||||||
|
/** Handle RagFairAddOffer event */
|
||||||
addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** \Handle RagFairRemoveOffer event */
|
||||||
removeOffer(pmcData: IPmcData, info: IRemoveOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
removeOffer(pmcData: IPmcData, info: IRemoveOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RagFairRenewOffer event */
|
||||||
extendOffer(pmcData: IPmcData, info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
extendOffer(pmcData: IPmcData, info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Handle /client/items/prices
|
* Handle /client/items/prices
|
||||||
* Called when clicking an item to list on flea
|
* Called when clicking an item to list on flea
|
||||||
*/
|
*/
|
||||||
getFleaPrices(url: string, request: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, number>>;
|
getFleaPrices(url: string, request: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, number>>;
|
||||||
onUpdate(timeSinceLastRun: number): Promise<boolean>;
|
/** Handle client/reports/ragfair/send */
|
||||||
sendReport(url: string, info: ISendRagfairReportRequestData, sessionID: string): INullResponseData;
|
sendReport(url: string, info: ISendRagfairReportRequestData, sessionID: string): INullResponseData;
|
||||||
}
|
}
|
||||||
|
@ -7,19 +7,21 @@ export declare class RepairCallbacks {
|
|||||||
protected repairController: RepairController;
|
protected repairController: RepairController;
|
||||||
constructor(repairController: RepairController);
|
constructor(repairController: RepairController);
|
||||||
/**
|
/**
|
||||||
|
* Handle TraderRepair event
|
||||||
* use trader to repair item
|
* use trader to repair item
|
||||||
* @param pmcData
|
* @param pmcData Player profile
|
||||||
* @param body
|
* @param traderRepairRequest Request object
|
||||||
* @param sessionID
|
* @param sessionID Session id
|
||||||
* @returns
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
traderRepair(pmcData: IPmcData, body: ITraderRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
traderRepair(pmcData: IPmcData, traderRepairRequest: ITraderRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle Repair event
|
||||||
* Use repair kit to repair item
|
* Use repair kit to repair item
|
||||||
* @param pmcData
|
* @param pmcData Player profile
|
||||||
* @param body
|
* @param repairRequest Request object
|
||||||
* @param sessionID
|
* @param sessionID Session id
|
||||||
* @returns
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
repair(pmcData: IPmcData, body: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
repair(pmcData: IPmcData, repairRequest: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -7,8 +7,9 @@ export declare class TradeCallbacks {
|
|||||||
protected tradeController: TradeController;
|
protected tradeController: TradeController;
|
||||||
constructor(tradeController: TradeController);
|
constructor(tradeController: TradeController);
|
||||||
/**
|
/**
|
||||||
* Handle client/game/profile/items/moving TradingConfirm
|
* Handle client/game/profile/items/moving TradingConfirm event
|
||||||
*/
|
*/
|
||||||
processTrade(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
processTrade(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RagFairBuyOffer event */
|
||||||
processRagfairTrade(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
processRagfairTrade(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,10 @@ export declare class TraderCallbacks implements OnLoad, OnUpdate {
|
|||||||
onLoad(): Promise<void>;
|
onLoad(): Promise<void>;
|
||||||
onUpdate(): Promise<boolean>;
|
onUpdate(): Promise<boolean>;
|
||||||
getRoute(): string;
|
getRoute(): string;
|
||||||
|
/** Handle client/trading/api/traderSettings */
|
||||||
getTraderSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase[]>;
|
getTraderSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase[]>;
|
||||||
|
/** Handle client/trading/api/getTrader */
|
||||||
getTrader(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase>;
|
getTrader(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase>;
|
||||||
|
/** Handle client/trading/api/getTraderAssort */
|
||||||
getAssort(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderAssort>;
|
getAssort(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderAssort>;
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,8 @@ import { IWishlistActionData } from "../models/eft/wishlist/IWishlistActionData"
|
|||||||
export declare class WishlistCallbacks {
|
export declare class WishlistCallbacks {
|
||||||
protected wishlistController: WishlistController;
|
protected wishlistController: WishlistController;
|
||||||
constructor(wishlistController: WishlistController);
|
constructor(wishlistController: WishlistController);
|
||||||
|
/** Handle AddToWishList event */
|
||||||
addToWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
addToWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RemoveFromWishList event */
|
||||||
removeFromWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
removeFromWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,7 @@ export declare class BotController {
|
|||||||
*/
|
*/
|
||||||
getBotPresetGenerationLimit(type: string): number;
|
getBotPresetGenerationLimit(type: string): number;
|
||||||
/**
|
/**
|
||||||
|
* Handle singleplayer/settings/bot/difficulty
|
||||||
* Get the core.json difficulty settings from database\bots
|
* Get the core.json difficulty settings from database\bots
|
||||||
* @returns IBotCore
|
* @returns IBotCore
|
||||||
*/
|
*/
|
||||||
|
@ -28,9 +28,13 @@ export declare class CustomizationController {
|
|||||||
* @returns ISuit array
|
* @returns ISuit array
|
||||||
*/
|
*/
|
||||||
getTraderSuits(traderID: string, sessionID: string): ISuit[];
|
getTraderSuits(traderID: string, sessionID: string): ISuit[];
|
||||||
/** Equip one to many clothing items to player */
|
/**
|
||||||
|
* Handle CustomizationWear event
|
||||||
|
* Equip one to many clothing items to player
|
||||||
|
*/
|
||||||
wearClothing(pmcData: IPmcData, wearClothingRequest: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
wearClothing(pmcData: IPmcData, wearClothingRequest: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle CustomizationBuy event
|
||||||
* Purchase/unlock a clothing item from a trader
|
* Purchase/unlock a clothing item from a trader
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param buyClothingRequest Request object
|
* @param buyClothingRequest Request object
|
||||||
@ -42,8 +46,8 @@ export declare class CustomizationController {
|
|||||||
/**
|
/**
|
||||||
* Has an outfit been purchased by a player
|
* Has an outfit been purchased by a player
|
||||||
* @param suitId clothing id
|
* @param suitId clothing id
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id of profile to check for clothing in
|
||||||
* @returns true if purchased already
|
* @returns true if already purchased
|
||||||
*/
|
*/
|
||||||
protected outfitAlreadyPurchased(suitId: string, sessionID: string): boolean;
|
protected outfitAlreadyPurchased(suitId: string, sessionID: string): boolean;
|
||||||
/**
|
/**
|
||||||
@ -60,7 +64,6 @@ export declare class CustomizationController {
|
|||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param clothingItem Clothing item purchased
|
* @param clothingItem Clothing item purchased
|
||||||
* @param output Client response
|
* @param output Client response
|
||||||
* @returns
|
|
||||||
*/
|
*/
|
||||||
protected payForClothingItem(sessionId: string, pmcData: IPmcData, clothingItem: ClothingItem, output: IItemEventRouterResponse): void;
|
protected payForClothingItem(sessionId: string, pmcData: IPmcData, clothingItem: ClothingItem, output: IItemEventRouterResponse): void;
|
||||||
protected getAllTraderSuits(sessionID: string): ISuit[];
|
protected getAllTraderSuits(sessionID: string): ISuit[];
|
||||||
|
@ -1,18 +1,39 @@
|
|||||||
import { DialogueHelper } from "../helpers/DialogueHelper";
|
import { DialogueHelper } from "../helpers/DialogueHelper";
|
||||||
|
import { ProfileHelper } from "../helpers/ProfileHelper";
|
||||||
import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse";
|
import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse";
|
||||||
import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse";
|
import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse";
|
||||||
|
import { IGetMailDialogViewRequestData } from "../models/eft/dialog/IGetMailDialogViewRequestData";
|
||||||
import { IGetMailDialogViewResponseData } from "../models/eft/dialog/IGetMailDialogViewResponseData";
|
import { IGetMailDialogViewResponseData } from "../models/eft/dialog/IGetMailDialogViewResponseData";
|
||||||
import { DialogueInfo, IAkiProfile, IUserDialogInfo, Message } from "../models/eft/profile/IAkiProfile";
|
import { ISendMessageRequest } from "../models/eft/dialog/ISendMessageRequest";
|
||||||
|
import { Dialogue, DialogueInfo, IAkiProfile, IUserDialogInfo, Message } from "../models/eft/profile/IAkiProfile";
|
||||||
|
import { MessageType } from "../models/enums/MessageType";
|
||||||
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
import { SaveServer } from "../servers/SaveServer";
|
||||||
|
import { GiftService } from "../services/GiftService";
|
||||||
|
import { MailSendService } from "../services/MailSendService";
|
||||||
|
import { HashUtil } from "../utils/HashUtil";
|
||||||
|
import { RandomUtil } from "../utils/RandomUtil";
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
export declare class DialogueController {
|
export declare class DialogueController {
|
||||||
|
protected logger: ILogger;
|
||||||
protected saveServer: SaveServer;
|
protected saveServer: SaveServer;
|
||||||
protected timeUtil: TimeUtil;
|
protected timeUtil: TimeUtil;
|
||||||
protected dialogueHelper: DialogueHelper;
|
protected dialogueHelper: DialogueHelper;
|
||||||
constructor(saveServer: SaveServer, timeUtil: TimeUtil, dialogueHelper: DialogueHelper);
|
protected profileHelper: ProfileHelper;
|
||||||
|
protected randomUtil: RandomUtil;
|
||||||
|
protected mailSendService: MailSendService;
|
||||||
|
protected giftService: GiftService;
|
||||||
|
protected hashUtil: HashUtil;
|
||||||
|
constructor(logger: ILogger, saveServer: SaveServer, timeUtil: TimeUtil, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, randomUtil: RandomUtil, mailSendService: MailSendService, giftService: GiftService, hashUtil: HashUtil);
|
||||||
|
/** Handle onUpdate spt event */
|
||||||
update(): void;
|
update(): void;
|
||||||
|
/**
|
||||||
|
* Handle client/friend/list
|
||||||
|
* @returns IGetFriendListDataResponse
|
||||||
|
*/
|
||||||
getFriendList(sessionID: string): IGetFriendListDataResponse;
|
getFriendList(sessionID: string): IGetFriendListDataResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/mail/dialog/list
|
||||||
* Create array holding trader dialogs and mail interactions with player
|
* Create array holding trader dialogs and mail interactions with player
|
||||||
* Set the content of the dialogue on the list tab.
|
* Set the content of the dialogue on the list tab.
|
||||||
* @param sessionID Session Id
|
* @param sessionID Session Id
|
||||||
@ -27,15 +48,37 @@ export declare class DialogueController {
|
|||||||
*/
|
*/
|
||||||
getDialogueInfo(dialogueID: string, sessionID: string): DialogueInfo;
|
getDialogueInfo(dialogueID: string, sessionID: string): DialogueInfo;
|
||||||
/**
|
/**
|
||||||
|
* Get the users involved in a dialog (player + other party)
|
||||||
|
* @param dialog The dialog to check for users
|
||||||
|
* @param messageType What type of message is being sent
|
||||||
|
* @param sessionID Player id
|
||||||
|
* @returns IUserDialogInfo array
|
||||||
|
*/
|
||||||
|
getDialogueUsers(dialog: Dialogue, messageType: MessageType, sessionID: string): IUserDialogInfo[];
|
||||||
|
/**
|
||||||
|
* Handle client/mail/dialog/view
|
||||||
* Handle player clicking 'messenger' and seeing all the messages they've recieved
|
* Handle player clicking 'messenger' and seeing all the messages they've recieved
|
||||||
* Set the content of the dialogue on the details panel, showing all the messages
|
* Set the content of the dialogue on the details panel, showing all the messages
|
||||||
* for the specified dialogue.
|
* for the specified dialogue.
|
||||||
* @param dialogueID Dialog id
|
* @param request Get dialog request
|
||||||
* @param sessionID Session id
|
* @param sessionId Session id
|
||||||
* @returns IGetMailDialogViewResponseData object
|
* @returns IGetMailDialogViewResponseData object
|
||||||
*/
|
*/
|
||||||
generateDialogueView(dialogueID: string, sessionID: string): IGetMailDialogViewResponseData;
|
generateDialogueView(request: IGetMailDialogViewRequestData, sessionId: string): IGetMailDialogViewResponseData;
|
||||||
protected getProfilesForMail(pmcProfile: IAkiProfile, dialogUsers: IUserDialogInfo[]): IUserDialogInfo[];
|
/**
|
||||||
|
* Get dialog from player profile, create if doesn't exist
|
||||||
|
* @param profile Player profile
|
||||||
|
* @param request get dialog request (params used when dialog doesnt exist in profile)
|
||||||
|
* @returns Dialogue
|
||||||
|
*/
|
||||||
|
protected getDialogByIdFromProfile(profile: IAkiProfile, request: IGetMailDialogViewRequestData): Dialogue;
|
||||||
|
/**
|
||||||
|
* Get the users involved in a mail between two entities
|
||||||
|
* @param fullProfile Player profile
|
||||||
|
* @param dialogUsers The participants of the mail
|
||||||
|
* @returns IUserDialogInfo array
|
||||||
|
*/
|
||||||
|
protected getProfilesForMail(fullProfile: IAkiProfile, dialogUsers: IUserDialogInfo[]): IUserDialogInfo[];
|
||||||
/**
|
/**
|
||||||
* Get a count of messages with attachments from a particular dialog
|
* Get a count of messages with attachments from a particular dialog
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
@ -49,16 +92,39 @@ export declare class DialogueController {
|
|||||||
* @returns true if uncollected rewards found
|
* @returns true if uncollected rewards found
|
||||||
*/
|
*/
|
||||||
protected messagesHaveUncollectedRewards(messages: Message[]): boolean;
|
protected messagesHaveUncollectedRewards(messages: Message[]): boolean;
|
||||||
removeDialogue(dialogueID: string, sessionID: string): void;
|
|
||||||
setDialoguePin(dialogueID: string, shouldPin: boolean, sessionID: string): void;
|
|
||||||
setRead(dialogueIDs: string[], sessionID: string): void;
|
|
||||||
/**
|
/**
|
||||||
|
* Handle client/mail/dialog/remove
|
||||||
|
* Remove an entire dialog with an entity (trader/user)
|
||||||
|
* @param dialogueId id of the dialog to remove
|
||||||
|
* @param sessionId Player id
|
||||||
|
*/
|
||||||
|
removeDialogue(dialogueId: string, sessionId: string): void;
|
||||||
|
/** Handle client/mail/dialog/pin && Handle client/mail/dialog/unpin */
|
||||||
|
setDialoguePin(dialogueId: string, shouldPin: boolean, sessionId: string): void;
|
||||||
|
/**
|
||||||
|
* Handle client/mail/dialog/read
|
||||||
|
* Set a dialog to be read (no number alert/attachment alert)
|
||||||
|
* @param dialogueIds Dialog ids to set as read
|
||||||
|
* @param sessionId Player profile id
|
||||||
|
*/
|
||||||
|
setRead(dialogueIds: string[], sessionId: string): void;
|
||||||
|
/**
|
||||||
|
* Handle client/mail/dialog/getAllAttachments
|
||||||
* Get all uncollected items attached to mail in a particular dialog
|
* Get all uncollected items attached to mail in a particular dialog
|
||||||
* @param dialogueID Dialog to get mail attachments from
|
* @param dialogueId Dialog to get mail attachments from
|
||||||
* @param sessionID Session id
|
* @param sessionId Session id
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
getAllAttachments(dialogueID: string, sessionID: string): IGetAllAttachmentsResponse;
|
getAllAttachments(dialogueId: string, sessionId: string): IGetAllAttachmentsResponse;
|
||||||
|
/** client/mail/msg/send */
|
||||||
|
sendMessage(sessionId: string, request: ISendMessageRequest): string;
|
||||||
|
/**
|
||||||
|
* Send responses back to player when they communicate with SPT friend on friends list
|
||||||
|
* @param sessionId Session Id
|
||||||
|
* @param request send message request
|
||||||
|
*/
|
||||||
|
protected handleChatWithSPTFriend(sessionId: string, request: ISendMessageRequest): void;
|
||||||
|
protected getSptFriendData(friendId?: string): IUserDialogInfo;
|
||||||
/**
|
/**
|
||||||
* Get messages from a specific dialog that have items not expired
|
* Get messages from a specific dialog that have items not expired
|
||||||
* @param sessionId Session id
|
* @param sessionId Session id
|
||||||
|
@ -8,6 +8,7 @@ import { IPmcData } from "../models/eft/common/IPmcData";
|
|||||||
import { ICheckVersionResponse } from "../models/eft/game/ICheckVersionResponse";
|
import { ICheckVersionResponse } from "../models/eft/game/ICheckVersionResponse";
|
||||||
import { ICurrentGroupResponse } from "../models/eft/game/ICurrentGroupResponse";
|
import { ICurrentGroupResponse } from "../models/eft/game/ICurrentGroupResponse";
|
||||||
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
||||||
|
import { IGameKeepAliveResponse } from "../models/eft/game/IGameKeepAliveResponse";
|
||||||
import { IServerDetails } from "../models/eft/game/IServerDetails";
|
import { IServerDetails } from "../models/eft/game/IServerDetails";
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
||||||
import { ICoreConfig } from "../models/spt/config/ICoreConfig";
|
import { ICoreConfig } from "../models/spt/config/ICoreConfig";
|
||||||
@ -17,6 +18,7 @@ import { ILogger } from "../models/spt/utils/ILogger";
|
|||||||
import { ConfigServer } from "../servers/ConfigServer";
|
import { ConfigServer } from "../servers/ConfigServer";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { CustomLocationWaveService } from "../services/CustomLocationWaveService";
|
import { CustomLocationWaveService } from "../services/CustomLocationWaveService";
|
||||||
|
import { GiftService } from "../services/GiftService";
|
||||||
import { LocalisationService } from "../services/LocalisationService";
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
import { OpenZoneService } from "../services/OpenZoneService";
|
import { OpenZoneService } from "../services/OpenZoneService";
|
||||||
import { ProfileFixerService } from "../services/ProfileFixerService";
|
import { ProfileFixerService } from "../services/ProfileFixerService";
|
||||||
@ -39,14 +41,40 @@ export declare class GameController {
|
|||||||
protected customLocationWaveService: CustomLocationWaveService;
|
protected customLocationWaveService: CustomLocationWaveService;
|
||||||
protected openZoneService: OpenZoneService;
|
protected openZoneService: OpenZoneService;
|
||||||
protected seasonalEventService: SeasonalEventService;
|
protected seasonalEventService: SeasonalEventService;
|
||||||
|
protected giftService: GiftService;
|
||||||
protected applicationContext: ApplicationContext;
|
protected applicationContext: ApplicationContext;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected os: any;
|
protected os: any;
|
||||||
protected httpConfig: IHttpConfig;
|
protected httpConfig: IHttpConfig;
|
||||||
protected coreConfig: ICoreConfig;
|
protected coreConfig: ICoreConfig;
|
||||||
protected locationConfig: ILocationConfig;
|
protected locationConfig: ILocationConfig;
|
||||||
constructor(logger: ILogger, databaseServer: DatabaseServer, jsonUtil: JsonUtil, timeUtil: TimeUtil, preAkiModLoader: PreAkiModLoader, httpServerHelper: HttpServerHelper, encodingUtil: EncodingUtil, hideoutHelper: HideoutHelper, profileHelper: ProfileHelper, profileFixerService: ProfileFixerService, localisationService: LocalisationService, customLocationWaveService: CustomLocationWaveService, openZoneService: OpenZoneService, seasonalEventService: SeasonalEventService, applicationContext: ApplicationContext, configServer: ConfigServer);
|
constructor(logger: ILogger, databaseServer: DatabaseServer, jsonUtil: JsonUtil, timeUtil: TimeUtil, preAkiModLoader: PreAkiModLoader, httpServerHelper: HttpServerHelper, encodingUtil: EncodingUtil, hideoutHelper: HideoutHelper, profileHelper: ProfileHelper, profileFixerService: ProfileFixerService, localisationService: LocalisationService, customLocationWaveService: CustomLocationWaveService, openZoneService: OpenZoneService, seasonalEventService: SeasonalEventService, giftService: GiftService, applicationContext: ApplicationContext, configServer: ConfigServer);
|
||||||
|
/**
|
||||||
|
* Handle client/game/start
|
||||||
|
*/
|
||||||
gameStart(_url: string, _info: IEmptyRequestData, sessionID: string, startTimeStampMS: number): void;
|
gameStart(_url: string, _info: IEmptyRequestData, sessionID: string, startTimeStampMS: number): void;
|
||||||
|
/** Apply custom limits on bot types as defined in configs/location.json/botTypeLimits */
|
||||||
|
protected adjustMapBotLimits(): void;
|
||||||
|
/**
|
||||||
|
* Handle client/game/config
|
||||||
|
*/
|
||||||
|
getGameConfig(sessionID: string): IGameConfigResponse;
|
||||||
|
/**
|
||||||
|
* Handle client/server/list
|
||||||
|
*/
|
||||||
|
getServer(sessionId: string): IServerDetails[];
|
||||||
|
/**
|
||||||
|
* Handle client/match/group/current
|
||||||
|
*/
|
||||||
|
getCurrentGroup(sessionId: string): ICurrentGroupResponse;
|
||||||
|
/**
|
||||||
|
* Handle client/checkVersion
|
||||||
|
*/
|
||||||
|
getValidGameVersion(sessionId: string): ICheckVersionResponse;
|
||||||
|
/**
|
||||||
|
* Handle client/game/keepalive
|
||||||
|
*/
|
||||||
|
getKeepAlive(sessionId: string): IGameKeepAliveResponse;
|
||||||
/**
|
/**
|
||||||
* BSG have two values for shotgun dispersion, we make sure both have the same value
|
* BSG have two values for shotgun dispersion, we make sure both have the same value
|
||||||
*/
|
*/
|
||||||
@ -70,6 +98,11 @@ export declare class GameController {
|
|||||||
* Make Rogues spawn later to allow for scavs to spawn first instead of rogues filling up all spawn positions
|
* Make Rogues spawn later to allow for scavs to spawn first instead of rogues filling up all spawn positions
|
||||||
*/
|
*/
|
||||||
protected fixRoguesSpawningInstantlyOnLighthouse(): void;
|
protected fixRoguesSpawningInstantlyOnLighthouse(): void;
|
||||||
|
/**
|
||||||
|
* Send starting gifts to profile after x days
|
||||||
|
* @param pmcProfile Profile to add gifts to
|
||||||
|
*/
|
||||||
|
protected sendPraporGiftsToNewProfiles(pmcProfile: IPmcData): void;
|
||||||
/**
|
/**
|
||||||
* Find and split waves with large numbers of bots into smaller waves - BSG appears to reduce the size of these waves to one bot when they're waiting to spawn for too long
|
* Find and split waves with large numbers of bots into smaller waves - BSG appears to reduce the size of these waves to one bot when they're waiting to spawn for too long
|
||||||
*/
|
*/
|
||||||
@ -79,6 +112,10 @@ export declare class GameController {
|
|||||||
* @param fullProfile Profile to add mod details to
|
* @param fullProfile Profile to add mod details to
|
||||||
*/
|
*/
|
||||||
protected saveActiveModsToProfile(fullProfile: IAkiProfile): void;
|
protected saveActiveModsToProfile(fullProfile: IAkiProfile): void;
|
||||||
|
/**
|
||||||
|
* Check for any missing assorts inside each traders assort.json data, checking against traders qeustassort.json
|
||||||
|
*/
|
||||||
|
protected validateQuestAssortUnlocksExist(): void;
|
||||||
/**
|
/**
|
||||||
* Add the logged in players name to PMC name pool
|
* Add the logged in players name to PMC name pool
|
||||||
* @param pmcProfile
|
* @param pmcProfile
|
||||||
@ -93,8 +130,4 @@ export declare class GameController {
|
|||||||
*/
|
*/
|
||||||
protected adjustLabsRaiderSpawnRate(): void;
|
protected adjustLabsRaiderSpawnRate(): void;
|
||||||
protected logProfileDetails(fullProfile: IAkiProfile): void;
|
protected logProfileDetails(fullProfile: IAkiProfile): void;
|
||||||
getGameConfig(sessionID: string): IGameConfigResponse;
|
|
||||||
getServer(): IServerDetails[];
|
|
||||||
getCurrentGroup(sessionId: string): ICurrentGroupResponse;
|
|
||||||
getValidGameVersion(): ICheckVersionResponse;
|
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@ import { ILogger } from "../models/spt/utils/ILogger";
|
|||||||
import { EventOutputHolder } from "../routers/EventOutputHolder";
|
import { EventOutputHolder } from "../routers/EventOutputHolder";
|
||||||
import { LocalisationService } from "../services/LocalisationService";
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
import { PaymentService } from "../services/PaymentService";
|
import { PaymentService } from "../services/PaymentService";
|
||||||
|
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
import { JsonUtil } from "../utils/JsonUtil";
|
||||||
export declare class HealthController {
|
export declare class HealthController {
|
||||||
protected logger: ILogger;
|
protected logger: ILogger;
|
||||||
@ -21,8 +22,9 @@ export declare class HealthController {
|
|||||||
protected paymentService: PaymentService;
|
protected paymentService: PaymentService;
|
||||||
protected inventoryHelper: InventoryHelper;
|
protected inventoryHelper: InventoryHelper;
|
||||||
protected localisationService: LocalisationService;
|
protected localisationService: LocalisationService;
|
||||||
|
protected httpResponse: HttpResponseUtil;
|
||||||
protected healthHelper: HealthHelper;
|
protected healthHelper: HealthHelper;
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, eventOutputHolder: EventOutputHolder, itemHelper: ItemHelper, paymentService: PaymentService, inventoryHelper: InventoryHelper, localisationService: LocalisationService, healthHelper: HealthHelper);
|
constructor(logger: ILogger, jsonUtil: JsonUtil, eventOutputHolder: EventOutputHolder, itemHelper: ItemHelper, paymentService: PaymentService, inventoryHelper: InventoryHelper, localisationService: LocalisationService, httpResponse: HttpResponseUtil, healthHelper: HealthHelper);
|
||||||
/**
|
/**
|
||||||
* stores in-raid player health
|
* stores in-raid player health
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
@ -40,6 +42,7 @@ export declare class HealthController {
|
|||||||
*/
|
*/
|
||||||
offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse;
|
offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle Eat event
|
||||||
* Consume food/water outside of a raid
|
* Consume food/water outside of a raid
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param body request Object
|
* @param body request Object
|
||||||
@ -48,6 +51,7 @@ export declare class HealthController {
|
|||||||
*/
|
*/
|
||||||
offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse;
|
offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle RestoreHealth event
|
||||||
* Occurs on post-raid healing page
|
* Occurs on post-raid healing page
|
||||||
* @param pmcData player profile
|
* @param pmcData player profile
|
||||||
* @param healthTreatmentRequest Request data from client
|
* @param healthTreatmentRequest Request data from client
|
||||||
|
@ -59,6 +59,7 @@ export declare class HideoutController {
|
|||||||
protected hideoutConfig: IHideoutConfig;
|
protected hideoutConfig: IHideoutConfig;
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, randomUtil: RandomUtil, inventoryHelper: InventoryHelper, saveServer: SaveServer, playerService: PlayerService, presetHelper: PresetHelper, paymentHelper: PaymentHelper, eventOutputHolder: EventOutputHolder, httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, hideoutHelper: HideoutHelper, scavCaseRewardGenerator: ScavCaseRewardGenerator, localisationService: LocalisationService, configServer: ConfigServer, jsonUtil: JsonUtil, fenceService: FenceService);
|
constructor(logger: ILogger, hashUtil: HashUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, randomUtil: RandomUtil, inventoryHelper: InventoryHelper, saveServer: SaveServer, playerService: PlayerService, presetHelper: PresetHelper, paymentHelper: PaymentHelper, eventOutputHolder: EventOutputHolder, httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, hideoutHelper: HideoutHelper, scavCaseRewardGenerator: ScavCaseRewardGenerator, localisationService: LocalisationService, configServer: ConfigServer, jsonUtil: JsonUtil, fenceService: FenceService);
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutUpgrade event
|
||||||
* Start a hideout area upgrade
|
* Start a hideout area upgrade
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param request upgrade start request
|
* @param request upgrade start request
|
||||||
@ -67,6 +68,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
startUpgrade(pmcData: IPmcData, request: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
startUpgrade(pmcData: IPmcData, request: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutUpgradeComplete event
|
||||||
* Complete a hideout area upgrade
|
* Complete a hideout area upgrade
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param request Completed upgrade request
|
* @param request Completed upgrade request
|
||||||
@ -84,6 +86,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
putItemsInAreaSlots(pmcData: IPmcData, addItemToHideoutRequest: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
putItemsInAreaSlots(pmcData: IPmcData, addItemToHideoutRequest: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutTakeItemsFromAreaSlots event
|
||||||
* Remove item from hideout area and place into player inventory
|
* Remove item from hideout area and place into player inventory
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param request Take item out of area request
|
* @param request Take item out of area request
|
||||||
@ -102,6 +105,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
protected removeResourceFromArea(sessionID: string, pmcData: IPmcData, removeResourceRequest: IHideoutTakeItemOutRequestData, output: IItemEventRouterResponse, hideoutArea: HideoutArea): IItemEventRouterResponse;
|
protected removeResourceFromArea(sessionID: string, pmcData: IPmcData, removeResourceRequest: IHideoutTakeItemOutRequestData, output: IItemEventRouterResponse, hideoutArea: HideoutArea): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutToggleArea event
|
||||||
* Toggle area on/off
|
* Toggle area on/off
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param request Toggle area request
|
* @param request Toggle area request
|
||||||
@ -110,6 +114,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
toggleArea(pmcData: IPmcData, request: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
toggleArea(pmcData: IPmcData, request: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutSingleProductionStart event
|
||||||
* Start production for an item from hideout area
|
* Start production for an item from hideout area
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param body Start prodution of single item request
|
* @param body Start prodution of single item request
|
||||||
@ -118,6 +123,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutScavCaseProductionStart event
|
||||||
* Handles event after clicking 'start' on the scav case hideout page
|
* Handles event after clicking 'start' on the scav case hideout page
|
||||||
* @param pmcData player profile
|
* @param pmcData player profile
|
||||||
* @param body client request object
|
* @param body client request object
|
||||||
@ -149,6 +155,7 @@ export declare class HideoutController {
|
|||||||
*/
|
*/
|
||||||
continuousProductionStart(pmcData: IPmcData, request: IHideoutContinuousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
continuousProductionStart(pmcData: IPmcData, request: IHideoutContinuousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle HideoutTakeProduction event
|
||||||
* Take completed item out of hideout area and place into player inventory
|
* Take completed item out of hideout area and place into player inventory
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param request Remove production from area request
|
* @param request Remove production from area request
|
||||||
|
@ -10,6 +10,7 @@ import { IPmcData } from "../models/eft/common/IPmcData";
|
|||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { IRegisterPlayerRequestData } from "../models/eft/inRaid/IRegisterPlayerRequestData";
|
import { IRegisterPlayerRequestData } from "../models/eft/inRaid/IRegisterPlayerRequestData";
|
||||||
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
||||||
|
import { PlayerRaidEndState } from "../models/enums/PlayerRaidEndState";
|
||||||
import { IAirdropConfig } from "../models/spt/config/IAirdropConfig";
|
import { IAirdropConfig } from "../models/spt/config/IAirdropConfig";
|
||||||
import { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
import { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
@ -52,6 +53,7 @@ export declare class InraidController {
|
|||||||
*/
|
*/
|
||||||
addPlayer(sessionID: string, info: IRegisterPlayerRequestData): void;
|
addPlayer(sessionID: string, info: IRegisterPlayerRequestData): void;
|
||||||
/**
|
/**
|
||||||
|
* Handle raid/profile/save
|
||||||
* Save profile state to disk
|
* Save profile state to disk
|
||||||
* Handles pmc/pscav
|
* Handles pmc/pscav
|
||||||
* @param offraidData post-raid request data
|
* @param offraidData post-raid request data
|
||||||
@ -98,7 +100,7 @@ export declare class InraidController {
|
|||||||
* @param statusOnExit exit value from offraidData object
|
* @param statusOnExit exit value from offraidData object
|
||||||
* @returns true if dead
|
* @returns true if dead
|
||||||
*/
|
*/
|
||||||
protected isPlayerDead(statusOnExit: string): boolean;
|
protected isPlayerDead(statusOnExit: PlayerRaidEndState): boolean;
|
||||||
/**
|
/**
|
||||||
* Mark inventory items as FiR if player survived raid, otherwise remove FiR from them
|
* Mark inventory items as FiR if player survived raid, otherwise remove FiR from them
|
||||||
* @param offraidData Save Progress Request
|
* @param offraidData Save Progress Request
|
||||||
|
@ -45,6 +45,7 @@ export declare class InsuranceController {
|
|||||||
*/
|
*/
|
||||||
protected itemShouldBeLost(insuredItem: Item, traderId: string, itemsBeingDeleted: string[]): boolean;
|
protected itemShouldBeLost(insuredItem: Item, traderId: string, itemsBeingDeleted: string[]): boolean;
|
||||||
/**
|
/**
|
||||||
|
* Handle Insure event
|
||||||
* Add insurance to an item
|
* Add insurance to an item
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param body Insurance request
|
* @param body Insurance request
|
||||||
@ -53,6 +54,7 @@ export declare class InsuranceController {
|
|||||||
*/
|
*/
|
||||||
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/insurance/items/list/cost
|
||||||
* Calculate insurance cost
|
* Calculate insurance cost
|
||||||
* @param info request object
|
* @param info request object
|
||||||
* @param sessionID session id
|
* @param sessionID session id
|
||||||
|
@ -4,8 +4,8 @@ import { ItemHelper } from "../helpers/ItemHelper";
|
|||||||
import { PaymentHelper } from "../helpers/PaymentHelper";
|
import { PaymentHelper } from "../helpers/PaymentHelper";
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
import { PresetHelper } from "../helpers/PresetHelper";
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
import { ProfileHelper } from "../helpers/ProfileHelper";
|
||||||
|
import { QuestHelper } from "../helpers/QuestHelper";
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { IAddItemRequestData } from "../models/eft/inventory/IAddItemRequestData";
|
|
||||||
import { IInventoryBindRequestData } from "../models/eft/inventory/IInventoryBindRequestData";
|
import { IInventoryBindRequestData } from "../models/eft/inventory/IInventoryBindRequestData";
|
||||||
import { IInventoryCreateMarkerRequestData } from "../models/eft/inventory/IInventoryCreateMarkerRequestData";
|
import { IInventoryCreateMarkerRequestData } from "../models/eft/inventory/IInventoryCreateMarkerRequestData";
|
||||||
import { IInventoryDeleteMarkerRequestData } from "../models/eft/inventory/IInventoryDeleteMarkerRequestData";
|
import { IInventoryDeleteMarkerRequestData } from "../models/eft/inventory/IInventoryDeleteMarkerRequestData";
|
||||||
@ -44,6 +44,7 @@ export declare class InventoryController {
|
|||||||
protected fenceService: FenceService;
|
protected fenceService: FenceService;
|
||||||
protected presetHelper: PresetHelper;
|
protected presetHelper: PresetHelper;
|
||||||
protected inventoryHelper: InventoryHelper;
|
protected inventoryHelper: InventoryHelper;
|
||||||
|
protected questHelper: QuestHelper;
|
||||||
protected ragfairOfferService: RagfairOfferService;
|
protected ragfairOfferService: RagfairOfferService;
|
||||||
protected profileHelper: ProfileHelper;
|
protected profileHelper: ProfileHelper;
|
||||||
protected paymentHelper: PaymentHelper;
|
protected paymentHelper: PaymentHelper;
|
||||||
@ -51,7 +52,7 @@ export declare class InventoryController {
|
|||||||
protected lootGenerator: LootGenerator;
|
protected lootGenerator: LootGenerator;
|
||||||
protected eventOutputHolder: EventOutputHolder;
|
protected eventOutputHolder: EventOutputHolder;
|
||||||
protected httpResponseUtil: HttpResponseUtil;
|
protected httpResponseUtil: HttpResponseUtil;
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, itemHelper: ItemHelper, randomUtil: RandomUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, lootGenerator: LootGenerator, eventOutputHolder: EventOutputHolder, httpResponseUtil: HttpResponseUtil);
|
constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, itemHelper: ItemHelper, randomUtil: RandomUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, questHelper: QuestHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, lootGenerator: LootGenerator, eventOutputHolder: EventOutputHolder, httpResponseUtil: HttpResponseUtil);
|
||||||
/**
|
/**
|
||||||
* Move Item
|
* Move Item
|
||||||
* change location of item with parentId and slotId
|
* change location of item with parentId and slotId
|
||||||
@ -99,11 +100,6 @@ export declare class InventoryController {
|
|||||||
* its used for "reload" if you have weapon in hands and magazine is somewhere else in rig or backpack in equipment
|
* its used for "reload" if you have weapon in hands and magazine is somewhere else in rig or backpack in equipment
|
||||||
*/
|
*/
|
||||||
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
|
||||||
* Give Item
|
|
||||||
* its used for "add" item like gifts etc.
|
|
||||||
*/
|
|
||||||
addItem(pmcData: IPmcData, body: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: any, foundInRaid?: boolean, addUpd?: any): IItemEventRouterResponse;
|
|
||||||
/**
|
/**
|
||||||
* Handles folding of Weapons
|
* Handles folding of Weapons
|
||||||
*/
|
*/
|
||||||
@ -187,6 +183,7 @@ export declare class InventoryController {
|
|||||||
*/
|
*/
|
||||||
protected sanitiseMapMarkerText(mapNoteText: string): string;
|
protected sanitiseMapMarkerText(mapNoteText: string): string;
|
||||||
/**
|
/**
|
||||||
|
* Handle OpenRandomLootContainer event
|
||||||
* Handle event fired when a container is unpacked (currently only the halloween pumpkin)
|
* Handle event fired when a container is unpacked (currently only the halloween pumpkin)
|
||||||
* @param pmcData Profile data
|
* @param pmcData Profile data
|
||||||
* @param body open loot container request data
|
* @param body open loot container request data
|
||||||
|
@ -3,9 +3,9 @@ import { LootGenerator } from "../generators/LootGenerator";
|
|||||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
||||||
import { ILocationBase } from "../models/eft/common/ILocationBase";
|
import { ILocationBase } from "../models/eft/common/ILocationBase";
|
||||||
import { ILocationsGenerateAllResponse } from "../models/eft/common/ILocationsSourceDestinationBase";
|
import { ILocationsGenerateAllResponse } from "../models/eft/common/ILocationsSourceDestinationBase";
|
||||||
|
import { IAirdropLootResult } from "../models/eft/location/IAirdropLootResult";
|
||||||
import { AirdropTypeEnum } from "../models/enums/AirdropType";
|
import { AirdropTypeEnum } from "../models/enums/AirdropType";
|
||||||
import { IAirdropConfig } from "../models/spt/config/IAirdropConfig";
|
import { IAirdropConfig } from "../models/spt/config/IAirdropConfig";
|
||||||
import { LootItem } from "../models/spt/services/LootItem";
|
|
||||||
import { LootRequest } from "../models/spt/services/LootRequest";
|
import { LootRequest } from "../models/spt/services/LootRequest";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
import { ConfigServer } from "../servers/ConfigServer";
|
||||||
@ -27,19 +27,33 @@ export declare class LocationController {
|
|||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected airdropConfig: IAirdropConfig;
|
protected airdropConfig: IAirdropConfig;
|
||||||
constructor(jsonUtil: JsonUtil, hashUtil: HashUtil, weightedRandomHelper: WeightedRandomHelper, logger: ILogger, locationGenerator: LocationGenerator, localisationService: LocalisationService, lootGenerator: LootGenerator, databaseServer: DatabaseServer, timeUtil: TimeUtil, configServer: ConfigServer);
|
constructor(jsonUtil: JsonUtil, hashUtil: HashUtil, weightedRandomHelper: WeightedRandomHelper, logger: ILogger, locationGenerator: LocationGenerator, localisationService: LocalisationService, lootGenerator: LootGenerator, databaseServer: DatabaseServer, timeUtil: TimeUtil, configServer: ConfigServer);
|
||||||
get(location: string): ILocationBase;
|
|
||||||
generate(name: string): ILocationBase;
|
|
||||||
/**
|
/**
|
||||||
|
* Handle client/location/getLocalloot
|
||||||
|
* Get a location (map) with generated loot data
|
||||||
|
* @param location Map to generate loot for
|
||||||
|
* @returns ILocationBase
|
||||||
|
*/
|
||||||
|
get(location: string): ILocationBase;
|
||||||
|
/**
|
||||||
|
* Generate a maps base location without loot
|
||||||
|
* @param name Map name
|
||||||
|
* @returns ILocationBase
|
||||||
|
*/
|
||||||
|
protected generate(name: string): ILocationBase;
|
||||||
|
/**
|
||||||
|
* Handle client/locations
|
||||||
* Get all maps base location properties without loot data
|
* Get all maps base location properties without loot data
|
||||||
|
* @param sessionId Players Id
|
||||||
* @returns ILocationsGenerateAllResponse
|
* @returns ILocationsGenerateAllResponse
|
||||||
*/
|
*/
|
||||||
generateAll(): ILocationsGenerateAllResponse;
|
generateAll(sessionId: string): ILocationsGenerateAllResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/location/getAirdropLoot
|
||||||
* Get loot for an airdop container
|
* Get loot for an airdop container
|
||||||
* Generates it randomly based on config/airdrop.json values
|
* Generates it randomly based on config/airdrop.json values
|
||||||
* @returns Array of LootItem objects
|
* @returns Array of LootItem objects
|
||||||
*/
|
*/
|
||||||
getAirdropLoot(): LootItem[];
|
getAirdropLoot(): IAirdropLootResult;
|
||||||
/**
|
/**
|
||||||
* Randomly pick a type of airdrop loot using weighted values from config
|
* Randomly pick a type of airdrop loot using weighted values from config
|
||||||
* @returns airdrop type value
|
* @returns airdrop type value
|
||||||
|
@ -35,15 +35,20 @@ export declare class MatchController {
|
|||||||
protected botConfig: IBotConfig;
|
protected botConfig: IBotConfig;
|
||||||
constructor(logger: ILogger, saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, botLootCacheService: BotLootCacheService, configServer: ConfigServer, profileSnapshotService: ProfileSnapshotService, botGenerationCacheService: BotGenerationCacheService, applicationContext: ApplicationContext);
|
constructor(logger: ILogger, saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, botLootCacheService: BotLootCacheService, configServer: ConfigServer, profileSnapshotService: ProfileSnapshotService, botGenerationCacheService: BotGenerationCacheService, applicationContext: ApplicationContext);
|
||||||
getEnabled(): boolean;
|
getEnabled(): boolean;
|
||||||
|
/** Handle raid/profile/list */
|
||||||
getProfile(info: IGetProfileRequestData): IPmcData[];
|
getProfile(info: IGetProfileRequestData): IPmcData[];
|
||||||
|
/** Handle client/match/group/create */
|
||||||
createGroup(sessionID: string, info: ICreateGroupRequestData): any;
|
createGroup(sessionID: string, info: ICreateGroupRequestData): any;
|
||||||
|
/** Handle client/match/group/delete */
|
||||||
deleteGroup(info: any): void;
|
deleteGroup(info: any): void;
|
||||||
|
/** Handle match/group/start_game */
|
||||||
joinMatch(info: IJoinMatchRequestData, sessionId: string): IJoinMatchResult;
|
joinMatch(info: IJoinMatchRequestData, sessionId: string): IJoinMatchResult;
|
||||||
|
/** Handle client/match/group/status */
|
||||||
getGroupStatus(info: IGetGroupStatusRequestData): any;
|
getGroupStatus(info: IGetGroupStatusRequestData): any;
|
||||||
/**
|
/**
|
||||||
* Handle /client/raid/configuration
|
* Handle /client/raid/configuration
|
||||||
* @param request
|
* @param request Raid config request
|
||||||
* @param sessionID
|
* @param sessionID Session id
|
||||||
*/
|
*/
|
||||||
startOfflineRaid(request: IGetRaidConfigurationRequestData, sessionID: string): void;
|
startOfflineRaid(request: IGetRaidConfigurationRequestData, sessionID: string): void;
|
||||||
/**
|
/**
|
||||||
@ -52,9 +57,10 @@ export declare class MatchController {
|
|||||||
* @returns bot difficulty
|
* @returns bot difficulty
|
||||||
*/
|
*/
|
||||||
protected convertDifficultyDropdownIntoBotDifficulty(botDifficulty: string): string;
|
protected convertDifficultyDropdownIntoBotDifficulty(botDifficulty: string): string;
|
||||||
|
/** Handle client/match/offline/end */
|
||||||
endOfflineRaid(info: IEndOfflineRaidRequestData, sessionId: string): void;
|
endOfflineRaid(info: IEndOfflineRaidRequestData, sessionId: string): void;
|
||||||
/**
|
/**
|
||||||
* Is extract by car
|
* Was extract by car
|
||||||
* @param extractName name of extract
|
* @param extractName name of extract
|
||||||
* @returns true if car extract
|
* @returns true if car extract
|
||||||
*/
|
*/
|
||||||
|
@ -18,5 +18,6 @@ export declare class NotifierController {
|
|||||||
*/
|
*/
|
||||||
notifyAsync(sessionID: string): Promise<unknown>;
|
notifyAsync(sessionID: string): Promise<unknown>;
|
||||||
getServer(sessionID: string): string;
|
getServer(sessionID: string): string;
|
||||||
|
/** Handle client/notifier/channel/create */
|
||||||
getChannel(sessionID: string): INotifierChannel;
|
getChannel(sessionID: string): INotifierChannel;
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,10 @@ export declare class PresetBuildController {
|
|||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected saveServer: SaveServer;
|
protected saveServer: SaveServer;
|
||||||
constructor(hashUtil: HashUtil, eventOutputHolder: EventOutputHolder, itemHelper: ItemHelper, saveServer: SaveServer);
|
constructor(hashUtil: HashUtil, eventOutputHolder: EventOutputHolder, itemHelper: ItemHelper, saveServer: SaveServer);
|
||||||
|
/** Handle client/handbook/builds/my/list */
|
||||||
getUserBuilds(sessionID: string): WeaponBuild[];
|
getUserBuilds(sessionID: string): WeaponBuild[];
|
||||||
|
/** Handle SaveBuild event */
|
||||||
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RemoveBuild event*/
|
||||||
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -14,40 +14,88 @@ import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateR
|
|||||||
import { ISearchFriendRequestData } from "../models/eft/profile/ISearchFriendRequestData";
|
import { ISearchFriendRequestData } from "../models/eft/profile/ISearchFriendRequestData";
|
||||||
import { ISearchFriendResponse } from "../models/eft/profile/ISearchFriendResponse";
|
import { ISearchFriendResponse } from "../models/eft/profile/ISearchFriendResponse";
|
||||||
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
||||||
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { EventOutputHolder } from "../routers/EventOutputHolder";
|
import { EventOutputHolder } from "../routers/EventOutputHolder";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
import { SaveServer } from "../servers/SaveServer";
|
||||||
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
|
import { MailSendService } from "../services/MailSendService";
|
||||||
import { ProfileFixerService } from "../services/ProfileFixerService";
|
import { ProfileFixerService } from "../services/ProfileFixerService";
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
import { HashUtil } from "../utils/HashUtil";
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
export declare class ProfileController {
|
export declare class ProfileController {
|
||||||
|
protected logger: ILogger;
|
||||||
protected hashUtil: HashUtil;
|
protected hashUtil: HashUtil;
|
||||||
protected timeUtil: TimeUtil;
|
protected timeUtil: TimeUtil;
|
||||||
protected saveServer: SaveServer;
|
protected saveServer: SaveServer;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected profileFixerService: ProfileFixerService;
|
protected profileFixerService: ProfileFixerService;
|
||||||
|
protected localisationService: LocalisationService;
|
||||||
|
protected mailSendService: MailSendService;
|
||||||
protected playerScavGenerator: PlayerScavGenerator;
|
protected playerScavGenerator: PlayerScavGenerator;
|
||||||
protected eventOutputHolder: EventOutputHolder;
|
protected eventOutputHolder: EventOutputHolder;
|
||||||
protected traderHelper: TraderHelper;
|
protected traderHelper: TraderHelper;
|
||||||
protected dialogueHelper: DialogueHelper;
|
protected dialogueHelper: DialogueHelper;
|
||||||
protected questHelper: QuestHelper;
|
protected questHelper: QuestHelper;
|
||||||
protected profileHelper: ProfileHelper;
|
protected profileHelper: ProfileHelper;
|
||||||
constructor(hashUtil: HashUtil, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, itemHelper: ItemHelper, profileFixerService: ProfileFixerService, playerScavGenerator: PlayerScavGenerator, eventOutputHolder: EventOutputHolder, traderHelper: TraderHelper, dialogueHelper: DialogueHelper, questHelper: QuestHelper, profileHelper: ProfileHelper);
|
constructor(logger: ILogger, hashUtil: HashUtil, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, itemHelper: ItemHelper, profileFixerService: ProfileFixerService, localisationService: LocalisationService, mailSendService: MailSendService, playerScavGenerator: PlayerScavGenerator, eventOutputHolder: EventOutputHolder, traderHelper: TraderHelper, dialogueHelper: DialogueHelper, questHelper: QuestHelper, profileHelper: ProfileHelper);
|
||||||
|
/**
|
||||||
|
* Handle /launcher/profiles
|
||||||
|
*/
|
||||||
getMiniProfiles(): IMiniProfile[];
|
getMiniProfiles(): IMiniProfile[];
|
||||||
|
/**
|
||||||
|
* Handle launcher/profile/info
|
||||||
|
*/
|
||||||
getMiniProfile(sessionID: string): any;
|
getMiniProfile(sessionID: string): any;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/list
|
||||||
|
*/
|
||||||
getCompleteProfile(sessionID: string): IPmcData[];
|
getCompleteProfile(sessionID: string): IPmcData[];
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/create
|
||||||
|
*/
|
||||||
createProfile(info: IProfileCreateRequestData, sessionID: string): void;
|
createProfile(info: IProfileCreateRequestData, sessionID: string): void;
|
||||||
|
/**
|
||||||
|
* Delete a profile
|
||||||
|
* @param sessionID Id of profile to delete
|
||||||
|
*/
|
||||||
|
protected deleteProfileBySessionId(sessionID: string): void;
|
||||||
|
/**
|
||||||
|
* Iterate over all quests in player profile, inspect rewards for the quests current state (accepted/completed)
|
||||||
|
* and send rewards to them in mail
|
||||||
|
* @param profileDetails Player profile
|
||||||
|
* @param sessionID Session id
|
||||||
|
* @param response Event router response
|
||||||
|
*/
|
||||||
protected givePlayerStartingQuestRewards(profileDetails: IAkiProfile, sessionID: string, response: IItemEventRouterResponse): void;
|
protected givePlayerStartingQuestRewards(profileDetails: IAkiProfile, sessionID: string, response: IItemEventRouterResponse): void;
|
||||||
|
/**
|
||||||
|
* For each trader reset their state to what a level 1 player would see
|
||||||
|
* @param sessionID Session id of profile to reset
|
||||||
|
*/
|
||||||
|
protected resetAllTradersInProfile(sessionID: string): void;
|
||||||
/**
|
/**
|
||||||
* Generate a player scav object
|
* Generate a player scav object
|
||||||
* pmc profile MUST exist first before pscav can be generated
|
* PMC profile MUST exist first before pscav can be generated
|
||||||
* @param sessionID
|
* @param sessionID
|
||||||
* @returns IPmcData object
|
* @returns IPmcData object
|
||||||
*/
|
*/
|
||||||
generatePlayerScav(sessionID: string): IPmcData;
|
generatePlayerScav(sessionID: string): IPmcData;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/nickname/validate
|
||||||
|
*/
|
||||||
validateNickname(info: IValidateNicknameRequestData, sessionID: string): string;
|
validateNickname(info: IValidateNicknameRequestData, sessionID: string): string;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/nickname/change event
|
||||||
|
* Client allows player to adjust their profile name
|
||||||
|
*/
|
||||||
changeNickname(info: IProfileChangeNicknameRequestData, sessionID: string): string;
|
changeNickname(info: IProfileChangeNicknameRequestData, sessionID: string): string;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/voice/change event
|
||||||
|
*/
|
||||||
changeVoice(info: IProfileChangeVoiceRequestData, sessionID: string): void;
|
changeVoice(info: IProfileChangeVoiceRequestData, sessionID: string): void;
|
||||||
|
/**
|
||||||
|
* Handle client/game/profile/search
|
||||||
|
*/
|
||||||
getFriends(info: ISearchFriendRequestData, sessionID: string): ISearchFriendResponse[];
|
getFriends(info: ISearchFriendRequestData, sessionID: string): ISearchFriendResponse[];
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper";
|
|||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
import { ProfileHelper } from "../helpers/ProfileHelper";
|
||||||
import { QuestConditionHelper } from "../helpers/QuestConditionHelper";
|
import { QuestConditionHelper } from "../helpers/QuestConditionHelper";
|
||||||
import { QuestHelper } from "../helpers/QuestHelper";
|
import { QuestHelper } from "../helpers/QuestHelper";
|
||||||
|
import { TraderHelper } from "../helpers/TraderHelper";
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { AvailableForConditions, IQuest, Reward } from "../models/eft/common/tables/IQuest";
|
import { AvailableForConditions, IQuest, Reward } from "../models/eft/common/tables/IQuest";
|
||||||
@ -18,7 +19,9 @@ import { ConfigServer } from "../servers/ConfigServer";
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { LocaleService } from "../services/LocaleService";
|
import { LocaleService } from "../services/LocaleService";
|
||||||
import { LocalisationService } from "../services/LocalisationService";
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
|
import { MailSendService } from "../services/MailSendService";
|
||||||
import { PlayerService } from "../services/PlayerService";
|
import { PlayerService } from "../services/PlayerService";
|
||||||
|
import { SeasonalEventService } from "../services/SeasonalEventService";
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
export declare class QuestController {
|
export declare class QuestController {
|
||||||
@ -29,22 +32,39 @@ export declare class QuestController {
|
|||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected dialogueHelper: DialogueHelper;
|
protected dialogueHelper: DialogueHelper;
|
||||||
|
protected mailSendService: MailSendService;
|
||||||
protected profileHelper: ProfileHelper;
|
protected profileHelper: ProfileHelper;
|
||||||
|
protected traderHelper: TraderHelper;
|
||||||
protected questHelper: QuestHelper;
|
protected questHelper: QuestHelper;
|
||||||
protected questConditionHelper: QuestConditionHelper;
|
protected questConditionHelper: QuestConditionHelper;
|
||||||
protected playerService: PlayerService;
|
protected playerService: PlayerService;
|
||||||
protected localeService: LocaleService;
|
protected localeService: LocaleService;
|
||||||
|
protected seasonalEventService: SeasonalEventService;
|
||||||
protected localisationService: LocalisationService;
|
protected localisationService: LocalisationService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected questConfig: IQuestConfig;
|
protected questConfig: IQuestConfig;
|
||||||
constructor(logger: ILogger, timeUtil: TimeUtil, httpResponseUtil: HttpResponseUtil, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, itemHelper: ItemHelper, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, questHelper: QuestHelper, questConditionHelper: QuestConditionHelper, playerService: PlayerService, localeService: LocaleService, localisationService: LocalisationService, configServer: ConfigServer);
|
constructor(logger: ILogger, timeUtil: TimeUtil, httpResponseUtil: HttpResponseUtil, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, itemHelper: ItemHelper, dialogueHelper: DialogueHelper, mailSendService: MailSendService, profileHelper: ProfileHelper, traderHelper: TraderHelper, questHelper: QuestHelper, questConditionHelper: QuestConditionHelper, playerService: PlayerService, localeService: LocaleService, seasonalEventService: SeasonalEventService, localisationService: LocalisationService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
|
* Handle client/quest/list
|
||||||
* Get all quests visible to player
|
* Get all quests visible to player
|
||||||
* Exclude quests with incomplete preconditions (level/loyalty)
|
* Exclude quests with incomplete preconditions (level/loyalty)
|
||||||
* @param sessionID session id
|
* @param sessionID session id
|
||||||
* @returns array of IQuest
|
* @returns array of IQuest
|
||||||
*/
|
*/
|
||||||
getClientQuests(sessionID: string): IQuest[];
|
getClientQuests(sessionID: string): IQuest[];
|
||||||
|
/**
|
||||||
|
* Does a provided quest have a level requirement equal to or below defined level
|
||||||
|
* @param quest Quest to check
|
||||||
|
* @param playerLevel level of player to test against quest
|
||||||
|
* @returns true if quest can be seen/accepted by player of defined level
|
||||||
|
*/
|
||||||
|
protected playerLevelFulfillsQuestRequrement(quest: IQuest, playerLevel: number): boolean;
|
||||||
|
/**
|
||||||
|
* Should a quest be shown to the player in trader quest screen
|
||||||
|
* @param questId Quest to check
|
||||||
|
* @returns true = show to player
|
||||||
|
*/
|
||||||
|
protected showEventQuestToPlayer(questId: string): boolean;
|
||||||
/**
|
/**
|
||||||
* Is the quest for the opposite side the player is on
|
* Is the quest for the opposite side the player is on
|
||||||
* @param playerSide Player side (usec/bear)
|
* @param playerSide Player side (usec/bear)
|
||||||
@ -52,6 +72,7 @@ export declare class QuestController {
|
|||||||
*/
|
*/
|
||||||
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
|
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
|
||||||
/**
|
/**
|
||||||
|
* Handle QuestAccept event
|
||||||
* Handle the client accepting a quest and starting it
|
* Handle the client accepting a quest and starting it
|
||||||
* Send starting rewards if any to player and
|
* Send starting rewards if any to player and
|
||||||
* Send start notification if any to player
|
* Send start notification if any to player
|
||||||
@ -79,9 +100,10 @@ export declare class QuestController {
|
|||||||
*/
|
*/
|
||||||
protected getRepeatableQuestFromProfile(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData): IRepeatableQuest;
|
protected getRepeatableQuestFromProfile(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData): IRepeatableQuest;
|
||||||
/**
|
/**
|
||||||
|
* Handle QuestComplete event
|
||||||
* Update completed quest in profile
|
* Update completed quest in profile
|
||||||
* Add newly unlocked quests to profile
|
* Add newly unlocked quests to profile
|
||||||
* Also recalculate thier level due to exp rewards
|
* Also recalculate their level due to exp rewards
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param body Completed quest request
|
* @param body Completed quest request
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
@ -110,7 +132,7 @@ export declare class QuestController {
|
|||||||
*/
|
*/
|
||||||
protected getQuestsFailedByCompletingQuest(completedQuestId: string): IQuest[];
|
protected getQuestsFailedByCompletingQuest(completedQuestId: string): IQuest[];
|
||||||
/**
|
/**
|
||||||
* Fail the quests provided
|
* Fail the provided quests
|
||||||
* Update quest in profile, otherwise add fresh quest object with failed status
|
* Update quest in profile, otherwise add fresh quest object with failed status
|
||||||
* @param sessionID session id
|
* @param sessionID session id
|
||||||
* @param pmcData player profile
|
* @param pmcData player profile
|
||||||
@ -118,7 +140,7 @@ export declare class QuestController {
|
|||||||
*/
|
*/
|
||||||
protected failQuests(sessionID: string, pmcData: IPmcData, questsToFail: IQuest[]): void;
|
protected failQuests(sessionID: string, pmcData: IPmcData, questsToFail: IQuest[]): void;
|
||||||
/**
|
/**
|
||||||
*
|
* Handle QuestHandover event
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param handoverQuestRequest handover item request
|
* @param handoverQuestRequest handover item request
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
|
@ -120,7 +120,7 @@ export declare class RagfairController {
|
|||||||
/**
|
/**
|
||||||
* List item(s) on flea for sale
|
* List item(s) on flea for sale
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param offerRequest Flea list creatio offer
|
* @param offerRequest Flea list creation offer
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
* @returns IItemEventRouterResponse
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
|
@ -23,6 +23,7 @@ export declare class RepairController {
|
|||||||
protected repairConfig: IRepairConfig;
|
protected repairConfig: IRepairConfig;
|
||||||
constructor(logger: ILogger, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, questHelper: QuestHelper, traderHelper: TraderHelper, paymentService: PaymentService, repairHelper: RepairHelper, repairService: RepairService);
|
constructor(logger: ILogger, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, questHelper: QuestHelper, traderHelper: TraderHelper, paymentService: PaymentService, repairHelper: RepairHelper, repairService: RepairService);
|
||||||
/**
|
/**
|
||||||
|
* Handle TraderRepair event
|
||||||
* Repair with trader
|
* Repair with trader
|
||||||
* @param sessionID session id
|
* @param sessionID session id
|
||||||
* @param body endpoint request data
|
* @param body endpoint request data
|
||||||
@ -31,6 +32,7 @@ export declare class RepairController {
|
|||||||
*/
|
*/
|
||||||
traderRepair(sessionID: string, body: ITraderRepairActionDataRequest, pmcData: IPmcData): IItemEventRouterResponse;
|
traderRepair(sessionID: string, body: ITraderRepairActionDataRequest, pmcData: IPmcData): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
|
* Handle Repair event
|
||||||
* Repair with repair kit
|
* Repair with repair kit
|
||||||
* @param sessionID session id
|
* @param sessionID session id
|
||||||
* @param body endpoint request data
|
* @param body endpoint request data
|
||||||
|
@ -77,7 +77,7 @@ export declare class RepeatableQuestController {
|
|||||||
protected questConfig: IQuestConfig;
|
protected questConfig: IQuestConfig;
|
||||||
constructor(timeUtil: TimeUtil, logger: ILogger, randomUtil: RandomUtil, httpResponse: HttpResponseUtil, mathUtil: MathUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, profileFixerService: ProfileFixerService, handbookHelper: HandbookHelper, ragfairServerHelper: RagfairServerHelper, eventOutputHolder: EventOutputHolder, localisationService: LocalisationService, paymentService: PaymentService, objectId: ObjectId, itemFilterService: ItemFilterService, configServer: ConfigServer);
|
constructor(timeUtil: TimeUtil, logger: ILogger, randomUtil: RandomUtil, httpResponse: HttpResponseUtil, mathUtil: MathUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, profileFixerService: ProfileFixerService, handbookHelper: HandbookHelper, ragfairServerHelper: RagfairServerHelper, eventOutputHolder: EventOutputHolder, localisationService: LocalisationService, paymentService: PaymentService, objectId: ObjectId, itemFilterService: ItemFilterService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* This is the method reached by the /client/repeatalbeQuests/activityPeriods endpoint
|
* Handle client/repeatalbeQuests/activityPeriods
|
||||||
* Returns an array of objects in the format of repeatable quests to the client.
|
* Returns an array of objects in the format of repeatable quests to the client.
|
||||||
* repeatableQuestObject = {
|
* repeatableQuestObject = {
|
||||||
* id: Unique Id,
|
* id: Unique Id,
|
||||||
@ -113,7 +113,7 @@ export declare class RepeatableQuestController {
|
|||||||
* This method is called by GetClientRepeatableQuests and creates one element of quest type format (see assets/database/templates/repeatableQuests.json).
|
* This method is called by GetClientRepeatableQuests and creates one element of quest type format (see assets/database/templates/repeatableQuests.json).
|
||||||
* It randomly draws a quest type (currently Elimination, Completion or Exploration) as well as a trader who is providing the quest
|
* It randomly draws a quest type (currently Elimination, Completion or Exploration) as well as a trader who is providing the quest
|
||||||
*/
|
*/
|
||||||
generateRepeatableQuest(pmcLevel: number, pmcTraderInfo: Record<string, TraderInfo>, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IRepeatableQuest;
|
protected generateRepeatableQuest(pmcLevel: number, pmcTraderInfo: Record<string, TraderInfo>, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IRepeatableQuest;
|
||||||
/**
|
/**
|
||||||
* Just for debug reasons. Draws dailies a random assort of dailies extracted from dumps
|
* Just for debug reasons. Draws dailies a random assort of dailies extracted from dumps
|
||||||
*/
|
*/
|
||||||
@ -128,7 +128,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @returns {object} a object which contains the base elements for repeatable quests of the requests type
|
* @returns {object} a object which contains the base elements for repeatable quests of the requests type
|
||||||
* (needs to be filled with reward and conditions by called to make a valid quest)
|
* (needs to be filled with reward and conditions by called to make a valid quest)
|
||||||
*/
|
*/
|
||||||
generateRepeatableTemplate(type: string, traderId: string, side: string): IRepeatableQuest;
|
protected generateRepeatableTemplate(type: string, traderId: string, side: string): IRepeatableQuest;
|
||||||
/**
|
/**
|
||||||
* Generates a valid Exploration quest
|
* Generates a valid Exploration quest
|
||||||
*
|
*
|
||||||
@ -138,7 +138,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
||||||
* @returns {object} object of quest type format for "Exploration" (see assets/database/templates/repeatableQuests.json)
|
* @returns {object} object of quest type format for "Exploration" (see assets/database/templates/repeatableQuests.json)
|
||||||
*/
|
*/
|
||||||
generateExplorationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IExploration;
|
protected generateExplorationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IExploration;
|
||||||
/**
|
/**
|
||||||
* Generates a valid Completion quest
|
* Generates a valid Completion quest
|
||||||
*
|
*
|
||||||
@ -147,7 +147,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
||||||
* @returns {object} object of quest type format for "Completion" (see assets/database/templates/repeatableQuests.json)
|
* @returns {object} object of quest type format for "Completion" (see assets/database/templates/repeatableQuests.json)
|
||||||
*/
|
*/
|
||||||
generateCompletionQuest(pmcLevel: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): ICompletion;
|
protected generateCompletionQuest(pmcLevel: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): ICompletion;
|
||||||
/**
|
/**
|
||||||
* Generates a valid Elimination quest
|
* Generates a valid Elimination quest
|
||||||
*
|
*
|
||||||
@ -157,7 +157,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
||||||
* @returns {object} object of quest type format for "Elimination" (see assets/database/templates/repeatableQuests.json)
|
* @returns {object} object of quest type format for "Elimination" (see assets/database/templates/repeatableQuests.json)
|
||||||
*/
|
*/
|
||||||
generateEliminationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IElimination;
|
protected generateEliminationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IElimination;
|
||||||
/**
|
/**
|
||||||
* Get the relevant elimination config based on the current players PMC level
|
* Get the relevant elimination config based on the current players PMC level
|
||||||
* @param pmcLevel Level of PMC character
|
* @param pmcLevel Level of PMC character
|
||||||
@ -178,7 +178,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {string} exit The exit name to generate the condition for
|
* @param {string} exit The exit name to generate the condition for
|
||||||
* @returns {object} Exit condition
|
* @returns {object} Exit condition
|
||||||
*/
|
*/
|
||||||
generateExplorationExitCondition(exit: Exit): IExplorationCondition;
|
protected generateExplorationExitCondition(exit: Exit): IExplorationCondition;
|
||||||
/**
|
/**
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
||||||
* This is a helper method for GenerateCompletionQuest to create a completion condition (of which a completion quest theoretically can have many)
|
* This is a helper method for GenerateCompletionQuest to create a completion condition (of which a completion quest theoretically can have many)
|
||||||
@ -187,7 +187,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {integer} value amount of items of this specific type to request
|
* @param {integer} value amount of items of this specific type to request
|
||||||
* @returns {object} object of "Completion"-condition
|
* @returns {object} object of "Completion"-condition
|
||||||
*/
|
*/
|
||||||
generateCompletionAvailableForFinish(targetItemId: string, value: number): ICompletionAvailableFor;
|
protected generateCompletionAvailableForFinish(targetItemId: string, value: number): ICompletionAvailableFor;
|
||||||
/**
|
/**
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
||||||
* This is a helper method for GenerateEliminationQuest to create a location condition.
|
* This is a helper method for GenerateEliminationQuest to create a location condition.
|
||||||
@ -195,7 +195,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {string} location the location on which to fulfill the elimination quest
|
* @param {string} location the location on which to fulfill the elimination quest
|
||||||
* @returns {object} object of "Elimination"-location-subcondition
|
* @returns {object} object of "Elimination"-location-subcondition
|
||||||
*/
|
*/
|
||||||
generateEliminationLocation(location: string[]): IEliminationCondition;
|
protected generateEliminationLocation(location: string[]): IEliminationCondition;
|
||||||
/**
|
/**
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
||||||
* This is a helper method for GenerateEliminationQuest to create a kill condition.
|
* This is a helper method for GenerateEliminationQuest to create a kill condition.
|
||||||
@ -205,7 +205,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {number} distance distance from which to kill (currently only >= supported)
|
* @param {number} distance distance from which to kill (currently only >= supported)
|
||||||
* @returns {object} object of "Elimination"-kill-subcondition
|
* @returns {object} object of "Elimination"-kill-subcondition
|
||||||
*/
|
*/
|
||||||
generateEliminationCondition(target: string, bodyPart: string[], distance: number): IEliminationCondition;
|
protected generateEliminationCondition(target: string, bodyPart: string[], distance: number): IEliminationCondition;
|
||||||
/**
|
/**
|
||||||
* Used to create a quest pool during each cycle of repeatable quest generation. The pool will be subsequently
|
* Used to create a quest pool during each cycle of repeatable quest generation. The pool will be subsequently
|
||||||
* narrowed down during quest generation to avoid duplicate quests. Like duplicate extractions or elimination quests
|
* narrowed down during quest generation to avoid duplicate quests. Like duplicate extractions or elimination quests
|
||||||
@ -214,7 +214,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param pmcLevel level of pmc generating quest pool
|
* @param pmcLevel level of pmc generating quest pool
|
||||||
* @returns IQuestTypePool
|
* @returns IQuestTypePool
|
||||||
*/
|
*/
|
||||||
generateQuestPool(repeatableConfig: IRepeatableQuestConfig, pmcLevel: number): IQuestTypePool;
|
protected generateQuestPool(repeatableConfig: IRepeatableQuestConfig, pmcLevel: number): IQuestTypePool;
|
||||||
/**
|
/**
|
||||||
* Generate the reward for a mission. A reward can consist of
|
* Generate the reward for a mission. A reward can consist of
|
||||||
* - Experience
|
* - Experience
|
||||||
@ -235,7 +235,7 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
||||||
* @returns {object} object of "Reward"-type that can be given for a repeatable mission
|
* @returns {object} object of "Reward"-type that can be given for a repeatable mission
|
||||||
*/
|
*/
|
||||||
generateReward(pmcLevel: number, difficulty: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): IRewards;
|
protected generateReward(pmcLevel: number, difficulty: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): IRewards;
|
||||||
/**
|
/**
|
||||||
* Helper to create a reward item structured as required by the client
|
* Helper to create a reward item structured as required by the client
|
||||||
*
|
*
|
||||||
@ -244,9 +244,12 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {integer} index all rewards will be appended to a list, for unkown reasons the client wants the index
|
* @param {integer} index all rewards will be appended to a list, for unkown reasons the client wants the index
|
||||||
* @returns {object} object of "Reward"-item-type
|
* @returns {object} object of "Reward"-item-type
|
||||||
*/
|
*/
|
||||||
generateRewardItem(tpl: string, value: number, index: number, preset?: any): IReward;
|
protected generateRewardItem(tpl: string, value: number, index: number, preset?: any): IReward;
|
||||||
debugLogRepeatableQuestIds(pmcData: IPmcData): void;
|
debugLogRepeatableQuestIds(pmcData: IPmcData): void;
|
||||||
probabilityObjectArray<K, V>(configArrayInput: ProbabilityObject<K, V>[]): ProbabilityObjectArray<K, V>;
|
protected probabilityObjectArray<K, V>(configArrayInput: ProbabilityObject<K, V>[]): ProbabilityObjectArray<K, V>;
|
||||||
|
/**
|
||||||
|
* Handle RepeatableQuestChange event
|
||||||
|
*/
|
||||||
changeRepeatableQuest(pmcData: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
changeRepeatableQuest(pmcData: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Picks rewardable items from items.json. This means they need to fit into the inventory and they shouldn't be keys (debatable)
|
* Picks rewardable items from items.json. This means they need to fit into the inventory and they shouldn't be keys (debatable)
|
||||||
@ -260,5 +263,5 @@ export declare class RepeatableQuestController {
|
|||||||
* @param {string} tpl template id of item to check
|
* @param {string} tpl template id of item to check
|
||||||
* @returns boolean: true if item is valid reward
|
* @returns boolean: true if item is valid reward
|
||||||
*/
|
*/
|
||||||
isValidRewardItem(tpl: string, repeatableQuestConfig: IRepeatableQuestConfig): boolean;
|
protected isValidRewardItem(tpl: string, repeatableQuestConfig: IRepeatableQuestConfig): boolean;
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,9 @@ declare class TradeController {
|
|||||||
protected ragfairConfig: IRagfairConfig;
|
protected ragfairConfig: IRagfairConfig;
|
||||||
protected traderConfig: ITraderConfig;
|
protected traderConfig: ITraderConfig;
|
||||||
constructor(logger: ILogger, eventOutputHolder: EventOutputHolder, tradeHelper: TradeHelper, itemHelper: ItemHelper, profileHelper: ProfileHelper, ragfairServer: RagfairServer, httpResponse: HttpResponseUtil, localisationService: LocalisationService, configServer: ConfigServer);
|
constructor(logger: ILogger, eventOutputHolder: EventOutputHolder, tradeHelper: TradeHelper, itemHelper: ItemHelper, profileHelper: ProfileHelper, ragfairServer: RagfairServer, httpResponse: HttpResponseUtil, localisationService: LocalisationService, configServer: ConfigServer);
|
||||||
|
/** Handle TradingConfirm event */
|
||||||
confirmTrading(pmcData: IPmcData, request: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
confirmTrading(pmcData: IPmcData, request: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RagFairBuyOffer event */
|
||||||
confirmRagfairTrading(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
confirmRagfairTrading(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||||
protected confirmTradingInternal(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string, foundInRaid?: boolean, upd?: Upd): IItemEventRouterResponse;
|
protected confirmTradingInternal(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string, foundInRaid?: boolean, upd?: Upd): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@ export declare class TraderController {
|
|||||||
*/
|
*/
|
||||||
update(): boolean;
|
update(): boolean;
|
||||||
/**
|
/**
|
||||||
|
* Handle client/trading/api/traderSettings
|
||||||
* Return an array of all traders
|
* Return an array of all traders
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
* @returns array if ITraderBase objects
|
* @returns array if ITraderBase objects
|
||||||
@ -47,6 +48,8 @@ export declare class TraderController {
|
|||||||
* @returns 1,-1 or 0
|
* @returns 1,-1 or 0
|
||||||
*/
|
*/
|
||||||
protected sortByTraderId(traderA: ITraderBase, traderB: ITraderBase): number;
|
protected sortByTraderId(traderA: ITraderBase, traderB: ITraderBase): number;
|
||||||
|
/** Handle client/trading/api/getTrader */
|
||||||
getTrader(sessionID: string, traderID: string): ITraderBase;
|
getTrader(sessionID: string, traderID: string): ITraderBase;
|
||||||
|
/** Handle client/trading/api/getTraderAssort */
|
||||||
getAssort(sessionId: string, traderId: string): ITraderAssort;
|
getAssort(sessionId: string, traderId: string): ITraderAssort;
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ export declare class WeatherController {
|
|||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected weatherConfig: IWeatherConfig;
|
protected weatherConfig: IWeatherConfig;
|
||||||
constructor(weatherGenerator: WeatherGenerator, logger: ILogger, configServer: ConfigServer);
|
constructor(weatherGenerator: WeatherGenerator, logger: ILogger, configServer: ConfigServer);
|
||||||
|
/** Handle client/weather */
|
||||||
generate(): IWeatherData;
|
generate(): IWeatherData;
|
||||||
/**
|
/**
|
||||||
* Get the current in-raid time (MUST HAVE PLAYER LOGGED INTO CLIENT TO WORK)
|
* Get the current in-raid time (MUST HAVE PLAYER LOGGED INTO CLIENT TO WORK)
|
||||||
|
@ -5,6 +5,8 @@ import { IWishlistActionData } from "../models/eft/wishlist/IWishlistActionData"
|
|||||||
export declare class WishlistController {
|
export declare class WishlistController {
|
||||||
protected eventOutputHolder: EventOutputHolder;
|
protected eventOutputHolder: EventOutputHolder;
|
||||||
constructor(eventOutputHolder: EventOutputHolder);
|
constructor(eventOutputHolder: EventOutputHolder);
|
||||||
|
/** Handle AddToWishList */
|
||||||
addToWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
addToWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
|
/** Handle RemoveFromWishList event */
|
||||||
removeFromWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
removeFromWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,10 @@ import { IPmcData } from "../models/eft/common/IPmcData";
|
|||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
||||||
export declare class Router {
|
export declare class Router {
|
||||||
private handledRoutes;
|
protected handledRoutes: HandledRoute[];
|
||||||
getTopLevelRoute(): string;
|
getTopLevelRoute(): string;
|
||||||
protected getHandledRoutes(): HandledRoute[];
|
protected getHandledRoutes(): HandledRoute[];
|
||||||
private getInternalHandledRoutes;
|
protected getInternalHandledRoutes(): HandledRoute[];
|
||||||
canHandle(url: string, partialMatch?: boolean): boolean;
|
canHandle(url: string, partialMatch?: boolean): boolean;
|
||||||
}
|
}
|
||||||
export declare class StaticRouter extends Router {
|
export declare class StaticRouter extends Router {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { MinMax } from "../models/common/MinMax";
|
import { MinMax } from "../models/common/MinMax";
|
||||||
import { IRandomisedBotLevelResult } from "../models/eft/bot/IRandomisedBotLevelResult";
|
import { IRandomisedBotLevelResult } from "../models/eft/bot/IRandomisedBotLevelResult";
|
||||||
import { ExpTable } from "../models/eft/common/IGlobals";
|
import { IExpTable } from "../models/eft/common/IGlobals";
|
||||||
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
||||||
import { BotGenerationDetails } from "../models/spt/bots/BotGenerationDetails";
|
import { BotGenerationDetails } from "../models/spt/bots/BotGenerationDetails";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
@ -25,5 +25,5 @@ export declare class BotLevelGenerator {
|
|||||||
* @param relativeDeltaMax max delta above player level to go
|
* @param relativeDeltaMax max delta above player level to go
|
||||||
* @returns highest level possible for bot
|
* @returns highest level possible for bot
|
||||||
*/
|
*/
|
||||||
protected getHighestRelativeBotLevel(playerLevel: number, relativeDeltaMax: number, levelDetails: MinMax, expTable: ExpTable[]): number;
|
protected getHighestRelativeBotLevel(playerLevel: number, relativeDeltaMax: number, levelDetails: MinMax, expTable: IExpTable[]): number;
|
||||||
}
|
}
|
||||||
|
@ -40,6 +40,12 @@ export declare class BotLootGenerator {
|
|||||||
* @param botLevel Level of bot
|
* @param botLevel Level of bot
|
||||||
*/
|
*/
|
||||||
generateLoot(sessionId: string, botJsonTemplate: IBotType, isPmc: boolean, botRole: string, botInventory: PmcInventory, botLevel: number): void;
|
generateLoot(sessionId: string, botJsonTemplate: IBotType, isPmc: boolean, botRole: string, botInventory: PmcInventory, botLevel: number): void;
|
||||||
|
/**
|
||||||
|
* Force healing items onto bot to ensure they can heal in-raid
|
||||||
|
* @param botInventory Inventory to add items to
|
||||||
|
* @param botRole Role of bot (sptBear/sptUsec)
|
||||||
|
*/
|
||||||
|
protected addForcedMedicalItemsToPmcSecure(botInventory: PmcInventory, botRole: string): void;
|
||||||
protected getRandomisedCount(min: number, max: number, nValue: number): number;
|
protected getRandomisedCount(min: number, max: number, nValue: number): number;
|
||||||
/**
|
/**
|
||||||
* Take random items from a pool and add to an inventory until totalItemCount or totalValueLimit is reached
|
* Take random items from a pool and add to an inventory until totalItemCount or totalValueLimit is reached
|
||||||
|
@ -67,6 +67,13 @@ export declare class BotWeaponGenerator {
|
|||||||
* @returns GenerateWeaponResult object
|
* @returns GenerateWeaponResult object
|
||||||
*/
|
*/
|
||||||
generateWeaponByTpl(sessionId: string, weaponTpl: string, equipmentSlot: string, botTemplateInventory: Inventory, weaponParentId: string, modChances: ModsChances, botRole: string, isPmc: boolean, botLevel: number): GenerateWeaponResult;
|
generateWeaponByTpl(sessionId: string, weaponTpl: string, equipmentSlot: string, botTemplateInventory: Inventory, weaponParentId: string, modChances: ModsChances, botRole: string, isPmc: boolean, botLevel: number): GenerateWeaponResult;
|
||||||
|
/**
|
||||||
|
* Insert a cartridge into a weapon
|
||||||
|
* @param weaponWithModsArray Weapon and mods
|
||||||
|
* @param ammoTpl Cartridge to add to weapon
|
||||||
|
* @param desiredSlotId name of slot, e.g. patron_in_weapon
|
||||||
|
*/
|
||||||
|
protected addCartridgeToChamber(weaponWithModsArray: Item[], ammoTpl: string, desiredSlotId: string): void;
|
||||||
/**
|
/**
|
||||||
* Create array with weapon base as only element and
|
* Create array with weapon base as only element and
|
||||||
* add additional properties based on weapon type
|
* add additional properties based on weapon type
|
||||||
|
@ -6,15 +6,17 @@ import { ILogger } from "../models/spt/utils/ILogger";
|
|||||||
import { ConfigServer } from "../servers/ConfigServer";
|
import { ConfigServer } from "../servers/ConfigServer";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { ItemFilterService } from "../services/ItemFilterService";
|
import { ItemFilterService } from "../services/ItemFilterService";
|
||||||
|
import { SeasonalEventService } from "../services/SeasonalEventService";
|
||||||
export declare class FenceBaseAssortGenerator {
|
export declare class FenceBaseAssortGenerator {
|
||||||
protected logger: ILogger;
|
protected logger: ILogger;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected handbookHelper: HandbookHelper;
|
protected handbookHelper: HandbookHelper;
|
||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected itemFilterService: ItemFilterService;
|
protected itemFilterService: ItemFilterService;
|
||||||
|
protected seasonalEventService: SeasonalEventService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected traderConfig: ITraderConfig;
|
protected traderConfig: ITraderConfig;
|
||||||
constructor(logger: ILogger, databaseServer: DatabaseServer, handbookHelper: HandbookHelper, itemHelper: ItemHelper, itemFilterService: ItemFilterService, configServer: ConfigServer);
|
constructor(logger: ILogger, databaseServer: DatabaseServer, handbookHelper: HandbookHelper, itemHelper: ItemHelper, itemFilterService: ItemFilterService, seasonalEventService: SeasonalEventService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Create base fence assorts dynamically and store in db
|
* Create base fence assorts dynamically and store in db
|
||||||
*/
|
*/
|
||||||
|
@ -2,7 +2,7 @@ import { InventoryHelper } from "../helpers/InventoryHelper";
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
import { ItemHelper } from "../helpers/ItemHelper";
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
import { PresetHelper } from "../helpers/PresetHelper";
|
||||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
||||||
import { Preset } from "../models/eft/common/IGlobals";
|
import { IPreset } from "../models/eft/common/IGlobals";
|
||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||||
import { AddItem } from "../models/eft/inventory/IAddItemRequestData";
|
import { AddItem } from "../models/eft/inventory/IAddItemRequestData";
|
||||||
import { ISealedAirdropContainerSettings, RewardDetails } from "../models/spt/config/IInventoryConfig";
|
import { ISealedAirdropContainerSettings, RewardDetails } from "../models/spt/config/IInventoryConfig";
|
||||||
@ -71,7 +71,7 @@ export declare class LootGenerator {
|
|||||||
* @param result array to add found preset to
|
* @param result array to add found preset to
|
||||||
* @returns true if preset was valid and added to pool
|
* @returns true if preset was valid and added to pool
|
||||||
*/
|
*/
|
||||||
protected findAndAddRandomPresetToLoot(globalDefaultPresets: [string, Preset][], itemTypeCounts: Record<string, {
|
protected findAndAddRandomPresetToLoot(globalDefaultPresets: [string, IPreset][], itemTypeCounts: Record<string, {
|
||||||
current: number;
|
current: number;
|
||||||
max: number;
|
max: number;
|
||||||
}>, itemBlacklist: string[], result: LootItem[]): boolean;
|
}>, itemBlacklist: string[], result: LootItem[]): boolean;
|
||||||
@ -95,7 +95,7 @@ export declare class LootGenerator {
|
|||||||
* @param chosenWeaponPreset The weapon preset given to player as reward
|
* @param chosenWeaponPreset The weapon preset given to player as reward
|
||||||
* @returns AddItem array
|
* @returns AddItem array
|
||||||
*/
|
*/
|
||||||
protected getSealedContainerWeaponModRewards(containerSettings: ISealedAirdropContainerSettings, linkedItemsToWeapon: ITemplateItem[], chosenWeaponPreset: Preset): AddItem[];
|
protected getSealedContainerWeaponModRewards(containerSettings: ISealedAirdropContainerSettings, linkedItemsToWeapon: ITemplateItem[], chosenWeaponPreset: IPreset): AddItem[];
|
||||||
/**
|
/**
|
||||||
* Handle event-related loot containers - currently just the halloween jack-o-lanterns that give food rewards
|
* Handle event-related loot containers - currently just the halloween jack-o-lanterns that give food rewards
|
||||||
* @param rewardContainerDetails
|
* @param rewardContainerDetails
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
import { ItemHelper } from "../helpers/ItemHelper";
|
||||||
import { Preset } from "../models/eft/common/IGlobals";
|
import { IPreset } from "../models/eft/common/IGlobals";
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { IRagfairConfig } from "../models/spt/config/IRagfairConfig";
|
import { IRagfairConfig } from "../models/spt/config/IRagfairConfig";
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
import { ConfigServer } from "../servers/ConfigServer";
|
||||||
@ -36,12 +36,12 @@ export declare class RagfairAssortGenerator {
|
|||||||
* Get presets from globals.json
|
* Get presets from globals.json
|
||||||
* @returns Preset object array
|
* @returns Preset object array
|
||||||
*/
|
*/
|
||||||
protected getPresets(): Preset[];
|
protected getPresets(): IPreset[];
|
||||||
/**
|
/**
|
||||||
* Get default presets from globals.json
|
* Get default presets from globals.json
|
||||||
* @returns Preset object array
|
* @returns Preset object array
|
||||||
*/
|
*/
|
||||||
protected getDefaultPresets(): Preset[];
|
protected getDefaultPresets(): IPreset[];
|
||||||
/**
|
/**
|
||||||
* Create a base assort item and return it with populated values + 999999 stack count + unlimited count = true
|
* Create a base assort item and return it with populated values + 999999 stack count + unlimited count = true
|
||||||
* @param tplId tplid to add to item
|
* @param tplId tplid to add to item
|
||||||
|
@ -48,7 +48,30 @@ export declare class RagfairOfferGenerator {
|
|||||||
price: number;
|
price: number;
|
||||||
}[];
|
}[];
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, handbookHelper: HandbookHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, localisationService: LocalisationService, paymentHelper: PaymentHelper, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer);
|
constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, handbookHelper: HandbookHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, localisationService: LocalisationService, paymentHelper: PaymentHelper, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer);
|
||||||
createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
/**
|
||||||
|
* Create a flea offer and store it in the Ragfair server offers array
|
||||||
|
* @param userID Owner of the offer
|
||||||
|
* @param time Time offer is listed at
|
||||||
|
* @param items Items in the offer
|
||||||
|
* @param barterScheme Cost of item (currency or barter)
|
||||||
|
* @param loyalLevel Loyalty level needed to buy item
|
||||||
|
* @param price Price of offer
|
||||||
|
* @param sellInOnePiece Set StackObjectsCount to 1
|
||||||
|
* @returns IRagfairOffer
|
||||||
|
*/
|
||||||
|
createFleaOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
||||||
|
/**
|
||||||
|
* Create an offer object ready to send to ragfairOfferService.addOffer()
|
||||||
|
* @param userID Owner of the offer
|
||||||
|
* @param time Time offer is listed at
|
||||||
|
* @param items Items in the offer
|
||||||
|
* @param barterScheme Cost of item (currency or barter)
|
||||||
|
* @param loyalLevel Loyalty level needed to buy item
|
||||||
|
* @param price Price of offer
|
||||||
|
* @param sellInOnePiece Set StackObjectsCount to 1
|
||||||
|
* @returns IRagfairOffer
|
||||||
|
*/
|
||||||
|
protected createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
||||||
/**
|
/**
|
||||||
* Calculate the offer price that's listed on the flea listing
|
* Calculate the offer price that's listed on the flea listing
|
||||||
* @param offerRequirements barter requirements for offer
|
* @param offerRequirements barter requirements for offer
|
||||||
@ -69,8 +92,18 @@ export declare class RagfairOfferGenerator {
|
|||||||
* @returns count of roubles
|
* @returns count of roubles
|
||||||
*/
|
*/
|
||||||
protected calculateRoublePrice(currencyCount: number, currencyType: string): number;
|
protected calculateRoublePrice(currencyCount: number, currencyType: string): number;
|
||||||
protected getTraderId(userID: string): string;
|
/**
|
||||||
protected getRating(userID: string): number;
|
* Check userId, if its a player, return their pmc _id, otherwise return userId parameter
|
||||||
|
* @param userId Users Id to check
|
||||||
|
* @returns Users Id
|
||||||
|
*/
|
||||||
|
protected getTraderId(userId: string): string;
|
||||||
|
/**
|
||||||
|
* Get a flea trading rating for the passed in user
|
||||||
|
* @param userId User to get flea rating of
|
||||||
|
* @returns Flea rating value
|
||||||
|
*/
|
||||||
|
protected getRating(userId: string): number;
|
||||||
/**
|
/**
|
||||||
* Is the offers user rating growing
|
* Is the offers user rating growing
|
||||||
* @param userID user to check rating of
|
* @param userID user to check rating of
|
||||||
@ -89,13 +122,20 @@ export declare class RagfairOfferGenerator {
|
|||||||
* @param expiredOffers optional, expired offers to regenerate
|
* @param expiredOffers optional, expired offers to regenerate
|
||||||
*/
|
*/
|
||||||
generateDynamicOffers(expiredOffers?: Item[]): Promise<void>;
|
generateDynamicOffers(expiredOffers?: Item[]): Promise<void>;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param assortItemIndex Index of assort item
|
||||||
|
* @param assortItemsToProcess Item array containing index
|
||||||
|
* @param expiredOffers Currently expired offers on flea
|
||||||
|
* @param config Ragfair dynamic config
|
||||||
|
*/
|
||||||
protected createOffersForItems(assortItemIndex: string, assortItemsToProcess: Item[], expiredOffers: Item[], config: Dynamic): Promise<void>;
|
protected createOffersForItems(assortItemIndex: string, assortItemsToProcess: Item[], expiredOffers: Item[], config: Dynamic): Promise<void>;
|
||||||
/**
|
/**
|
||||||
* Create one flea offer for a specific item
|
* Create one flea offer for a specific item
|
||||||
* @param items Item to create offer for
|
* @param items Item to create offer for
|
||||||
* @param isPreset Is item a weapon preset
|
* @param isPreset Is item a weapon preset
|
||||||
* @param itemDetails raw db item details
|
* @param itemDetails raw db item details
|
||||||
* @returns
|
* @returns Item array
|
||||||
*/
|
*/
|
||||||
protected createSingleOfferForItem(items: Item[], isPreset: boolean, itemDetails: [boolean, ITemplateItem]): Promise<Item[]>;
|
protected createSingleOfferForItem(items: Item[], isPreset: boolean, itemDetails: [boolean, ITemplateItem]): Promise<Item[]>;
|
||||||
/**
|
/**
|
||||||
@ -142,7 +182,7 @@ export declare class RagfairOfferGenerator {
|
|||||||
/**
|
/**
|
||||||
* Create a barter-based barter scheme, if not possible, fall back to making barter scheme currency based
|
* Create a barter-based barter scheme, if not possible, fall back to making barter scheme currency based
|
||||||
* @param offerItems Items for sale in offer
|
* @param offerItems Items for sale in offer
|
||||||
* @returns barter scheme
|
* @returns Barter scheme
|
||||||
*/
|
*/
|
||||||
protected createBarterRequirement(offerItems: Item[]): IBarterScheme[];
|
protected createBarterRequirement(offerItems: Item[]): IBarterScheme[];
|
||||||
/**
|
/**
|
||||||
@ -159,16 +199,4 @@ export declare class RagfairOfferGenerator {
|
|||||||
* @returns Barter scheme for offer
|
* @returns Barter scheme for offer
|
||||||
*/
|
*/
|
||||||
protected createCurrencyRequirement(offerItems: Item[]): IBarterScheme[];
|
protected createCurrencyRequirement(offerItems: Item[]): IBarterScheme[];
|
||||||
/**
|
|
||||||
* Create a flea offer and store it in the Ragfair server offers array
|
|
||||||
* @param userID owner of the offer
|
|
||||||
* @param time time offer is put up
|
|
||||||
* @param items items in the offer
|
|
||||||
* @param barterScheme cost of item (currency or barter)
|
|
||||||
* @param loyalLevel Loyalty level needed to buy item
|
|
||||||
* @param price price of offer
|
|
||||||
* @param sellInOnePiece
|
|
||||||
* @returns Ragfair offer
|
|
||||||
*/
|
|
||||||
createFleaOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
import { ItemHelper } from "../helpers/ItemHelper";
|
||||||
import { Product } from "../models/eft/common/tables/IBotBase";
|
import { Product } from "../models/eft/common/tables/IBotBase";
|
||||||
|
import { Upd } from "../models/eft/common/tables/IItem";
|
||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||||
import { IHideoutScavCase } from "../models/eft/hideout/IHideoutScavCase";
|
import { IHideoutScavCase } from "../models/eft/hideout/IHideoutScavCase";
|
||||||
import { IScavCaseConfig } from "../models/spt/config/IScavCaseConfig";
|
import { IScavCaseConfig } from "../models/spt/config/IScavCaseConfig";
|
||||||
@ -78,7 +79,7 @@ export declare class ScavCaseRewardGenerator {
|
|||||||
protected addStackCountToAmmoAndMoney(item: ITemplateItem, resultItem: {
|
protected addStackCountToAmmoAndMoney(item: ITemplateItem, resultItem: {
|
||||||
_id: string;
|
_id: string;
|
||||||
_tpl: string;
|
_tpl: string;
|
||||||
upd: any;
|
upd: Upd;
|
||||||
}, rarity: string): void;
|
}, rarity: string): void;
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -16,6 +16,11 @@ export declare class WeatherGenerator {
|
|||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected weatherConfig: IWeatherConfig;
|
protected weatherConfig: IWeatherConfig;
|
||||||
constructor(weightedRandomHelper: WeightedRandomHelper, logger: ILogger, randomUtil: RandomUtil, timeUtil: TimeUtil, applicationContext: ApplicationContext, configServer: ConfigServer);
|
constructor(weightedRandomHelper: WeightedRandomHelper, logger: ILogger, randomUtil: RandomUtil, timeUtil: TimeUtil, applicationContext: ApplicationContext, configServer: ConfigServer);
|
||||||
|
/**
|
||||||
|
* Get current + raid datetime and format into correct BSG format and return
|
||||||
|
* @param data Weather data
|
||||||
|
* @returns IWeatherData
|
||||||
|
*/
|
||||||
calculateGameTime(data: IWeatherData): IWeatherData;
|
calculateGameTime(data: IWeatherData): IWeatherData;
|
||||||
/**
|
/**
|
||||||
* Get server uptime seconds multiplied by a multiplier and add to current time as seconds
|
* Get server uptime seconds multiplied by a multiplier and add to current time as seconds
|
||||||
@ -33,7 +38,7 @@ export declare class WeatherGenerator {
|
|||||||
/**
|
/**
|
||||||
* Get current time formatted to fit BSGs requirement
|
* Get current time formatted to fit BSGs requirement
|
||||||
* @param date date to format into bsg style
|
* @param date date to format into bsg style
|
||||||
* @returns
|
* @returns Time formatted in BSG format
|
||||||
*/
|
*/
|
||||||
protected getBSGFormattedTime(date: Date): string;
|
protected getBSGFormattedTime(date: Date): string;
|
||||||
/**
|
/**
|
||||||
|
@ -14,12 +14,12 @@ export declare class AssortHelper {
|
|||||||
protected questHelper: QuestHelper;
|
protected questHelper: QuestHelper;
|
||||||
constructor(logger: ILogger, itemHelper: ItemHelper, databaseServer: DatabaseServer, localisationService: LocalisationService, questHelper: QuestHelper);
|
constructor(logger: ILogger, itemHelper: ItemHelper, databaseServer: DatabaseServer, localisationService: LocalisationService, questHelper: QuestHelper);
|
||||||
/**
|
/**
|
||||||
* Remove assorts from a trader that have not been unlocked yet
|
* Remove assorts from a trader that have not been unlocked yet (via player completing corrisponding quest)
|
||||||
* @param pmcProfile player profile
|
* @param pmcProfile Player profile
|
||||||
* @param traderId traders id the assort belongs to
|
* @param traderId Traders id the assort belongs to
|
||||||
* @param traderAssorts All assort items from same trader
|
* @param traderAssorts All assort items from same trader
|
||||||
* @param mergedQuestAssorts Dict of quest assort to quest id unlocks for all traders
|
* @param mergedQuestAssorts Dict of quest assort to quest id unlocks for all traders (key = started/failed/complete)
|
||||||
* @returns assort items minus locked quest assorts
|
* @returns Assort items minus locked quest assorts
|
||||||
*/
|
*/
|
||||||
stripLockedQuestAssort(pmcProfile: IPmcData, traderId: string, traderAssorts: ITraderAssort, mergedQuestAssorts: Record<string, Record<string, string>>, flea?: boolean): ITraderAssort;
|
stripLockedQuestAssort(pmcProfile: IPmcData, traderId: string, traderAssorts: ITraderAssort, mergedQuestAssorts: Record<string, Record<string, string>>, flea?: boolean): ITraderAssort;
|
||||||
/**
|
/**
|
||||||
|
@ -3,6 +3,7 @@ import { Inventory } from "../models/eft/common/tables/IBotBase";
|
|||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { Grid, ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
import { Grid, ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||||
import { EquipmentSlots } from "../models/enums/EquipmentSlots";
|
import { EquipmentSlots } from "../models/enums/EquipmentSlots";
|
||||||
|
import { ItemAddedResult } from "../models/enums/ItemAddedResult";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { LocalisationService } from "../services/LocalisationService";
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
@ -72,7 +73,7 @@ export declare class BotWeaponGeneratorHelper {
|
|||||||
* @param inventory Inventory to add item+children into
|
* @param inventory Inventory to add item+children into
|
||||||
* @returns a `boolean` indicating item was added
|
* @returns a `boolean` indicating item was added
|
||||||
*/
|
*/
|
||||||
addItemWithChildrenToEquipmentSlot(equipmentSlots: string[], parentId: string, parentTpl: string, itemWithChildren: Item[], inventory: Inventory): boolean;
|
addItemWithChildrenToEquipmentSlot(equipmentSlots: string[], parentId: string, parentTpl: string, itemWithChildren: Item[], inventory: Inventory): ItemAddedResult;
|
||||||
/**
|
/**
|
||||||
* is the provided item allowed inside a container
|
* is the provided item allowed inside a container
|
||||||
* @param slot location item wants to be placed in
|
* @param slot location item wants to be placed in
|
||||||
|
@ -6,7 +6,35 @@ export declare class FindSlotResult {
|
|||||||
constructor(success?: boolean, x?: any, y?: any, rotation?: boolean);
|
constructor(success?: boolean, x?: any, y?: any, rotation?: boolean);
|
||||||
}
|
}
|
||||||
export declare class ContainerHelper {
|
export declare class ContainerHelper {
|
||||||
protected locateSlot(container2D: number[][], containerX: number, containerY: number, x: number, y: number, itemW: number, itemH: number): boolean;
|
/**
|
||||||
|
* Finds a slot for an item in a given 2D container map
|
||||||
|
* @param container2D Array of container with slots filled/free
|
||||||
|
* @param itemWidth Width of item
|
||||||
|
* @param itemHeight Height of item
|
||||||
|
* @returns Location to place item in container
|
||||||
|
*/
|
||||||
findSlotForItem(container2D: number[][], itemWidth: number, itemHeight: number): FindSlotResult;
|
findSlotForItem(container2D: number[][], itemWidth: number, itemHeight: number): FindSlotResult;
|
||||||
|
/**
|
||||||
|
* Find a slot inside a container an item can be placed in
|
||||||
|
* @param container2D Container to find space in
|
||||||
|
* @param containerX Container x size
|
||||||
|
* @param containerY Container y size
|
||||||
|
* @param x ???
|
||||||
|
* @param y ???
|
||||||
|
* @param itemW Items width
|
||||||
|
* @param itemH Items height
|
||||||
|
* @returns True - slot found
|
||||||
|
*/
|
||||||
|
protected locateSlot(container2D: number[][], containerX: number, containerY: number, x: number, y: number, itemW: number, itemH: number): boolean;
|
||||||
|
/**
|
||||||
|
* Find a free slot for an item to be placed at
|
||||||
|
* @param container2D Container to palce item in
|
||||||
|
* @param x Container x size
|
||||||
|
* @param y Container y size
|
||||||
|
* @param itemW Items width
|
||||||
|
* @param itemH Items height
|
||||||
|
* @param rotate is item rotated
|
||||||
|
* @returns Location to place item
|
||||||
|
*/
|
||||||
fillContainerMapWithItem(container2D: number[][], x: number, y: number, itemW: number, itemH: number, rotate: boolean): number[][];
|
fillContainerMapWithItem(container2D: number[][], x: number, y: number, itemW: number, itemH: number, rotate: boolean): number[][];
|
||||||
}
|
}
|
||||||
|
@ -20,21 +20,13 @@ export declare class DialogueHelper {
|
|||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, saveServer: SaveServer, databaseServer: DatabaseServer, notifierHelper: NotifierHelper, notificationSendHelper: NotificationSendHelper, localisationService: LocalisationService, itemHelper: ItemHelper);
|
constructor(logger: ILogger, hashUtil: HashUtil, saveServer: SaveServer, databaseServer: DatabaseServer, notifierHelper: NotifierHelper, notificationSendHelper: NotificationSendHelper, localisationService: LocalisationService, itemHelper: ItemHelper);
|
||||||
/**
|
/**
|
||||||
* Create basic message context template
|
* @deprecated Use MailSendService.sendMessage() or helpers
|
||||||
* @param templateId
|
|
||||||
* @param messageType
|
|
||||||
* @param maxStoreTime
|
|
||||||
* @returns
|
|
||||||
*/
|
*/
|
||||||
createMessageContext(templateId: string, messageType: MessageType, maxStoreTime: number): MessageContent;
|
createMessageContext(templateId: string, messageType: MessageType, maxStoreTime?: any): MessageContent;
|
||||||
/**
|
/**
|
||||||
* Add a templated message to the dialogue.
|
* @deprecated Use MailSendService.sendMessage() or helpers
|
||||||
* @param dialogueID
|
|
||||||
* @param messageContent
|
|
||||||
* @param sessionID
|
|
||||||
* @param rewards
|
|
||||||
*/
|
*/
|
||||||
addDialogueMessage(dialogueID: string, messageContent: MessageContent, sessionID: string, rewards?: Item[]): void;
|
addDialogueMessage(dialogueID: string, messageContent: MessageContent, sessionID: string, rewards?: Item[], messageType?: MessageType): void;
|
||||||
/**
|
/**
|
||||||
* Get the preview contents of the last message in a dialogue.
|
* Get the preview contents of the last message in a dialogue.
|
||||||
* @param dialogue
|
* @param dialogue
|
||||||
|
@ -9,9 +9,35 @@ export declare class DurabilityLimitsHelper {
|
|||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected botConfig: IBotConfig;
|
protected botConfig: IBotConfig;
|
||||||
constructor(randomUtil: RandomUtil, botHelper: BotHelper, configServer: ConfigServer);
|
constructor(randomUtil: RandomUtil, botHelper: BotHelper, configServer: ConfigServer);
|
||||||
|
/**
|
||||||
|
* Get max durability for a weapon based on bot role
|
||||||
|
* @param itemTemplate UNUSED - Item to get durability for
|
||||||
|
* @param botRole Role of bot to get max durability for
|
||||||
|
* @returns Max durability of weapon
|
||||||
|
*/
|
||||||
getRandomizedMaxWeaponDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
getRandomizedMaxWeaponDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
||||||
|
/**
|
||||||
|
* Get max durability value for armor based on bot role
|
||||||
|
* @param itemTemplate Item to get max durability for
|
||||||
|
* @param botRole Role of bot to get max durability for
|
||||||
|
* @returns max durability
|
||||||
|
*/
|
||||||
getRandomizedMaxArmorDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
getRandomizedMaxArmorDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
||||||
|
/**
|
||||||
|
* Get randomised current weapon durability by bot role
|
||||||
|
* @param itemTemplate Unused - Item to get current durability of
|
||||||
|
* @param botRole Role of bot to get current durability for
|
||||||
|
* @param maxDurability Max durability of weapon
|
||||||
|
* @returns Current weapon durability
|
||||||
|
*/
|
||||||
getRandomizedWeaponDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
getRandomizedWeaponDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
||||||
|
/**
|
||||||
|
* Get randomised current armor durability by bot role
|
||||||
|
* @param itemTemplate Unused - Item to get current durability of
|
||||||
|
* @param botRole Role of bot to get current durability for
|
||||||
|
* @param maxDurability Max durability of armor
|
||||||
|
* @returns Current armor durability
|
||||||
|
*/
|
||||||
getRandomizedArmorDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
getRandomizedArmorDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
||||||
protected generateMaxWeaponDurability(botRole: string): number;
|
protected generateMaxWeaponDurability(botRole: string): number;
|
||||||
protected generateMaxPmcArmorDurability(itemMaxDurability: number): number;
|
protected generateMaxPmcArmorDurability(itemMaxDurability: number): number;
|
||||||
|
@ -14,6 +14,9 @@ export declare class HandbookHelper {
|
|||||||
protected lookupCacheGenerated: boolean;
|
protected lookupCacheGenerated: boolean;
|
||||||
protected handbookPriceCache: LookupCollection;
|
protected handbookPriceCache: LookupCollection;
|
||||||
constructor(databaseServer: DatabaseServer);
|
constructor(databaseServer: DatabaseServer);
|
||||||
|
/**
|
||||||
|
* Create an in-memory cache of all items with associated handbook price in handbookPriceCache class
|
||||||
|
*/
|
||||||
hydrateLookup(): void;
|
hydrateLookup(): void;
|
||||||
/**
|
/**
|
||||||
* Get price from internal cache, if cache empty look up price directly in handbook (expensive)
|
* Get price from internal cache, if cache empty look up price directly in handbook (expensive)
|
||||||
@ -23,18 +26,23 @@ export declare class HandbookHelper {
|
|||||||
*/
|
*/
|
||||||
getTemplatePrice(tpl: string): number;
|
getTemplatePrice(tpl: string): number;
|
||||||
/**
|
/**
|
||||||
* all items in template with the given parent category
|
* Get all items in template with the given parent category
|
||||||
* @param x
|
* @param parentId
|
||||||
* @returns string array
|
* @returns string array
|
||||||
*/
|
*/
|
||||||
templatesWithParent(x: string): string[];
|
templatesWithParent(parentId: string): string[];
|
||||||
/**
|
/**
|
||||||
* Does category exist in handbook cache
|
* Does category exist in handbook cache
|
||||||
* @param category
|
* @param category
|
||||||
* @returns true if exists in cache
|
* @returns true if exists in cache
|
||||||
*/
|
*/
|
||||||
isCategory(category: string): boolean;
|
isCategory(category: string): boolean;
|
||||||
childrenCategories(x: string): string[];
|
/**
|
||||||
|
* Get all items associated with a categories parent
|
||||||
|
* @param categoryParent
|
||||||
|
* @returns string array
|
||||||
|
*/
|
||||||
|
childrenCategories(categoryParent: string): string[];
|
||||||
/**
|
/**
|
||||||
* Convert non-roubles into roubles
|
* Convert non-roubles into roubles
|
||||||
* @param nonRoubleCurrencyCount Currency count to convert
|
* @param nonRoubleCurrencyCount Currency count to convert
|
||||||
|
@ -53,5 +53,7 @@ export declare class HealthHelper {
|
|||||||
* @param duration How long the effect has left in seconds (-1 by default, no duration).
|
* @param duration How long the effect has left in seconds (-1 by default, no duration).
|
||||||
*/
|
*/
|
||||||
protected addEffect(pmcData: IPmcData, effectBodyPart: string, effectType: string, duration?: number): void;
|
protected addEffect(pmcData: IPmcData, effectBodyPart: string, effectType: string, duration?: number): void;
|
||||||
protected isEmpty(map: any): boolean;
|
protected isEmpty(map: Record<string, {
|
||||||
|
Time: number;
|
||||||
|
}>): boolean;
|
||||||
}
|
}
|
||||||
|
@ -52,6 +52,11 @@ export declare class HideoutHelper {
|
|||||||
* with all the constants.
|
* with all the constants.
|
||||||
*/
|
*/
|
||||||
initProduction(recipeId: string, productionTime: number): Production;
|
initProduction(recipeId: string, productionTime: number): Production;
|
||||||
|
/**
|
||||||
|
* Is the provided object a Production type
|
||||||
|
* @param productive
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
isProductionType(productive: Productive): productive is Production;
|
isProductionType(productive: Productive): productive is Production;
|
||||||
applyPlayerUpgradesBonuses(pmcData: IPmcData, bonus: StageBonus): void;
|
applyPlayerUpgradesBonuses(pmcData: IPmcData, bonus: StageBonus): void;
|
||||||
/**
|
/**
|
||||||
@ -189,16 +194,16 @@ export declare class HideoutHelper {
|
|||||||
* @returns coin slot count
|
* @returns coin slot count
|
||||||
*/
|
*/
|
||||||
protected getBTCSlots(pmcData: IPmcData): number;
|
protected getBTCSlots(pmcData: IPmcData): number;
|
||||||
/**
|
|
||||||
* Get a count of bitcoins player miner can hold
|
|
||||||
*/
|
|
||||||
protected getManagementSkillsSlots(): number;
|
|
||||||
/**
|
/**
|
||||||
* Does profile have elite hideout management skill
|
* Does profile have elite hideout management skill
|
||||||
* @param pmcData Profile to look at
|
* @param pmcData Profile to look at
|
||||||
* @returns True if profile has skill
|
* @returns True if profile has skill
|
||||||
*/
|
*/
|
||||||
protected hasEliteHideoutManagementSkill(pmcData: IPmcData): boolean;
|
protected hasEliteHideoutManagementSkill(pmcData: IPmcData): boolean;
|
||||||
|
/**
|
||||||
|
* Get a count of bitcoins player miner can hold
|
||||||
|
*/
|
||||||
|
protected getBitcoinMinerContainerSlotSize(): number;
|
||||||
/**
|
/**
|
||||||
* Get the hideout management skill from player profile
|
* Get the hideout management skill from player profile
|
||||||
* @param pmcData Profile to look at
|
* @param pmcData Profile to look at
|
||||||
@ -206,12 +211,6 @@ export declare class HideoutHelper {
|
|||||||
*/
|
*/
|
||||||
protected getHideoutManagementSkill(pmcData: IPmcData): Common;
|
protected getHideoutManagementSkill(pmcData: IPmcData): Common;
|
||||||
protected getHideoutManagementConsumptionBonus(pmcData: IPmcData): number;
|
protected getHideoutManagementConsumptionBonus(pmcData: IPmcData): number;
|
||||||
/**
|
|
||||||
* Get the crafting skill details from player profile
|
|
||||||
* @param pmcData Player profile
|
|
||||||
* @returns crafting skill, null if not found
|
|
||||||
*/
|
|
||||||
protected getCraftingSkill(pmcData: IPmcData): Common;
|
|
||||||
/**
|
/**
|
||||||
* Adjust craft time based on crafting skill level found in player profile
|
* Adjust craft time based on crafting skill level found in player profile
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
|
@ -16,8 +16,17 @@ export declare class HttpServerHelper {
|
|||||||
};
|
};
|
||||||
constructor(configServer: ConfigServer);
|
constructor(configServer: ConfigServer);
|
||||||
getMimeText(key: string): string;
|
getMimeText(key: string): string;
|
||||||
|
/**
|
||||||
|
* Combine ip and port into url
|
||||||
|
* @returns url
|
||||||
|
*/
|
||||||
buildUrl(): string;
|
buildUrl(): string;
|
||||||
|
/**
|
||||||
|
* Prepend http to the url:port
|
||||||
|
* @returns URI
|
||||||
|
*/
|
||||||
getBackendUrl(): string;
|
getBackendUrl(): string;
|
||||||
|
/** Get websocket url + port */
|
||||||
getWebsocketUrl(): string;
|
getWebsocketUrl(): string;
|
||||||
sendTextJson(resp: any, output: any): void;
|
sendTextJson(resp: any, output: any): void;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { Victim } from "../models/eft/common/tables/IBotBase";
|
import { Quest, Victim } from "../models/eft/common/tables/IBotBase";
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
||||||
import { ILostOnDeathConfig } from "../models/spt/config/ILostOnDeathConfig";
|
import { ILostOnDeathConfig } from "../models/spt/config/ILostOnDeathConfig";
|
||||||
@ -13,6 +13,7 @@ import { JsonUtil } from "../utils/JsonUtil";
|
|||||||
import { InventoryHelper } from "./InventoryHelper";
|
import { InventoryHelper } from "./InventoryHelper";
|
||||||
import { ItemHelper } from "./ItemHelper";
|
import { ItemHelper } from "./ItemHelper";
|
||||||
import { PaymentHelper } from "./PaymentHelper";
|
import { PaymentHelper } from "./PaymentHelper";
|
||||||
|
import { QuestHelper } from "./QuestHelper";
|
||||||
export declare class InRaidHelper {
|
export declare class InRaidHelper {
|
||||||
protected logger: ILogger;
|
protected logger: ILogger;
|
||||||
protected saveServer: SaveServer;
|
protected saveServer: SaveServer;
|
||||||
@ -20,14 +21,15 @@ export declare class InRaidHelper {
|
|||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected inventoryHelper: InventoryHelper;
|
protected inventoryHelper: InventoryHelper;
|
||||||
|
protected questHelper: QuestHelper;
|
||||||
protected paymentHelper: PaymentHelper;
|
protected paymentHelper: PaymentHelper;
|
||||||
protected localisationService: LocalisationService;
|
protected localisationService: LocalisationService;
|
||||||
protected profileFixerService: ProfileFixerService;
|
protected profileFixerService: ProfileFixerService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected lostOnDeathConfig: ILostOnDeathConfig;
|
protected lostOnDeathConfig: ILostOnDeathConfig;
|
||||||
constructor(logger: ILogger, saveServer: SaveServer, jsonUtil: JsonUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer, inventoryHelper: InventoryHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, profileFixerService: ProfileFixerService, configServer: ConfigServer);
|
constructor(logger: ILogger, saveServer: SaveServer, jsonUtil: JsonUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer, inventoryHelper: InventoryHelper, questHelper: QuestHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, profileFixerService: ProfileFixerService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Should quest items be removed from player inventory on death
|
* Lookup quest item loss from lostOnDeath config
|
||||||
* @returns True if items should be removed from inventory
|
* @returns True if items should be removed from inventory
|
||||||
*/
|
*/
|
||||||
removeQuestItemsOnDeath(): boolean;
|
removeQuestItemsOnDeath(): boolean;
|
||||||
@ -61,6 +63,15 @@ export declare class InRaidHelper {
|
|||||||
* @returns Reset profile object
|
* @returns Reset profile object
|
||||||
*/
|
*/
|
||||||
updateProfileBaseStats(profileData: IPmcData, saveProgressRequest: ISaveProgressRequestData, sessionID: string): IPmcData;
|
updateProfileBaseStats(profileData: IPmcData, saveProgressRequest: ISaveProgressRequestData, sessionID: string): IPmcData;
|
||||||
|
/**
|
||||||
|
* Look for quests not are now status = fail that were not failed pre-raid and run the failQuest() function
|
||||||
|
* @param sessionId Player id
|
||||||
|
* @param pmcData Player profile
|
||||||
|
* @param preRaidQuests Quests prior to starting raid
|
||||||
|
* @param postRaidQuests Quest after raid
|
||||||
|
*/
|
||||||
|
protected processFailedQuests(sessionId: string, pmcData: IPmcData, preRaidQuests: Quest[], postRaidQuests: Quest[]): void;
|
||||||
|
protected resetSkillPointsEarnedDuringRaid(profile: IPmcData): void;
|
||||||
/**
|
/**
|
||||||
* Take body part effects from client profile and apply to server profile
|
* Take body part effects from client profile and apply to server profile
|
||||||
* @param saveProgressRequest post-raid request
|
* @param saveProgressRequest post-raid request
|
||||||
|
@ -53,11 +53,12 @@ export declare class InventoryHelper {
|
|||||||
* @param callback Code to execute later (function)
|
* @param callback Code to execute later (function)
|
||||||
* @param foundInRaid Will results added to inventory be set as found in raid
|
* @param foundInRaid Will results added to inventory be set as found in raid
|
||||||
* @param addUpd Additional upd properties for items being added to inventory
|
* @param addUpd Additional upd properties for items being added to inventory
|
||||||
|
* @param useSortingTable Allow items to go into sorting table when stash has no space
|
||||||
* @returns IItemEventRouterResponse
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
addItem(pmcData: IPmcData, request: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: {
|
addItem(pmcData: IPmcData, request: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: {
|
||||||
(): void;
|
(): void;
|
||||||
}, foundInRaid?: boolean, addUpd?: any): IItemEventRouterResponse;
|
}, foundInRaid?: boolean, addUpd?: any, useSortingTable?: boolean): IItemEventRouterResponse;
|
||||||
/**
|
/**
|
||||||
* Add ammo to ammo boxes
|
* Add ammo to ammo boxes
|
||||||
* @param itemToAdd Item to check is ammo box
|
* @param itemToAdd Item to check is ammo box
|
||||||
@ -75,7 +76,7 @@ export declare class InventoryHelper {
|
|||||||
*/
|
*/
|
||||||
protected splitStackIntoSmallerStacks(assortItems: Item[], requestItem: AddItem, result: IAddItemTempObject[]): void;
|
protected splitStackIntoSmallerStacks(assortItems: Item[], requestItem: AddItem, result: IAddItemTempObject[]): void;
|
||||||
/**
|
/**
|
||||||
* Remove item from player inventory
|
* Remove item from player inventory + insured items array
|
||||||
* @param pmcData Profile to remove item from
|
* @param pmcData Profile to remove item from
|
||||||
* @param itemId Items id to remove
|
* @param itemId Items id to remove
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
@ -99,8 +100,9 @@ export declare class InventoryHelper {
|
|||||||
* @returns Array
|
* @returns Array
|
||||||
*/
|
*/
|
||||||
protected getStashSlotMap(pmcData: IPmcData, sessionID: string): number[][];
|
protected getStashSlotMap(pmcData: IPmcData, sessionID: string): number[][];
|
||||||
protected getStashType(sessionID: string): string;
|
protected getSortingTableSlotMap(pmcData: IPmcData): number[][];
|
||||||
protected getPlayerStashSize(sessionID: string): Record<number, number>;
|
protected getPlayerStashSize(sessionID: string): Record<number, number>;
|
||||||
|
protected getStashType(sessionID: string): string;
|
||||||
/**
|
/**
|
||||||
* Internal helper function to transfer an item from one profile to another.
|
* Internal helper function to transfer an item from one profile to another.
|
||||||
* fromProfileData: Profile of the source.
|
* fromProfileData: Profile of the source.
|
||||||
|
@ -51,11 +51,22 @@ declare class ItemHelper {
|
|||||||
/**
|
/**
|
||||||
* Returns the item price based on the handbook or as a fallback from the prices.json if the item is not
|
* Returns the item price based on the handbook or as a fallback from the prices.json if the item is not
|
||||||
* found in the handbook. If the price can't be found at all return 0
|
* found in the handbook. If the price can't be found at all return 0
|
||||||
*
|
* @param tpl Item to look price up of
|
||||||
* @param {string} tpl the item template to check
|
* @returns Price in roubles
|
||||||
* @returns {integer} The price of the item or 0 if not found
|
|
||||||
*/
|
*/
|
||||||
getItemPrice(tpl: string): number;
|
getItemPrice(tpl: string): number;
|
||||||
|
/**
|
||||||
|
* Get the static (handbook) price in roubles for an item by tpl
|
||||||
|
* @param tpl Items tpl id to look up price
|
||||||
|
* @returns Price in roubles (0 if not found)
|
||||||
|
*/
|
||||||
|
getStaticItemPrice(tpl: string): number;
|
||||||
|
/**
|
||||||
|
* Get the dynamic (flea) price in roubles for an item by tpl
|
||||||
|
* @param tpl Items tpl id to look up price
|
||||||
|
* @returns Price in roubles (undefined if not found)
|
||||||
|
*/
|
||||||
|
getDynamicItemPrice(tpl: string): number;
|
||||||
fixItemStackCount(item: Item): Item;
|
fixItemStackCount(item: Item): Item;
|
||||||
/**
|
/**
|
||||||
* AmmoBoxes contain StackSlots which need to be filled for the AmmoBox to have content.
|
* AmmoBoxes contain StackSlots which need to be filled for the AmmoBox to have content.
|
||||||
@ -186,14 +197,14 @@ declare class ItemHelper {
|
|||||||
*/
|
*/
|
||||||
findBarterItems(by: "tpl" | "id", pmcData: IPmcData, barterItemId: string): Item[];
|
findBarterItems(by: "tpl" | "id", pmcData: IPmcData, barterItemId: string): Item[];
|
||||||
/**
|
/**
|
||||||
*
|
* Regenerate all guids with new ids, exceptions are for items that cannot be altered (e.g. stash/sorting table)
|
||||||
* @param pmcData
|
* @param pmcData Player profile
|
||||||
* @param items
|
* @param items Items to adjust ID values of
|
||||||
* @param insuredItems insured items to not replace ids for
|
* @param insuredItems insured items to not replace ids for
|
||||||
* @param fastPanel
|
* @param fastPanel
|
||||||
* @returns
|
* @returns Item[]
|
||||||
*/
|
*/
|
||||||
replaceIDs(pmcData: IPmcData, items: Item[], insuredItems?: InsuredItem[], fastPanel?: any): any[];
|
replaceIDs(pmcData: IPmcData, items: Item[], insuredItems?: InsuredItem[], fastPanel?: any): Item[];
|
||||||
/**
|
/**
|
||||||
* WARNING, SLOW. Recursively loop down through an items hierarchy to see if any of the ids match the supplied list, return true if any do
|
* WARNING, SLOW. Recursively loop down through an items hierarchy to see if any of the ids match the supplied list, return true if any do
|
||||||
* @param {string} tpl Items tpl to check parents of
|
* @param {string} tpl Items tpl to check parents of
|
||||||
|
@ -9,9 +9,18 @@ export declare class NotifierHelper {
|
|||||||
protected defaultNotification: INotification;
|
protected defaultNotification: INotification;
|
||||||
constructor(httpServerHelper: HttpServerHelper);
|
constructor(httpServerHelper: HttpServerHelper);
|
||||||
getDefaultNotification(): INotification;
|
getDefaultNotification(): INotification;
|
||||||
/** Creates a new notification that displays the "Your offer was sold!" prompt and removes sold offer from "My Offers" on clientside */
|
/**
|
||||||
|
* Create a new notification that displays the "Your offer was sold!" prompt and removes sold offer from "My Offers" on clientside
|
||||||
|
* @param dialogueMessage Message from dialog that was sent
|
||||||
|
* @param ragfairData Ragfair data to attach to notification
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
createRagfairOfferSoldNotification(dialogueMessage: Message, ragfairData: MessageContentRagfair): INotification;
|
createRagfairOfferSoldNotification(dialogueMessage: Message, ragfairData: MessageContentRagfair): INotification;
|
||||||
/** Creates a new notification with the specified dialogueMessage object. */
|
/**
|
||||||
|
* Create a new notification with the specified dialogueMessage object
|
||||||
|
* @param dialogueMessage
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
createNewMessageNotification(dialogueMessage: Message): INotification;
|
createNewMessageNotification(dialogueMessage: Message): INotification;
|
||||||
getWebSocketServer(sessionID: string): string;
|
getWebSocketServer(sessionID: string): string;
|
||||||
}
|
}
|
||||||
|
@ -1,18 +1,18 @@
|
|||||||
import { Preset } from "../models/eft/common/IGlobals";
|
import { IPreset } from "../models/eft/common/IGlobals";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
import { JsonUtil } from "../utils/JsonUtil";
|
||||||
export declare class PresetHelper {
|
export declare class PresetHelper {
|
||||||
protected jsonUtil: JsonUtil;
|
protected jsonUtil: JsonUtil;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected lookup: Record<string, string[]>;
|
protected lookup: Record<string, string[]>;
|
||||||
protected defaultPresets: Record<string, Preset>;
|
protected defaultPresets: Record<string, IPreset>;
|
||||||
constructor(jsonUtil: JsonUtil, databaseServer: DatabaseServer);
|
constructor(jsonUtil: JsonUtil, databaseServer: DatabaseServer);
|
||||||
hydratePresetStore(input: Record<string, string[]>): void;
|
hydratePresetStore(input: Record<string, string[]>): void;
|
||||||
getDefaultPresets(): Record<string, Preset>;
|
getDefaultPresets(): Record<string, IPreset>;
|
||||||
isPreset(id: string): boolean;
|
isPreset(id: string): boolean;
|
||||||
hasPreset(templateId: string): boolean;
|
hasPreset(templateId: string): boolean;
|
||||||
getPreset(id: string): Preset;
|
getPreset(id: string): IPreset;
|
||||||
getPresets(templateId: string): Preset[];
|
getPresets(templateId: string): IPreset[];
|
||||||
getDefaultPreset(templateId: string): Preset;
|
getDefaultPreset(templateId: string): IPreset;
|
||||||
getBaseItemTpl(presetId: string): string;
|
getBaseItemTpl(presetId: string): string;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { Stats } from "../models/eft/common/tables/IBotBase";
|
import { CounterKeyValue, Stats } from "../models/eft/common/tables/IBotBase";
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
||||||
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
@ -68,6 +68,10 @@ export declare class ProfileHelper {
|
|||||||
getFullProfile(sessionID: string): IAkiProfile;
|
getFullProfile(sessionID: string): IAkiProfile;
|
||||||
getPmcProfile(sessionID: string): IPmcData;
|
getPmcProfile(sessionID: string): IPmcData;
|
||||||
getScavProfile(sessionID: string): IPmcData;
|
getScavProfile(sessionID: string): IPmcData;
|
||||||
|
/**
|
||||||
|
* Get baseline counter values for a fresh profile
|
||||||
|
* @returns Stats
|
||||||
|
*/
|
||||||
getDefaultCounters(): Stats;
|
getDefaultCounters(): Stats;
|
||||||
protected isWiped(sessionID: string): boolean;
|
protected isWiped(sessionID: string): boolean;
|
||||||
protected getServerVersion(): string;
|
protected getServerVersion(): string;
|
||||||
@ -77,4 +81,24 @@ export declare class ProfileHelper {
|
|||||||
* @returns profile without secure container
|
* @returns profile without secure container
|
||||||
*/
|
*/
|
||||||
removeSecureContainer(profile: IPmcData): IPmcData;
|
removeSecureContainer(profile: IPmcData): IPmcData;
|
||||||
|
/**
|
||||||
|
* Flag a profile as having received a gift
|
||||||
|
* Store giftid in profile aki object
|
||||||
|
* @param playerId Player to add gift flag to
|
||||||
|
* @param giftId Gift player received
|
||||||
|
*/
|
||||||
|
addGiftReceivedFlagToProfile(playerId: string, giftId: string): void;
|
||||||
|
/**
|
||||||
|
* Check if profile has recieved a gift by id
|
||||||
|
* @param playerId Player profile to check for gift
|
||||||
|
* @param giftId Gift to check for
|
||||||
|
* @returns True if player has recieved gift previously
|
||||||
|
*/
|
||||||
|
playerHasRecievedGift(playerId: string, giftId: string): boolean;
|
||||||
|
/**
|
||||||
|
* Find Stat in profile counters and increment by one
|
||||||
|
* @param counters Counters to search for key
|
||||||
|
* @param keyToIncrement Key
|
||||||
|
*/
|
||||||
|
incrementStatCounter(counters: CounterKeyValue[], keyToIncrement: string): void;
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,7 @@ import { ConfigServer } from "../servers/ConfigServer";
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { LocaleService } from "../services/LocaleService";
|
import { LocaleService } from "../services/LocaleService";
|
||||||
import { LocalisationService } from "../services/LocalisationService";
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
|
import { MailSendService } from "../services/MailSendService";
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
import { HashUtil } from "../utils/HashUtil";
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
import { JsonUtil } from "../utils/JsonUtil";
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
@ -37,9 +38,10 @@ export declare class QuestHelper {
|
|||||||
protected paymentHelper: PaymentHelper;
|
protected paymentHelper: PaymentHelper;
|
||||||
protected localisationService: LocalisationService;
|
protected localisationService: LocalisationService;
|
||||||
protected traderHelper: TraderHelper;
|
protected traderHelper: TraderHelper;
|
||||||
|
protected mailSendService: MailSendService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected questConfig: IQuestConfig;
|
protected questConfig: IQuestConfig;
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, timeUtil: TimeUtil, hashUtil: HashUtil, itemHelper: ItemHelper, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, localeService: LocaleService, ragfairServerHelper: RagfairServerHelper, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, traderHelper: TraderHelper, configServer: ConfigServer);
|
constructor(logger: ILogger, jsonUtil: JsonUtil, timeUtil: TimeUtil, hashUtil: HashUtil, itemHelper: ItemHelper, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, localeService: LocaleService, ragfairServerHelper: RagfairServerHelper, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, traderHelper: TraderHelper, mailSendService: MailSendService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Get status of a quest in player profile by its id
|
* Get status of a quest in player profile by its id
|
||||||
* @param pmcData Profile to search
|
* @param pmcData Profile to search
|
||||||
@ -63,6 +65,7 @@ export declare class QuestHelper {
|
|||||||
getDeltaQuests(before: IQuest[], after: IQuest[]): IQuest[];
|
getDeltaQuests(before: IQuest[], after: IQuest[]): IQuest[];
|
||||||
/**
|
/**
|
||||||
* Increase skill points of a skill on player profile
|
* Increase skill points of a skill on player profile
|
||||||
|
* Dupe of PlayerService.incrementSkillLevel()
|
||||||
* @param sessionID Session id
|
* @param sessionID Session id
|
||||||
* @param pmcData Player profile
|
* @param pmcData Player profile
|
||||||
* @param skillName Name of skill to increase skill points of
|
* @param skillName Name of skill to increase skill points of
|
||||||
@ -113,7 +116,7 @@ export declare class QuestHelper {
|
|||||||
* Get quests that can be shown to player after failing a quest
|
* Get quests that can be shown to player after failing a quest
|
||||||
* @param failedQuestId Id of the quest failed by player
|
* @param failedQuestId Id of the quest failed by player
|
||||||
* @param sessionId Session id
|
* @param sessionId Session id
|
||||||
* @returns
|
* @returns IQuest array
|
||||||
*/
|
*/
|
||||||
failedUnlocked(failedQuestId: string, sessionId: string): IQuest[];
|
failedUnlocked(failedQuestId: string, sessionId: string): IQuest[];
|
||||||
/**
|
/**
|
||||||
|
@ -12,6 +12,7 @@ import { ConfigServer } from "../servers/ConfigServer";
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
import { SaveServer } from "../servers/SaveServer";
|
||||||
import { LocaleService } from "../services/LocaleService";
|
import { LocaleService } from "../services/LocaleService";
|
||||||
|
import { LocalisationService } from "../services/LocalisationService";
|
||||||
import { RagfairOfferService } from "../services/RagfairOfferService";
|
import { RagfairOfferService } from "../services/RagfairOfferService";
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
import { HashUtil } from "../utils/HashUtil";
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
@ -42,11 +43,12 @@ export declare class RagfairOfferHelper {
|
|||||||
protected ragfairHelper: RagfairHelper;
|
protected ragfairHelper: RagfairHelper;
|
||||||
protected ragfairOfferService: RagfairOfferService;
|
protected ragfairOfferService: RagfairOfferService;
|
||||||
protected localeService: LocaleService;
|
protected localeService: LocaleService;
|
||||||
|
protected localisationService: LocalisationService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected static goodSoldTemplate: string;
|
protected static goodSoldTemplate: string;
|
||||||
protected ragfairConfig: IRagfairConfig;
|
protected ragfairConfig: IRagfairConfig;
|
||||||
protected questConfig: IQuestConfig;
|
protected questConfig: IQuestConfig;
|
||||||
constructor(logger: ILogger, timeUtil: TimeUtil, hashUtil: HashUtil, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, traderHelper: TraderHelper, saveServer: SaveServer, dialogueHelper: DialogueHelper, itemHelper: ItemHelper, paymentHelper: PaymentHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, ragfairServerHelper: RagfairServerHelper, ragfairSortHelper: RagfairSortHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, localeService: LocaleService, configServer: ConfigServer);
|
constructor(logger: ILogger, timeUtil: TimeUtil, hashUtil: HashUtil, eventOutputHolder: EventOutputHolder, databaseServer: DatabaseServer, traderHelper: TraderHelper, saveServer: SaveServer, dialogueHelper: DialogueHelper, itemHelper: ItemHelper, paymentHelper: PaymentHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, ragfairServerHelper: RagfairServerHelper, ragfairSortHelper: RagfairSortHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, localeService: LocaleService, localisationService: LocalisationService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Passthrough to ragfairOfferService.getOffers(), get flea offers a player should see
|
* Passthrough to ragfairOfferService.getOffers(), get flea offers a player should see
|
||||||
* @param searchRequest
|
* @param searchRequest
|
||||||
|
@ -8,41 +8,67 @@ import { DatabaseServer } from "../servers/DatabaseServer";
|
|||||||
import { SaveServer } from "../servers/SaveServer";
|
import { SaveServer } from "../servers/SaveServer";
|
||||||
import { ItemFilterService } from "../services/ItemFilterService";
|
import { ItemFilterService } from "../services/ItemFilterService";
|
||||||
import { LocaleService } from "../services/LocaleService";
|
import { LocaleService } from "../services/LocaleService";
|
||||||
|
import { MailSendService } from "../services/MailSendService";
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
import { HashUtil } from "../utils/HashUtil";
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
import { JsonUtil } from "../utils/JsonUtil";
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
import { RandomUtil } from "../utils/RandomUtil";
|
||||||
|
import { TimeUtil } from "../utils/TimeUtil";
|
||||||
import { DialogueHelper } from "./DialogueHelper";
|
import { DialogueHelper } from "./DialogueHelper";
|
||||||
import { ItemHelper } from "./ItemHelper";
|
import { ItemHelper } from "./ItemHelper";
|
||||||
import { ProfileHelper } from "./ProfileHelper";
|
import { ProfileHelper } from "./ProfileHelper";
|
||||||
|
import { TraderHelper } from "./TraderHelper";
|
||||||
/**
|
/**
|
||||||
* Helper class for common ragfair server actions
|
* Helper class for common ragfair server actions
|
||||||
*/
|
*/
|
||||||
export declare class RagfairServerHelper {
|
export declare class RagfairServerHelper {
|
||||||
protected randomUtil: RandomUtil;
|
protected randomUtil: RandomUtil;
|
||||||
protected hashUtil: HashUtil;
|
protected hashUtil: HashUtil;
|
||||||
|
protected timeUtil: TimeUtil;
|
||||||
protected saveServer: SaveServer;
|
protected saveServer: SaveServer;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
protected profileHelper: ProfileHelper;
|
protected profileHelper: ProfileHelper;
|
||||||
protected itemHelper: ItemHelper;
|
protected itemHelper: ItemHelper;
|
||||||
protected localeService: LocaleService;
|
protected localeService: LocaleService;
|
||||||
protected dialogueHelper: DialogueHelper;
|
protected dialogueHelper: DialogueHelper;
|
||||||
|
protected traderHelper: TraderHelper;
|
||||||
protected jsonUtil: JsonUtil;
|
protected jsonUtil: JsonUtil;
|
||||||
|
protected mailSendService: MailSendService;
|
||||||
protected itemFilterService: ItemFilterService;
|
protected itemFilterService: ItemFilterService;
|
||||||
protected configServer: ConfigServer;
|
protected configServer: ConfigServer;
|
||||||
protected ragfairConfig: IRagfairConfig;
|
protected ragfairConfig: IRagfairConfig;
|
||||||
protected questConfig: IQuestConfig;
|
protected questConfig: IQuestConfig;
|
||||||
protected static goodsReturnedTemplate: string;
|
protected static goodsReturnedTemplate: string;
|
||||||
constructor(randomUtil: RandomUtil, hashUtil: HashUtil, saveServer: SaveServer, databaseServer: DatabaseServer, profileHelper: ProfileHelper, itemHelper: ItemHelper, localeService: LocaleService, dialogueHelper: DialogueHelper, jsonUtil: JsonUtil, itemFilterService: ItemFilterService, configServer: ConfigServer);
|
constructor(randomUtil: RandomUtil, hashUtil: HashUtil, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, profileHelper: ProfileHelper, itemHelper: ItemHelper, localeService: LocaleService, dialogueHelper: DialogueHelper, traderHelper: TraderHelper, jsonUtil: JsonUtil, mailSendService: MailSendService, itemFilterService: ItemFilterService, configServer: ConfigServer);
|
||||||
/**
|
/**
|
||||||
* Is item valid / on blacklist / quest item
|
* Is item valid / on blacklist / quest item
|
||||||
* @param itemDetails
|
* @param itemDetails
|
||||||
* @returns boolean
|
* @returns boolean
|
||||||
*/
|
*/
|
||||||
isItemValidRagfairItem(itemDetails: [boolean, ITemplateItem]): boolean;
|
isItemValidRagfairItem(itemDetails: [boolean, ITemplateItem]): boolean;
|
||||||
protected isItemBlacklisted(itemTemplateId: string): boolean;
|
/**
|
||||||
isTrader(userID: string): boolean;
|
* Is supplied item tpl on the ragfair custom blacklist from configs/ragfair.json/dynamic
|
||||||
isPlayer(userID: string): boolean;
|
* @param itemTemplateId Item tpl to check is blacklisted
|
||||||
returnItems(sessionID: string, items: Item[]): void;
|
* @returns True if its blacklsited
|
||||||
|
*/
|
||||||
|
protected isItemOnCustomFleaBlacklist(itemTemplateId: string): boolean;
|
||||||
|
/**
|
||||||
|
* is supplied id a trader
|
||||||
|
* @param traderId
|
||||||
|
* @returns True if id was a trader
|
||||||
|
*/
|
||||||
|
isTrader(traderId: string): boolean;
|
||||||
|
/**
|
||||||
|
* Is this user id the logged in player
|
||||||
|
* @param userId Id to test
|
||||||
|
* @returns True is the current player
|
||||||
|
*/
|
||||||
|
isPlayer(userId: string): boolean;
|
||||||
|
/**
|
||||||
|
* Send items back to player
|
||||||
|
* @param sessionID Player to send items to
|
||||||
|
* @param returnedItems Items to send to player
|
||||||
|
*/
|
||||||
|
returnItems(sessionID: string, returnedItems: Item[]): void;
|
||||||
calculateDynamicStackCount(tplId: string, isWeaponPreset: boolean): number;
|
calculateDynamicStackCount(tplId: string, isWeaponPreset: boolean): number;
|
||||||
/**
|
/**
|
||||||
* Choose a currency at random with bias
|
* Choose a currency at random with bias
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
import { Item } from "../models/eft/common/tables/IItem";
|
||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||||
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||||
import { RagfairPriceService } from "../services/RagfairPriceService";
|
import { RagfairPriceService } from "../services/RagfairPriceService";
|
||||||
import { ItemHelper } from "./ItemHelper";
|
import { ItemHelper } from "./ItemHelper";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
export declare class RagfairTaxHelper {
|
export declare class RagfairTaxHelper {
|
||||||
protected logger: ILogger;
|
protected logger: ILogger;
|
||||||
protected databaseServer: DatabaseServer;
|
protected databaseServer: DatabaseServer;
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||||
import { ITraderAssort, ITraderBase, LoyaltyLevel } from "../models/eft/common/tables/ITrader";
|
import { ITraderAssort, ITraderBase, LoyaltyLevel } from "../models/eft/common/tables/ITrader";
|
||||||
|
import { Traders } from "../models/enums/Traders";
|
||||||
import { ITraderConfig } from "../models/spt/config/ITraderConfig";
|
import { ITraderConfig } from "../models/spt/config/ITraderConfig";
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
import { ILogger } from "../models/spt/utils/ILogger";
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
import { ConfigServer } from "../servers/ConfigServer";
|
||||||
@ -106,4 +107,10 @@ export declare class TraderHelper {
|
|||||||
* @returns Rouble price
|
* @returns Rouble price
|
||||||
*/
|
*/
|
||||||
getHighestSellToTraderPrice(tpl: string): number;
|
getHighestSellToTraderPrice(tpl: string): number;
|
||||||
|
/**
|
||||||
|
* Get a trader enum key by its value
|
||||||
|
* @param traderId Traders id
|
||||||
|
* @returns Traders key
|
||||||
|
*/
|
||||||
|
getTraderById(traderId: string): Traders;
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,9 @@ export declare class BundleLoader {
|
|||||||
protected jsonUtil: JsonUtil;
|
protected jsonUtil: JsonUtil;
|
||||||
protected bundles: Record<string, BundleInfo>;
|
protected bundles: Record<string, BundleInfo>;
|
||||||
constructor(httpServerHelper: HttpServerHelper, vfs: VFS, jsonUtil: JsonUtil);
|
constructor(httpServerHelper: HttpServerHelper, vfs: VFS, jsonUtil: JsonUtil);
|
||||||
|
/**
|
||||||
|
* Handle singleplayer/bundles
|
||||||
|
*/
|
||||||
getBundles(local: boolean): BundleInfo[];
|
getBundles(local: boolean): BundleInfo[];
|
||||||
getBundle(key: string, local: boolean): BundleInfo;
|
getBundle(key: string, local: boolean): BundleInfo;
|
||||||
addBundles(modpath: string): void;
|
addBundles(modpath: string): void;
|
||||||
|
@ -36,8 +36,8 @@ export declare class PreAkiModLoader implements IModLoader {
|
|||||||
getModPath(mod: string): string;
|
getModPath(mod: string): string;
|
||||||
protected importMods(): Promise<void>;
|
protected importMods(): Promise<void>;
|
||||||
/**
|
/**
|
||||||
* Check for duplciate mods loaded, show error if duplicate mod found
|
* Check for duplicate mods loaded, show error if any
|
||||||
* @param modPackageData dictionary of mod package.json data
|
* @param modPackageData Dictionary of mod package.json data
|
||||||
*/
|
*/
|
||||||
protected checkForDuplicateMods(modPackageData: Record<string, IPackageJsonData>): void;
|
protected checkForDuplicateMods(modPackageData: Record<string, IPackageJsonData>): void;
|
||||||
/**
|
/**
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,5 @@
|
|||||||
|
import { MinMax } from "../../../models/common/MinMax";
|
||||||
|
import { Ixyz } from "./Ixyz";
|
||||||
export interface ILocationBase {
|
export interface ILocationBase {
|
||||||
AccessKeys: string[];
|
AccessKeys: string[];
|
||||||
AirdropParameters: AirdropParameter[];
|
AirdropParameters: AirdropParameter[];
|
||||||
@ -35,6 +37,7 @@ export interface ILocationBase {
|
|||||||
IsSecret: boolean;
|
IsSecret: boolean;
|
||||||
Locked: boolean;
|
Locked: boolean;
|
||||||
Loot: any[];
|
Loot: any[];
|
||||||
|
MatchMakerMinPlayersByWaitTime: MinPlayerWaitTime[];
|
||||||
MaxBotPerZone: number;
|
MaxBotPerZone: number;
|
||||||
MaxDistToFreePoint: number;
|
MaxDistToFreePoint: number;
|
||||||
MaxPlayers: number;
|
MaxPlayers: number;
|
||||||
@ -49,6 +52,7 @@ export interface ILocationBase {
|
|||||||
OldSpawn: boolean;
|
OldSpawn: boolean;
|
||||||
OpenZones: string;
|
OpenZones: string;
|
||||||
Preview: Preview;
|
Preview: Preview;
|
||||||
|
PlayersRequestCount: number;
|
||||||
RequiredPlayerLevel?: number;
|
RequiredPlayerLevel?: number;
|
||||||
RequiredPlayerLevelMin?: number;
|
RequiredPlayerLevelMin?: number;
|
||||||
RequiredPlayerLevelMax?: number;
|
RequiredPlayerLevelMax?: number;
|
||||||
@ -81,9 +85,7 @@ export interface ILocationBase {
|
|||||||
users_summon_seconds: number;
|
users_summon_seconds: number;
|
||||||
waves: Wave[];
|
waves: Wave[];
|
||||||
}
|
}
|
||||||
export interface ILimit {
|
export interface ILimit extends MinMax {
|
||||||
min: number;
|
|
||||||
max: number;
|
|
||||||
items: any[];
|
items: any[];
|
||||||
}
|
}
|
||||||
export interface AirdropParameter {
|
export interface AirdropParameter {
|
||||||
@ -140,10 +142,12 @@ export interface BotLocationModifier {
|
|||||||
Scattering: number;
|
Scattering: number;
|
||||||
VisibleDistance: number;
|
VisibleDistance: number;
|
||||||
}
|
}
|
||||||
export interface MinMaxBot {
|
export interface MinMaxBot extends MinMax {
|
||||||
WildSpawnType: WildSpawnType;
|
WildSpawnType: WildSpawnType | string;
|
||||||
max: number;
|
}
|
||||||
min: number;
|
export interface MinPlayerWaitTime {
|
||||||
|
minPlayers: number;
|
||||||
|
time: number;
|
||||||
}
|
}
|
||||||
export interface Preview {
|
export interface Preview {
|
||||||
path: string;
|
path: string;
|
||||||
@ -160,7 +164,7 @@ export interface SpawnPointParam {
|
|||||||
DelayToCanSpawnSec: number;
|
DelayToCanSpawnSec: number;
|
||||||
Id: string;
|
Id: string;
|
||||||
Infiltration: string;
|
Infiltration: string;
|
||||||
Position: xyz;
|
Position: Ixyz;
|
||||||
Rotation: number;
|
Rotation: number;
|
||||||
Sides: string[];
|
Sides: string[];
|
||||||
}
|
}
|
||||||
@ -169,14 +173,9 @@ export interface ColliderParams {
|
|||||||
_props: Props;
|
_props: Props;
|
||||||
}
|
}
|
||||||
export interface Props {
|
export interface Props {
|
||||||
Center: xyz;
|
Center: Ixyz;
|
||||||
Radius: number;
|
Radius: number;
|
||||||
}
|
}
|
||||||
export interface xyz {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
z: number;
|
|
||||||
}
|
|
||||||
export interface Exit {
|
export interface Exit {
|
||||||
Chance: number;
|
Chance: number;
|
||||||
Count: number;
|
Count: number;
|
||||||
@ -211,5 +210,6 @@ export interface Wave {
|
|||||||
}
|
}
|
||||||
export declare enum WildSpawnType {
|
export declare enum WildSpawnType {
|
||||||
ASSAULT = "assault",
|
ASSAULT = "assault",
|
||||||
MARKSMAN = "marksman"
|
MARKSMAN = "marksman",
|
||||||
|
PMCBOT = "pmcbot"
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import { Ixyz } from "./Ixyz";
|
||||||
import { Item } from "./tables/IItem";
|
import { Item } from "./tables/IItem";
|
||||||
export interface ILooseLoot {
|
export interface ILooseLoot {
|
||||||
spawnpointCount: SpawnpointCount;
|
spawnpointCount: SpawnpointCount;
|
||||||
@ -18,11 +19,11 @@ export interface SpawnpointTemplate {
|
|||||||
IsStatic: boolean;
|
IsStatic: boolean;
|
||||||
useGravity: boolean;
|
useGravity: boolean;
|
||||||
randomRotation: boolean;
|
randomRotation: boolean;
|
||||||
Position: Xyz;
|
Position: Ixyz;
|
||||||
Rotation: Xyz;
|
Rotation: Ixyz;
|
||||||
IsGroupPosition: boolean;
|
IsGroupPosition: boolean;
|
||||||
GroupPositions: any[];
|
GroupPositions: any[];
|
||||||
Root: any;
|
Root: string;
|
||||||
Items: Item[];
|
Items: Item[];
|
||||||
}
|
}
|
||||||
export interface Spawnpoint {
|
export interface Spawnpoint {
|
||||||
@ -31,11 +32,6 @@ export interface Spawnpoint {
|
|||||||
template: SpawnpointTemplate;
|
template: SpawnpointTemplate;
|
||||||
itemDistribution: ItemDistribution[];
|
itemDistribution: ItemDistribution[];
|
||||||
}
|
}
|
||||||
export interface Xyz {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
z: number;
|
|
||||||
}
|
|
||||||
export interface ItemDistribution {
|
export interface ItemDistribution {
|
||||||
composedKey: ComposedKey;
|
composedKey: ComposedKey;
|
||||||
relativeProbability: number;
|
relativeProbability: number;
|
||||||
|
5
TypeScript/2EditDatabase/types/models/eft/common/Ixyz.d.ts
vendored
Normal file
5
TypeScript/2EditDatabase/types/models/eft/common/Ixyz.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
export interface Ixyz {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
z: number;
|
||||||
|
}
|
@ -40,6 +40,7 @@ export interface Info {
|
|||||||
Nickname: string;
|
Nickname: string;
|
||||||
LowerNickname: string;
|
LowerNickname: string;
|
||||||
Side: string;
|
Side: string;
|
||||||
|
SquadInviteRestriction: boolean;
|
||||||
Voice: string;
|
Voice: string;
|
||||||
Level: number;
|
Level: number;
|
||||||
Experience: number;
|
Experience: number;
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import { Ixyz } from "../Ixyz";
|
||||||
export interface ICustomizationItem {
|
export interface ICustomizationItem {
|
||||||
_id: string;
|
_id: string;
|
||||||
_name: string;
|
_name: string;
|
||||||
@ -19,15 +20,10 @@ export interface Props {
|
|||||||
Prefab: Prefab;
|
Prefab: Prefab;
|
||||||
WatchPrefab: Prefab;
|
WatchPrefab: Prefab;
|
||||||
IntegratedArmorVest: boolean;
|
IntegratedArmorVest: boolean;
|
||||||
WatchPosition: Xyz;
|
WatchPosition: Ixyz;
|
||||||
WatchRotation: Xyz;
|
WatchRotation: Ixyz;
|
||||||
}
|
}
|
||||||
export interface Prefab {
|
export interface Prefab {
|
||||||
path: string;
|
path: string;
|
||||||
rcid: string;
|
rcid: string;
|
||||||
}
|
}
|
||||||
export interface Xyz {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
z: number;
|
|
||||||
}
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import { Ixyz } from "../Ixyz";
|
||||||
import { Item } from "./IItem";
|
import { Item } from "./IItem";
|
||||||
export interface ILootBase {
|
export interface ILootBase {
|
||||||
staticAmmo: Record<string, IStaticAmmoDetails[]>;
|
staticAmmo: Record<string, IStaticAmmoDetails[]>;
|
||||||
@ -18,8 +19,8 @@ export interface IStaticWeaponProps {
|
|||||||
IsStatic: boolean;
|
IsStatic: boolean;
|
||||||
useGravity: boolean;
|
useGravity: boolean;
|
||||||
randomRotation: boolean;
|
randomRotation: boolean;
|
||||||
Position: Xyz;
|
Position: Ixyz;
|
||||||
Rotation: Xyz;
|
Rotation: Ixyz;
|
||||||
IsGroupPosition: boolean;
|
IsGroupPosition: boolean;
|
||||||
GroupPositions: any[];
|
GroupPositions: any[];
|
||||||
Root: string;
|
Root: string;
|
||||||
@ -30,20 +31,15 @@ export interface IStaticContainerProps {
|
|||||||
IsStatic: boolean;
|
IsStatic: boolean;
|
||||||
useGravity: boolean;
|
useGravity: boolean;
|
||||||
randomRotation: boolean;
|
randomRotation: boolean;
|
||||||
Position: Xyz;
|
Position: Ixyz;
|
||||||
Rotation: Xyz;
|
Rotation: Ixyz;
|
||||||
IsGroupPosition: boolean;
|
IsGroupPosition: boolean;
|
||||||
GroupPositions: any[];
|
GroupPositions: any[];
|
||||||
Root: any;
|
Root: string;
|
||||||
Items: StaticItem[];
|
Items: StaticItem[];
|
||||||
}
|
}
|
||||||
export interface Xyz {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
z: number;
|
|
||||||
}
|
|
||||||
export interface StaticItem {
|
export interface StaticItem {
|
||||||
_id: any;
|
_id: string;
|
||||||
_tpl: string;
|
_tpl: string;
|
||||||
}
|
}
|
||||||
export interface IStaticForcedProps {
|
export interface IStaticForcedProps {
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
import { QuestRewardType } from "../../../enums/QuestRewardType";
|
import { QuestRewardType } from "../../../enums/QuestRewardType";
|
||||||
import { QuestStatus } from "../../../enums/QuestStatus";
|
import { QuestStatus } from "../../../enums/QuestStatus";
|
||||||
|
import { QuestTypeEnum } from "../../../enums/QuestTypeEnum";
|
||||||
import { Item } from "./IItem";
|
import { Item } from "./IItem";
|
||||||
export interface IQuest {
|
export interface IQuest {
|
||||||
|
/** SPT addition - human readable quest name */
|
||||||
QuestName?: string;
|
QuestName?: string;
|
||||||
_id: string;
|
_id: string;
|
||||||
canShowNotificationsInGame: boolean;
|
canShowNotificationsInGame: boolean;
|
||||||
@ -13,9 +15,10 @@ export interface IQuest {
|
|||||||
traderId: string;
|
traderId: string;
|
||||||
location: string;
|
location: string;
|
||||||
image: string;
|
image: string;
|
||||||
type: string;
|
type: QuestTypeEnum;
|
||||||
isKey: boolean;
|
isKey: boolean;
|
||||||
questStatus: any;
|
/** @deprecated - Likely not used, use 'status' instead */
|
||||||
|
questStatus: QuestStatus;
|
||||||
restartable: boolean;
|
restartable: boolean;
|
||||||
instantComplete: boolean;
|
instantComplete: boolean;
|
||||||
secretQuest: boolean;
|
secretQuest: boolean;
|
||||||
@ -23,9 +26,11 @@ export interface IQuest {
|
|||||||
successMessageText: string;
|
successMessageText: string;
|
||||||
templateId: string;
|
templateId: string;
|
||||||
rewards: Rewards;
|
rewards: Rewards;
|
||||||
|
/** Becomes 'AppearStatus' inside client */
|
||||||
status: string | number;
|
status: string | number;
|
||||||
KeyQuest: boolean;
|
KeyQuest: boolean;
|
||||||
changeQuestMessageText: string;
|
changeQuestMessageText: string;
|
||||||
|
/** "Pmc" or "Scav" */
|
||||||
side: string;
|
side: string;
|
||||||
}
|
}
|
||||||
export interface Conditions {
|
export interface Conditions {
|
||||||
@ -64,6 +69,7 @@ export interface AvailableForProps {
|
|||||||
zoneId?: string;
|
zoneId?: string;
|
||||||
type?: boolean;
|
type?: boolean;
|
||||||
countInRaid?: boolean;
|
countInRaid?: boolean;
|
||||||
|
globalQuestCounterId?: any;
|
||||||
}
|
}
|
||||||
export interface AvailableForCounter {
|
export interface AvailableForCounter {
|
||||||
id: string;
|
id: string;
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import { Ixyz } from "../Ixyz";
|
||||||
export interface ITemplateItem {
|
export interface ITemplateItem {
|
||||||
_id: string;
|
_id: string;
|
||||||
_name: string;
|
_name: string;
|
||||||
@ -36,6 +37,7 @@ export interface Props {
|
|||||||
IsUnremovable?: boolean;
|
IsUnremovable?: boolean;
|
||||||
IsLockedafterEquip?: boolean;
|
IsLockedafterEquip?: boolean;
|
||||||
IsSpecialSlotOnly?: boolean;
|
IsSpecialSlotOnly?: boolean;
|
||||||
|
IsStationaryWeapon?: boolean;
|
||||||
QuestItem?: boolean;
|
QuestItem?: boolean;
|
||||||
QuestStashMaxCount?: number;
|
QuestStashMaxCount?: number;
|
||||||
LootExperience?: number;
|
LootExperience?: number;
|
||||||
@ -200,11 +202,11 @@ export interface Props {
|
|||||||
CameraSnap?: number;
|
CameraSnap?: number;
|
||||||
ReloadMode?: string;
|
ReloadMode?: string;
|
||||||
AimPlane?: number;
|
AimPlane?: number;
|
||||||
TacticalReloadStiffnes?: Xyz;
|
TacticalReloadStiffnes?: Ixyz;
|
||||||
TacticalReloadFixation?: number;
|
TacticalReloadFixation?: number;
|
||||||
RecoilCenter?: Xyz;
|
RecoilCenter?: Ixyz;
|
||||||
RotationCenter?: Xyz;
|
RotationCenter?: Ixyz;
|
||||||
RotationCenterNoStock?: Xyz;
|
RotationCenterNoStock?: Ixyz;
|
||||||
FoldedSlot?: string;
|
FoldedSlot?: string;
|
||||||
CompactHandling?: boolean;
|
CompactHandling?: boolean;
|
||||||
MinRepairDegradation?: number;
|
MinRepairDegradation?: number;
|
||||||
@ -246,7 +248,7 @@ export interface Props {
|
|||||||
FaceShieldComponent?: boolean;
|
FaceShieldComponent?: boolean;
|
||||||
FaceShieldMask?: string;
|
FaceShieldMask?: string;
|
||||||
MaterialType?: string;
|
MaterialType?: string;
|
||||||
RicochetParams?: Xyz;
|
RicochetParams?: Ixyz;
|
||||||
DeafStrength?: string;
|
DeafStrength?: string;
|
||||||
BlindnessProtection?: number;
|
BlindnessProtection?: number;
|
||||||
Distortion?: number;
|
Distortion?: number;
|
||||||
@ -257,6 +259,7 @@ export interface Props {
|
|||||||
CutoffFreq?: number;
|
CutoffFreq?: number;
|
||||||
Resonance?: number;
|
Resonance?: number;
|
||||||
RolloffMultiplier?: number;
|
RolloffMultiplier?: number;
|
||||||
|
ReverbVolume: number;
|
||||||
CompressorVolume?: number;
|
CompressorVolume?: number;
|
||||||
AmbientVolume?: number;
|
AmbientVolume?: number;
|
||||||
DryVolume?: number;
|
DryVolume?: number;
|
||||||
@ -281,12 +284,12 @@ export interface Props {
|
|||||||
PrimaryConsumption?: number;
|
PrimaryConsumption?: number;
|
||||||
SecondryConsumption?: number;
|
SecondryConsumption?: number;
|
||||||
DeflectionConsumption?: number;
|
DeflectionConsumption?: number;
|
||||||
AppliedTrunkRotation?: Xyz;
|
AppliedTrunkRotation?: Ixyz;
|
||||||
AppliedHeadRotation?: Xyz;
|
AppliedHeadRotation?: Ixyz;
|
||||||
DisplayOnModel?: boolean;
|
DisplayOnModel?: boolean;
|
||||||
AdditionalAnimationLayer?: number;
|
AdditionalAnimationLayer?: number;
|
||||||
StaminaBurnRate?: number;
|
StaminaBurnRate?: number;
|
||||||
ColliderScaleMultiplier?: Xyz;
|
ColliderScaleMultiplier?: Ixyz;
|
||||||
ConfigPathStr?: string;
|
ConfigPathStr?: string;
|
||||||
MaxMarkersCount?: number;
|
MaxMarkersCount?: number;
|
||||||
scaleMin?: number;
|
scaleMin?: number;
|
||||||
@ -351,9 +354,9 @@ export interface Props {
|
|||||||
ShowHitEffectOnExplode?: boolean;
|
ShowHitEffectOnExplode?: boolean;
|
||||||
ExplosionType?: string;
|
ExplosionType?: string;
|
||||||
AmmoLifeTimeSec?: number;
|
AmmoLifeTimeSec?: number;
|
||||||
Contusion?: Xyz;
|
Contusion?: Ixyz;
|
||||||
ArmorDistanceDistanceDamage?: Xyz;
|
ArmorDistanceDistanceDamage?: Ixyz;
|
||||||
Blindness?: Xyz;
|
Blindness?: Ixyz;
|
||||||
IsLightAndSoundShot?: boolean;
|
IsLightAndSoundShot?: boolean;
|
||||||
LightAndSoundShotAngle?: number;
|
LightAndSoundShotAngle?: number;
|
||||||
LightAndSoundShotSelfContusionTime?: number;
|
LightAndSoundShotSelfContusionTime?: number;
|
||||||
@ -425,11 +428,6 @@ export interface SlotFilter {
|
|||||||
Filter: string[];
|
Filter: string[];
|
||||||
AnimationIndex?: number;
|
AnimationIndex?: number;
|
||||||
}
|
}
|
||||||
export interface Xyz {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
z: number;
|
|
||||||
}
|
|
||||||
export interface StackSlot {
|
export interface StackSlot {
|
||||||
_name?: string;
|
_name?: string;
|
||||||
_id: string;
|
_id: string;
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
export interface IAcceptFriendRequestData {
|
export interface IAcceptFriendRequestData extends IBaseFriendRequest {
|
||||||
|
}
|
||||||
|
export interface ICancelFriendRequestData extends IBaseFriendRequest {
|
||||||
|
}
|
||||||
|
export interface IBaseFriendRequest {
|
||||||
request_id: string;
|
request_id: string;
|
||||||
}
|
}
|
||||||
|
@ -1,16 +1,6 @@
|
|||||||
import { MemberCategory } from "../../enums/MemberCategory";
|
import { IUserDialogInfo } from "../profile/IAkiProfile";
|
||||||
export interface IGetFriendListDataResponse {
|
export interface IGetFriendListDataResponse {
|
||||||
Friends: Friend[];
|
Friends: IUserDialogInfo[];
|
||||||
Ignore: string[];
|
Ignore: string[];
|
||||||
InIgnoreList: string[];
|
InIgnoreList: string[];
|
||||||
}
|
}
|
||||||
export interface Friend {
|
|
||||||
_id: string;
|
|
||||||
Info: Info;
|
|
||||||
}
|
|
||||||
export interface Info {
|
|
||||||
Nickname: string;
|
|
||||||
Side: string;
|
|
||||||
Level: number;
|
|
||||||
MemberCategory: MemberCategory;
|
|
||||||
}
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { Message } from "../profile/IAkiProfile";
|
import { IUserDialogInfo, Message } from "../profile/IAkiProfile";
|
||||||
export interface IGetMailDialogViewResponseData {
|
export interface IGetMailDialogViewResponseData {
|
||||||
messages: Message[];
|
messages: Message[];
|
||||||
profiles: any[];
|
profiles: IUserDialogInfo[];
|
||||||
hasMessagesWithRewards: boolean;
|
hasMessagesWithRewards: boolean;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
|
import { PlayerRaidEndState } from "../../../models/enums/PlayerRaidEndState";
|
||||||
import { IPmcData } from "../common/IPmcData";
|
import { IPmcData } from "../common/IPmcData";
|
||||||
import { ISyncHealthRequestData } from "../health/ISyncHealthRequestData";
|
import { ISyncHealthRequestData } from "../health/ISyncHealthRequestData";
|
||||||
export interface ISaveProgressRequestData {
|
export interface ISaveProgressRequestData {
|
||||||
exit: string;
|
exit: PlayerRaidEndState;
|
||||||
profile: IPmcData;
|
profile: IPmcData;
|
||||||
isPlayerScav: boolean;
|
isPlayerScav: boolean;
|
||||||
health: ISyncHealthRequestData;
|
health: ISyncHealthRequestData;
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
export interface IAddItemRequestData {
|
export interface IAddItemRequestData {
|
||||||
|
/** Trader id */
|
||||||
tid: string;
|
tid: string;
|
||||||
items: AddItem[];
|
items: AddItem[];
|
||||||
}
|
}
|
||||||
|
@ -4,4 +4,5 @@ export interface IAddItemTempObject {
|
|||||||
count: number;
|
count: number;
|
||||||
isPreset: boolean;
|
isPreset: boolean;
|
||||||
location?: Location;
|
location?: Location;
|
||||||
|
containerId?: string;
|
||||||
}
|
}
|
||||||
|
5
TypeScript/2EditDatabase/types/models/eft/location/IAirdropLootResult.d.ts
vendored
Normal file
5
TypeScript/2EditDatabase/types/models/eft/location/IAirdropLootResult.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
import { LootItem } from "../../../models/spt/services/LootItem";
|
||||||
|
export interface IAirdropLootResult {
|
||||||
|
dropType: string;
|
||||||
|
loot: LootItem[];
|
||||||
|
}
|
@ -7,8 +7,13 @@ export interface INotifierChannel {
|
|||||||
ws: string;
|
ws: string;
|
||||||
}
|
}
|
||||||
export interface INotification {
|
export interface INotification {
|
||||||
type: "RagfairOfferSold" | "new_message" | "ping";
|
type: NotificationType;
|
||||||
eventId: string;
|
eventId: string;
|
||||||
dialogId?: string;
|
dialogId?: string;
|
||||||
message?: Message;
|
message?: Message;
|
||||||
}
|
}
|
||||||
|
export declare enum NotificationType {
|
||||||
|
RAGFAIR_OFFER_SOLD = "RagfairOfferSold",
|
||||||
|
NEW_MESSAGE = "new_message",
|
||||||
|
PING = "ping"
|
||||||
|
}
|
||||||
|
@ -5,6 +5,7 @@ import { Item } from "../common/tables/IItem";
|
|||||||
export interface IAkiProfile {
|
export interface IAkiProfile {
|
||||||
info: Info;
|
info: Info;
|
||||||
characters: Characters;
|
characters: Characters;
|
||||||
|
/** Clothing purchases */
|
||||||
suits: string[];
|
suits: string[];
|
||||||
weaponbuilds: WeaponBuild[];
|
weaponbuilds: WeaponBuild[];
|
||||||
dialogues: Record<string, Dialogue>;
|
dialogues: Record<string, Dialogue>;
|
||||||
@ -61,7 +62,7 @@ export interface DialogueInfo {
|
|||||||
_id: string;
|
_id: string;
|
||||||
type: MessageType;
|
type: MessageType;
|
||||||
pinned: boolean;
|
pinned: boolean;
|
||||||
Users?: any[];
|
Users?: IUserDialogInfo[];
|
||||||
message: MessagePreview;
|
message: MessagePreview;
|
||||||
}
|
}
|
||||||
export interface Message {
|
export interface Message {
|
||||||
@ -75,7 +76,7 @@ export interface Message {
|
|||||||
text?: string;
|
text?: string;
|
||||||
hasRewards: boolean;
|
hasRewards: boolean;
|
||||||
rewardCollected: boolean;
|
rewardCollected: boolean;
|
||||||
items: MessageItems;
|
items?: MessageItems;
|
||||||
maxStorageTime?: number;
|
maxStorageTime?: number;
|
||||||
systemData?: ISystemData;
|
systemData?: ISystemData;
|
||||||
profileChangeEvents?: any[];
|
profileChangeEvents?: any[];
|
||||||
@ -115,6 +116,7 @@ export interface DateTime {
|
|||||||
export interface Aki {
|
export interface Aki {
|
||||||
version: string;
|
version: string;
|
||||||
mods?: ModDetails[];
|
mods?: ModDetails[];
|
||||||
|
receivedGifts: ReceivedGift[];
|
||||||
}
|
}
|
||||||
export interface ModDetails {
|
export interface ModDetails {
|
||||||
name: string;
|
name: string;
|
||||||
@ -122,6 +124,10 @@ export interface ModDetails {
|
|||||||
author: string;
|
author: string;
|
||||||
dateAdded: number;
|
dateAdded: number;
|
||||||
}
|
}
|
||||||
|
export interface ReceivedGift {
|
||||||
|
giftId: string;
|
||||||
|
timestampAccepted: number;
|
||||||
|
}
|
||||||
export interface Vitality {
|
export interface Vitality {
|
||||||
health: Health;
|
health: Health;
|
||||||
effects: Effects;
|
effects: Effects;
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
export interface IGetItemPriceResult {
|
import { MinMax } from "../../../models/common/MinMax";
|
||||||
|
export interface IGetItemPriceResult extends MinMax {
|
||||||
avg: number;
|
avg: number;
|
||||||
min: number;
|
|
||||||
max: number;
|
|
||||||
}
|
}
|
||||||
|
@ -34,6 +34,7 @@ export declare enum BaseClasses {
|
|||||||
MAP = "567849dd4bdc2d150f8b456e",
|
MAP = "567849dd4bdc2d150f8b456e",
|
||||||
MONEY = "543be5dd4bdc2deb348b4569",
|
MONEY = "543be5dd4bdc2deb348b4569",
|
||||||
NIGHTVISION = "5a2c3a9486f774688b05e574",
|
NIGHTVISION = "5a2c3a9486f774688b05e574",
|
||||||
|
THERMAL_VISION = "5d21f59b6dbe99052b54ef83",
|
||||||
KEY = "543be5e94bdc2df1348b4568",
|
KEY = "543be5e94bdc2df1348b4568",
|
||||||
KEY_MECHANICAL = "5c99f98d86f7745c314214b3",
|
KEY_MECHANICAL = "5c99f98d86f7745c314214b3",
|
||||||
KEYCARD = "5c164d2286f774194c5e69fa",
|
KEYCARD = "5c164d2286f774194c5e69fa",
|
||||||
@ -91,5 +92,10 @@ export declare enum BaseClasses {
|
|||||||
SILENCER = "550aa4cd4bdc2dd8348b456c",
|
SILENCER = "550aa4cd4bdc2dd8348b456c",
|
||||||
PORTABLE_RANGE_FINDER = "61605ddea09d851a0a0c1bbc",
|
PORTABLE_RANGE_FINDER = "61605ddea09d851a0a0c1bbc",
|
||||||
ITEM = "54009119af1c881c07000029",
|
ITEM = "54009119af1c881c07000029",
|
||||||
CYLINDER_MAGAZINE = "610720f290b75a49ff2e5e25"
|
CYLINDER_MAGAZINE = "610720f290b75a49ff2e5e25",
|
||||||
|
AUXILARY_MOD = "5a74651486f7744e73386dd1",
|
||||||
|
BIPOD = "55818afb4bdc2dde698b456d",
|
||||||
|
HEADPHONES = "5645bcb74bdc2ded0b8b4578",
|
||||||
|
RANDOM_LOOT_CONTAINER = "62f109593b54472778797866",
|
||||||
|
STACKABLE_ITEM = "5661632d4bdc2d903d8b456b"
|
||||||
}
|
}
|
||||||
|
@ -21,5 +21,6 @@ export declare enum ConfigTypes {
|
|||||||
TRADER = "aki-trader",
|
TRADER = "aki-trader",
|
||||||
WEATHER = "aki-weather",
|
WEATHER = "aki-weather",
|
||||||
SEASONAL_EVENT = "aki-seasonalevents",
|
SEASONAL_EVENT = "aki-seasonalevents",
|
||||||
LOST_ON_DEATH = "aki-lostondeath"
|
LOST_ON_DEATH = "aki-lostondeath",
|
||||||
|
GIFTS = "aki-gifts"
|
||||||
}
|
}
|
||||||
|
5
TypeScript/2EditDatabase/types/models/enums/GiftSenderType.d.ts
vendored
Normal file
5
TypeScript/2EditDatabase/types/models/enums/GiftSenderType.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
export declare enum GiftSenderType {
|
||||||
|
SYSTEM = "System",
|
||||||
|
TRADER = "Trader",
|
||||||
|
USER = "User"
|
||||||
|
}
|
6
TypeScript/2EditDatabase/types/models/enums/GiftSentResult.d.ts
vendored
Normal file
6
TypeScript/2EditDatabase/types/models/enums/GiftSentResult.d.ts
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
export declare enum GiftSentResult {
|
||||||
|
FAILED_UNKNOWN = 1,
|
||||||
|
FAILED_GIFT_ALREADY_RECEIVED = 2,
|
||||||
|
FAILED_GIFT_DOESNT_EXIST = 3,
|
||||||
|
SUCCESS = 4
|
||||||
|
}
|
4
TypeScript/2EditDatabase/types/models/enums/ItemAddedResult.d.ts
vendored
Normal file
4
TypeScript/2EditDatabase/types/models/enums/ItemAddedResult.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
export declare enum ItemAddedResult {
|
||||||
|
SUCCESS = 1,
|
||||||
|
NO_SPACE = 2
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user