Add slow sales feature

This commit is contained in:
Platinum 2024-04-13 16:06:38 +10:00
parent 42d87ddc13
commit 27613fd5bf
3 changed files with 14 additions and 1 deletions

View File

@ -27,6 +27,12 @@
// Overrides ragfairConfig.runIntervalValues.outOfRaid if config.enableFasterSales is true. Default 3s. // Overrides ragfairConfig.runIntervalValues.outOfRaid if config.enableFasterSales is true. Default 3s.
"runIntervalSecondsOverride": 3, "runIntervalSecondsOverride": 3,
// Sale times when slower sales is enabled.
"slowerSalesTime": {
"min": 5,
"max": 10
},
// When config.enableScarceOffers is true, use these values to limit the number of offers on the flea. // When config.enableScarceOffers is true, use these values to limit the number of offers on the flea.
"offerItemCountOverride": { "offerItemCountOverride": {
"max": 4, "max": 4,

View File

@ -5,6 +5,9 @@
// Make cheap offers sell faster. Default true. // Make cheap offers sell faster. Default true.
"enableFasterSales": true, "enableFasterSales": true,
// Makes your sales go through slower. Encourages you to sell some items in bulk instead of selling everything to the flea. Around 5 mins. Overwrites `enableFasterSales` if this is true. Default false.
"enableSlowerSales": false,
// Reduces the number of offers and quantities per offer to make the flea experience more hardcore. Highly recommend to enable but default is false. // Reduces the number of offers and quantities per offer to make the flea experience more hardcore. Highly recommend to enable but default is false.
"enableScarceOffers": false, "enableScarceOffers": false,

View File

@ -123,10 +123,14 @@ class TheBlacklistMod implements IPostDBLoadModAsync {
ragfairConfig.dynamic.useTraderPriceForOffersIfHigher = !!this.advancedConfig.useTraderPriceForOffersIfHigher; ragfairConfig.dynamic.useTraderPriceForOffersIfHigher = !!this.advancedConfig.useTraderPriceForOffersIfHigher;
} }
if (this.config.enableFasterSales && !isNaN(this.advancedConfig.runIntervalSecondsOverride)) { if (!this.config.enableSlowerSales && this.config.enableFasterSales && !isNaN(this.advancedConfig.runIntervalSecondsOverride)) {
ragfairConfig.runIntervalValues.outOfRaid = this.advancedConfig.runIntervalSecondsOverride; ragfairConfig.runIntervalValues.outOfRaid = this.advancedConfig.runIntervalSecondsOverride;
} }
if (this.config.enableSlowerSales && this.advancedConfig.slowerSalesTime) {
ragfairConfig.sell.time = this.advancedConfig.slowerSalesTime;
}
if (this.config.enableScarceOffers) { if (this.config.enableScarceOffers) {
this.updateRagfairConfigToHaveScarceOffers(ragfairConfig); this.updateRagfairConfigToHaveScarceOffers(ragfairConfig);
} }