Files
SPT-Server-Build/Libraries/SPTarkov.Server.Core/Models/Eft/Profile/GetOtherProfileResponse.cs
T

138 lines
3.6 KiB
C#

using System.Text.Json.Serialization;
using SPTarkov.Server.Core.Models.Common;
using SPTarkov.Server.Core.Models.Eft.Common.Tables;
namespace SPTarkov.Server.Core.Models.Eft.Profile;
public record GetOtherProfileResponse
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("id")]
public MongoId? Id { get; set; }
[JsonPropertyName("aid")]
public int? Aid { get; set; }
[JsonPropertyName("info")]
public OtherProfileInfo? Info { get; set; }
[JsonPropertyName("customization")]
public OtherProfileCustomization? Customization { get; set; }
[JsonPropertyName("skills")]
public Skills? Skills { get; set; }
[JsonPropertyName("equipment")]
public OtherProfileEquipment? Equipment { get; set; }
[JsonPropertyName("achievements")]
public Dictionary<MongoId, long>? Achievements { get; set; }
[JsonPropertyName("favoriteItems")]
public List<Item>? FavoriteItems { get; set; }
[JsonPropertyName("pmcStats")]
public OtherProfileStats? PmcStats { get; set; }
[JsonPropertyName("scavStats")]
public OtherProfileStats? ScavStats { get; set; }
[JsonPropertyName("hideout")]
public Common.Tables.Hideout Hideout { get; set; }
[JsonPropertyName("customizationStash")]
public string CustomizationStash { get; set; }
[JsonPropertyName("hideoutAreaStashes")]
public Dictionary<string, MongoId> HideoutAreaStashes { get; set; }
[JsonPropertyName("items")]
public List<Item> Items { get; set; }
}
public record OtherProfileInfo
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("nickname")]
public string? Nickname { get; set; }
[JsonPropertyName("side")]
public string? Side { get; set; }
[JsonPropertyName("experience")]
public int? Experience { get; set; }
[JsonPropertyName("memberCategory")]
public int? MemberCategory { get; set; }
[JsonPropertyName("bannedState")]
public bool? BannedState { get; set; }
[JsonPropertyName("bannedUntil")]
public long? BannedUntil { get; set; }
[JsonPropertyName("registrationDate")]
public long? RegistrationDate { get; set; }
}
public record OtherProfileCustomization
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("head")]
public string? Head { get; set; }
[JsonPropertyName("body")]
public string? Body { get; set; }
[JsonPropertyName("feet")]
public string? Feet { get; set; }
[JsonPropertyName("hands")]
public string? Hands { get; set; }
[JsonPropertyName("dogtag")]
public string? Dogtag { get; set; }
[JsonPropertyName("voice")]
public string? Voice { get; set; }
}
public record OtherProfileEquipment
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("Items")]
public List<Item>? Items { get; set; }
}
public record OtherProfileStats
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("eft")]
public OtherProfileSubStats? Eft { get; set; }
}
public record OtherProfileSubStats
{
[JsonExtensionData]
public Dictionary<string, object> ExtensionData { get; init; } = [];
[JsonPropertyName("totalInGameTime")]
public long? TotalInGameTime { get; set; }
[JsonPropertyName("overAllCounters")]
public OverallCounters? OverAllCounters { get; set; }
}