From 7511597c9ed6c9d86ee9c8f7eea85ca1aad514ab Mon Sep 17 00:00:00 2001 From: Chomp Date: Mon, 23 Jun 2025 13:36:26 +0100 Subject: [PATCH] Added clearer check for expired player offers --- .../SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs | 8 +++++++- .../SPTarkov.Server.Core/Services/RagfairOfferService.cs | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs index bb439170..aff8228b 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs @@ -653,6 +653,12 @@ public class RagfairOfferHelper( for (var index = profileOffers.Count - 1; index >= 0; index--) { var offer = profileOffers[index]; + if (currentTimestamp > offer.EndTime) + { + // Offer has expired before selling, skip as it will be processed in RemoveExpiredOffers() + continue; + } + if ( offer.SellResults is null || offer.SellResults.Count == 0 @@ -848,7 +854,7 @@ public class RagfairOfferHelper( }; var storageTimeSeconds = _timeUtil.GetHoursAsSeconds( - (int)_questHelper.GetMailItemRedeemTimeHoursForProfile(sellerProfile) + (int) _questHelper.GetMailItemRedeemTimeHoursForProfile(sellerProfile) ); _mailSendService.SendDirectNpcMessageToPlayer( offerOwnerSessionId, diff --git a/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs b/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs index f73c04ea..215861a5 100644 --- a/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/RagfairOfferService.cs @@ -192,7 +192,7 @@ public class RagfairOfferService( var isPlayer = profileHelper.IsPlayer(staleOffer.User.Id.RegexReplace("^pmc", "")); if (flagOfferAsExpired && !isPlayer) { - // Not trader/player offer + // Not trader or a player offer ragfairOfferHolder.FlagOfferAsExpired(staleOffer.Id); }