diff --git a/Libraries/SPTarkov.Server.Core/Generators/RagfairOfferGenerator.cs b/Libraries/SPTarkov.Server.Core/Generators/RagfairOfferGenerator.cs index 5b06fab7..f82fd3d2 100644 --- a/Libraries/SPTarkov.Server.Core/Generators/RagfairOfferGenerator.cs +++ b/Libraries/SPTarkov.Server.Core/Generators/RagfairOfferGenerator.cs @@ -277,32 +277,6 @@ public class RagfairOfferGenerator( ); } - /// - /// Is the offers user rating growing - /// - /// User to check rating of - /// True if growing - protected bool GetRatingGrowing(MongoId userID) - { - if (profileHelper.IsPlayer(userID)) - // player offer - { - return saveServer - .GetProfile(userID) - .CharacterData?.PmcData?.RagfairInfo?.IsRatingGrowing ?? false; - } - - if (ragfairServerHelper.IsTrader(userID)) - // trader offer - { - return true; - } - - // generated offer - // 50/50 growing/falling - return randomUtil.GetBool(); - } - /// /// Get number of section until offer should expire /// @@ -438,7 +412,8 @@ public class RagfairOfferGenerator( clonedAssort, isPreset, itemToSellDetails.Value, - isExpiredOffer + isExpiredOffer, + OfferCreator.FakePlayer ); } } @@ -499,12 +474,14 @@ public class RagfairOfferGenerator( /// Is item a weapon preset /// Raw DB item details /// Offer being created is to replace an expired, existing offer + /// What type of entity created this offer protected void CreateSingleOfferForItem( MongoId sellerId, List itemWithChildren, bool isPreset, TemplateItem itemToSellDetails, - bool isExpiredOffer + bool isExpiredOffer, + OfferCreator offerCreator ) { var rootItem = itemWithChildren.FirstOrDefault(); @@ -553,7 +530,12 @@ public class RagfairOfferGenerator( else if (isBarterOffer) { // Apply randomised properties - RandomiseOfferItemUpdProperties(sellerId, itemWithChildren, itemToSellDetails); + RandomiseOfferItemUpdProperties( + sellerId, + itemWithChildren, + itemToSellDetails, + offerCreator + ); barterScheme = CreateBarterBarterScheme(itemWithChildren, ragfairConfig.Dynamic.Barter); if (ragfairConfig.Dynamic.Barter.MakeSingleStackOnly) { @@ -568,7 +550,12 @@ public class RagfairOfferGenerator( { // Not barter or pack offer // Apply randomised properties - RandomiseOfferItemUpdProperties(sellerId, itemWithChildren, itemToSellDetails); + RandomiseOfferItemUpdProperties( + sellerId, + itemWithChildren, + itemToSellDetails, + offerCreator + ); barterScheme = CreateCurrencyBarterScheme(itemWithChildren, isPackOffer); } @@ -580,7 +567,7 @@ public class RagfairOfferGenerator( BarterScheme = barterScheme, LoyalLevel = 1, Quantity = desiredStackSize, - Creator = OfferCreator.FakePlayer, + Creator = offerCreator, SellInOnePiece = isPackOffer, // sellAsOnePiece - pack offer }; CreateAndAddFleaOffer(createOfferDetails); @@ -723,16 +710,18 @@ public class RagfairOfferGenerator( /// ID of owner of item /// Item and mods, get condition of first item (only first array item is modified) /// DB details of first item + /// protected void RandomiseOfferItemUpdProperties( MongoId userID, IEnumerable itemWithMods, - TemplateItem itemDetails + TemplateItem itemDetails, + OfferCreator offerCreator ) { // Add any missing properties to first item in array AddMissingConditions(itemWithMods.First()); - if (!(profileHelper.IsPlayer(userID) || ragfairServerHelper.IsTrader(userID))) + if (offerCreator is OfferCreator.FakePlayer) { var parentId = GetDynamicConditionIdForTpl(itemDetails.Id); if (parentId == null) diff --git a/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs b/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs index fc787618..ce53df78 100644 --- a/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs @@ -201,9 +201,7 @@ public class RagfairOfferService( } // Handle dynamic offer from PMCs - var isPlayer = profileHelper.IsPlayer( - staleOffer.User.Id.ToString().RegexReplace("^pmc", "") - ); + var isPlayer = staleOffer.CreatedBy == OfferCreator.Player; if (flagOfferAsExpired && !isPlayer) { // Not trader or a player offer diff --git a/Libraries/SPTarkov.Server.Core/Utils/RagfairOfferHolder.cs b/Libraries/SPTarkov.Server.Core/Utils/RagfairOfferHolder.cs index 3be76693..23dbb7ce 100644 --- a/Libraries/SPTarkov.Server.Core/Utils/RagfairOfferHolder.cs +++ b/Libraries/SPTarkov.Server.Core/Utils/RagfairOfferHolder.cs @@ -298,7 +298,7 @@ public class RagfairOfferHolder( /// Add a stale offers id to _expiredOfferIds collection for later processing /// /// Id of offer to add to stale collection - public void FlagOfferAsExpired(string staleOfferId) + public void FlagOfferAsExpired(MongoId staleOfferId) { lock (_expiredOfferIdsLock) {