2023-03-03 16:23:46 +01:00
|
|
|
import { MinMax } from "../../../models/common/MinMax";
|
|
|
|
import { IBaseConfig } from "./IBaseConfig";
|
|
|
|
|
|
|
|
export interface ITraderConfig extends IBaseConfig
|
|
|
|
{
|
|
|
|
kind: "aki-trader"
|
|
|
|
updateTime: UpdateTime[]
|
|
|
|
purchasesAreFoundInRaid: boolean;
|
|
|
|
updateTimeDefault: number
|
|
|
|
traderPriceMultipler: number
|
2023-07-18 16:45:57 +02:00
|
|
|
/** Keep track of purchased trader-limited items beyond server restarts to prevent server-restart item scumming */
|
2023-03-03 16:23:46 +01:00
|
|
|
persistPurchaseDataInProfile: boolean
|
|
|
|
fence: FenceConfig
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface UpdateTime
|
|
|
|
{
|
|
|
|
traderId: string
|
|
|
|
seconds: number
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface FenceConfig
|
|
|
|
{
|
|
|
|
discountOptions: DiscountOptions
|
|
|
|
partialRefreshTimeSeconds: number
|
|
|
|
partialRefreshChangePercent: number
|
|
|
|
assortSize: number
|
|
|
|
maxPresetsPercent: number
|
|
|
|
itemPriceMult: number
|
|
|
|
presetPriceMult: number
|
|
|
|
armorMaxDurabilityPercentMinMax: MinMax
|
|
|
|
presetMaxDurabilityPercentMinMax: MinMax
|
|
|
|
itemTypeLimits: Record<string, number>
|
|
|
|
regenerateAssortsOnRefresh: boolean
|
|
|
|
blacklist: string[]
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface DiscountOptions
|
|
|
|
{
|
|
|
|
assortSize: number
|
|
|
|
itemPriceMult: number
|
|
|
|
presetPriceMult: number
|
|
|
|
}
|