From 2c39a8b6e37169d2cd13e1b9d5d1d4b5f19a75aa Mon Sep 17 00:00:00 2001 From: CWX Date: Sat, 12 Apr 2025 17:14:53 +0100 Subject: [PATCH] change hacky fix to use stringToNumberFactoryConverter --- .../Helpers/QuestHelper.cs | 4 +--- .../Models/Eft/Common/Tables/Quest.cs | 24 ++++--------------- 2 files changed, 5 insertions(+), 23 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Helpers/QuestHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/QuestHelper.cs index 8a9e20f3..ffde53fc 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/QuestHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/QuestHelper.cs @@ -194,8 +194,6 @@ public class QuestHelper( /// true if loyalty is high enough to fulfill quest requirement public bool TraderLoyaltyLevelRequirementCheck(QuestCondition questProperties, PmcData profile) { - var value = (JsonElement)questProperties.Value; - var requiredLoyaltyLevel = value.GetDouble(); if (!profile.TradersInfo.TryGetValue( questProperties.Target.IsItem ? questProperties.Target.Item @@ -210,7 +208,7 @@ public class QuestHelper( return CompareAvailableForValues( trader.LoyaltyLevel.Value, - requiredLoyaltyLevel, + questProperties.Value.Value, questProperties.CompareMethod ); } diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Quest.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Quest.cs index 40b52e84..35e39d63 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Quest.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Quest.cs @@ -439,28 +439,12 @@ public record QuestCondition set; } // TODO: string[] | string - private double? _value; [JsonPropertyName("value")] - public object? Value + [JsonConverter(typeof(StringToNumberFactoryConverter))] + public double? Value { - get => _value; - set - { - if (value is JsonElement element) - { - if (element.ValueKind == JsonValueKind.String) - { - _value = double.Parse(element.GetString()); - return; - } - - if (element.ValueKind == JsonValueKind.Number) - { - _value = element.GetDouble(); - return; - } - } - } + get; + set; } [JsonPropertyName("type")]