diff --git a/Libraries/SPTarkov.Server.Core/Generators/RagfairAssortGenerator.cs b/Libraries/SPTarkov.Server.Core/Generators/RagfairAssortGenerator.cs index e4ea6702..9ee5de6a 100644 --- a/Libraries/SPTarkov.Server.Core/Generators/RagfairAssortGenerator.cs +++ b/Libraries/SPTarkov.Server.Core/Generators/RagfairAssortGenerator.cs @@ -18,13 +18,12 @@ public class RagfairAssortGenerator( PresetHelper presetHelper, SeasonalEventService seasonalEventService, ConfigServer configServer, - ICloner _cloner + ICloner cloner ) { - protected List> generatedAssortItems = []; - protected RagfairConfig ragfairConfig = configServer.GetConfig(); + protected readonly RagfairConfig RagfairConfig = configServer.GetConfig(); - protected List ragfairItemInvalidBaseTypes = + protected readonly List RagfairItemInvalidBaseTypes = [ BaseClasses.LOOT_CONTAINER, // Safe, barrel cache etc BaseClasses.STASH, // Player inventory stash @@ -42,21 +41,7 @@ public class RagfairAssortGenerator( /// List with children lists of items public List> GetAssortItems() { - if (!AssortsAreGenerated()) - { - generatedAssortItems = GenerateRagfairAssortItems(); - } - - return generatedAssortItems; - } - - /// - /// Check if internal generatedAssortItems list has objects - /// - /// True if array has objects - protected bool AssortsAreGenerated() - { - return generatedAssortItems.Count > 0; + return GenerateRagfairAssortItems(); } /// @@ -79,7 +64,7 @@ public class RagfairAssortGenerator( foreach (var preset in presets) { // Update Ids and clone - var presetAndMods = itemHelper.ReplaceIDs(_cloner.Clone(preset.Items)); + var presetAndMods = itemHelper.ReplaceIDs(cloner.Clone(preset.Items)); itemHelper.RemapRootItemId(presetAndMods); // Add presets base item tpl to the processed list so its skipped later on when processing items @@ -99,14 +84,14 @@ public class RagfairAssortGenerator( foreach (var item in dbItemsClone) { - if (!itemHelper.IsValidItem(item.Id, ragfairItemInvalidBaseTypes)) + if (!itemHelper.IsValidItem(item.Id, RagfairItemInvalidBaseTypes)) { continue; } // Skip seasonal items when not in-season if ( - ragfairConfig.Dynamic.RemoveSeasonalItemsWhenNotInEvent && + RagfairConfig.Dynamic.RemoveSeasonalItemsWhenNotInEvent && !seasonalEventActive && seasonalItemTplBlacklist.Contains(item.Id) ) @@ -123,7 +108,7 @@ public class RagfairAssortGenerator( var ragfairAssort = CreateRagfairAssortRootItem( item.Id, item.Id - ); // tplid and id must be the same so hideout recipe rewards work + ); // tpl and id must be the same so hideout recipe rewards work results.Add([ragfairAssort]); } @@ -138,7 +123,7 @@ public class RagfairAssortGenerator( /// List of Preset protected List GetPresetsToAdd() { - return ragfairConfig.Dynamic.ShowDefaultPresetsOnly + return RagfairConfig.Dynamic.ShowDefaultPresetsOnly ? presetHelper.GetDefaultPresets().Values.ToList() : presetHelper.GetAllPresets(); }