diff --git a/Libraries/SPTarkov.Server.Core/Helpers/PrestigeHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/PrestigeHelper.cs index 21eb109b..020f12ba 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/PrestigeHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/PrestigeHelper.cs @@ -137,7 +137,7 @@ public class PrestigeHelper _profileHelper.AddSkillPointsToPlayer( newProfile.CharacterData.PmcData, result, - ((JsonElement) reward.Value).ToObject() + reward.Value ); } else diff --git a/Libraries/SPTarkov.Server.Core/Helpers/RewardHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/RewardHelper.cs index c67c1e4c..6cba00c4 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/RewardHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/RewardHelper.cs @@ -73,7 +73,7 @@ public class RewardHelper( _profileHelper.AddSkillPointsToPlayer( profileData, Enum.Parse(reward.Target), - reward.Value as double? + reward.Value ); break; case RewardType.Experience: diff --git a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Reward.cs b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Reward.cs index 83ae82ec..624b781e 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Reward.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Eft/Common/Tables/Reward.cs @@ -1,16 +1,18 @@ using System.Text.Json.Serialization; using SPTarkov.Server.Core.Models.Enums; +using SPTarkov.Server.Core.Utils.Json.Converters; namespace SPTarkov.Server.Core.Models.Eft.Common.Tables; public record Reward { [JsonPropertyName("value")] - public object? Value + [JsonConverter(typeof(StringToNumberFactoryConverter))] + public double? Value { get; set; - } // TODO: Can be either string or number + } [JsonPropertyName("id")] public string? Id diff --git a/Libraries/SPTarkov.Server.Core/Models/Enums/PlayerSideMask.cs b/Libraries/SPTarkov.Server.Core/Models/Enums/PlayerSideMask.cs index 4290cf98..0a0ab5bf 100644 --- a/Libraries/SPTarkov.Server.Core/Models/Enums/PlayerSideMask.cs +++ b/Libraries/SPTarkov.Server.Core/Models/Enums/PlayerSideMask.cs @@ -3,12 +3,13 @@ using SPTarkov.Server.Core.Utils.Json.Converters; namespace SPTarkov.Server.Core.Models.Enums; [EftEnumConverter] +[Flags] public enum PlayerSideMask { - None, - Usec, - Bear, - Savage, - Pmc, - All + None = 0, + Usec = 1, + Bear = 2, + Savage = 4, + Pmc = Bear | Usec, // 0x00000003 + All = Pmc | Savage, // 0x00000007 }