Block seasonal items when not inside active season (christmas/halloween so far)
This commit is contained in:
parent
c3a4caa38a
commit
a04113eaa1
@ -13,6 +13,7 @@ import { ILogger } from "../models/spt/utils/ILogger";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { ItemFilterService } from "../services/ItemFilterService";
|
||||
import { SeasonalEventService } from "../services/SeasonalEventService";
|
||||
|
||||
@injectable()
|
||||
export class FenceBaseAssortGenerator
|
||||
@ -25,6 +26,7 @@ export class FenceBaseAssortGenerator
|
||||
@inject("HandbookHelper") protected handbookHelper: HandbookHelper,
|
||||
@inject("ItemHelper") protected itemHelper: ItemHelper,
|
||||
@inject("ItemFilterService") protected itemFilterService: ItemFilterService,
|
||||
@inject("SeasonalEventService") protected seasonalEventService: SeasonalEventService,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer
|
||||
)
|
||||
{
|
||||
@ -36,6 +38,8 @@ export class FenceBaseAssortGenerator
|
||||
*/
|
||||
public generateFenceBaseAssorts(): void
|
||||
{
|
||||
const blockedSeasonalItems = this.seasonalEventService.getSeasonalEventItemsToBlock();
|
||||
|
||||
const baseFenceAssort = this.databaseServer.getTables().traders[Traders.FENCE].assort;
|
||||
|
||||
const dbItems = Object.values(this.databaseServer.getTables().templates.items);
|
||||
@ -68,6 +72,12 @@ export class FenceBaseAssortGenerator
|
||||
}
|
||||
}
|
||||
|
||||
// Skip seasonal event items when not in seasonal event
|
||||
if (blockedSeasonalItems.includes(item._id))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
// Create barter scheme object
|
||||
const barterSchemeToAdd: IBarterScheme = {
|
||||
count: Math.round(this.handbookHelper.getTemplatePrice(item._id) * this.traderConfig.fence.itemPriceMult),
|
||||
|
@ -118,7 +118,7 @@ export class SeasonalEventService
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an array of seasonal items that should be blocked as seasonal is not active
|
||||
* Get an array of seasonal items that should be blocked as season is not currently active
|
||||
* @returns Array of tpl strings
|
||||
*/
|
||||
public getSeasonalEventItemsToBlock(): string[]
|
||||
|
Loading…
x
Reference in New Issue
Block a user