@@ -0,0 +1,23 @@
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class AchievementCallbacks
|
||||
{
|
||||
public AchievementCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GetAchievementsResponse> GetAchievements(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<CompletedAchievementsResponse> Statistic(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Bot;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
@@ -14,6 +17,11 @@ public class BotCallbacks
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public Dictionary<string, Difficulties> GetAllBotDifficulties(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<BotBase>> GenerateBots(string url, GenerateBotsRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
@@ -23,4 +31,9 @@ public class BotCallbacks
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string GetBotBehaviours()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using Core.Models.Eft.Builds;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Eft.PresetBuild;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class BuildsCallbacks
|
||||
{
|
||||
public BuildsCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public GetBodyResponseData<UserBuilds> GetBuilds(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData CreateMagazineTemplate(string url, SetMagazineRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData SetWeapon(string url, PresetBuildActionRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData SetEquipment(string url, PresetBuildActionRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData DeleteBuild(string url, RemoveBuildRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,16 @@
|
||||
namespace Core.Callbacks;
|
||||
using Core.Models.Spt.Config;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class BundleCallbacks
|
||||
{
|
||||
private HttpConfig _httpConfig;
|
||||
|
||||
public BundleCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public object SendBundle(string sessionID, object req, object res, object body)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Spt.Logging;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class ClientLogCallbacks
|
||||
{
|
||||
public ClientLogCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public NullResponseData ClientLog(string url, ClientLogRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string ReleaseNotes()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string BsgLogging()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,19 @@
|
||||
namespace Core.Callbacks;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Customization;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Eft.ItemEvent;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class CustomizationCallbacks
|
||||
{
|
||||
public GetBodyResponseData<object> GetSuits(string url, object info, string sessionID)
|
||||
public CustomizationCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GetSuitsResponse> GetSuits(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Game;
|
||||
using Core.Models.Eft.Hideout;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Spt.Server;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class DataCallbacks
|
||||
{
|
||||
public DataCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public GetBodyResponseData<SettingsBase> GetSettings(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<Globals> GetGlobals(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string GetTemplateItems(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<HandbookBase> GetTemplateHandbook(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<Dictionary<string, CustomizationItem>> GetTemplateSuits(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<string>> GetTemplateCharacter(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<HideoutSettingsBase> GetHideoutSettings(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<HideoutArea>> GetHideoutAreas(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<HideoutProductionData> GetHideoutProduction(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<Dictionary<string, string>> GetLocalesLanguages(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<string> GetLocalesMenu(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string GetLocalesGlobal(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string GetQteList(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GetItemPricesResponse> GetItemPrices(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,10 @@
|
||||
namespace Core.Callbacks;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Request;
|
||||
using Core.Models.Eft.Dialog;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class DialogCallbacks
|
||||
{
|
||||
@@ -7,7 +13,7 @@ public class DialogCallbacks
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> GetChatServerList(string url, GetChatServerListRequestData info, string sessionID)
|
||||
public GetBodyResponseData<List<ChatServer>> GetChatServerList(string url, GetChatServerListRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@@ -22,7 +28,7 @@ public class DialogCallbacks
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> GetMailDialogInfo(string url, GetMailDialogInfoRequestData info, string sessionID)
|
||||
public GetBodyResponseData<DialogueInfo> GetMailDialogInfo(string url, GetMailDialogInfoRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@@ -47,11 +53,16 @@ public class DialogCallbacks
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GetAllAttachmentsResponse> GetAllAttachments(string url, EmptyRequestData info, string sessionID)
|
||||
public GetBodyResponseData<object> GetAllAttachments(string url, EmptyRequestData info, string sessionID) // TODO: Fix type - GetBodyResponseData<GetAllAttachmentsResponse | Undefined>
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<string> SendMessage(string url, SendMessageRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> ListOutbox(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
@@ -59,20 +70,85 @@ public class DialogCallbacks
|
||||
|
||||
public GetBodyResponseData<List<object>> ListInbox(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData SendFriendRequest(string url, FriendRequestData info, string sessionID)
|
||||
|
||||
public GetBodyResponseData<FriendRequestSendResponse> SendFriendRequest(string url, FriendRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<int> SendMessage(string url, SendMessageRequest info, string sessionID)
|
||||
public NullResponseData AcceptAllFriendRequests(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public bool Update()
|
||||
public GetBodyResponseData<bool> AcceptFriendRequest(string url, AcceptFriendRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<bool> DeclineFriendRequest(string url, DeclineFriendRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<bool> CancelFriendRequest(string url, CancelFriendRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData DeleteFriend(string url, DeleteFriendRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData IgnoreFriend(string url, UIDRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData UnIgnoreFriend(string url, UIDRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> ClearMail(string url, ClearMailMessageRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> RemoveMail(string url, RemoveMailMessageRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> CreateGroupMail(string url, CreateGroupMailRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> ChangeMailGroupOwner(string url, ChangeGroupMailOwnerRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> AddUserToMail(string url, AddUserGroupMailRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<List<object>> RemoveUserFromMail(string url, RemoveUserGroupMailRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public async Task<bool> OnUpdate(int timeSinceLastRun)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string GetRoute()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -1,18 +1,38 @@
|
||||
namespace Core.Callbacks;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Request;
|
||||
using Core.Models.Eft.Game;
|
||||
using Core.Models.Eft.HttpResponse;
|
||||
|
||||
namespace Core.Callbacks;
|
||||
|
||||
public class GameCallbacks
|
||||
{
|
||||
public NullResponseData VersionValidata(string url, VersionValidaterequestData info, string sessionID)
|
||||
public GameCallbacks()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public async Task OnLoad()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> GameStart(string url, EmptyRequestData info, string sessionID)
|
||||
public string GetRoute()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData VersionValidata(string url, VersionValidateRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> GameLogout(string url, EmptyRequestData info, string sessionID)
|
||||
public GetBodyResponseData<GameStartResponse> GameStart(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GameLogoutResponseData> GameLogout(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@@ -22,17 +42,22 @@ public class GameCallbacks
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> GetServer(string url, EmptyRequestData info, string sessionID)
|
||||
public GetBodyResponseData<GameModeResponse> GetGameMode(string url, GameModeRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> ValidateGameVersion(string url, EmptyRequestData info, string sessionID)
|
||||
public GetBodyResponseData<List<ServerDetails>> GetServer(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<object> GameKeepalive(string url, EmptyRequestData info, string sessionID)
|
||||
public GetBodyResponseData<CheckVersionResponse> ValidateGameVersion(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetBodyResponseData<GameKeepAliveResponse> GameKeepalive(string url, EmptyRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@@ -41,4 +66,29 @@ public class GameCallbacks
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData ReportNickname(string url, UIDRequestData info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public GetRaidTimeResponse GetRaidTime(string url, GetRaidTimeRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public object GetSurvey(string url, EmptyRequestData info, string sessionID) // TODO: Types given was NullResponseData | GetBodyResponseData<SurveyResponseData>
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData GetSurveyView(string url, object info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public NullResponseData SendSurveyOpinion(string url, SendSurveyOpinionRequest info, string sessionID)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Bot;
|
||||
|
||||
public class GenerateBotsRequestData
|
||||
{
|
||||
[JsonPropertyName("conditions")]
|
||||
public List<Condition> Conditions { get; set; }
|
||||
}
|
||||
|
||||
public class Condition
|
||||
{
|
||||
/// <summary>
|
||||
/// e.g. assault/pmcBot/bossKilla
|
||||
/// </summary>
|
||||
[JsonPropertyName("Role")]
|
||||
public string Role { get; set; }
|
||||
|
||||
[JsonPropertyName("Limit")]
|
||||
public int Limit { get; set; }
|
||||
|
||||
[JsonPropertyName("Difficulty")]
|
||||
public string Difficulty { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Models.Eft.Builds;
|
||||
|
||||
public class SetMagazineRequest
|
||||
{
|
||||
[JsonPropertyName("Id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("Name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("Caliber")]
|
||||
public string Caliber { get; set; }
|
||||
|
||||
[JsonPropertyName("Items")]
|
||||
public List<MagazineTemplateAmmoItem> Items { get; set; }
|
||||
|
||||
[JsonPropertyName("TopCount")]
|
||||
public int TopCount { get; set; }
|
||||
|
||||
[JsonPropertyName("BottomCount")]
|
||||
public int BottomCount { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
namespace Core.Models.Eft.Common;
|
||||
|
||||
public class EmptyRequestData
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Common.Request;
|
||||
|
||||
public class UIDRequestData
|
||||
{
|
||||
[JsonPropertyName("uid")]
|
||||
public string Uid { get; set; }
|
||||
}
|
||||
@@ -8,62 +8,90 @@ public class BotBase
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("aid")]
|
||||
public int Aid { get; set; }
|
||||
|
||||
/** SPT property - use to store player id - TODO - move to AID ( account id as guid of choice) */
|
||||
[JsonPropertyName("sessionId")]
|
||||
public string SessionId { get; set; }
|
||||
|
||||
[JsonPropertyName("savage")]
|
||||
public string? Savage { get; set; }
|
||||
|
||||
[JsonPropertyName("karmaValue")]
|
||||
public int KarmaValue { get; set; }
|
||||
|
||||
[JsonPropertyName("Info")]
|
||||
public Info Info { get; set; }
|
||||
|
||||
[JsonPropertyName("Customization")]
|
||||
public Customization Customization { get; set; }
|
||||
|
||||
[JsonPropertyName("Health")]
|
||||
public BotBaseHealth Health { get; set; }
|
||||
|
||||
[JsonPropertyName("Inventory")]
|
||||
public BotBaseInventory Inventory { get; set; }
|
||||
|
||||
[JsonPropertyName("Skills")]
|
||||
public Skills Skills { get; set; }
|
||||
|
||||
[JsonPropertyName("Stats")]
|
||||
public Stats Stats { get; set; }
|
||||
|
||||
[JsonPropertyName("Encyclopedia")]
|
||||
public Dictionary<string, bool> Encyclopedia { get; set; }
|
||||
|
||||
[JsonPropertyName("TaskConditionCounters")]
|
||||
public Dictionary<string, TaskConditionCounter> TaskConditionCounters { get; set; }
|
||||
|
||||
[JsonPropertyName("InsuredItems")]
|
||||
public List<InsuredItem> InsuredItems { get; set; }
|
||||
|
||||
[JsonPropertyName("Hideout")]
|
||||
public Hideout Hideout { get; set; }
|
||||
|
||||
[JsonPropertyName("Quests")]
|
||||
public List<Quests> Quests { get; set; }
|
||||
|
||||
[JsonPropertyName("TradersInfo")]
|
||||
public Dictionary<string, TraderInfo> TradersInfo { get; set; }
|
||||
|
||||
[JsonPropertyName("UnlockedInfo")]
|
||||
public UnlockedInfo UnlockedInfo { get; set; }
|
||||
|
||||
[JsonPropertyName("RagfairInfo")]
|
||||
public RagfairInfo RagfairInfo { get; set; }
|
||||
|
||||
/** Achievement id and timestamp */
|
||||
[JsonPropertyName("Achievements")]
|
||||
public Dictionary<string, int> Achievements { get; set; }
|
||||
|
||||
[JsonPropertyName("RepeatableQuests")]
|
||||
public List<PmcDataRepeatableQuest> RepeatableQuests { get; set; }
|
||||
|
||||
[JsonPropertyName("Bonuses")]
|
||||
public List<Bonus> Bonuses { get; set; }
|
||||
|
||||
[JsonPropertyName("Notes")]
|
||||
public Notes Notes { get; set; }
|
||||
|
||||
[JsonPropertyName("CarExtractCounts")]
|
||||
public Dictionary<string, int> CarExtractCounts { get; set; }
|
||||
|
||||
[JsonPropertyName("CoopExtractCounts")]
|
||||
public Dictionary<string, int> CoopExtractCounts { get; set; }
|
||||
|
||||
[JsonPropertyName("SurvivorClass")]
|
||||
public SurvivorClass SurvivorClass { get; set; }
|
||||
|
||||
[JsonPropertyName("WishList")]
|
||||
public Dictionary<string, int> WishList { get; set; }
|
||||
|
||||
[JsonPropertyName("moneyTransferLimitData")]
|
||||
public MoneyTransferLimits MoneyTransferLimitData { get; set; }
|
||||
|
||||
/** SPT specific property used during bot generation in raid */
|
||||
[JsonPropertyName("sptIsPmc")]
|
||||
public bool? IsPmc { get; set; }
|
||||
@@ -75,10 +103,13 @@ public class MoneyTransferLimits
|
||||
/** TODO: Implement */
|
||||
[JsonPropertyName("nextResetTime")]
|
||||
public double NextResetTime { get; set; }
|
||||
|
||||
[JsonPropertyName("remainingLimit")]
|
||||
public double RemainingLimit { get; set; }
|
||||
|
||||
[JsonPropertyName("totalLimit")]
|
||||
public double TotalLimit { get; set; }
|
||||
|
||||
[JsonPropertyName("resetInterval")]
|
||||
public double ResetInterval { get; set; }
|
||||
}
|
||||
@@ -87,10 +118,13 @@ public class TaskConditionCounter
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public string Type { get; set; }
|
||||
|
||||
[JsonPropertyName("value")]
|
||||
public double Value { get; set; }
|
||||
|
||||
/** Quest id */
|
||||
[JsonPropertyName("sourceId")]
|
||||
public string SourceId { get; set; }
|
||||
@@ -120,25 +154,27 @@ public class Info
|
||||
public int AccountType { get; set; }
|
||||
public MemberCategory MemberCategory { get; set; }
|
||||
public MemberCategory SelectedMemberCategory { get; set; }
|
||||
|
||||
|
||||
[JsonPropertyName("lockedMoveCommands")]
|
||||
public bool LockedMoveCommands { get; set; }
|
||||
|
||||
public long SavageLockTime { get; set; }
|
||||
public long LastTimePlayedAsSavage { get; set; }
|
||||
public BotInfoSettings Settings { get; set; }
|
||||
public long NicknameChangeDate { get; set; }
|
||||
public List<object> NeedWipeOptions { get; set; }
|
||||
|
||||
|
||||
[JsonPropertyName("lastCompletedWipe")]
|
||||
public LastCompleted LastCompletedWipe { get; set; }
|
||||
|
||||
public List<Ban> Bans { get; set; }
|
||||
public bool BannedState { get; set; }
|
||||
public long BannedUntil { get; set; }
|
||||
public bool IsStreamerModeAvailable { get; set; }
|
||||
|
||||
|
||||
[JsonPropertyName("lastCompletedEvent")]
|
||||
public LastCompleted? LastCompletedEvent { get; set; }
|
||||
|
||||
|
||||
[JsonPropertyName("isMigratedSkills")]
|
||||
public bool IsMigratedSkills { get; set; }
|
||||
}
|
||||
@@ -157,6 +193,7 @@ public class Ban
|
||||
{
|
||||
[JsonPropertyName("banType")]
|
||||
public BanType BanType { get; set; }
|
||||
|
||||
[JsonPropertyName("dateTime")]
|
||||
public long DateTime { get; set; }
|
||||
}
|
||||
@@ -220,57 +257,75 @@ public class CurrentMax
|
||||
public int Maximum { get; set; }
|
||||
}
|
||||
|
||||
public class BotBaseInventory {
|
||||
public class BotBaseInventory
|
||||
{
|
||||
[JsonPropertyName("items")]
|
||||
public List<Item> Items { get; set; }
|
||||
|
||||
[JsonPropertyName("equipment")]
|
||||
public string Equipment { get; set; }
|
||||
|
||||
[JsonPropertyName("stash")]
|
||||
public string Stash { get; set; }
|
||||
|
||||
[JsonPropertyName("sortingTable")]
|
||||
public string SortingTable { get; set; }
|
||||
|
||||
[JsonPropertyName("questRaidItems")]
|
||||
public string QuestRaidItems { get; set; }
|
||||
|
||||
[JsonPropertyName("questStashItems")]
|
||||
public string QuestStashItems { get; set; }
|
||||
|
||||
/** Key is hideout area enum numeric as string e.g. "24", value is area _id */
|
||||
[JsonPropertyName("hideoutAreaStashes")]
|
||||
public Dictionary<string, string> HideoutAreaStashes { get; set; }
|
||||
|
||||
[JsonPropertyName("fastPanel")]
|
||||
public Dictionary<string, string> FastPanel { get; set; }
|
||||
|
||||
[JsonPropertyName("favoriteItems")]
|
||||
public List<string> FavoriteItems { get; set; }
|
||||
}
|
||||
|
||||
public class BaseJsonSkills {
|
||||
public class BaseJsonSkills
|
||||
{
|
||||
public Dictionary<string, Common> Common { get; set; }
|
||||
public Dictionary<string, Mastering> Mastering { get; set; }
|
||||
public int Points { get; set; }
|
||||
}
|
||||
|
||||
public class Skills {
|
||||
public class Skills
|
||||
{
|
||||
public List<Common> Common { get; set; }
|
||||
public List<Mastering> Mastering { get; set; }
|
||||
public int Points { get; set; }
|
||||
}
|
||||
|
||||
public class BaseSkill {
|
||||
public class BaseSkill
|
||||
{
|
||||
public string Id { get; set; }
|
||||
public int Progress { get; set; }
|
||||
|
||||
[JsonPropertyName("max")]
|
||||
public int? Max { get; set; }
|
||||
|
||||
[JsonPropertyName("min")]
|
||||
public int? Min { get; set; }
|
||||
}
|
||||
|
||||
public class Common : BaseSkill {
|
||||
public class Common : BaseSkill
|
||||
{
|
||||
public int? PointsEarnedDuringSession { get; set; }
|
||||
public int? LastAccess { get; set; }
|
||||
}
|
||||
|
||||
public class Mastering : BaseSkill {}
|
||||
public class Mastering : BaseSkill
|
||||
{
|
||||
}
|
||||
|
||||
public class Stats {
|
||||
public class Stats
|
||||
{
|
||||
public EftStats? Eft { get; set; }
|
||||
}
|
||||
|
||||
@@ -292,6 +347,7 @@ public class EftStats
|
||||
public LastPlayerState? LastPlayerState { get; set; }
|
||||
public int TotalInGameTime { get; set; }
|
||||
public string? SurvivorClass { get; set; }
|
||||
|
||||
[JsonPropertyName("sptLastRaidFenceRepChange")]
|
||||
public float? SptLastRaidFenceRepChange { get; set; }
|
||||
}
|
||||
@@ -341,7 +397,7 @@ public class CounterKeyValue
|
||||
public int Value { get; set; }
|
||||
}
|
||||
|
||||
public class Aggressor
|
||||
public class Aggressor
|
||||
{
|
||||
public string AccountId { get; set; }
|
||||
public string ProfileId { get; set; }
|
||||
@@ -354,7 +410,7 @@ public class Aggressor
|
||||
public string Category { get; set; }
|
||||
}
|
||||
|
||||
public class DamageHistory
|
||||
public class DamageHistory
|
||||
{
|
||||
public string LethalDamagePart { get; set; }
|
||||
public LethalDamage LethalDamage { get; set; }
|
||||
@@ -362,7 +418,7 @@ public class DamageHistory
|
||||
}
|
||||
|
||||
// TODO: this class seems exactly the same as DamageStats, why have it?
|
||||
public class LethalDamage
|
||||
public class LethalDamage
|
||||
{
|
||||
public int Amount { get; set; }
|
||||
public string Type { get; set; }
|
||||
@@ -423,8 +479,10 @@ public class BackendCounter
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("qid")]
|
||||
public string? QId { get; set; }
|
||||
|
||||
[JsonPropertyName("value")]
|
||||
public int Value { get; set; }
|
||||
}
|
||||
@@ -434,6 +492,7 @@ public class InsuredItem
|
||||
/** Trader Id item was insured by */
|
||||
[JsonPropertyName("tid")]
|
||||
public string TId { get; set; }
|
||||
|
||||
[JsonPropertyName("itemId")]
|
||||
public string ItemId { get; set; }
|
||||
}
|
||||
@@ -446,6 +505,7 @@ public class Hideout
|
||||
public HideoutCounters HideoutCounters { get; set; }
|
||||
public int Seed { get; set; }
|
||||
public List<string> MannequinPoses { get; set; }
|
||||
|
||||
[JsonPropertyName("sptUpdateLastRunTimestamp")]
|
||||
public long SptUpdateLastRunTimestamp { get; set; }
|
||||
}
|
||||
@@ -469,6 +529,7 @@ public class HideoutImprovement
|
||||
{
|
||||
[JsonPropertyName("completed")]
|
||||
public bool Completed { get; set; }
|
||||
|
||||
[JsonPropertyName("improveCompleteTimestamp")]
|
||||
public long ImproveCompleteTimestamp { get; set; }
|
||||
}
|
||||
@@ -498,8 +559,10 @@ public class Productive
|
||||
|
||||
/** Used in hideout production.json */
|
||||
public bool? needFuelForAllProductionTime { get; set; }
|
||||
|
||||
/** Used when sending data to client */
|
||||
public bool? NeedFuelForAllProductionTime { get; set; }
|
||||
|
||||
[JsonPropertyName("sptIsScavCase")]
|
||||
public bool? SptIsScavCase { get; set; }
|
||||
|
||||
@@ -536,8 +599,10 @@ public class Product
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("_tpl")]
|
||||
public string Template { get; set; }
|
||||
|
||||
[JsonPropertyName("upd")]
|
||||
public Upd? Upd { get; set; }
|
||||
}
|
||||
@@ -546,19 +611,26 @@ public class BotHideoutArea
|
||||
{
|
||||
[JsonPropertyName("type")]
|
||||
public HideoutAreas Type { get; set; }
|
||||
|
||||
[JsonPropertyName("level")]
|
||||
public int Level { get; set; }
|
||||
|
||||
[JsonPropertyName("active")]
|
||||
public bool Active { get; set; }
|
||||
|
||||
[JsonPropertyName("passiveBonusesEnabled")]
|
||||
public bool PassiveBonusesEnabled { get; set; }
|
||||
|
||||
/** Must be integer */
|
||||
[JsonPropertyName("completeTime")]
|
||||
public int CompleteTime { get; set; }
|
||||
|
||||
[JsonPropertyName("constructing")]
|
||||
public bool Constructing { get; set; }
|
||||
|
||||
[JsonPropertyName("slots")]
|
||||
public List<HideoutSlot> Slots { get; set; }
|
||||
|
||||
[JsonPropertyName("lastRecipe")]
|
||||
public string LastRecipe { get; set; }
|
||||
}
|
||||
@@ -570,6 +642,7 @@ public class HideoutSlot
|
||||
/// </summary>
|
||||
[JsonPropertyName("locationIndex")]
|
||||
public int LocationIndex { get; set; }
|
||||
|
||||
[JsonPropertyName("item")]
|
||||
public List<HideoutItem>? Items { get; set; }
|
||||
}
|
||||
@@ -578,8 +651,10 @@ public class HideoutItem
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("_tpl")]
|
||||
public string Template { get; set; }
|
||||
|
||||
[JsonPropertyName("upd")]
|
||||
public Upd? Upd { get; set; }
|
||||
}
|
||||
@@ -596,7 +671,8 @@ public class Notes
|
||||
public List<Note> DataNotes { get; set; }
|
||||
}
|
||||
|
||||
public enum SurvivorClass {
|
||||
public enum SurvivorClass
|
||||
{
|
||||
UNKNOWN = 0,
|
||||
NEUTRALIZER = 1,
|
||||
MARAUDER = 2,
|
||||
@@ -608,71 +684,92 @@ public class Quests
|
||||
{
|
||||
[JsonPropertyName("qid")]
|
||||
public string QId { get; set; }
|
||||
|
||||
[JsonPropertyName("startTime")]
|
||||
public long StartTime { get; set; }
|
||||
|
||||
[JsonPropertyName("status")]
|
||||
public QuestStatus Status { get; set; }
|
||||
|
||||
[JsonPropertyName("statusTimers")]
|
||||
public Dictionary<string, long>? StatusTimers { get; set; }
|
||||
|
||||
/** Property does not exist in live profile data, but is used by ProfileChanges.questsStatus when sent to client */
|
||||
[JsonPropertyName("completedConditions")]
|
||||
public List<string>? CompletedConditions { get; set; }
|
||||
|
||||
[JsonPropertyName("availableAfter")]
|
||||
public long? AvailableAfter { get; set; }
|
||||
}
|
||||
|
||||
public class TraderInfo
|
||||
public class TraderInfo
|
||||
{
|
||||
[JsonPropertyName("loyaltyLevel")]
|
||||
public int? LoyaltyLevel { get; set; }
|
||||
|
||||
[JsonPropertyName("salesSum")]
|
||||
public int SalesSum { get; set; }
|
||||
|
||||
[JsonPropertyName("standing")]
|
||||
public int Standing { get; set; }
|
||||
|
||||
[JsonPropertyName("nextResupply")]
|
||||
public int NextResupply { get; set; }
|
||||
|
||||
[JsonPropertyName("unlocked")]
|
||||
public bool Unlocked { get; set; }
|
||||
|
||||
[JsonPropertyName("disabled")]
|
||||
public bool Disabled { get; set; }
|
||||
}
|
||||
|
||||
public class RagfairInfo
|
||||
public class RagfairInfo
|
||||
{
|
||||
[JsonPropertyName("rating")]
|
||||
public double Rating { get; set; }
|
||||
|
||||
[JsonPropertyName("isRatingGrowing")]
|
||||
public bool IsRatingGrowing { get; set; }
|
||||
|
||||
[JsonPropertyName("offers")]
|
||||
public List<RagfairOffer> Offers { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class Bonus
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string? Id { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public BonusType Type { get; set; }
|
||||
|
||||
[JsonPropertyName("templateId")]
|
||||
public string? TemplateId { get; set; }
|
||||
|
||||
[JsonPropertyName("passive")]
|
||||
public bool? IsPassive { get; set; }
|
||||
|
||||
[JsonPropertyName("production")]
|
||||
public bool? IsProduction { get; set; }
|
||||
|
||||
[JsonPropertyName("visible")]
|
||||
public bool? IsVisible { get; set; }
|
||||
|
||||
[JsonPropertyName("value")]
|
||||
public double? Value { get; set; }
|
||||
|
||||
[JsonPropertyName("icon")]
|
||||
public string? Icon { get; set; }
|
||||
|
||||
[JsonPropertyName("filter")]
|
||||
public List<string>? Filter { get; set; }
|
||||
|
||||
[JsonPropertyName("skillType")]
|
||||
public BonusSkillType? SkillType { get; set; }
|
||||
}
|
||||
|
||||
public class Note {
|
||||
public class Note
|
||||
{
|
||||
public double Time { get; set; }
|
||||
public string Text { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Customization;
|
||||
|
||||
public class BuyClothingRequestData
|
||||
{
|
||||
[JsonPropertyName("Action")]
|
||||
public string Action { get; set; } = "CustomizationBuy";
|
||||
|
||||
[JsonPropertyName("offer")]
|
||||
public string Offer { get; set; }
|
||||
|
||||
[JsonPropertyName("items")]
|
||||
public List<PaymentItemForClothing> Items { get; set; }
|
||||
}
|
||||
|
||||
public class PaymentItemForClothing
|
||||
{
|
||||
[JsonPropertyName("del")]
|
||||
public bool Del { get; set; }
|
||||
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("count")]
|
||||
public int Count { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Customization;
|
||||
|
||||
public class CustomizationSetRequest
|
||||
{
|
||||
[JsonPropertyName("Action")]
|
||||
public string Action { get; set; } = "CustomizationSet";
|
||||
|
||||
[JsonPropertyName("customizations")]
|
||||
public List<CustomizationSetOption> Customizations { get; set; }
|
||||
}
|
||||
|
||||
public class CustomizationSetOption
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public string Type { get; set; }
|
||||
|
||||
[JsonPropertyName("source")]
|
||||
public string Source { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Customization;
|
||||
|
||||
public class GetSuitsResponse
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("suites")]
|
||||
public List<string> Suites { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
namespace Core.Models.Eft.Customization;
|
||||
|
||||
public class WearClothingRequestData
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class AcceptFriendRequestData : BaseFriendRequest
|
||||
{
|
||||
}
|
||||
|
||||
public class CancelFriendRequestData : BaseFriendRequest
|
||||
{
|
||||
}
|
||||
|
||||
public class DeclineFriendRequestData : BaseFriendRequest
|
||||
{
|
||||
}
|
||||
|
||||
public class BaseFriendRequest
|
||||
{
|
||||
[JsonPropertyName("profileId")]
|
||||
public string ProfileId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class AddUserGroupMailRequest
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
|
||||
[JsonPropertyName("uid")]
|
||||
public string Uid { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class ChangeGroupMailOwnerRequest
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
|
||||
[JsonPropertyName("uid")]
|
||||
public string Uid { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class ChatServer
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("RegistrationId")]
|
||||
public int RegistrationId { get; set; }
|
||||
|
||||
[JsonPropertyName("VersionId")]
|
||||
public string VersionId { get; set; }
|
||||
|
||||
[JsonPropertyName("Ip")]
|
||||
public string Ip { get; set; }
|
||||
|
||||
[JsonPropertyName("Port")]
|
||||
public int Port { get; set; }
|
||||
|
||||
[JsonPropertyName("DateTime")]
|
||||
public long DateTime { get; set; }
|
||||
|
||||
[JsonPropertyName("Chats")]
|
||||
public List<Chat> Chats { get; set; }
|
||||
|
||||
[JsonPropertyName("Regions")]
|
||||
public List<string> Regions { get; set; }
|
||||
|
||||
/** Possibly removed */
|
||||
[JsonPropertyName("IsDeveloper")]
|
||||
public bool? IsDeveloper { get; set; }
|
||||
}
|
||||
|
||||
public class Chat
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("Members")]
|
||||
public int Members { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class ClearMailMessageRequest
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class CreateGroupMailRequest
|
||||
{
|
||||
[JsonPropertyName("Name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("Users")]
|
||||
public List<string> Users { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class DeleteFriendRequest
|
||||
{
|
||||
[JsonPropertyName("friend_id")]
|
||||
public string FriendId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class FriendRequestData
|
||||
{
|
||||
[JsonPropertyName("status")]
|
||||
public int Status { get; set; }
|
||||
|
||||
[JsonPropertyName("requestId")]
|
||||
public string RequestId { get; set; }
|
||||
|
||||
[JsonPropertyName("retryAfter")]
|
||||
public int RetryAfter { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class FriendRequestSendResponse
|
||||
{
|
||||
[JsonPropertyName("status")]
|
||||
public int Status { get; set; }
|
||||
|
||||
[JsonPropertyName("requestId")]
|
||||
public string RequestId { get; set; }
|
||||
|
||||
[JsonPropertyName("retryAfter")]
|
||||
public int RetryAfter { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetChatServerListRequestData
|
||||
{
|
||||
[JsonPropertyName("VersionId")]
|
||||
public string VersionId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetFriendListDataResponse
|
||||
{
|
||||
[JsonPropertyName("Friends")]
|
||||
public List<UserDialogInfo> Friends { get; set; }
|
||||
|
||||
[JsonPropertyName("Ignore")]
|
||||
public List<string> Ignore { get; set; }
|
||||
|
||||
[JsonPropertyName("InIgnoreList")]
|
||||
public List<string> InIgnoreList { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetMailDialogInfoRequestData
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetMailDialogListRequestData
|
||||
{
|
||||
[JsonPropertyName("limit")]
|
||||
public int Limit { get; set; }
|
||||
|
||||
[JsonPropertyName("offset")]
|
||||
public int Offset { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Enums;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetMailDialogViewRequestData
|
||||
{
|
||||
[JsonPropertyName("type")]
|
||||
public MessageType Type { get; set; }
|
||||
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
|
||||
[JsonPropertyName("limit")]
|
||||
public int Limit { get; set; }
|
||||
|
||||
[JsonPropertyName("time")]
|
||||
public decimal Time { get; set; } // decimal
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Profile;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class GetMailDialogViewResponseData
|
||||
{
|
||||
[JsonPropertyName("messages")]
|
||||
public List<Message> Messages { get; set; }
|
||||
|
||||
[JsonPropertyName("profiles")]
|
||||
public List<UserDialogInfo> Profiles { get; set; }
|
||||
|
||||
[JsonPropertyName("hasMessagesWithRewards")]
|
||||
public bool HasMessagesWithRewards { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class PinDialogRequestData
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class RemoveDialogRequestData
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class RemoveMailMessageRequest
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class RemoveUserGroupMailRequest
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
|
||||
[JsonPropertyName("uid")]
|
||||
public string Uid { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Enums;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class SendMessageRequest {
|
||||
[JsonPropertyName("dialogId")]
|
||||
public string DialogId { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public MessageType Type { get; set; }
|
||||
|
||||
[JsonPropertyName("text")]
|
||||
public string Text { get; set; }
|
||||
|
||||
[JsonPropertyName("replyTo")]
|
||||
public string ReplyTo { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Dialog;
|
||||
|
||||
public class SetDialogReadRequestData
|
||||
{
|
||||
[JsonPropertyName("dialogId")]
|
||||
public List<string> DialogId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class CheckVersionResponse
|
||||
{
|
||||
[JsonPropertyName("isvalid")]
|
||||
public bool IsValid { get; set; }
|
||||
|
||||
[JsonPropertyName("latestVersion")]
|
||||
public string LatestVersion { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameConfigResponse
|
||||
{
|
||||
[JsonPropertyName("aid")]
|
||||
public int Aid { get; set; }
|
||||
|
||||
[JsonPropertyName("lang")]
|
||||
public string Language { get; set; }
|
||||
|
||||
[JsonPropertyName("languages")]
|
||||
public Dictionary<string, string> Languages { get; set; }
|
||||
|
||||
[JsonPropertyName("ndaFree")]
|
||||
public bool IsNdaFree { get; set; }
|
||||
|
||||
[JsonPropertyName("taxonomy")]
|
||||
public int Taxonomy { get; set; }
|
||||
|
||||
[JsonPropertyName("activeProfileId")]
|
||||
public string ActiveProfileId { get; set; }
|
||||
|
||||
[JsonPropertyName("backend")]
|
||||
public Backend Backend { get; set; }
|
||||
|
||||
[JsonPropertyName("useProtobuf")]
|
||||
public bool UseProtobuf { get; set; }
|
||||
|
||||
[JsonPropertyName("utc_time")]
|
||||
public long UtcTime { get; set; }
|
||||
|
||||
/** Total in game time */
|
||||
[JsonPropertyName("totalInGame")]
|
||||
public int TotalInGame { get; set; }
|
||||
|
||||
[JsonPropertyName("reportAvailable")]
|
||||
public bool IsReportAvailable { get; set; }
|
||||
|
||||
[JsonPropertyName("twitchEventMember")]
|
||||
public bool IsTwitchEventMember { get; set; }
|
||||
|
||||
[JsonPropertyName("sessionMode")]
|
||||
public string SessionMode { get; set; }
|
||||
|
||||
[JsonPropertyName("purchasedGames")]
|
||||
public PurchasedGames PurchasedGames { get; set; }
|
||||
}
|
||||
|
||||
public class PurchasedGames
|
||||
{
|
||||
[JsonPropertyName("eft")]
|
||||
public bool IsEftPurchased { get; set; }
|
||||
|
||||
[JsonPropertyName("arena")]
|
||||
public bool IsArenaPurchased { get; set; }
|
||||
}
|
||||
|
||||
public class Backend
|
||||
{
|
||||
[JsonPropertyName("Lobby")]
|
||||
public string Lobby { get; set; }
|
||||
|
||||
[JsonPropertyName("Trading")]
|
||||
public string Trading { get; set; }
|
||||
|
||||
[JsonPropertyName("Messaging")]
|
||||
public string Messaging { get; set; }
|
||||
|
||||
[JsonPropertyName("Main")]
|
||||
public string Main { get; set; }
|
||||
|
||||
[JsonPropertyName("RagFair")]
|
||||
public string RagFair { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameEmptyCrcRequestData
|
||||
{
|
||||
[JsonPropertyName("crc")]
|
||||
public int Crc { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameKeepAliveResponse
|
||||
{
|
||||
[JsonPropertyName("msg")]
|
||||
public string Message { get; set; }
|
||||
|
||||
[JsonPropertyName("utc_time")]
|
||||
public double UtcTime { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameLogoutResponseData
|
||||
{
|
||||
[JsonPropertyName("status")]
|
||||
public string Status { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameModeRequestData
|
||||
{
|
||||
[JsonPropertyName("sessionMode")]
|
||||
public string? SessionMode { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public enum SessionMode
|
||||
{
|
||||
REGULAR,
|
||||
PVE
|
||||
}
|
||||
|
||||
public class GameModeResponse
|
||||
{
|
||||
[JsonPropertyName("gameMode")]
|
||||
public SessionMode GameMode { get; set; }
|
||||
|
||||
[JsonPropertyName("backendUrl")]
|
||||
public string BackendUrl { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GameStartResponse
|
||||
{
|
||||
[JsonPropertyName("utc_time")]
|
||||
public double UtcTime { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GetItemPricesResponse
|
||||
{
|
||||
[JsonPropertyName("supplyNextTime")]
|
||||
public double SupplyNextTime { get; set; }
|
||||
|
||||
[JsonPropertyName("prices")]
|
||||
public Dictionary<string, double> Prices { get; set; }
|
||||
|
||||
[JsonPropertyName("currencyCourses")]
|
||||
public Dictionary<string, double> CurrencyCourses { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GetRaidTimeRequest
|
||||
{
|
||||
[JsonPropertyName("Side")]
|
||||
public string Side { get; set; }
|
||||
|
||||
[JsonPropertyName("Location")]
|
||||
public string Location { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class GetRaidTimeResponse
|
||||
{
|
||||
[JsonPropertyName("RaidTimeMinutes")]
|
||||
public int RaidTimeMinutes { get; set; }
|
||||
|
||||
[JsonPropertyName("NewSurviveTimeSeconds")]
|
||||
public int? NewSurviveTimeSeconds { get; set; }
|
||||
|
||||
[JsonPropertyName("OriginalSurvivalTimeSeconds")]
|
||||
public int OriginalSurvivalTimeSeconds { get; set; }
|
||||
|
||||
[JsonPropertyName("ExitChanges")]
|
||||
public List<ExtractChange> ExitChanges { get; set; }
|
||||
}
|
||||
|
||||
public class ExtractChange
|
||||
{
|
||||
[JsonPropertyName("Name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("MinTime")]
|
||||
public int? MinTime { get; set; }
|
||||
|
||||
[JsonPropertyName("MaxTime")]
|
||||
public int? MaxTime { get; set; }
|
||||
|
||||
[JsonPropertyName("Chance")]
|
||||
public int? Chance { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class SendSurveyOpinionRequest
|
||||
{
|
||||
[JsonPropertyName("surveyId")]
|
||||
public int SurveyId { get; set; }
|
||||
|
||||
[JsonPropertyName("answers")]
|
||||
public List<SurveyOpinionAnswer> Answers { get; set; }
|
||||
}
|
||||
|
||||
public class SurveyOpinionAnswer
|
||||
{
|
||||
[JsonPropertyName("questionId")]
|
||||
public int QuestionId { get; set; }
|
||||
|
||||
[JsonPropertyName("answerType")]
|
||||
public string AnswerType { get; set; }
|
||||
|
||||
[JsonPropertyName("answers")]
|
||||
public object Answers { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class ServerDetails
|
||||
{
|
||||
[JsonPropertyName("ip")]
|
||||
public string Ip { get; set; }
|
||||
|
||||
[JsonPropertyName("port")]
|
||||
public int Port { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class SurveyResponseData
|
||||
{
|
||||
[JsonPropertyName("locale")]
|
||||
public Dictionary<string, Dictionary<string, string>> Locale { get; set; }
|
||||
|
||||
[JsonPropertyName("survey")]
|
||||
public Survey Survey { get; set; }
|
||||
}
|
||||
|
||||
public class Survey
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("welcomePageData")]
|
||||
public WelcomePageData WelcomePageData { get; set; }
|
||||
|
||||
[JsonPropertyName("farewellPageData")]
|
||||
public FarewellPageData FarewellPageData { get; set; }
|
||||
|
||||
[JsonPropertyName("pages")]
|
||||
public List<List<int>> Pages { get; set; }
|
||||
|
||||
[JsonPropertyName("questions")]
|
||||
public List<SurveyQuestion> Questions { get; set; }
|
||||
|
||||
[JsonPropertyName("isNew")]
|
||||
public bool IsNew { get; set; }
|
||||
}
|
||||
|
||||
public class WelcomePageData
|
||||
{
|
||||
[JsonPropertyName("titleLocaleKey")]
|
||||
public string TitleLocaleKey { get; set; }
|
||||
|
||||
[JsonPropertyName("timeLocaleKey")]
|
||||
public string TimeLocaleKey { get; set; }
|
||||
|
||||
[JsonPropertyName("descriptionLocaleKey")]
|
||||
public string DescriptionLocaleKey { get; set; }
|
||||
}
|
||||
|
||||
public class FarewellPageData
|
||||
{
|
||||
[JsonPropertyName("textLocaleKey")]
|
||||
public string TextLocaleKey { get; set; }
|
||||
}
|
||||
|
||||
public class SurveyQuestion
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("sortIndex")]
|
||||
public int SortIndex { get; set; }
|
||||
|
||||
[JsonPropertyName("titleLocaleKey")]
|
||||
public string TitleLocaleKey { get; set; }
|
||||
|
||||
[JsonPropertyName("hintLocaleKey")]
|
||||
public string HintLocaleKey { get; set; }
|
||||
|
||||
[JsonPropertyName("answerLimit")]
|
||||
public int AnswerLimit { get; set; }
|
||||
|
||||
[JsonPropertyName("answerType")]
|
||||
public string AnswerType { get; set; }
|
||||
|
||||
[JsonPropertyName("answers")]
|
||||
public List<SurveyAnswer> Answers { get; set; }
|
||||
}
|
||||
|
||||
public class SurveyAnswer
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("questionId")]
|
||||
public int QuestionId { get; set; }
|
||||
|
||||
[JsonPropertyName("sortIndex")]
|
||||
public int SortIndex { get; set; }
|
||||
|
||||
[JsonPropertyName("localeKey")]
|
||||
public string LocaleKey { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Game;
|
||||
|
||||
public class VersionValidateRequestData
|
||||
{
|
||||
[JsonPropertyName("version")]
|
||||
public Version Version { get; set; }
|
||||
|
||||
[JsonPropertyName("develop")]
|
||||
public bool Develop { get; set; }
|
||||
}
|
||||
|
||||
public class Version
|
||||
{
|
||||
[JsonPropertyName("major")]
|
||||
public string Major { get; set; }
|
||||
|
||||
[JsonPropertyName("minor")]
|
||||
public string Minor { get; set; }
|
||||
|
||||
[JsonPropertyName("game")]
|
||||
public string Game { get; set; }
|
||||
|
||||
[JsonPropertyName("backend")]
|
||||
public string Backend { get; set; }
|
||||
|
||||
[JsonPropertyName("taxonomy")]
|
||||
public string Taxonomy { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.HttpResponse;
|
||||
|
||||
public class GetBodyResponseData<T>
|
||||
{
|
||||
[JsonPropertyName("err")]
|
||||
public int Err { get; set; }
|
||||
|
||||
[JsonPropertyName("errmsg")]
|
||||
public string ErrMsg { get; set; }
|
||||
|
||||
[JsonPropertyName("data")]
|
||||
public T Data { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.HttpResponse;
|
||||
|
||||
public class NullResponseData
|
||||
{
|
||||
[JsonPropertyName("err")]
|
||||
public int Err { get; set; }
|
||||
|
||||
[JsonPropertyName("errmsg")]
|
||||
public object ErrMsg { get; set; }
|
||||
|
||||
[JsonPropertyName("data")]
|
||||
public object Data { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.ItemEvent;
|
||||
|
||||
public class EmptyItemEventRouterResponse : ItemEventRouterBase
|
||||
{
|
||||
[JsonPropertyName("profileChanges")]
|
||||
public string ProfileChanges { get; set; } = "";
|
||||
}
|
||||
@@ -0,0 +1,190 @@
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Ragfair;
|
||||
using Core.Models.Enums;
|
||||
|
||||
namespace Core.Models.Eft.ItemEvent;
|
||||
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
public class ItemEventRouterBase
|
||||
{
|
||||
[JsonPropertyName("warnings")]
|
||||
public List<Warning> Warnings { get; set; }
|
||||
|
||||
[JsonPropertyName("profileChanges")]
|
||||
public object ProfileChanges { get; set; } // TODO: Types given TProfileChanges | ""
|
||||
}
|
||||
|
||||
public class TProfileChanges : Dictionary<string, ProfileChange>
|
||||
{
|
||||
}
|
||||
|
||||
public class Warning
|
||||
{
|
||||
[JsonPropertyName("index")]
|
||||
public int Index { get; set; }
|
||||
|
||||
[JsonPropertyName("errmsg")]
|
||||
public string ErrorMessage { get; set; }
|
||||
|
||||
[JsonPropertyName("code")]
|
||||
public string Code { get; set; }
|
||||
|
||||
[JsonPropertyName("data")]
|
||||
public object Data { get; set; }
|
||||
}
|
||||
|
||||
public class ProfileChange
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("experience")]
|
||||
public int Experience { get; set; }
|
||||
|
||||
[JsonPropertyName("quests")]
|
||||
public List<Quest> Quests { get; set; }
|
||||
|
||||
[JsonPropertyName("ragFairOffers")]
|
||||
public List<RagfairOffer> RagFairOffers { get; set; }
|
||||
|
||||
[JsonPropertyName("weaponBuilds")]
|
||||
public List<WeaponBuildChange> WeaponBuilds { get; set; }
|
||||
|
||||
[JsonPropertyName("equipmentBuilds")]
|
||||
public List<EquipmentBuildChange> EquipmentBuilds { get; set; }
|
||||
|
||||
[JsonPropertyName("items")]
|
||||
public ItemChanges Items { get; set; }
|
||||
|
||||
[JsonPropertyName("production")]
|
||||
public Dictionary<string, Productive> Production { get; set; }
|
||||
|
||||
/** Hideout area improvement id */
|
||||
[JsonPropertyName("improvements")]
|
||||
public Dictionary<string, HideoutImprovement> Improvements { get; set; }
|
||||
|
||||
[JsonPropertyName("skills")]
|
||||
public Skills Skills { get; set; }
|
||||
|
||||
[JsonPropertyName("health")]
|
||||
public Common.Health Health { get; set; }
|
||||
|
||||
[JsonPropertyName("traderRelations")]
|
||||
public Dictionary<string, TraderData> TraderRelations { get; set; }
|
||||
|
||||
[JsonPropertyName("moneyTransferLimitData")]
|
||||
public MoneyTransferLimits MoneyTransferLimitData { get; set; }
|
||||
|
||||
[JsonPropertyName("repeatableQuests")]
|
||||
public List<PmcDataRepeatableQuest> RepeatableQuests { get; set; }
|
||||
|
||||
[JsonPropertyName("recipeUnlocked")]
|
||||
public Dictionary<string, bool> RecipeUnlocked { get; set; }
|
||||
|
||||
[JsonPropertyName("changedHideoutStashes")]
|
||||
public Dictionary<string, HideoutStashItem> ChangedHideoutStashes { get; set; }
|
||||
|
||||
[JsonPropertyName("questsStatus")]
|
||||
public List<QuestStatus> QuestsStatus { get; set; }
|
||||
}
|
||||
|
||||
public class HideoutStashItem
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("tpl")]
|
||||
public string Template { get; set; }
|
||||
}
|
||||
|
||||
public class WeaponBuildChange
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("root")]
|
||||
public string Root { get; set; }
|
||||
|
||||
[JsonPropertyName("items")]
|
||||
public List<Item> Items { get; set; }
|
||||
}
|
||||
|
||||
public class EquipmentBuildChange
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("root")]
|
||||
public string Root { get; set; }
|
||||
|
||||
[JsonPropertyName("items")]
|
||||
public List<Item> Items { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public string Type { get; set; }
|
||||
|
||||
[JsonPropertyName("fastpanel")]
|
||||
public List<object> FastPanel { get; set; }
|
||||
|
||||
[JsonPropertyName("buildType")]
|
||||
public EquipmentBuildType BuildType { get; set; }
|
||||
}
|
||||
|
||||
public class ItemChanges
|
||||
{
|
||||
[JsonPropertyName("new")]
|
||||
public List<Product> NewItems { get; set; }
|
||||
|
||||
[JsonPropertyName("change")]
|
||||
public List<Product> ChangedItems { get; set; }
|
||||
|
||||
[JsonPropertyName("del")]
|
||||
public List<Product> DeletedItems { get; set; } // Only needs _id property
|
||||
}
|
||||
|
||||
/** Related to TraderInfo */
|
||||
public class TraderData
|
||||
{
|
||||
[JsonPropertyName("salesSum")]
|
||||
public double SalesSum { get; set; }
|
||||
|
||||
[JsonPropertyName("standing")]
|
||||
public double Standing { get; set; }
|
||||
|
||||
[JsonPropertyName("loyalty")]
|
||||
public double Loyalty { get; set; }
|
||||
|
||||
[JsonPropertyName("unlocked")]
|
||||
public bool Unlocked { get; set; }
|
||||
|
||||
[JsonPropertyName("disabled")]
|
||||
public bool Disabled { get; set; }
|
||||
}
|
||||
|
||||
public class Product
|
||||
{
|
||||
[JsonPropertyName("_id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("_tpl")]
|
||||
public string Template { get; set; }
|
||||
|
||||
[JsonPropertyName("parentId")]
|
||||
public string ParentId { get; set; }
|
||||
|
||||
[JsonPropertyName("slotId")]
|
||||
public string SlotId { get; set; }
|
||||
|
||||
[JsonPropertyName("location")]
|
||||
public ItemLocation Location { get; set; }
|
||||
|
||||
[JsonPropertyName("upd")]
|
||||
public Upd Upd { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.ItemEvent;
|
||||
|
||||
public class ItemEventRouterRequest
|
||||
{
|
||||
[JsonPropertyName("data")]
|
||||
public List<Daum> Data { get; set; }
|
||||
|
||||
[JsonPropertyName("tm")]
|
||||
public int Time { get; set; }
|
||||
|
||||
[JsonPropertyName("reload")]
|
||||
public int Reload { get; set; }
|
||||
}
|
||||
|
||||
public class Daum
|
||||
{
|
||||
[JsonPropertyName("Action")]
|
||||
public string Action { get; set; }
|
||||
|
||||
[JsonPropertyName("item")]
|
||||
public string Item { get; set; }
|
||||
|
||||
[JsonPropertyName("to")]
|
||||
public To To { get; set; }
|
||||
}
|
||||
|
||||
public class To
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
[JsonPropertyName("container")]
|
||||
public string Container { get; set; }
|
||||
|
||||
[JsonPropertyName("location")]
|
||||
public Location Location { get; set; }
|
||||
}
|
||||
|
||||
public class Location
|
||||
{
|
||||
[JsonPropertyName("x")]
|
||||
public int X { get; set; }
|
||||
|
||||
[JsonPropertyName("y")]
|
||||
public int Y { get; set; }
|
||||
|
||||
[JsonPropertyName("r")]
|
||||
public string R { get; set; }
|
||||
|
||||
[JsonPropertyName("isSearched")]
|
||||
public bool IsSearched { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
namespace Core.Models.Eft.ItemEvent;
|
||||
|
||||
public class ItemEventRouterResponse : ItemEventRouterBase
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
|
||||
namespace Core.Models.Eft.PresetBuild;
|
||||
|
||||
public class PresetBuildActionRequestData
|
||||
{
|
||||
[JsonPropertyName("Action")]
|
||||
public string Action { get; set; }
|
||||
|
||||
[JsonPropertyName("Id")]
|
||||
public string Id { get; set; }
|
||||
|
||||
/** name of preset given by player */
|
||||
[JsonPropertyName("Name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("Root")]
|
||||
public string Root { get; set; }
|
||||
|
||||
[JsonPropertyName("Items")]
|
||||
public List<Item> Items { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.PresetBuild;
|
||||
|
||||
public class RemoveBuildRequestData
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string Id { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Core.Models.Eft.Profile;
|
||||
|
||||
public class CompletedAchievementsResponse
|
||||
{
|
||||
[JsonPropertyName("elements")]
|
||||
public Dictionary<string, int> Elements { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
|
||||
namespace Core.Models.Eft.Profile;
|
||||
|
||||
public class GetAchievementsResponse
|
||||
{
|
||||
public List<Achievement> Achievements { get; set; }
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Profile;
|
||||
using Core.Models.Enums;
|
||||
using Core.Models.Spt.Dialog;
|
||||
|
||||
namespace Core.Models.Spt.Config;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Core.Models.Eft.Profile;
|
||||
using Core.Models.Enums;
|
||||
|
||||
namespace Core.Models.Spt.Dialog;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Core.Models.Eft.Common;
|
||||
using Core.Models.Eft.Common.Tables;
|
||||
using Props = Core.Models.Eft.Common.Props;
|
||||
|
||||
namespace Core.Models.Spt.Mod;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user