diff --git a/Libraries/Core/Callbacks/PrestigeCallbacks.cs b/Libraries/Core/Callbacks/PrestigeCallbacks.cs index 51310fa8..b6000b6b 100644 --- a/Libraries/Core/Callbacks/PrestigeCallbacks.cs +++ b/Libraries/Core/Callbacks/PrestigeCallbacks.cs @@ -31,7 +31,7 @@ public class PrestigeCallbacks( /// /// /// - public string ObtainPrestige(string url, List info, string sessionID) + public string ObtainPrestige(string url, ObtainPrestigeRequestList info, string sessionID) { _prestigeController.ObtainPrestige(sessionID, info); diff --git a/Libraries/Core/Controllers/PrestigeController.cs b/Libraries/Core/Controllers/PrestigeController.cs index b58d6c55..3854ef8a 100644 --- a/Libraries/Core/Controllers/PrestigeController.cs +++ b/Libraries/Core/Controllers/PrestigeController.cs @@ -52,7 +52,7 @@ public class PrestigeController( /// public void ObtainPrestige( string sessionId, - List request) + ObtainPrestigeRequestList request) { var prePrestigeProfileClone = _cloner.Clone(_profileHelper.GetFullProfile(sessionId)); var prePrestigePmc = prePrestigeProfileClone.CharacterData.PmcData; @@ -123,7 +123,7 @@ public class PrestigeController( // Flag profile as having achieved this prestige level newProfile.CharacterData.PmcData.Prestige[currentPrestigeData.Id] = _timeUtil.GetTimeStamp(); - newProfile.CharacterData.PmcData.Info.PrestigeLevel++; + newProfile.CharacterData.PmcData.Info.PrestigeLevel = indexOfPrestigeObtained; if (request is not null) { diff --git a/Libraries/Core/Models/Eft/Prestige/ObtainPrestigeRequest.cs b/Libraries/Core/Models/Eft/Prestige/ObtainPrestigeRequest.cs index 44ae3ab1..1af2ab6a 100644 --- a/Libraries/Core/Models/Eft/Prestige/ObtainPrestigeRequest.cs +++ b/Libraries/Core/Models/Eft/Prestige/ObtainPrestigeRequest.cs @@ -1,8 +1,14 @@ using System.Text.Json.Serialization; +using Core.Models.Utils; namespace Core.Models.Eft.Prestige { - public record ObtainPrestigeRequest + public class ObtainPrestigeRequestList : List, IRequestData + { + + } + + public record ObtainPrestigeRequest : IRequestData { [JsonPropertyName("id")] public string Id { get; set; } @@ -21,5 +27,8 @@ namespace Core.Models.Eft.Prestige [JsonPropertyName("z")] public int Z { get; set; } + + [JsonPropertyName("r")] + public string R { get; set; } } } diff --git a/Libraries/Core/Routers/Static/PrestigeStaticRouter.cs b/Libraries/Core/Routers/Static/PrestigeStaticRouter.cs index 3e13f09c..aebdba68 100644 --- a/Libraries/Core/Routers/Static/PrestigeStaticRouter.cs +++ b/Libraries/Core/Routers/Static/PrestigeStaticRouter.cs @@ -33,7 +33,8 @@ public class PrestigeStaticRouter : StaticRouter info, sessionID, output - ) => _presetCallbacks.ObtainPrestige(url, info as List, sessionID)) + ) => _presetCallbacks.ObtainPrestige(url, info as ObtainPrestigeRequestList, sessionID) + , typeof(ObtainPrestigeRequestList)) ] ) {