From df5750cf0955d72259cef212c3db27d44f99134a Mon Sep 17 00:00:00 2001 From: Chris Adamson Date: Wed, 28 May 2025 15:01:10 -0500 Subject: [PATCH] fixes for my previous pr based on peer feedback --- .../Services/CircleOfCultistService.cs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Services/CircleOfCultistService.cs b/Libraries/SPTarkov.Server.Core/Services/CircleOfCultistService.cs index 4f33cf0d..8627eb9b 100644 --- a/Libraries/SPTarkov.Server.Core/Services/CircleOfCultistService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/CircleOfCultistService.cs @@ -510,10 +510,9 @@ public class CircleOfCultistService( ) { // Get sacrificed tpls - List sacrificedItemTpls = sacrificedItems.Select(item => item.Template).Where(i => i != null).ToList()!; - sacrificedItemTpls.Sort(); + IEnumerable sacrificedItemTpls = sacrificedItems.Select(item => item.Template).Where(item => item != null); // Create md5 key of the items player sacrificed so we can compare against the direct reward cache - var sacrificedItemsKey = CreateSacrificeCacheKey(sacrificedItemTpls); + string sacrificedItemsKey = CreateSacrificeCacheKey(sacrificedItemTpls); var matchingDirectReward = directRewardsCache.GetValueOrDefault(sacrificedItemsKey); if (matchingDirectReward is null) @@ -883,9 +882,9 @@ public class CircleOfCultistService( return requirements.Where(requirement => requirement.Type == "Item").ToList(); } - protected string CreateSacrificeCacheKey(List requiredItems) + protected string CreateSacrificeCacheKey(IEnumerable requiredItems) { - requiredItems.Sort(); + requiredItems.OrderBy(item => item); var concat = string.Join(",", requiredItems); return _hashUtil.GenerateMd5ForData(concat); @@ -901,7 +900,7 @@ public class CircleOfCultistService( var result = new Dictionary(); foreach (var rewardSettings in directRewards) { - var key = CreateSacrificeCacheKey(rewardSettings.RequiredItems); + string key = CreateSacrificeCacheKey(rewardSettings.RequiredItems); result[key] = rewardSettings; }