2024-04-03 20:15:11 +11:00
|
|
|
import { SellResult } from "@spt-aki/models/eft/ragfair/IRagfairOffer";
|
|
|
|
import { IRagfairConfig } from "@spt-aki/models/spt/config/IRagfairConfig";
|
|
|
|
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
|
|
|
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
|
|
|
import { DatabaseServer } from "@spt-aki/servers/DatabaseServer";
|
|
|
|
import { RandomUtil } from "@spt-aki/utils/RandomUtil";
|
|
|
|
import { TimeUtil } from "@spt-aki/utils/TimeUtil";
|
2023-06-11 15:10:34 +10:00
|
|
|
export declare class RagfairSellHelper {
|
|
|
|
protected logger: ILogger;
|
|
|
|
protected randomUtil: RandomUtil;
|
|
|
|
protected timeUtil: TimeUtil;
|
2024-04-03 20:15:11 +11:00
|
|
|
protected databaseServer: DatabaseServer;
|
2023-06-11 15:10:34 +10:00
|
|
|
protected configServer: ConfigServer;
|
|
|
|
protected ragfairConfig: IRagfairConfig;
|
2024-04-03 20:15:11 +11:00
|
|
|
constructor(logger: ILogger, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, configServer: ConfigServer);
|
2023-06-11 15:10:34 +10:00
|
|
|
/**
|
|
|
|
* Get the percent chance to sell an item based on its average listed price vs player chosen listing price
|
|
|
|
* @param averageOfferPriceRub Price of average offer in roubles
|
|
|
|
* @param playerListedPriceRub Price player listed item for in roubles
|
2023-10-09 20:21:00 +11:00
|
|
|
* @param qualityMultiplier Quality multipler of item being sold
|
2023-06-11 15:10:34 +10:00
|
|
|
* @returns percent value
|
|
|
|
*/
|
2023-10-09 20:21:00 +11:00
|
|
|
calculateSellChance(averageOfferPriceRub: number, playerListedPriceRub: number, qualityMultiplier: number): number;
|
2023-06-11 15:10:34 +10:00
|
|
|
/**
|
|
|
|
* Get array of item count and sell time (empty array = no sell)
|
|
|
|
* @param sellChancePercent chance item will sell
|
|
|
|
* @param itemSellCount count of items to sell
|
|
|
|
* @returns Array of purchases of item(s) listed
|
|
|
|
*/
|
|
|
|
rollForSale(sellChancePercent: number, itemSellCount: number): SellResult[];
|
|
|
|
}
|