Rename function getAllSeasonalEventItems()
to getInactiveSeasonalEventItems()
This commit is contained in:
parent
fc5eabc73d
commit
37b7712602
@ -152,8 +152,7 @@ export class BotGenerator
|
|||||||
|
|
||||||
bot.Info.Nickname = this.generateBotNickname(botJsonTemplate, botGenerationDetails.isPlayerScav, botRole, sessionId);
|
bot.Info.Nickname = this.generateBotNickname(botJsonTemplate, botGenerationDetails.isPlayerScav, botRole, sessionId);
|
||||||
|
|
||||||
const skipChristmasItems = !this.seasonalEventService.christmasEventEnabled();
|
if (!this.seasonalEventService.christmasEventEnabled())
|
||||||
if (skipChristmasItems)
|
|
||||||
{
|
{
|
||||||
this.seasonalEventService.removeChristmasItemsFromBotInventory(botJsonTemplate.inventory, botGenerationDetails.role);
|
this.seasonalEventService.removeChristmasItemsFromBotInventory(botJsonTemplate.inventory, botGenerationDetails.role);
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,7 @@ export class FenceBaseAssortGenerator
|
|||||||
*/
|
*/
|
||||||
public generateFenceBaseAssorts(): void
|
public generateFenceBaseAssorts(): void
|
||||||
{
|
{
|
||||||
const blockedSeasonalItems = this.seasonalEventService.getAllSeasonalEventItems();
|
const blockedSeasonalItems = this.seasonalEventService.getInactiveSeasonalEventItems();
|
||||||
|
|
||||||
const baseFenceAssort = this.databaseServer.getTables().traders[Traders.FENCE].assort;
|
const baseFenceAssort = this.databaseServer.getTables().traders[Traders.FENCE].assort;
|
||||||
|
|
||||||
|
@ -431,7 +431,7 @@ export class LocationGenerator
|
|||||||
protected getPossibleLootItemsForContainer(containerTypeId: string, staticLootDist: Record<string, IStaticLootDetails>): ProbabilityObjectArray<string, number>
|
protected getPossibleLootItemsForContainer(containerTypeId: string, staticLootDist: Record<string, IStaticLootDetails>): ProbabilityObjectArray<string, number>
|
||||||
{
|
{
|
||||||
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
||||||
const seasonalItemTplBlacklist = this.seasonalEventService.getAllSeasonalEventItems();
|
const seasonalItemTplBlacklist = this.seasonalEventService.getInactiveSeasonalEventItems();
|
||||||
|
|
||||||
const itemDistribution = new ProbabilityObjectArray<string>(this.mathUtil, this.jsonUtil);
|
const itemDistribution = new ProbabilityObjectArray<string>(this.mathUtil, this.jsonUtil);
|
||||||
for (const icd of staticLootDist[containerTypeId].itemDistribution)
|
for (const icd of staticLootDist[containerTypeId].itemDistribution)
|
||||||
@ -533,7 +533,7 @@ export class LocationGenerator
|
|||||||
|
|
||||||
// Iterate over spawnpoints
|
// Iterate over spawnpoints
|
||||||
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
||||||
const seasonalItemTplBlacklist = this.seasonalEventService.getAllSeasonalEventItems();
|
const seasonalItemTplBlacklist = this.seasonalEventService.getInactiveSeasonalEventItems();
|
||||||
for (const spawnPoint of chosenSpawnpoints)
|
for (const spawnPoint of chosenSpawnpoints)
|
||||||
{
|
{
|
||||||
if (!spawnPoint.template)
|
if (!spawnPoint.template)
|
||||||
@ -623,7 +623,7 @@ export class LocationGenerator
|
|||||||
}
|
}
|
||||||
|
|
||||||
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
||||||
const seasonalItemTplBlacklist = this.seasonalEventService.getAllSeasonalEventItems();
|
const seasonalItemTplBlacklist = this.seasonalEventService.getInactiveSeasonalEventItems();
|
||||||
// Add remaining forced loot to array
|
// Add remaining forced loot to array
|
||||||
for (const forcedLootItem of forcedSpawnPoints)
|
for (const forcedLootItem of forcedSpawnPoints)
|
||||||
{
|
{
|
||||||
|
@ -53,7 +53,7 @@ export class PMCLootGenerator
|
|||||||
if (!this.seasonalEventService.seasonalEventEnabled())
|
if (!this.seasonalEventService.seasonalEventEnabled())
|
||||||
{
|
{
|
||||||
// Blacklist seasonal items
|
// Blacklist seasonal items
|
||||||
itemBlacklist.push(...this.seasonalEventService.getAllSeasonalEventItems());
|
itemBlacklist.push(...this.seasonalEventService.getInactiveSeasonalEventItems());
|
||||||
}
|
}
|
||||||
|
|
||||||
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
||||||
@ -89,7 +89,7 @@ export class PMCLootGenerator
|
|||||||
if (!this.seasonalEventService.seasonalEventEnabled())
|
if (!this.seasonalEventService.seasonalEventEnabled())
|
||||||
{
|
{
|
||||||
// Blacklist seasonal items
|
// Blacklist seasonal items
|
||||||
itemBlacklist.push(...this.seasonalEventService.getAllSeasonalEventItems());
|
itemBlacklist.push(...this.seasonalEventService.getInactiveSeasonalEventItems());
|
||||||
}
|
}
|
||||||
|
|
||||||
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
||||||
@ -134,7 +134,7 @@ export class PMCLootGenerator
|
|||||||
if (!this.seasonalEventService.seasonalEventEnabled())
|
if (!this.seasonalEventService.seasonalEventEnabled())
|
||||||
{
|
{
|
||||||
// Blacklist seasonal items
|
// Blacklist seasonal items
|
||||||
itemBlacklist.push(...this.seasonalEventService.getAllSeasonalEventItems());
|
itemBlacklist.push(...this.seasonalEventService.getInactiveSeasonalEventItems());
|
||||||
}
|
}
|
||||||
|
|
||||||
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
const itemsToAdd = Object.values(items).filter(item => allowedItemTypes.includes(item._parent)
|
||||||
|
@ -76,7 +76,7 @@ export class RagfairAssortGenerator
|
|||||||
];
|
];
|
||||||
|
|
||||||
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
const seasonalEventActive = this.seasonalEventService.seasonalEventEnabled();
|
||||||
const seasonalItemTplBlacklist = this.seasonalEventService.getAllSeasonalEventItems();
|
const seasonalItemTplBlacklist = this.seasonalEventService.getInactiveSeasonalEventItems();
|
||||||
for (const item of items)
|
for (const item of items)
|
||||||
{
|
{
|
||||||
if (!this.itemHelper.isValidItem(item._id, ragfairItemInvalidBaseTypes))
|
if (!this.itemHelper.isValidItem(item._id, ragfairItemInvalidBaseTypes))
|
||||||
|
@ -105,11 +105,12 @@ export class SeasonalEventService
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get an array of items that appear during a seasonal event
|
* Get an array of seasonal items that should not appear
|
||||||
* returns multiple seasonal event items if they are both active
|
* e.g. if halloween is active, only return christmas items
|
||||||
|
* or, if halloween and christmas are inactive, return both sets of items
|
||||||
* @returns array of tpl strings
|
* @returns array of tpl strings
|
||||||
*/
|
*/
|
||||||
public getAllSeasonalEventItems(): string[]
|
public getInactiveSeasonalEventItems(): string[]
|
||||||
{
|
{
|
||||||
const items = [];
|
const items = [];
|
||||||
if (!this.christmasEventEnabled())
|
if (!this.christmasEventEnabled())
|
||||||
@ -237,10 +238,10 @@ export class SeasonalEventService
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Iterate through bots inventory and loot to find and remove christmas items (as defined in SeasonalEventService)
|
* Iterate through bots inventory and loot to find and remove christmas items (as defined in SeasonalEventService)
|
||||||
* @param nodeInventory Bots inventory to iterate over
|
* @param botInventory Bots inventory to iterate over
|
||||||
* @param botRole the role of the bot being processed
|
* @param botRole the role of the bot being processed
|
||||||
*/
|
*/
|
||||||
public removeChristmasItemsFromBotInventory(nodeInventory: Inventory, botRole: string): void
|
public removeChristmasItemsFromBotInventory(botInventory: Inventory, botRole: string): void
|
||||||
{
|
{
|
||||||
const christmasItems = this.getChristmasEventItems();
|
const christmasItems = this.getChristmasEventItems();
|
||||||
const equipmentSlotsToFilter = ["FaceCover", "Headwear", "Backpack", "TacticalVest"];
|
const equipmentSlotsToFilter = ["FaceCover", "Headwear", "Backpack", "TacticalVest"];
|
||||||
@ -249,25 +250,25 @@ export class SeasonalEventService
|
|||||||
// Remove christmas related equipment
|
// Remove christmas related equipment
|
||||||
for (const equipmentSlotKey of equipmentSlotsToFilter)
|
for (const equipmentSlotKey of equipmentSlotsToFilter)
|
||||||
{
|
{
|
||||||
if (!nodeInventory.equipment[equipmentSlotKey])
|
if (!botInventory.equipment[equipmentSlotKey])
|
||||||
{
|
{
|
||||||
this.logger.warning(this.localisationService.getText("seasonal-missing_equipment_slot_on_bot", {equipmentSlot: equipmentSlotKey, botRole: botRole}));
|
this.logger.warning(this.localisationService.getText("seasonal-missing_equipment_slot_on_bot", {equipmentSlot: equipmentSlotKey, botRole: botRole}));
|
||||||
}
|
}
|
||||||
|
|
||||||
const equipment: Record<string, number> = nodeInventory.equipment[equipmentSlotKey];
|
const equipment: Record<string, number> = botInventory.equipment[equipmentSlotKey];
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||||
nodeInventory.equipment[equipmentSlotKey] = Object.fromEntries(Object.entries(equipment).filter(([index]) => !christmasItems.includes(index)));
|
botInventory.equipment[equipmentSlotKey] = Object.fromEntries(Object.entries(equipment).filter(([index]) => !christmasItems.includes(index)));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove christmas related loot from loot containers
|
// Remove christmas related loot from loot containers
|
||||||
for (const lootContainerKey of lootContainersToFilter)
|
for (const lootContainerKey of lootContainersToFilter)
|
||||||
{
|
{
|
||||||
if (!nodeInventory.items[lootContainerKey])
|
if (!botInventory.items[lootContainerKey])
|
||||||
{
|
{
|
||||||
this.logger.warning(this.localisationService.getText("seasonal-missing_loot_container_slot_on_bot", {lootContainer: lootContainerKey, botRole: botRole}));
|
this.logger.warning(this.localisationService.getText("seasonal-missing_loot_container_slot_on_bot", {lootContainer: lootContainerKey, botRole: botRole}));
|
||||||
}
|
}
|
||||||
|
|
||||||
nodeInventory.items[lootContainerKey] = nodeInventory.items[lootContainerKey].filter((x: string) => !christmasItems.includes(x));
|
botInventory.items[lootContainerKey] = botInventory.items[lootContainerKey].filter((x: string) => !christmasItems.includes(x));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user