Fix: Update types to fix error in example 12
This commit is contained in:
parent
36bba54334
commit
f56c0e1c5c
@ -1,8 +1,11 @@
|
||||
import { HideoutController } from "../controllers/HideoutController";
|
||||
import { RagfairController } from "../controllers/RagfairController";
|
||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
||||
import { IGlobals } from "../models/eft/common/IGlobals";
|
||||
import { ICustomizationItem } from "../models/eft/common/tables/ICustomizationItem";
|
||||
import { IHandbookBase } from "../models/eft/common/tables/IHandbookBase";
|
||||
import { IQuest } from "../models/eft/common/tables/IQuest";
|
||||
import { IGetItemPricesResponse } from "../models/eft/game/IGetItemPricesResponse";
|
||||
import { IHideoutArea } from "../models/eft/hideout/IHideoutArea";
|
||||
import { IHideoutProduction } from "../models/eft/hideout/IHideoutProduction";
|
||||
import { IHideoutScavCase } from "../models/eft/hideout/IHideoutScavCase";
|
||||
@ -17,7 +20,9 @@ import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||
export declare class DataCallbacks {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
constructor(httpResponse: HttpResponseUtil, databaseServer: DatabaseServer);
|
||||
protected ragfairController: RagfairController;
|
||||
protected hideoutController: HideoutController;
|
||||
constructor(httpResponse: HttpResponseUtil, databaseServer: DatabaseServer, ragfairController: RagfairController, hideoutController: HideoutController);
|
||||
/**
|
||||
* Handles client/settings
|
||||
* @returns ISettingsBase
|
||||
@ -56,4 +61,9 @@ export declare class DataCallbacks {
|
||||
getLocalesLanguages(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, string>>;
|
||||
getLocalesMenu(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
||||
getLocalesGlobal(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||
/**
|
||||
* Handle client/hideout/qte/list
|
||||
*/
|
||||
getQteList(url: string, info: IEmptyRequestData, sessionID: string): string;
|
||||
getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetItemPricesResponse>;
|
||||
}
|
||||
|
@ -7,10 +7,10 @@ import { ICreateGroupRequestData } from "../models/eft/match/ICreateGroupRequest
|
||||
import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData";
|
||||
import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData";
|
||||
import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData";
|
||||
import { IGetRaidConfigurationRequestData } from "../models/eft/match/IGetRaidConfigurationRequestData";
|
||||
import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData";
|
||||
import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult";
|
||||
import { IPutMetricsRequestData } from "../models/eft/match/IPutMetricsRequestData";
|
||||
import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData";
|
||||
import { IUpdatePingRequestData } from "../models/eft/match/IUpdatePingRequestData";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||
@ -41,6 +41,6 @@ export declare class MatchCallbacks {
|
||||
getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||
createGroup(url: string, info: ICreateGroupRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||
deleteGroup(url: string, info: any, sessionID: string): INullResponseData;
|
||||
startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData;
|
||||
endOfflineRaid(url: string, info: IEndOfflineRaidRequestData, sessionID: string): INullResponseData;
|
||||
getRaidConfiguration(url: string, info: IGetRaidConfigurationRequestData, sessionID: string): INullResponseData;
|
||||
}
|
||||
|
@ -33,10 +33,14 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate {
|
||||
getRoute(): string;
|
||||
search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData<IGetOffersResult>;
|
||||
getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData<IGetItemPriceResult>;
|
||||
getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, number>>;
|
||||
addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
removeOffer(pmcData: IPmcData, info: IRemoveOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
extendOffer(pmcData: IPmcData, info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
/**
|
||||
* Handle /client/items/prices
|
||||
* Called when clicking an item to list on flea
|
||||
*/
|
||||
getFleaPrices(url: string, request: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, number>>;
|
||||
onUpdate(timeSinceLastRun: number): Promise<boolean>;
|
||||
sendReport(url: string, info: ISendRagfairReportRequestData, sessionID: string): INullResponseData;
|
||||
}
|
||||
|
@ -2,7 +2,7 @@ export declare enum ContextVariableType {
|
||||
/** Logged in users session id */
|
||||
SESSION_ID = 0,
|
||||
/** Currently acive raid information */
|
||||
MATCH_INFO = 1,
|
||||
RAID_CONFIGURATION = 1,
|
||||
/** Timestamp when client first connected */
|
||||
CLIENT_START_TIMESTAMP = 2,
|
||||
/** When player is loading into map and loot is requested */
|
||||
|
@ -16,6 +16,7 @@ import { IHideoutTakeItemOutRequestData } from "../models/eft/hideout/IHideoutTa
|
||||
import { IHideoutTakeProductionRequestData } from "../models/eft/hideout/IHideoutTakeProductionRequestData";
|
||||
import { IHideoutToggleAreaRequestData } from "../models/eft/hideout/IHideoutToggleAreaRequestData";
|
||||
import { IHideoutUpgradeRequestData } from "../models/eft/hideout/IHideoutUpgradeRequestData";
|
||||
import { IQteData } from "../models/eft/hideout/IQteData";
|
||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
||||
import { IHideoutConfig } from "../models/spt/config/IHideoutConfig";
|
||||
import { ILogger } from "../models/spt/utils/ILogger";
|
||||
@ -102,5 +103,12 @@ export declare class HideoutController {
|
||||
*/
|
||||
protected handleScavCase(sessionID: string, pmcData: IPmcData, body: IHideoutTakeProductionRequestData, output: IItemEventRouterResponse): IItemEventRouterResponse;
|
||||
registerProduction(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData | IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
/**
|
||||
* Get quick time event list for hideout
|
||||
* // TODO - implement this
|
||||
* @param sessionId Session id
|
||||
* @returns IQteData array
|
||||
*/
|
||||
getQteList(sessionId: string): IQteData[];
|
||||
update(): void;
|
||||
}
|
||||
|
@ -6,10 +6,9 @@ import { ICreateGroupRequestData } from "../models/eft/match/ICreateGroupRequest
|
||||
import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData";
|
||||
import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData";
|
||||
import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData";
|
||||
import { IGetRaidConfigurationRequestData } from "../models/eft/match/IGetRaidConfigurationRequestData";
|
||||
import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData";
|
||||
import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult";
|
||||
import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData";
|
||||
import { BotDifficulty } from "../models/enums/BotDifficulty";
|
||||
import { IBotConfig } from "../models/spt/config/IBotConfig";
|
||||
import { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
||||
import { IMatchConfig } from "../models/spt/config/IMatchConfig";
|
||||
@ -46,12 +45,17 @@ export declare class MatchController {
|
||||
joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[];
|
||||
protected getMatch(location: string): any;
|
||||
getGroupStatus(info: IGetGroupStatusRequestData): any;
|
||||
startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void;
|
||||
/**
|
||||
* Handle /client/raid/configuration
|
||||
* @param request
|
||||
* @param sessionID
|
||||
*/
|
||||
startOfflineRaid(request: IGetRaidConfigurationRequestData, sessionID: string): void;
|
||||
/**
|
||||
* Convert a difficulty value from pre-raid screen to a bot difficulty
|
||||
* @param botDifficulty dropdown difficulty
|
||||
* @param botDifficulty dropdown difficulty value
|
||||
* @returns bot difficulty
|
||||
*/
|
||||
protected convertDifficultyDropdownIntoBotDifficulty(botDifficulty: BotDifficulty): string;
|
||||
protected convertDifficultyDropdownIntoBotDifficulty(botDifficulty: string): string;
|
||||
endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void;
|
||||
}
|
||||
|
@ -115,6 +115,7 @@ export declare class RagfairController {
|
||||
addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
createPlayerOffer(profile: IAkiProfile, requirements: Requirement[], items: Item[], sellInOnePiece: boolean, amountToSend: number): IRagfairOffer;
|
||||
getAllFleaPrices(): Record<string, number>;
|
||||
getStaticPrices(): Record<string, number>;
|
||||
removeOffer(offerId: string, sessionID: string): IItemEventRouterResponse;
|
||||
extendOffer(info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||
import { Item } from "../models/eft/common/tables/IItem";
|
||||
import { IAddItemRequestData } from "../models/eft/inventory/IAddItemRequestData";
|
||||
import { AddItem, IAddItemRequestData } from "../models/eft/inventory/IAddItemRequestData";
|
||||
import { IAddItemTempObject } from "../models/eft/inventory/IAddItemTempObject";
|
||||
import { IInventoryMergeRequestData } from "../models/eft/inventory/IInventoryMergeRequestData";
|
||||
import { IInventoryMoveRequestData } from "../models/eft/inventory/IInventoryMoveRequestData";
|
||||
import { IInventorySplitRequestData } from "../models/eft/inventory/IInventorySplitRequestData";
|
||||
@ -46,15 +47,41 @@ export declare class InventoryHelper {
|
||||
/**
|
||||
* BUG: Passing the same item multiple times with a count of 1 will cause multiples of that item to be added (e.g. x3 separate objects of tar cola with count of 1 = 9 tarcolas being added to inventory)
|
||||
* @param pmcData Profile to add items to
|
||||
* @param body request data to add items
|
||||
* @param request request data to add items
|
||||
* @param output response to send back to client
|
||||
* @param sessionID Session id
|
||||
* @param callback
|
||||
* @param callback Code to execute later (function)
|
||||
* @param foundInRaid Will results added to inventory be set as found in raid
|
||||
* @param addUpd Additional upd propertys for items being added to inventory
|
||||
* @returns IItemEventRouterResponse
|
||||
*/
|
||||
addItem(pmcData: IPmcData, body: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: any, foundInRaid?: boolean, addUpd?: any): IItemEventRouterResponse;
|
||||
addItem(pmcData: IPmcData, request: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: {
|
||||
(): void;
|
||||
}, foundInRaid?: boolean, addUpd?: any): IItemEventRouterResponse;
|
||||
/**
|
||||
* Add ammo to ammo boxes
|
||||
* @param itemToAdd Item to check is ammo box
|
||||
* @param toDo
|
||||
* @param output IItemEventRouterResponse object
|
||||
* @param sessionID Session id
|
||||
* @param pmcData Profile to add ammobox to
|
||||
*/
|
||||
protected hydrateAmmoBoxWithAmmo(pmcData: IPmcData, itemToAdd: IAddItemTempObject, toDo: string[][], sessionID: string, output: IItemEventRouterResponse): void;
|
||||
/**
|
||||
*
|
||||
* @param assortItems Items to add to inventory
|
||||
* @param requestItem Details of purchased item to add to inventory
|
||||
* @param result Array split stacks are added to
|
||||
*/
|
||||
protected splitStackIntoSmallerStacks(assortItems: Item[], requestItem: AddItem, result: IAddItemTempObject[]): void;
|
||||
/**
|
||||
* Remove item from player inventory
|
||||
* @param pmcData Profile to remove item from
|
||||
* @param itemId Items id to remove
|
||||
* @param sessionID Session id
|
||||
* @param output Existing IItemEventRouterResponse object to append data to, creates new one by default if not supplied
|
||||
* @returns IItemEventRouterResponse
|
||||
*/
|
||||
removeItem(pmcData: IPmcData, itemId: string, sessionID: string, output?: IItemEventRouterResponse): IItemEventRouterResponse;
|
||||
removeItemByCount(pmcData: IPmcData, itemId: string, count: number, sessionID: string, output?: IItemEventRouterResponse): IItemEventRouterResponse;
|
||||
getItemSize(itemTpl: string, itemID: string, inventoryItem: Item[]): Record<number, number>;
|
||||
|
@ -38,11 +38,11 @@ export declare class TradeHelper {
|
||||
/**
|
||||
* Sell item to trader
|
||||
* @param pmcData Profile to update
|
||||
* @param body
|
||||
* @param sessionID
|
||||
* @returns
|
||||
* @param sellRequest request data
|
||||
* @param sessionID Session id
|
||||
* @returns IItemEventRouterResponse
|
||||
*/
|
||||
sellItem(pmcData: IPmcData, body: IProcessSellTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
sellItem(pmcData: IPmcData, sellRequest: IProcessSellTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
/**
|
||||
* Increment the assorts buy count by number of items purchased
|
||||
* Show error on screen if player attepts to buy more than what the buy max allows
|
||||
|
@ -29,6 +29,8 @@ export interface Config {
|
||||
GlobalLootChanceModifier: number;
|
||||
TimeBeforeDeploy: number;
|
||||
TimeBeforeDeployLocal: number;
|
||||
TradingSetting: number;
|
||||
TradingSettings: ITradingSettings;
|
||||
LoadTimeSpeedProgress: number;
|
||||
BaseLoadTime: number;
|
||||
BaseUnloadTime: number;
|
||||
@ -36,6 +38,7 @@ export interface Config {
|
||||
Customization: Customization;
|
||||
UncheckOnShot: boolean;
|
||||
BotsEnabled: boolean;
|
||||
BufferZone: IBufferZone;
|
||||
ArmorMaterials: ArmorMaterials;
|
||||
LegsOverdamage: number;
|
||||
HandsOverdamage: number;
|
||||
@ -55,7 +58,6 @@ export interface Config {
|
||||
StaminaRestoration: StaminaRestoration;
|
||||
StaminaDrain: StaminaDrain;
|
||||
RequirementReferences: RequirementReferences;
|
||||
RepairKitSettings: RepairKitSettings;
|
||||
RestrictionsInRaid: RestrictionsInRaid[];
|
||||
SkillMinEffectiveness: number;
|
||||
SkillFatiguePerPoint: number;
|
||||
@ -83,6 +85,19 @@ export interface Config {
|
||||
Inertia: Inertia;
|
||||
Ballistic: Ballistic;
|
||||
}
|
||||
export interface IBufferZone {
|
||||
CustomerAccessTime: number;
|
||||
CustomerCriticalTimeStart: number;
|
||||
CustomerKickNotifTime: number;
|
||||
}
|
||||
export interface ITradingSettings {
|
||||
BuyoutRestrictions: IBuyoutRestrictions;
|
||||
}
|
||||
export interface IBuyoutRestrictions {
|
||||
MinDurability: number;
|
||||
MinFoodDrinkResource: number;
|
||||
MinMedsResource: number;
|
||||
}
|
||||
export interface Content {
|
||||
ip: string;
|
||||
port: number;
|
||||
@ -321,6 +336,8 @@ export interface Effects {
|
||||
Pain: Pain;
|
||||
PainKiller: PainKiller;
|
||||
SandingScreen: SandingScreen;
|
||||
MildMusclePain: IMusclePainEffect;
|
||||
SevereMusclePain: IMusclePainEffect;
|
||||
Stimulator: Stimulator;
|
||||
Tremor: Tremor;
|
||||
ChronicStaminaFatigue: ChronicStaminaFatigue;
|
||||
@ -457,6 +474,12 @@ export interface PainKiller {
|
||||
export interface SandingScreen {
|
||||
Dummy: number;
|
||||
}
|
||||
export interface IMusclePainEffect {
|
||||
GymEffectivity: number;
|
||||
OfflineDurationMax: number;
|
||||
OfflineDurationMin: number;
|
||||
TraumaChance: number;
|
||||
}
|
||||
export interface Stimulator {
|
||||
BuffLoopTime: number;
|
||||
Buffs: Buffs;
|
||||
@ -803,7 +826,7 @@ export interface SkillsSettings {
|
||||
HMG: any[];
|
||||
Launcher: any[];
|
||||
AttachedLauncher: any[];
|
||||
Melee: any[];
|
||||
Melee: IMeleeSkill;
|
||||
DMR: WeaponSkills;
|
||||
BearAssaultoperations: any[];
|
||||
BearAuthority: any[];
|
||||
@ -847,10 +870,25 @@ export interface SkillsSettings {
|
||||
BotSound: any[];
|
||||
TroubleShooting: TroubleShooting;
|
||||
}
|
||||
export interface IMeleeSkill {
|
||||
BuffSettings: IBuffSettings;
|
||||
}
|
||||
export interface ArmorSkills {
|
||||
BuffMaxCount: number;
|
||||
BuffSettings: IBuffSettings;
|
||||
Counters: IArmorCounters;
|
||||
MoveSpeedPenaltyReductionHVestsReducePerLevel: number;
|
||||
RicochetChanceHVestsCurrentDurabilityThreshold: number;
|
||||
RicochetChanceHVestsEliteLevel: number;
|
||||
RicochetChanceHVestsMaxDurabilityThreshold: number;
|
||||
MeleeDamageLVestsReducePerLevel: number;
|
||||
MoveSpeedPenaltyReductionLVestsReducePerLevel: number;
|
||||
WearAmountRepairLVestsReducePerLevel: number;
|
||||
WearChanceRepairLVestsReduceEliteLevel: number;
|
||||
}
|
||||
export interface IArmorCounters {
|
||||
armorDurability: ISkillCounter;
|
||||
}
|
||||
export interface HideoutManagement {
|
||||
SkillPointsPerAreaUpgrade: number;
|
||||
SkillPointsPerCraft: number;
|
||||
@ -907,6 +945,7 @@ export interface Endurance {
|
||||
MovementAction: number;
|
||||
SprintAction: number;
|
||||
GainPerFatigueStack: number;
|
||||
QTELevelMultipliers: Record<string, Record<string, number>>;
|
||||
}
|
||||
export interface Strength {
|
||||
SprintActionMin: number;
|
||||
@ -915,9 +954,14 @@ export interface Strength {
|
||||
MovementActionMax: number;
|
||||
PushUpMin: number;
|
||||
PushUpMax: number;
|
||||
QTELevelMultipliers: IQTELevelMultiplier[];
|
||||
FistfightAction: number;
|
||||
ThrowAction: number;
|
||||
}
|
||||
export interface IQTELevelMultiplier {
|
||||
Level: number;
|
||||
Multiplier: number;
|
||||
}
|
||||
export interface Vitality {
|
||||
DamageTakenAction: number;
|
||||
HealthNegativeEffect: number;
|
||||
@ -950,22 +994,42 @@ export interface Search {
|
||||
FindAction: number;
|
||||
}
|
||||
export interface WeaponTreatment {
|
||||
BuffMaxCount: number;
|
||||
BuffSettings: IBuffSettings;
|
||||
Counters: IWeaponTreatmentCounters;
|
||||
DurLossReducePerLevel: number;
|
||||
SkillPointsPerRepair: number;
|
||||
Filter: any[];
|
||||
WearAmountRepairGunsReducePerLevel: number;
|
||||
WearChanceRepairGunsReduceEliteLevel: number;
|
||||
}
|
||||
export interface IWeaponTreatmentCounters {
|
||||
firearmsDurability: ISkillCounter;
|
||||
}
|
||||
export interface IBuffSettings {
|
||||
CommonBuffChanceLevelBonus: number;
|
||||
CommonBuffMinChanceValue: number;
|
||||
CurrentDurabilityLossToRemoveBuff?: number;
|
||||
MaxDurabilityLossToRemoveBuff?: number;
|
||||
RareBuffChanceCoff: number;
|
||||
ReceivedDurabilityMaxPercent: number;
|
||||
}
|
||||
export interface MagDrills {
|
||||
RaidLoadedAmmoAction: number;
|
||||
RaidUnloadedAmmoAction: number;
|
||||
MagazineCheckAction: number;
|
||||
}
|
||||
export interface Perception {
|
||||
DependentSkillRatios: ISkillRatio[];
|
||||
OnlineAction: number;
|
||||
UniqueLoot: number;
|
||||
}
|
||||
export interface ISkillRatio {
|
||||
Ratio: number;
|
||||
SkillId: string;
|
||||
}
|
||||
export interface Intellect {
|
||||
Counters: IIntellectCounters;
|
||||
ExamineAction: number;
|
||||
SkillProgress: number;
|
||||
RepairAction: number;
|
||||
@ -973,16 +1037,52 @@ export interface Intellect {
|
||||
WearChanceReduceEliteLevel: number;
|
||||
RepairPointsCostReduction: number;
|
||||
}
|
||||
export interface IIntellectCounters {
|
||||
armorDurability: ISkillCounter;
|
||||
firearmsDurability: ISkillCounter;
|
||||
meleeWeaponDurability: ISkillCounter;
|
||||
}
|
||||
export interface ISkillCounter {
|
||||
divisor: number;
|
||||
points: number;
|
||||
}
|
||||
export interface Attention {
|
||||
DependentSkillRatios: ISkillRatio[];
|
||||
ExamineWithInstruction: number;
|
||||
FindActionFalse: number;
|
||||
FindActionTrue: number;
|
||||
}
|
||||
export interface Charisma {
|
||||
BonusSettings: IBonusSettings;
|
||||
Counters: ICharismaSkillCounters;
|
||||
SkillProgressInt: number;
|
||||
SkillProgressAtn: number;
|
||||
SkillProgressPer: number;
|
||||
}
|
||||
export interface ICharismaSkillCounters {
|
||||
insuranceCost: ISkillCounter;
|
||||
repairCost: ISkillCounter;
|
||||
repeatableQuestCompleteCount: ISkillCounter;
|
||||
restoredHealthCost: ISkillCounter;
|
||||
scavCaseCost: ISkillCounter;
|
||||
}
|
||||
export interface IBonusSettings {
|
||||
EliteBonusSettings: IEliteBonusSettings;
|
||||
LevelBonusSettings: ILevelBonusSettings;
|
||||
}
|
||||
export interface IEliteBonusSettings {
|
||||
FenceStandingLossDiscount: number;
|
||||
RepeatableQuestExtraCount: number;
|
||||
ScavCaseDiscount: number;
|
||||
}
|
||||
export interface ILevelBonusSettings {
|
||||
HealthRestoreDiscount: number;
|
||||
HealthRestoreTraderDiscount: number;
|
||||
InsuranceDiscount: number;
|
||||
InsuranceTraderDiscount: number;
|
||||
PaidExitDiscount: number;
|
||||
RepeatableQuestChangeDiscount: number;
|
||||
}
|
||||
export interface Memory {
|
||||
AnySkillUp: number;
|
||||
SkillProgress: number;
|
||||
@ -1145,11 +1245,30 @@ export interface xyz {
|
||||
export interface Ballistic {
|
||||
GlobalDamageDegradationCoefficient: number;
|
||||
}
|
||||
export interface RepairKitSettings {
|
||||
export interface RepairSettings {
|
||||
ItemEnhancementSettings: IItemEnhancementSettings;
|
||||
MinimumLevelToApplyBuff: number;
|
||||
RepairStrategies: IRepairStrategies;
|
||||
armorClassDivisor: number;
|
||||
durabilityPointCostArmor: number;
|
||||
durabilityPointCostGuns: number;
|
||||
}
|
||||
export interface IItemEnhancementSettings {
|
||||
DamageReduction: IPriceModifier;
|
||||
MalfunctionProtections: IPriceModifier;
|
||||
WeaponSpread: IPriceModifier;
|
||||
}
|
||||
export interface IPriceModifier {
|
||||
PriceModifier: number;
|
||||
}
|
||||
export interface IRepairStrategies {
|
||||
Armor: IRepairStrategy;
|
||||
Firearms: IRepairStrategy;
|
||||
}
|
||||
export interface IRepairStrategy {
|
||||
BuffTypes: string[];
|
||||
Filter: string[];
|
||||
}
|
||||
export interface BotPreset {
|
||||
UseThis: boolean;
|
||||
Role: string;
|
||||
|
@ -21,6 +21,7 @@ export interface IBotBase {
|
||||
Hideout: Hideout;
|
||||
Quests: Quest[];
|
||||
TradersInfo: Record<string, TraderInfo>;
|
||||
UnlockedInfo: IUnlockedInfo;
|
||||
RagfairInfo: RagfairInfo;
|
||||
RepeatableQuests: IPmcDataRepeatableQuest[];
|
||||
Bonuses: Bonus[];
|
||||
@ -31,6 +32,9 @@ export interface IBotBase {
|
||||
/** SPT specific property used during bot generation in raid */
|
||||
sptIsPmc?: boolean;
|
||||
}
|
||||
export interface IUnlockedInfo {
|
||||
unlockedProductionRecipe: string[];
|
||||
}
|
||||
export interface Info {
|
||||
EntryPoint: string;
|
||||
Nickname: string;
|
||||
@ -265,6 +269,11 @@ export interface InsuredItem {
|
||||
export interface Hideout {
|
||||
Production: Record<string, Productive>;
|
||||
Areas: HideoutArea[];
|
||||
Improvements: Record<string, IHideoutImprovement>;
|
||||
}
|
||||
export interface IHideoutImprovement {
|
||||
completed: boolean;
|
||||
improveCompleteTimestamp: number;
|
||||
}
|
||||
export interface Productive {
|
||||
Products: Product[];
|
||||
@ -331,6 +340,7 @@ export interface Quest {
|
||||
export interface TraderInfo {
|
||||
loyaltyLevel: number;
|
||||
salesSum: number;
|
||||
disabled: boolean;
|
||||
standing: number;
|
||||
nextResupply: number;
|
||||
unlocked: boolean;
|
||||
|
@ -98,7 +98,8 @@ export interface Location {
|
||||
y: number;
|
||||
r: string | number;
|
||||
isSearched?: boolean;
|
||||
rotation?: string;
|
||||
/** SPT property? */
|
||||
rotation?: string | boolean;
|
||||
}
|
||||
export interface SideEffect {
|
||||
Value: number;
|
||||
|
@ -15,6 +15,7 @@ export interface IQuest {
|
||||
image: string;
|
||||
type: string;
|
||||
isKey: boolean;
|
||||
questStatus: any;
|
||||
restartable: boolean;
|
||||
instantComplete: boolean;
|
||||
secretQuest: boolean;
|
||||
@ -43,6 +44,7 @@ export interface AvailableForProps {
|
||||
id: string;
|
||||
index: number;
|
||||
parentId: string;
|
||||
isEncoded: boolean;
|
||||
dynamicLocale: boolean;
|
||||
value?: number;
|
||||
compareMethod?: string;
|
||||
|
@ -29,8 +29,11 @@ export interface Props {
|
||||
IsUnsaleable?: boolean;
|
||||
IsUnbuyable?: boolean;
|
||||
IsUngivable?: boolean;
|
||||
IsUnremovable?: boolean;
|
||||
IsLockedafterEquip?: boolean;
|
||||
IsSpecialSlotOnly?: boolean;
|
||||
QuestItem?: boolean;
|
||||
QuestStashMaxCount?: number;
|
||||
LootExperience?: number;
|
||||
ExamineExperience?: number;
|
||||
HideEntrails?: boolean;
|
||||
@ -161,6 +164,7 @@ export interface Props {
|
||||
weaponErgonomicPenalty?: number;
|
||||
BluntThroughput?: number;
|
||||
ArmorMaterial?: string;
|
||||
ArmorType?: string;
|
||||
weapClass?: string;
|
||||
weapUseType?: string;
|
||||
ammoCaliber?: string;
|
||||
@ -365,6 +369,8 @@ export interface Props {
|
||||
CanBeHiddenDuringThrow?: boolean;
|
||||
MinTimeToContactExplode?: number;
|
||||
ExplosionEffectType?: string;
|
||||
LinkedWeapon?: string;
|
||||
UseAmmoWithoutShell?: boolean;
|
||||
}
|
||||
export interface IHealthEffect {
|
||||
type: string;
|
||||
|
@ -9,6 +9,7 @@ export interface ITrader {
|
||||
export interface ITraderBase {
|
||||
refreshTraderRagfairOffers: boolean;
|
||||
_id: string;
|
||||
availableInRaid: boolean;
|
||||
avatar: string;
|
||||
balance_dol: number;
|
||||
balance_eur: number;
|
||||
@ -20,6 +21,8 @@ export interface ITraderBase {
|
||||
discount_end: number;
|
||||
gridHeight: number;
|
||||
insurance: Insurance;
|
||||
items_buy: IItemBuyData;
|
||||
items_buy_prohibited: IItemBuyData;
|
||||
location: string;
|
||||
loyaltyLevels: LoyaltyLevel[];
|
||||
medic: boolean;
|
||||
@ -31,6 +34,10 @@ export interface ITraderBase {
|
||||
surname: string;
|
||||
unlockedByDefault: boolean;
|
||||
}
|
||||
export interface IItemBuyData {
|
||||
category: string[];
|
||||
id_list: string[];
|
||||
}
|
||||
export interface Insurance {
|
||||
availability: boolean;
|
||||
excluded_category: string[];
|
||||
|
5
TypeScript/12ClassExtensionOverride/types/models/eft/game/IGetItemPricesResponse.d.ts
vendored
Normal file
5
TypeScript/12ClassExtensionOverride/types/models/eft/game/IGetItemPricesResponse.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
export interface IGetItemPricesResponse {
|
||||
supplyNextTime: number;
|
||||
prices: Record<string, number>;
|
||||
currencyCourses: Record<string, number>;
|
||||
}
|
@ -3,23 +3,55 @@ export interface IHideoutArea {
|
||||
type: number;
|
||||
enabled: boolean;
|
||||
needsFuel: boolean;
|
||||
requirements: IAreaRequirement[];
|
||||
takeFromSlotLocked: boolean;
|
||||
craftGivesExp: boolean;
|
||||
displayLevel: boolean;
|
||||
enableAreaRequirements: boolean;
|
||||
stages: Record<string, Stage>;
|
||||
}
|
||||
export interface IAreaRequirement {
|
||||
areaType: number;
|
||||
requiredlevel: number;
|
||||
type: string;
|
||||
}
|
||||
export interface Stage {
|
||||
requirements: Requirement[];
|
||||
autoUpgrade: boolean;
|
||||
bonuses: StageBonus[];
|
||||
slots: number;
|
||||
constructionTime: number;
|
||||
description: string;
|
||||
displayInterface: boolean;
|
||||
improvements: IStageImprovement[];
|
||||
requirements: IStageRequirement[];
|
||||
slots: number;
|
||||
}
|
||||
export interface Requirement {
|
||||
export interface IStageImprovement {
|
||||
id: string;
|
||||
bonuses: IStageImprovementBonus[];
|
||||
improvementTime: number;
|
||||
requirements: IStageImprovementRequirement[];
|
||||
}
|
||||
export interface IStageImprovementBonus {
|
||||
passive: boolean;
|
||||
production: boolean;
|
||||
type: string;
|
||||
value: number;
|
||||
visible: boolean;
|
||||
}
|
||||
export interface IStageImprovementRequirement {
|
||||
count: number;
|
||||
isEncoded: boolean;
|
||||
isFunctional: boolean;
|
||||
templateId: string;
|
||||
type: string;
|
||||
}
|
||||
export interface IStageRequirement {
|
||||
areaType?: number;
|
||||
requiredLevel?: number;
|
||||
type: string;
|
||||
templateId?: string;
|
||||
count?: number;
|
||||
isEncoded: false;
|
||||
isFunctional?: boolean;
|
||||
traderId?: string;
|
||||
loyaltyLevel?: number;
|
||||
|
@ -3,8 +3,10 @@ export interface IHideoutProduction {
|
||||
areaType: number;
|
||||
requirements: Requirement[];
|
||||
productionTime: number;
|
||||
boosters?: any;
|
||||
endProduct: string;
|
||||
isEncoded: boolean;
|
||||
locked: boolean;
|
||||
needFuelForAllProductionTime: boolean;
|
||||
continuous: boolean;
|
||||
count: number;
|
||||
productionLimitCount: number;
|
||||
@ -12,6 +14,7 @@ export interface IHideoutProduction {
|
||||
export interface Requirement {
|
||||
templateId?: string;
|
||||
count?: number;
|
||||
isEncoded?: boolean;
|
||||
isFunctional?: boolean;
|
||||
type: string;
|
||||
areaType?: number;
|
||||
|
38
TypeScript/12ClassExtensionOverride/types/models/eft/hideout/IQteData.d.ts
vendored
Normal file
38
TypeScript/12ClassExtensionOverride/types/models/eft/hideout/IQteData.d.ts
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
export interface IQteData {
|
||||
Id: string;
|
||||
Type: string;
|
||||
Area: string;
|
||||
AreaLevel: number;
|
||||
QuickTimeEvents: IQuickTimeEvent[];
|
||||
Requirements: IQteRequirement[];
|
||||
Results: Record<string, IQteResult>;
|
||||
}
|
||||
export interface IQuickTimeEvent {
|
||||
Type: string;
|
||||
Position: number;
|
||||
StartDelay: number;
|
||||
EndDelay: number;
|
||||
Speed: number;
|
||||
SuccessRange: string;
|
||||
Key: string;
|
||||
}
|
||||
export interface IQteRequirement {
|
||||
type: string;
|
||||
}
|
||||
export interface IQteResult {
|
||||
Energy: number;
|
||||
Hydration: number;
|
||||
RewardsRange: IQteEffect[];
|
||||
}
|
||||
export interface IQteEffect {
|
||||
Type: string;
|
||||
SkillId: string;
|
||||
levelMultipliers: ISkillLevelMultiplier[];
|
||||
Time: number;
|
||||
Weight: number;
|
||||
Result: string;
|
||||
}
|
||||
export interface ISkillLevelMultiplier {
|
||||
level: number;
|
||||
multiplier: number;
|
||||
}
|
7
TypeScript/12ClassExtensionOverride/types/models/eft/inventory/IAddItemTempObject.d.ts
vendored
Normal file
7
TypeScript/12ClassExtensionOverride/types/models/eft/inventory/IAddItemTempObject.d.ts
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
import { Item, Location } from "../common/tables/IItem";
|
||||
export interface IAddItemTempObject {
|
||||
itemRef: Item;
|
||||
count: number;
|
||||
isPreset: boolean;
|
||||
location?: Location;
|
||||
}
|
30
TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetRaidConfigurationRequestData.d.ts
vendored
Normal file
30
TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetRaidConfigurationRequestData.d.ts
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
export interface IGetRaidConfigurationRequestData {
|
||||
timeVariant: string;
|
||||
raidMode: string;
|
||||
metabolismDisabled: boolean;
|
||||
playersSpawnPlace: string;
|
||||
timeAndWeatherSettings: TimeAndWeatherSettings;
|
||||
botSettings: BotSettings;
|
||||
wavesSettings: WavesSettings;
|
||||
location: string;
|
||||
}
|
||||
export interface TimeAndWeatherSettings {
|
||||
isRandomTime: boolean;
|
||||
isRandomWeather: boolean;
|
||||
cloudinessType: string;
|
||||
rainType: string;
|
||||
windType: string;
|
||||
fogType: string;
|
||||
timeFlowType: string;
|
||||
hourOfDay: number;
|
||||
}
|
||||
export interface BotSettings {
|
||||
isScavWars: boolean;
|
||||
botAmount: string;
|
||||
}
|
||||
export interface WavesSettings {
|
||||
botAmount: string;
|
||||
botDifficulty: string;
|
||||
isBosses: boolean;
|
||||
isTaggedAndCursed: boolean;
|
||||
}
|
@ -1,30 +0,0 @@
|
||||
import { BotAmount } from "../../enums/BotAmount";
|
||||
import { BotDifficulty } from "../../enums/BotDifficulty";
|
||||
export interface IStartOfflineRaidRequestData {
|
||||
locationName: string;
|
||||
/** Current time, not in-game time */
|
||||
startTime: number;
|
||||
/** CURR = am, past = pm */
|
||||
dateTime: "CURR" | "PAST";
|
||||
gameSettings: GameSettings;
|
||||
}
|
||||
export interface GameSettings {
|
||||
timeAndWeatherSettings: TimeAndWeatherSettings;
|
||||
botsSettings: BotsSettings;
|
||||
wavesSettings: WavesSettings;
|
||||
}
|
||||
export interface TimeAndWeatherSettings {
|
||||
isRandomTime: boolean;
|
||||
isRandomWeather: boolean;
|
||||
}
|
||||
export interface BotsSettings {
|
||||
isEnabled: boolean;
|
||||
isScavWars: boolean;
|
||||
botAmount: BotAmount;
|
||||
}
|
||||
export interface WavesSettings {
|
||||
botDifficulty: BotDifficulty;
|
||||
isBosses: boolean;
|
||||
isTaggedAndCursed: boolean;
|
||||
wavesBotAmount: BotAmount;
|
||||
}
|
@ -3,6 +3,7 @@ export interface IProcessSellTradeRequestData extends IProcessBaseTradeRequestDa
|
||||
Action: "sell_to_trader";
|
||||
type: string;
|
||||
tid: string;
|
||||
price: number;
|
||||
items: Item[];
|
||||
}
|
||||
export interface Item {
|
||||
|
@ -8,5 +8,6 @@ export declare enum ELocationName {
|
||||
LIGHTHOUSE = "Lighthouse",
|
||||
LABORATORY = "laboratory",
|
||||
RESERVE = "RezervBase",
|
||||
STREETS = "TarkovStreets",
|
||||
ANY = "any"
|
||||
}
|
||||
|
@ -21,5 +21,7 @@ export declare enum HideoutAreas {
|
||||
SOLAR_POWER = 18,
|
||||
BOOZE_GENERATOR = 19,
|
||||
BITCOIN_FARM = 20,
|
||||
CHRISTMAS_TREE = 21
|
||||
CHRISTMAS_TREE = 21,
|
||||
EMERGENCY_WALL = 22,
|
||||
GYM = 23
|
||||
}
|
||||
|
@ -6,5 +6,6 @@ export declare enum Traders {
|
||||
PEACEKEEPER = "5935c25fb3acc3127c3d8cd9",
|
||||
MECHANIC = "5a7c2eca46aef81a7ca2145d",
|
||||
RAGMAN = "5ac3b934156ae10c4430e83c",
|
||||
JAEGER = "5c0647fdd443bc2504c2d371"
|
||||
JAEGER = "5c0647fdd443bc2504c2d371",
|
||||
LIGHTHOUSEKEEPER = "638f541a29ffd1183d187f57"
|
||||
}
|
||||
|
@ -1,25 +0,0 @@
|
||||
import { IStartOfflineRaidRequestData } from "../../eft/match/IStartOffineRaidRequestData";
|
||||
import { IEndOfflineRaidRequestData } from "../../eft/match/IEndOfflineRaidRequestData";
|
||||
import { INullResponseData } from "../../eft/httpResponse/INullResponseData";
|
||||
import { IGetBodyResponseData } from "../../eft/httpResponse/IGetBodyResponseData";
|
||||
import { IPmcData } from "../../eft/common/IPmcData";
|
||||
export interface IMatchCallbacks {
|
||||
updatePing(url: string, info: any, sessionID: string): INullResponseData;
|
||||
exitMatch(url: string, info: any, sessionID: string): INullResponseData;
|
||||
exitToMenu(url: string, info: any, sessionID: string): INullResponseData;
|
||||
startGroupSearch(url: string, info: any, sessionID: string): INullResponseData;
|
||||
stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData;
|
||||
sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
||||
acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
||||
cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
||||
putMetrics(url: string, info: any, sessionID: string): INullResponseData;
|
||||
getProfile(url: string, info: any, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
||||
serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData<any> | IGetBodyResponseData<true>;
|
||||
joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
||||
getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData<string>;
|
||||
getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
||||
createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
||||
deleteGroup(url: string, info: any, sessionID: string): INullResponseData;
|
||||
startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData;
|
||||
endOfflineRaid(url: string, info: IEndOfflineRaidRequestData, sessionID: string): INullResponseData;
|
||||
}
|
@ -6,6 +6,8 @@ export interface IAirdropConfig extends IBaseConfig {
|
||||
planeMinFlyHeight: number;
|
||||
planeMaxFlyHeight: number;
|
||||
planeVolume: number;
|
||||
planeSpeed: number;
|
||||
crateFallSpeed: number;
|
||||
airdropMinStartTimeSeconds: number;
|
||||
airdropMaxStartTimeSeconds: number;
|
||||
loot: AirdropLoot;
|
||||
@ -17,6 +19,7 @@ export interface AirdropChancePercent {
|
||||
shoreline: number;
|
||||
interchange: number;
|
||||
reserve: number;
|
||||
tarkovStreets: number;
|
||||
}
|
||||
export interface AirdropLoot {
|
||||
presetCount: MinMax;
|
||||
|
@ -7,6 +7,7 @@ import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
||||
import { HideoutAreas } from "../models/enums/HideoutAreas";
|
||||
import { ILogger } from "../models/spt/utils/ILogger";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { TimeUtil } from "../utils/TimeUtil";
|
||||
import { Watermark } from "../utils/Watermark";
|
||||
import { LocalisationService } from "./LocalisationService";
|
||||
export declare class ProfileFixerService {
|
||||
@ -14,8 +15,9 @@ export declare class ProfileFixerService {
|
||||
protected watermark: Watermark;
|
||||
protected hideoutHelper: HideoutHelper;
|
||||
protected localisationService: LocalisationService;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
constructor(logger: ILogger, watermark: Watermark, hideoutHelper: HideoutHelper, localisationService: LocalisationService, databaseServer: DatabaseServer);
|
||||
constructor(logger: ILogger, watermark: Watermark, hideoutHelper: HideoutHelper, localisationService: LocalisationService, timeUtil: TimeUtil, databaseServer: DatabaseServer);
|
||||
/**
|
||||
* Find issues in the pmc profile data that may cause issues and fix them
|
||||
* @param pmcProfile profile to check and fix
|
||||
@ -32,6 +34,7 @@ export declare class ProfileFixerService {
|
||||
* @param pmcProfile profile to remove old counters from
|
||||
*/
|
||||
removeDanglingConditionCounters(pmcProfile: IPmcData): void;
|
||||
addLighthouseKeeperIfMissing(pmcProfile: IPmcData): void;
|
||||
protected removeDanglingBackendCounters(pmcProfile: IPmcData): void;
|
||||
protected getActiveRepeatableQuests(repeatableQuests: IPmcDataRepeatableQuest[]): IRepeatableQuest[];
|
||||
protected fixNullTraderSalesSums(pmcProfile: IPmcData): void;
|
||||
@ -85,4 +88,14 @@ export declare class ProfileFixerService {
|
||||
* @param pmcProfile Profile to check inventory of
|
||||
*/
|
||||
checkForOrphanedModdedItems(pmcProfile: IPmcData): void;
|
||||
/**
|
||||
* Add `Improvements` object to hideout if missing - added in eft 13.0.21469
|
||||
* @param pmcProfile profile to update
|
||||
*/
|
||||
addMissingUpgradesPropertyToHideout(pmcProfile: IPmcData): void;
|
||||
/**
|
||||
* Iterate over associated profile template and check all hideout areas exist, add if not
|
||||
* @param fullProfile Profile to update
|
||||
*/
|
||||
addMissingHideoutAreasToProfile(fullProfile: IAkiProfile): void;
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ export declare class RagfairPriceService implements OnLoad {
|
||||
* @returns Dictionary of item tpls and rouble cost
|
||||
*/
|
||||
getAllFleaPrices(): Record<string, number>;
|
||||
getAllStaticPrices(): Record<string, number>;
|
||||
/**
|
||||
* Get the percentage difference between two values
|
||||
* @param a numerical value a
|
||||
|
Loading…
x
Reference in New Issue
Block a user