diff --git a/Core/Callbacks/BotCallbacks.cs b/Core/Callbacks/BotCallbacks.cs index 26cded72..be24b8b3 100644 --- a/Core/Callbacks/BotCallbacks.cs +++ b/Core/Callbacks/BotCallbacks.cs @@ -7,6 +7,11 @@ namespace Core.Callbacks; public class BotCallbacks { + public BotCallbacks() + { + + } + public string GetBotLimit(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); diff --git a/Core/Callbacks/DialogCallbacks.cs b/Core/Callbacks/DialogCallbacks.cs index e1d68160..f4ad169e 100644 --- a/Core/Callbacks/DialogCallbacks.cs +++ b/Core/Callbacks/DialogCallbacks.cs @@ -1,4 +1,5 @@ -using Core.Models.Eft.Common; +using Core.DI; +using Core.Models.Eft.Common; using Core.Models.Eft.Common.Request; using Core.Models.Eft.Dialog; using Core.Models.Eft.HttpResponse; @@ -6,8 +7,13 @@ using Core.Models.Eft.Profile; namespace Core.Callbacks; -public class DialogCallbacks +public class DialogCallbacks : OnUpdate { + public DialogCallbacks() + { + + } + public GetBodyResponseData GetFriendList(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); @@ -143,7 +149,7 @@ public class DialogCallbacks throw new NotImplementedException(); } - public async Task OnUpdate(int timeSinceLastRun) + public async Task OnUpdate(long timeSinceLastRun) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/GameCallbacks.cs b/Core/Callbacks/GameCallbacks.cs index 81e37135..ee348b91 100644 --- a/Core/Callbacks/GameCallbacks.cs +++ b/Core/Callbacks/GameCallbacks.cs @@ -1,11 +1,12 @@ -using Core.Models.Eft.Common; +using Core.DI; +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 class GameCallbacks : OnLoad { public GameCallbacks() { diff --git a/Core/Callbacks/HandbookCallbacks.cs b/Core/Callbacks/HandbookCallbacks.cs index c96ad773..ae685b43 100644 --- a/Core/Callbacks/HandbookCallbacks.cs +++ b/Core/Callbacks/HandbookCallbacks.cs @@ -1,8 +1,20 @@ -namespace Core.Callbacks; +using Core.DI; -public class HandbookCallbacks +namespace Core.Callbacks; + +public class HandbookCallbacks : OnLoad { - public void Load() + public HandbookCallbacks() + { + + } + + public Task OnLoad() + { + throw new NotImplementedException(); + } + + public string GetRoute() { throw new NotImplementedException(); } diff --git a/Core/Callbacks/HideoutCallbacks.cs b/Core/Callbacks/HideoutCallbacks.cs index fbbc42f1..f7167cf3 100644 --- a/Core/Callbacks/HideoutCallbacks.cs +++ b/Core/Callbacks/HideoutCallbacks.cs @@ -1,11 +1,12 @@ -using Core.Models.Eft.Common; +using Core.DI; +using Core.Models.Eft.Common; using Core.Models.Eft.Hideout; using Core.Models.Eft.ItemEvent; using Core.Models.Spt.Config; namespace Core.Callbacks; -public class HideoutCallbacks +public class HideoutCallbacks : OnUpdate { private HideoutConfig _hideoutConfig; @@ -94,7 +95,7 @@ public class HideoutCallbacks throw new NotImplementedException(); } - public async Task OnUpdate(int timeSinceLastRun) + public async Task OnUpdate(long timeSinceLastRun) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/HttpCallbacks.cs b/Core/Callbacks/HttpCallbacks.cs index 05acc4ff..2f355169 100644 --- a/Core/Callbacks/HttpCallbacks.cs +++ b/Core/Callbacks/HttpCallbacks.cs @@ -1,7 +1,14 @@ -namespace Core.Callbacks; +using Core.DI; -public class HttpCallbacks +namespace Core.Callbacks; + +public class HttpCallbacks : OnLoad { + public HttpCallbacks() + { + + } + public async Task OnLoad() { throw new NotImplementedException(); diff --git a/Core/Callbacks/InsuranceCallbacks.cs b/Core/Callbacks/InsuranceCallbacks.cs index 68aa571b..3bfe0e7f 100644 --- a/Core/Callbacks/InsuranceCallbacks.cs +++ b/Core/Callbacks/InsuranceCallbacks.cs @@ -1,4 +1,5 @@ -using Core.Models.Eft.Common; +using Core.DI; +using Core.Models.Eft.Common; using Core.Models.Eft.HttpResponse; using Core.Models.Eft.Insurance; using Core.Models.Eft.ItemEvent; @@ -6,7 +7,7 @@ using Core.Models.Spt.Config; namespace Core.Callbacks; -public class InsuranceCallbacks +public class InsuranceCallbacks : OnUpdate { private InsuranceConfig _insuranceConfig; @@ -25,7 +26,7 @@ public class InsuranceCallbacks throw new NotImplementedException(); } - public async Task OnUpdate(int secondsSinceLastRun) + public Task OnUpdate(long timeSinceLastRun) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/InventoryCallbacks.cs b/Core/Callbacks/InventoryCallbacks.cs index cdccefb2..69f97ea0 100644 --- a/Core/Callbacks/InventoryCallbacks.cs +++ b/Core/Callbacks/InventoryCallbacks.cs @@ -7,6 +7,11 @@ namespace Core.Callbacks; public class InventoryCallbacks { + public InventoryCallbacks() + { + + } + public ItemEventRouterResponse MoveItem(PmcData pmcData, InventoryMoveRequestData info, string sessionID) { throw new NotImplementedException(); diff --git a/Core/Callbacks/ItemEventCallbacks.cs b/Core/Callbacks/ItemEventCallbacks.cs index 6e23dff1..fd8ce150 100644 --- a/Core/Callbacks/ItemEventCallbacks.cs +++ b/Core/Callbacks/ItemEventCallbacks.cs @@ -1,8 +1,26 @@ -namespace Core.Callbacks; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.ItemEvent; + +namespace Core.Callbacks; public class ItemEventCallbacks { - public GetBodyResponseData HandleEvents(string url, ItemEventRouterRequest info, string sessionID) + public ItemEventCallbacks() + { + + } + + public async Task> HandleEvents(string url, ItemEventRouterRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public bool IsCriticalError(List warnings) + { + throw new NotImplementedException(); + } + + public int GetErrorCode(List warnings) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/LauncherCallbacks.cs b/Core/Callbacks/LauncherCallbacks.cs index aff610c3..84bee578 100644 --- a/Core/Callbacks/LauncherCallbacks.cs +++ b/Core/Callbacks/LauncherCallbacks.cs @@ -1,7 +1,15 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.Launcher; + +namespace Core.Callbacks; public class LauncherCallbacks { + public LauncherCallbacks() + { + + } + public string Connect() { throw new NotImplementedException(); @@ -37,22 +45,12 @@ public class LauncherCallbacks throw new NotImplementedException(); } - public string GetMiniProfile(string url, GetMiniProfileRequestData info, string sessionID) - { - throw new NotImplementedException(); - } - - public string GetAllMiniProfiles(string url, object info, string sessionID) - { - throw new NotImplementedException(); - } - public string GetServerVersion() { throw new NotImplementedException(); } - public string Ping(string url, object info, string sessionID) + public string Ping(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); } @@ -66,4 +64,14 @@ public class LauncherCallbacks { throw new NotImplementedException(); } + + public string GetLoadedServerMods() + { + throw new NotImplementedException(); + } + + public string GetServerModsProfileUsed(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } } \ No newline at end of file diff --git a/Core/Callbacks/LocationCallbacks.cs b/Core/Callbacks/LocationCallbacks.cs index cb028a29..bf3809df 100644 --- a/Core/Callbacks/LocationCallbacks.cs +++ b/Core/Callbacks/LocationCallbacks.cs @@ -1,15 +1,23 @@ using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.Location; namespace Core.Callbacks; public class LocationCallbacks { - public GetBodyResponseData GetLocationData(string url, object info, string sessionID) + public LocationCallbacks() + { + + } + + public GetBodyResponseData GetLocationData(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); } - public GetBodyResponseData GetLocation(string url, GetLocationRequestData info, string sessionID) + public GetBodyResponseData GetAirdropLoot(string url, GetAirdropLootRequest info, string sessionID) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/MatchCallbacks.cs b/Core/Callbacks/MatchCallbacks.cs new file mode 100644 index 00000000..d081af3a --- /dev/null +++ b/Core/Callbacks/MatchCallbacks.cs @@ -0,0 +1,149 @@ +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.Match; + +namespace Core.Callbacks; + +public class MatchCallbacks +{ + public MatchCallbacks() + { + + } + + public NullResponseData UpdatePing(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData ExitMatch(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData ExitFromMenu(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GroupCurrent(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData StartGroupSearch(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData StopGroupSearch(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData SendGroupInvite(string url, MatchGroupInviteSendRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData> AcceptGroupInvite(string url, RequestIdRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData DeclineGroupInvite(string url, RequestIdRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData CancelGroupInvite(string url, RequestIdRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData TransferGroup(string url, MatchGroupTransferRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData CancelAllGroupInvite(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData PutMetrics(string url, PutMetricsRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData EventDisconnect(string url, PutMetricsRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData ServerAvailable(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData JoinMatch(string url, MatchGroupStartGameRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GetMetrics(string url, object info, string sessionID) // TODO: No type given + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GetGroupStatus(string url, MatchGroupStatusRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData DeleteGroup(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData LeaveGroup(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData RemovePlayerFromGroup(string url, MatchGroupPlayerRemoveRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData StartLocalRaid(string url, StartLocalRaidRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData EndLocalRaid(string url, EndLocalRaidRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData GetRaidConfiguration(string url, GetRaidConfigurationRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData GetConfigurationByProfile(string url, GetRaidConfigurationRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData RaidReady(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData NotRaidReady(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Core/Callbacks/ModCallbacks.cs b/Core/Callbacks/ModCallbacks.cs index 51ed7d55..8c2d0d5d 100644 --- a/Core/Callbacks/ModCallbacks.cs +++ b/Core/Callbacks/ModCallbacks.cs @@ -1,23 +1,20 @@ -namespace Core.Callbacks; +using Core.DI; -public class ModCallbacks +namespace Core.Callbacks; + +public class ModCallbacks : OnLoad { - public void Load() + public ModCallbacks() + { + + } + + public async Task OnLoad() { throw new NotImplementedException(); } - public void SendBundle(string sessionID, object req, object resp, object body) - { - throw new NotImplementedException(); - } - - public string GetBundles(string url, object info, string sessionID) - { - throw new NotImplementedException(); - } - - public string GetBundle(string url, object info, string sessionID) + public string GetRoute() { throw new NotImplementedException(); } diff --git a/Core/Callbacks/NoteCallbacks.cs b/Core/Callbacks/NoteCallbacks.cs index 273811ea..d6b6fe27 100644 --- a/Core/Callbacks/NoteCallbacks.cs +++ b/Core/Callbacks/NoteCallbacks.cs @@ -1,7 +1,16 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Notes; + +namespace Core.Callbacks; public class NoteCallbacks { + public NoteCallbacks() + { + + } + public ItemEventRouterResponse AddNote(PmcData pmcData, NoteActionData info, string sessionID) { throw new NotImplementedException(); diff --git a/Core/Callbacks/NotifierCallbacks.cs b/Core/Callbacks/NotifierCallbacks.cs index 30126c9a..05f2e1f4 100644 --- a/Core/Callbacks/NotifierCallbacks.cs +++ b/Core/Callbacks/NotifierCallbacks.cs @@ -1,19 +1,29 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Request; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.Notifier; + +namespace Core.Callbacks; public class NotifierCallbacks { + public NotifierCallbacks() + { + + } + /** * If we don't have anything to send, it's ok to not send anything back * because notification requests can be long-polling. In fact, we SHOULD wait * until we actually have something to send because otherwise we'd spam the client * and the client would abort the connection due to spam. */ - public void SendNotification(string sessionID, object req, object resp, object data) + public void SendNotification(string sessionID, object req, object resp, object data) // TODO: no types were given { throw new NotImplementedException(); } - public GetBodyResponseData> GetNotifier(string url, object info, string sessionID) + public GetBodyResponseData> GetNotifier(string url, object info, string sessionID) // TODO: no types were given { throw new NotImplementedException(); } @@ -23,12 +33,12 @@ public class NotifierCallbacks throw new NotImplementedException(); } - public GetBodyResponseData SelectProfile(string url, UIDRequestData info, string sessionID) + public GetBodyResponseData SelectProfile(string url, UIDRequestData info, string sessionID) { throw new NotImplementedException(); } - public string Notify(string url, object info, string sessionID) + public string Notify(string url, object info, string sessionID) // TODO: no types were given { throw new NotImplementedException(); } diff --git a/Core/Callbacks/PresetBuildCallbacks.cs b/Core/Callbacks/PresetBuildCallbacks.cs deleted file mode 100644 index b978fd09..00000000 --- a/Core/Callbacks/PresetBuildCallbacks.cs +++ /dev/null @@ -1,29 +0,0 @@ -namespace Core.Callbacks; - -public class PresetBuildCallbacks -{ - public GetBodyResponseData> GetHandbookUserList(string url, object info, string sessionID) - { - throw new NotImplementedException(); - } - - public ItemEventRouterResponse SaveWeaponBuild(PmcData pmcData, PresetBuildActionRequestData info, string sessionID) - { - throw new NotImplementedException(); - } - - public ItemEventRouterResponse RemoveWeaponBuild(PmcData pmcData, PresetBuildActionRequestData info, string sessionID) - { - throw new NotImplementedException(); - } - - public ItemEventRouterResponse SaveEquipmentBuild(PmcData pmcData, PresetBuildActionRequestData info, string sessionID) - { - throw new NotImplementedException(); - } - - public ItemEventRouterResponse RemoveEquipmentBuild(PmcData pmcData, PresetBuildActionRequestData info, string sessionID) - { - throw new NotImplementedException(); - } -} \ No newline at end of file diff --git a/Core/Callbacks/PresetCallbacks.cs b/Core/Callbacks/PresetCallbacks.cs index 1aaec89e..e5de9fff 100644 --- a/Core/Callbacks/PresetCallbacks.cs +++ b/Core/Callbacks/PresetCallbacks.cs @@ -1,8 +1,20 @@ -namespace Core.Callbacks; +using Core.DI; -public class PresetCallbacks +namespace Core.Callbacks; + +public class PresetCallbacks : OnLoad { - public void Load() + public PresetCallbacks() + { + + } + + public async Task OnLoad() + { + throw new NotImplementedException(); + } + + public string GetRoute() { throw new NotImplementedException(); } diff --git a/Core/Callbacks/PrestigeCallbacks.cs b/Core/Callbacks/PrestigeCallbacks.cs new file mode 100644 index 00000000..296999fb --- /dev/null +++ b/Core/Callbacks/PrestigeCallbacks.cs @@ -0,0 +1,23 @@ +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.HttpResponse; + +namespace Core.Callbacks; + +public class PrestigeCallbacks +{ + public PrestigeCallbacks() + { + + } + + public GetBodyResponseData GetPrestige(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData ObtainPrestige(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Core/Callbacks/ProfileCallbacks.cs b/Core/Callbacks/ProfileCallbacks.cs index d2ae3a27..2ba71ef6 100644 --- a/Core/Callbacks/ProfileCallbacks.cs +++ b/Core/Callbacks/ProfileCallbacks.cs @@ -1,17 +1,22 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.Launcher; +using Core.Models.Eft.Profile; + +namespace Core.Callbacks; public class ProfileCallbacks { - public object OnLoad(string sessionID) + public ProfileCallbacks() + { + + } + + public GetBodyResponseData CreateProfile(string url, ProfileCreateRequestData info, string sessionID) { throw new NotImplementedException(); } - - public GetBodyResponseData CreateProfile(string url, ProfileCreateRequestData info, string sessionID) - { - throw new NotImplementedException(); - } - + public GetBodyResponseData GetProfileData(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); @@ -41,8 +46,13 @@ public class ProfileCallbacks { throw new NotImplementedException(); } - - public GetBodyResponseData GetProfileStatus(string url, EmptyRequestData info, string sessionID) + + public GetBodyResponseData GetOtherProfile(string url, GetOtherProfileRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GetProfileSettings(string url, GetProfileSettingsRequest info, string sessionID) { throw new NotImplementedException(); } @@ -51,4 +61,14 @@ public class ProfileCallbacks { throw new NotImplementedException(); } + + public string GetMiniProfile(string url, GetMiniProfileRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public string GetAllMiniProfiles(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } } \ No newline at end of file diff --git a/Core/Callbacks/QuestCallbacks.cs b/Core/Callbacks/QuestCallbacks.cs index f73c6f7e..23d58e38 100644 --- a/Core/Callbacks/QuestCallbacks.cs +++ b/Core/Callbacks/QuestCallbacks.cs @@ -1,9 +1,18 @@ -using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Quests; namespace Core.Callbacks; public class QuestCallbacks { + public QuestCallbacks() + { + + } + public ItemEventRouterResponse ChangeRepeatableQuest(PmcData pmcData, RepeatableQuestChangeRequest info, string sessionID) { throw new NotImplementedException(); diff --git a/Core/Callbacks/RagfairCallbacks.cs b/Core/Callbacks/RagfairCallbacks.cs index d49f9cff..7e4240e5 100644 --- a/Core/Callbacks/RagfairCallbacks.cs +++ b/Core/Callbacks/RagfairCallbacks.cs @@ -1,13 +1,37 @@ -namespace Core.Callbacks; +using Core.DI; +using Core.Models.Eft.Common; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Ragfair; +using Core.Models.Spt.Config; -public class RagfairCallbacks +namespace Core.Callbacks; + +public class RagfairCallbacks : OnLoad, OnUpdate { - public void Load() + private RagfairConfig _ragfairConfig; + + public RagfairCallbacks() + { + + } + + public async Task OnLoad() { throw new NotImplementedException(); } - public GetBodyResponseData Search(string url, SearchRequestData info, string sessionID) + public string GetRoute() + { + throw new NotImplementedException(); + } + + public async Task OnUpdate(long timeSinceLastRun) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData Search(string url, SearchRequestData info, string sessionID) { throw new NotImplementedException(); } @@ -17,12 +41,12 @@ public class RagfairCallbacks throw new NotImplementedException(); } - public GetBodyResponseData GetItemPrices(string url, EmptyRequestData info, string sessionID) + public ItemEventRouterResponse AddOffer(string url, AddOfferRequestData info, string sessionID) { throw new NotImplementedException(); } - public ItemEventRouterResponse AddOffer(string url, AddOfferRequestData info, string sessionID) + public ItemEventRouterResponse RemoveOffer(string url, RemoveOfferRequestData info, string sessionID) { throw new NotImplementedException(); } @@ -32,12 +56,22 @@ public class RagfairCallbacks throw new NotImplementedException(); } - public bool Update(int timeSinceLastRun) + public GetBodyResponseData> GetFleaPrices(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); } - public bool UpdatePlayer(int timeSinceLastRun) + public NullResponseData SendReport(string url, SendRagfairReportRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public NullResponseData StorePlayerOfferTaxAmount(string url, StorePlayerOfferTaxAmountRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GetFleaOfferById(string url, GetRagfairOfferByIdRequest info, string sessionID) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/RepairCallbacks.cs b/Core/Callbacks/RepairCallbacks.cs index aabe0a89..af547f47 100644 --- a/Core/Callbacks/RepairCallbacks.cs +++ b/Core/Callbacks/RepairCallbacks.cs @@ -1,7 +1,16 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Repair; + +namespace Core.Callbacks; public class RepairCallbacks { + public RepairCallbacks() + { + + } + public ItemEventRouterResponse TraderRepair(PmcData pmcData, TraderRepairActionDataRequest info, string sessionID) { throw new NotImplementedException(); diff --git a/Core/Callbacks/SaveCallbacks.cs b/Core/Callbacks/SaveCallbacks.cs index 2658de03..63ff188c 100644 --- a/Core/Callbacks/SaveCallbacks.cs +++ b/Core/Callbacks/SaveCallbacks.cs @@ -1,13 +1,28 @@ -namespace Core.Callbacks; +using Core.DI; +using Core.Models.Spt.Config; -public class SaveCallbacks +namespace Core.Callbacks; + +public class SaveCallbacks : OnLoad, OnUpdate { - public void Load() + private CoreConfig _coreConfig; + + public SaveCallbacks() + { + + } + + public async Task OnLoad() { throw new NotImplementedException(); } - public bool Update(int SecondsSinceLastRun) + public async Task OnUpdate(long SecondsSinceLastRun) + { + throw new NotImplementedException(); + } + + public string GetRoute() { throw new NotImplementedException(); } diff --git a/Core/Callbacks/TradeCallbacks.cs b/Core/Callbacks/TradeCallbacks.cs index a234400c..8a62a3fc 100644 --- a/Core/Callbacks/TradeCallbacks.cs +++ b/Core/Callbacks/TradeCallbacks.cs @@ -1,8 +1,17 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Trade; + +namespace Core.Callbacks; public class TradeCallbacks { - public ItemEventRouterReponse ProcessTrade(PmcData pmcData, ProcessBaseTradeRequestData info, string sessionID) + public TradeCallbacks() + { + + } + + public ItemEventRouterResponse ProcessTrade(PmcData pmcData, ProcessBaseTradeRequestData info, string sessionID) { throw new NotImplementedException(); } @@ -11,4 +20,9 @@ public class TradeCallbacks { throw new NotImplementedException(); } + + public ItemEventRouterResponse SellAllFromSavage(PmcData pmcData, SellScavItemsToFenceRequestData info, string sessionID) + { + throw new NotImplementedException(); + } } \ No newline at end of file diff --git a/Core/Callbacks/TraderCallbacks.cs b/Core/Callbacks/TraderCallbacks.cs index da66dc57..7551c929 100644 --- a/Core/Callbacks/TraderCallbacks.cs +++ b/Core/Callbacks/TraderCallbacks.cs @@ -1,12 +1,33 @@ -namespace Core.Callbacks; +using Core.DI; +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.HttpResponse; +using Core.Models.Spt.Config; -public class TraderCallbacks +namespace Core.Callbacks; + +public class TraderCallbacks : OnLoad, OnUpdate { - public void Load() + public TraderCallbacks() + { + + } + + public async Task OnLoad() { throw new NotImplementedException(); } + public async Task OnUpdate(long _) + { + throw new NotImplementedException(); + } + + public string GetRoute() + { + throw new NotImplementedException(); + } + public GetBodyResponseData> GetTraderSettings(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); @@ -22,7 +43,7 @@ public class TraderCallbacks throw new NotImplementedException(); } - public bool Update() + public GetBodyResponseData GetModdedTraderData(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/WeatherCallbacks.cs b/Core/Callbacks/WeatherCallbacks.cs index a53b8c9c..df26965d 100644 --- a/Core/Callbacks/WeatherCallbacks.cs +++ b/Core/Callbacks/WeatherCallbacks.cs @@ -1,8 +1,23 @@ -namespace Core.Callbacks; +using Core.Models.Eft.Common; +using Core.Models.Eft.HttpResponse; +using Core.Models.Eft.Weather; +using Core.Models.Spt.Weather; + +namespace Core.Callbacks; public class WeatherCallbacks { - public GetBodyResponseData GetWeather(string url, EmptyRequestData info, string sessionID) + public WeatherCallbacks() + { + + } + + public GetBodyResponseData GetWeather(string url, EmptyRequestData info, string sessionID) + { + throw new NotImplementedException(); + } + + public GetBodyResponseData GetLocalWeather(string url, EmptyRequestData info, string sessionID) { throw new NotImplementedException(); } diff --git a/Core/Callbacks/WishlistCallbacks.cs b/Core/Callbacks/WishlistCallbacks.cs new file mode 100644 index 00000000..ed03271c --- /dev/null +++ b/Core/Callbacks/WishlistCallbacks.cs @@ -0,0 +1,28 @@ +using Core.Models.Eft.Common; +using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Wishlist; + +namespace Core.Callbacks; + +public class WishlistCallbacks +{ + public WishlistCallbacks() + { + + } + + public ItemEventRouterResponse AddToWishlist(PmcData pmcData, AddToWishlistRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public ItemEventRouterResponse RemoveFromWishlist(PmcData pmcData, RemoveFromWishlistRequest info, string sessionID) + { + throw new NotImplementedException(); + } + + public ItemEventRouterResponse ChangeWishlistItemCategory(PmcData pmcData, ChangeWishlistItemCategoryRequest info, string sessionID) + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Core/Controllers/BotController.cs b/Core/Controllers/BotController.cs index 36cfed34..cd8a2c94 100644 --- a/Core/Controllers/BotController.cs +++ b/Core/Controllers/BotController.cs @@ -2,6 +2,7 @@ using Core.Models.Eft.Bot; using Core.Models.Eft.Common; using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.Match; using Core.Models.Spt.Bots; using Core.Models.Spt.Config; using Condition = Core.Models.Spt.Config.Condition; diff --git a/Core/Controllers/BuildController.cs b/Core/Controllers/BuildController.cs index da601eaa..35922571 100644 --- a/Core/Controllers/BuildController.cs +++ b/Core/Controllers/BuildController.cs @@ -41,9 +41,9 @@ public class BuildController /// /// /// - public void RemoveBuild(string sessionId, RemoveBuildReqestData request) + public void RemoveBuild(string sessionId, RemoveBuildRequestData request) { - RemovePlayerBuild(request.id, sessionId); + RemovePlayerBuild(request.Id, sessionId); } /// diff --git a/Core/Controllers/CustomizationController.cs b/Core/Controllers/CustomizationController.cs index a0363efc..47ec396d 100644 --- a/Core/Controllers/CustomizationController.cs +++ b/Core/Controllers/CustomizationController.cs @@ -30,7 +30,7 @@ public class CustomizationController /// ItemEventRouterResponse public ItemEventRouterResponse BuyClothing( PmcData pmcData, - BuyClothingRequest buyClothingRequest, + BuyClothingRequestData buyClothingRequest, string sessionId) { throw new NotImplementedException(); @@ -84,7 +84,7 @@ public class CustomizationController /// /// /// - public HideoutCustomisationStorage GetHideoutCustomisation( + public HideoutCustomisation GetHideoutCustomisation( string sessionId, EmptyRequestData info) { diff --git a/Core/Controllers/DialogueController.cs b/Core/Controllers/DialogueController.cs index ffa91bd6..53981eb9 100644 --- a/Core/Controllers/DialogueController.cs +++ b/Core/Controllers/DialogueController.cs @@ -10,7 +10,7 @@ public class DialogueController /// /// /// - public void RegisterChatBot(DialogueChatBot chatBot) + public void RegisterChatBot(DialogueChatBot chatBot) // TODO: this is in with the helper types { throw new NotImplementedException(); } diff --git a/Core/Controllers/LauncherController.cs b/Core/Controllers/LauncherController.cs index cb2d4ac2..5187b864 100644 --- a/Core/Controllers/LauncherController.cs +++ b/Core/Controllers/LauncherController.cs @@ -1,3 +1,4 @@ +using Core.Models.Eft.Launcher; using Core.Models.Eft.Profile; using Core.Models.Spt.Mod; diff --git a/Core/Controllers/LocationController.cs b/Core/Controllers/LocationController.cs index 4f17a525..5b40a43c 100644 --- a/Core/Controllers/LocationController.cs +++ b/Core/Controllers/LocationController.cs @@ -1,3 +1,6 @@ +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.Location; + namespace Core.Controllers; public class LocationController @@ -18,7 +21,7 @@ public class LocationController /// /// /// - public GetAirDropLootResponse GetAirDropLoot(GetAirDropLootRequest request) + public GetAirdropLootResponse GetAirDropLoot(GetAirdropLootRequest request) { throw new NotImplementedException(); } diff --git a/Core/Controllers/MatchController.cs b/Core/Controllers/MatchController.cs index 13c5854d..7b613e1a 100644 --- a/Core/Controllers/MatchController.cs +++ b/Core/Controllers/MatchController.cs @@ -1,3 +1,5 @@ +using Core.Models.Eft.Match; + namespace Core.Controllers; public class MatchController @@ -38,7 +40,7 @@ public class MatchController /// /// /// - public MatchGroupStatusReponse GetGroupStatus( + public MatchGroupStatusResponse GetGroupStatus( MatchGroupStatusRequest info) { throw new NotImplementedException(); diff --git a/Core/Controllers/NoteController.cs b/Core/Controllers/NoteController.cs index cdc2d6bd..4e2a4b1a 100644 --- a/Core/Controllers/NoteController.cs +++ b/Core/Controllers/NoteController.cs @@ -1,5 +1,6 @@ using Core.Models.Eft.Common; using Core.Models.Eft.ItemEvent; +using Core.Models.Eft.Notes; namespace Core.Controllers; @@ -14,7 +15,7 @@ public class NoteController /// public ItemEventRouterResponse AddNote( PmcData pmcData, - NoteActionBody body, + NoteActionData body, string sessionId) { throw new NotImplementedException(); @@ -29,7 +30,7 @@ public class NoteController /// public ItemEventRouterResponse EditNote( PmcData pmcData, - NoteActionBody body, + NoteActionData body, string sessionId) { throw new NotImplementedException(); @@ -44,7 +45,7 @@ public class NoteController /// public ItemEventRouterResponse DeleteNote( PmcData pmcData, - NoteActionBody body, + NoteActionData body, string sessionId) { throw new NotImplementedException(); diff --git a/Core/Models/Eft/Common/Tables/LocationsGenerateAllResponse.cs b/Core/Models/Eft/Common/Tables/LocationsGenerateAllResponse.cs new file mode 100644 index 00000000..2de6130b --- /dev/null +++ b/Core/Models/Eft/Common/Tables/LocationsGenerateAllResponse.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Common.Tables; + +public class LocationsGenerateAllResponse +{ + [JsonPropertyName("locations")] + public Locations Locations { get; set; } + + [JsonPropertyName("paths")] + public List Paths { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Dialog/GetAllAttachmentsResponse.cs b/Core/Models/Eft/Dialog/GetAllAttachmentsResponse.cs new file mode 100644 index 00000000..3a854457 --- /dev/null +++ b/Core/Models/Eft/Dialog/GetAllAttachmentsResponse.cs @@ -0,0 +1,16 @@ +using System.Text.Json.Serialization; +using Core.Models.Eft.Profile; + +namespace Core.Models.Eft.Dialog; + +public class GetAllAttachmentsResponse +{ + [JsonPropertyName("messages")] + public List Messages { get; set; } + + [JsonPropertyName("profiles")] + public List Profiles { get; set; } // Assuming 'any' translates to 'object' + + [JsonPropertyName("hasMessagesWithRewards")] + public bool HasMessagesWithRewards { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Launcher/ChangeRequestData.cs b/Core/Models/Eft/Launcher/ChangeRequestData.cs new file mode 100644 index 00000000..c2ccc0a4 --- /dev/null +++ b/Core/Models/Eft/Launcher/ChangeRequestData.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Launcher; + +public class ChangeRequestData : LoginRequestData +{ + [JsonPropertyName("change")] + public string Change { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Launcher/GetMiniProfileRequestData.cs b/Core/Models/Eft/Launcher/GetMiniProfileRequestData.cs new file mode 100644 index 00000000..5b08e548 --- /dev/null +++ b/Core/Models/Eft/Launcher/GetMiniProfileRequestData.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Launcher; + +public class GetMiniProfileRequestData +{ + [JsonPropertyName("username")] + public string Username { get; set; } + + [JsonPropertyName("password")] + public string Password { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Launcher/LoginRequestData.cs b/Core/Models/Eft/Launcher/LoginRequestData.cs new file mode 100644 index 00000000..ca39527c --- /dev/null +++ b/Core/Models/Eft/Launcher/LoginRequestData.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Launcher; + +public class LoginRequestData +{ + [JsonPropertyName("username")] + public string Username { get; set; } + + [JsonPropertyName("password")] + public string Password { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Launcher/RegisterData.cs b/Core/Models/Eft/Launcher/RegisterData.cs new file mode 100644 index 00000000..6bc847ef --- /dev/null +++ b/Core/Models/Eft/Launcher/RegisterData.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Launcher; + +public class RegisterData : LoginRequestData +{ + [JsonPropertyName("edition")] + public string Edition { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Launcher/RemoveProfileData.cs b/Core/Models/Eft/Launcher/RemoveProfileData.cs new file mode 100644 index 00000000..fb4d6834 --- /dev/null +++ b/Core/Models/Eft/Launcher/RemoveProfileData.cs @@ -0,0 +1,6 @@ +namespace Core.Models.Eft.Launcher; + +public class RemoveProfileData : LoginRequestData +{ + +} \ No newline at end of file diff --git a/Core/Models/Eft/Location/GetAirdropLootRequest.cs b/Core/Models/Eft/Location/GetAirdropLootRequest.cs new file mode 100644 index 00000000..867866fb --- /dev/null +++ b/Core/Models/Eft/Location/GetAirdropLootRequest.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Location; + +public class GetAirdropLootRequest +{ + [JsonPropertyName("containerId")] + public string ContainerId { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Location/GetAirdropLootResponse.cs b/Core/Models/Eft/Location/GetAirdropLootResponse.cs new file mode 100644 index 00000000..1aef8a79 --- /dev/null +++ b/Core/Models/Eft/Location/GetAirdropLootResponse.cs @@ -0,0 +1,15 @@ +using System.Text.Json.Serialization; +using Core.Models.Eft.Common.Tables; +using Core.Models.Enums; + +namespace Core.Models.Eft.Location; + +public class GetAirdropLootResponse +{ + // The type of airdrop + [JsonPropertyName("icon")] + public AirdropTypeEnum Icon { get; set; } + + [JsonPropertyName("container")] + public List Container { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/EndLocalRaidRequestData.cs b/Core/Models/Eft/Match/EndLocalRaidRequestData.cs new file mode 100644 index 00000000..0a5d7632 --- /dev/null +++ b/Core/Models/Eft/Match/EndLocalRaidRequestData.cs @@ -0,0 +1,122 @@ +using System.Text.Json.Serialization; +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Enums; + +namespace Core.Models.Eft.Match; + +public class EndLocalRaidRequestData +{ + /// + /// ID of server player just left + /// + [JsonPropertyName("serverId")] + public string ServerId { get; set; } + + [JsonPropertyName("results")] + public EndRaidResult Results { get; set; } + + /// + /// Insured items left in raid by player + /// + [JsonPropertyName("lostInsuredItems")] + public List LostInsuredItems { get; set; } + + /// + /// Items sent via traders to player, keyed to service e.g. BTRTransferStash + /// + [JsonPropertyName("transferItems")] + public Dictionary> TransferItems { get; set; } + + [JsonPropertyName("locationTransit")] + public LocationTransit LocationTransit { get; set; } +} + +public class EndRaidResult +{ + public PmcData Profile { get; set; } + + /// + /// "Survived/Transit" etc + /// + [JsonPropertyName("result")] + public ExitStatus Result { get; set; } + + [JsonPropertyName("killerId")] + public string KillerId { get; set; } + + [JsonPropertyName("killerAid")] + public string KillerAid { get; set; } + + /// + /// "Gate 3" etc + /// + [JsonPropertyName("exitName")] + public string ExitName { get; set; } + + [JsonPropertyName("inSession")] + public bool InSession { get; set; } + + [JsonPropertyName("favorite")] + public bool Favorite { get; set; } + + /// + /// Seconds in raid + /// + [JsonPropertyName("playTime")] + public int PlayTime { get; set; } +} + +public class LocationTransit +{ + [JsonPropertyName("hash")] + public string Hash { get; set; } + + [JsonPropertyName("playersCount")] + public int PlayersCount { get; set; } + + [JsonPropertyName("ip")] + public string Ip { get; set; } + + [JsonPropertyName("location")] + public string Location { get; set; } + + [JsonPropertyName("profiles")] + public Dictionary Profiles { get; set; } + + [JsonPropertyName("transitionRaidId")] + public string TransitionRaidId { get; set; } + + [JsonPropertyName("raidMode")] + public string RaidMode { get; set; } + + [JsonPropertyName("side")] + public string Side { get; set; } + + [JsonPropertyName("dayTime")] + public string DayTime { get; set; } + + /// + /// The location player last visited + /// + [JsonPropertyName("sptLastVisitedLocation")] + public string SptLastVisitedLocation { get; set; } + + /// + /// Name of exit taken + /// + [JsonPropertyName("sptExitName")] + public string? SptExitName { get; set; } +} + +public class TransitProfile +{ + [JsonPropertyName("_id")] + public string Id { get; set; } + + [JsonPropertyName("keyId")] + public string KeyId { get; set; } + + [JsonPropertyName("isSolo")] + public bool IsSolo { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/GetRaidConfigurationRequestData.cs b/Core/Models/Eft/Match/GetRaidConfigurationRequestData.cs new file mode 100644 index 00000000..1f9081f4 --- /dev/null +++ b/Core/Models/Eft/Match/GetRaidConfigurationRequestData.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class GetRaidConfigurationRequestData : RaidSettings +{ + [JsonPropertyName("keyId")] + public string KeyId { get; set; } + + [JsonPropertyName("MaxGroupCount")] + public int MaxGroupCount { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/GroupCharacter.cs b/Core/Models/Eft/Match/GroupCharacter.cs new file mode 100644 index 00000000..96cdcf8b --- /dev/null +++ b/Core/Models/Eft/Match/GroupCharacter.cs @@ -0,0 +1,113 @@ +using System.Text.Json.Serialization; +using Core.Models.Eft.Common.Tables; +using Core.Models.Enums; + +namespace Core.Models.Eft.Match; + +public class GroupCharacter +{ + [JsonPropertyName("_id")] + public string Id { get; set; } + + [JsonPropertyName("aid")] + public int Aid { get; set; } + + [JsonPropertyName("Info")] + public CharacterInfo Info { get; set; } + + [JsonPropertyName("PlayerVisualRepresentation")] + public PlayerVisualRepresentation? VisualRepresentation { get; set; } + + [JsonPropertyName("isLeader")] + public bool IsLeader { get; set; } + + [JsonPropertyName("isReady")] + public bool? IsReady { get; set; } + + [JsonPropertyName("region")] + public string? Region { get; set; } + + [JsonPropertyName("lookingGroup")] + public bool? LookingGroup { get; set; } +} + +public class CharacterInfo +{ + [JsonPropertyName("Nickname")] + public string Nickname { get; set; } + + [JsonPropertyName("Side")] + public string Side { get; set; } + + [JsonPropertyName("Level")] + public int Level { get; set; } + + [JsonPropertyName("MemberCategory")] + public MemberCategory MemberCategory { get; set; } + + [JsonPropertyName("GameVersion")] + public string? GameVersion { get; set; } + + [JsonPropertyName("SavageLockTime")] + public int? SavageLockTime { get; set; } + + [JsonPropertyName("SavageNickname")] + public string? SavageNickname { get; set; } + + [JsonPropertyName("hasCoopExtension")] + public bool? HasCoopExtension { get; set; } +} + +public class PlayerVisualRepresentation +{ + [JsonPropertyName("Info")] + public VisualInfo Info { get; set; } + + [JsonPropertyName("Customization")] + public Customization Customization { get; set; } + + [JsonPropertyName("Equipment")] + public Equipment Equipment { get; set; } +} + +public class VisualInfo +{ + [JsonPropertyName("Side")] + public string Side { get; set; } + + [JsonPropertyName("Level")] + public int Level { get; set; } + + [JsonPropertyName("Nickname")] + public string Nickname { get; set; } + + [JsonPropertyName("MemberCategory")] + public MemberCategory MemberCategory { get; set; } + + [JsonPropertyName("GameVersion")] + public string GameVersion { get; set; } +} + +public class Customization +{ + [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; } +} + +public class Equipment +{ + [JsonPropertyName("Id")] + public string Id { get; set; } + + [JsonPropertyName("Items")] + public List Items { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupCurrentResponse.cs b/Core/Models/Eft/Match/MatchGroupCurrentResponse.cs new file mode 100644 index 00000000..f186ff10 --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupCurrentResponse.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupCurrentResponse +{ + [JsonPropertyName("squad")] + public List Squad { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupInviteSendRequest.cs b/Core/Models/Eft/Match/MatchGroupInviteSendRequest.cs new file mode 100644 index 00000000..d02eccdd --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupInviteSendRequest.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupInviteSendRequest +{ + [JsonPropertyName("to")] + public string To { get; set; } + + [JsonPropertyName("inLobby")] + public bool InLobby { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupPlayerRemoveRequest.cs b/Core/Models/Eft/Match/MatchGroupPlayerRemoveRequest.cs new file mode 100644 index 00000000..fc848c55 --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupPlayerRemoveRequest.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupPlayerRemoveRequest +{ + [JsonPropertyName("aidToKick")] + public string AidToKick { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupStartGameRequest.cs b/Core/Models/Eft/Match/MatchGroupStartGameRequest.cs new file mode 100644 index 00000000..1fabafe6 --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupStartGameRequest.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupStartGameRequest +{ + [JsonPropertyName("groupId")] + public string GroupId { get; set; } + + [JsonPropertyName("servers")] + public List Servers { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupStatusRequest.cs b/Core/Models/Eft/Match/MatchGroupStatusRequest.cs new file mode 100644 index 00000000..ea9de1f5 --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupStatusRequest.cs @@ -0,0 +1,25 @@ +using System.Text.Json.Serialization; +using Core.Models.Enums; + +namespace Core.Models.Eft.Match; + +public class MatchGroupStatusRequest +{ + [JsonPropertyName("location")] + public string Location { get; set; } + + [JsonPropertyName("savage")] + public bool IsSavage { get; set; } + + [JsonPropertyName("dt")] + public string DateTime { get; set; } + + [JsonPropertyName("keyId")] + public string KeyId { get; set; } + + [JsonPropertyName("raidMode")] + public RaidMode RaidMode { get; set; } + + [JsonPropertyName("spawnPlace")] + public string SpawnPlace { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupStatusResponse.cs b/Core/Models/Eft/Match/MatchGroupStatusResponse.cs new file mode 100644 index 00000000..e3c6aca8 --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupStatusResponse.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupStatusResponse +{ + [JsonPropertyName("players")] + public List Players { get; set; } + + [JsonPropertyName("maxPveCountExceeded")] + public bool MaxPveCountExceeded { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/MatchGroupTransferRequest.cs b/Core/Models/Eft/Match/MatchGroupTransferRequest.cs new file mode 100644 index 00000000..46bb8eaf --- /dev/null +++ b/Core/Models/Eft/Match/MatchGroupTransferRequest.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class MatchGroupTransferRequest +{ + [JsonPropertyName("aidToChange")] + public string AidToChange { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/ProfileStatusResponse.cs b/Core/Models/Eft/Match/ProfileStatusResponse.cs new file mode 100644 index 00000000..9aebb616 --- /dev/null +++ b/Core/Models/Eft/Match/ProfileStatusResponse.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class ProfileStatusResponse +{ + [JsonPropertyName("maxPveCountExceeded")] + public bool MaxPveCountExceeded { get; set; } + + [JsonPropertyName("profiles")] + public List Profiles { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/PutMetricsRequestData.cs b/Core/Models/Eft/Match/PutMetricsRequestData.cs new file mode 100644 index 00000000..637b8677 --- /dev/null +++ b/Core/Models/Eft/Match/PutMetricsRequestData.cs @@ -0,0 +1,162 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class PutMetricsRequestData +{ + [JsonPropertyName("sid")] + public string SessionId { get; set; } + + [JsonPropertyName("settings")] + public object Settings { get; set; } + + [JsonPropertyName("SharedSettings")] + public SharedSettings SharedSettings { get; set; } + + [JsonPropertyName("HardwareDescription")] + public HardwareDescription HardwareDescription { get; set; } + + [JsonPropertyName("Location")] + public string Location { get; set; } + + [JsonPropertyName("Metrics")] + public object Metrics { get; set; } + + [JsonPropertyName("ClientEvents")] + public ClientEvents ClientEvents { get; set; } + + [JsonPropertyName("SpikeSamples")] + public List SpikeSamples { get; set; } + + [JsonPropertyName("mode")] + public string Mode { get; set; } +} + +public class SharedSettings +{ + [JsonPropertyName("StatedFieldOfView")] + public double StatedFieldOfView { get; set; } +} + +public class HardwareDescription +{ + [JsonPropertyName("deviceUniqueIdentifier")] + public string DeviceUniqueIdentifier { get; set; } + + [JsonPropertyName("systemMemorySize")] + public double SystemMemorySize { get; set; } + + [JsonPropertyName("graphicsDeviceID")] + public double GraphicsDeviceId { get; set; } + + [JsonPropertyName("graphicsDeviceName")] + public string GraphicsDeviceName { get; set; } + + [JsonPropertyName("graphicsDeviceType")] + public string GraphicsDeviceType { get; set; } + + [JsonPropertyName("graphicsDeviceVendor")] + public string GraphicsDeviceVendor { get; set; } + + [JsonPropertyName("graphicsDeviceVendorID")] + public double GraphicsDeviceVendorId { get; set; } + + [JsonPropertyName("graphicsDeviceVersion")] + public string GraphicsDeviceVersion { get; set; } + + [JsonPropertyName("graphicsMemorySize")] + public double GraphicsMemorySize { get; set; } + + [JsonPropertyName("graphicsMultiThreaded")] + public bool GraphicsMultiThreaded { get; set; } + + [JsonPropertyName("graphicsShaderLevel")] + public double GraphicsShaderLevel { get; set; } + + [JsonPropertyName("operatingSystem")] + public string OperatingSystem { get; set; } + + [JsonPropertyName("processorCount")] + public double ProcessorCount { get; set; } + + [JsonPropertyName("processorFrequency")] + public double ProcessorFrequency { get; set; } + + [JsonPropertyName("processorType")] + public string ProcessorType { get; set; } + + [JsonPropertyName("driveType")] + public string DriveType { get; set; } + + [JsonPropertyName("swapDriveType")] + public string SwapDriveType { get; set; } +} + +public class ClientEvents +{ + [JsonPropertyName("MatchingCompleted")] + public double MatchingCompleted { get; set; } + + [JsonPropertyName("MatchingCompletedReal")] + public double MatchingCompletedReal { get; set; } + + [JsonPropertyName("LocationLoaded")] + public double LocationLoaded { get; set; } + + [JsonPropertyName("LocationLoadedReal")] + public double LocationLoadedReal { get; set; } + + [JsonPropertyName("GamePrepared")] + public double GamePrepared { get; set; } + + [JsonPropertyName("GamePreparedReal")] + public double GamePreparedReal { get; set; } + + [JsonPropertyName("GameCreated")] + public double GameCreated { get; set; } + + [JsonPropertyName("GameCreatedReal")] + public double GameCreatedReal { get; set; } + + [JsonPropertyName("GamePooled")] + public double GamePooled { get; set; } + + [JsonPropertyName("GamePooledReal")] + public double GamePooledReal { get; set; } + + [JsonPropertyName("GameRunned")] + public double GameRunned { get; set; } + + [JsonPropertyName("GameRunnedReal")] + public double GameRunnedReal { get; set; } + + [JsonPropertyName("GameSpawn")] + public double GameSpawn { get; set; } + + [JsonPropertyName("GameSpawnReal")] + public double GameSpawnReal { get; set; } + + [JsonPropertyName("PlayerSpawnEvent")] + public double PlayerSpawnEvent { get; set; } + + [JsonPropertyName("PlayerSpawnEventReal")] + public double PlayerSpawnEventReal { get; set; } + + [JsonPropertyName("GameSpawned")] + public double GameSpawned { get; set; } + + [JsonPropertyName("GameSpawnedReal")] + public double GameSpawnedReal { get; set; } + + [JsonPropertyName("GameStarting")] + public double GameStarting { get; set; } + + [JsonPropertyName("GameStartingReal")] + public double GameStartingReal { get; set; } + + [JsonPropertyName("GameStarted")] + public double GameStarted { get; set; } + + [JsonPropertyName("GameStartedReal")] + public double GameStartedReal { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/RaidSettings.cs b/Core/Models/Eft/Match/RaidSettings.cs new file mode 100644 index 00000000..f733ba56 --- /dev/null +++ b/Core/Models/Eft/Match/RaidSettings.cs @@ -0,0 +1,96 @@ +using System.Text.Json.Serialization; +using Core.Models.Enums; +using Core.Models.Enums.RaidSettings; +using Core.Models.Enums.RaidSettings.TimeAndWeather; + +namespace Core.Models.Eft.Match; + +public class RaidSettings +{ + [JsonPropertyName("keyId")] + public string KeyId { get; set; } + + [JsonPropertyName("location")] + public string Location { get; set; } + + [JsonPropertyName("isLocationTransition")] + public bool IsLocationTransition { get; set; } + + [JsonPropertyName("timeVariant")] + public DateTime TimeVariant { get; set; } + + [JsonPropertyName("metabolismDisabled")] + public bool MetabolismDisabled { get; set; } + + [JsonPropertyName("timeAndWeatherSettings")] + public TimeAndWeatherSettings TimeAndWeatherSettings { get; set; } + + [JsonPropertyName("botSettings")] + public BotSettings BotSettings { get; set; } + + [JsonPropertyName("wavesSettings")] + public WavesSettings WavesSettings { get; set; } + + [JsonPropertyName("side")] + public SideType Side { get; set; } + + [JsonPropertyName("raidMode")] + public RaidMode RaidMode { get; set; } + + [JsonPropertyName("playersSpawnPlace")] + public PlayersSpawnPlace PlayersSpawnPlace { get; set; } + + [JsonPropertyName("canShowGroupPreview")] + public bool CanShowGroupPreview { get; set; } +} + +public class TimeAndWeatherSettings +{ + [JsonPropertyName("isRandomTime")] + public bool IsRandomTime { get; set; } + + [JsonPropertyName("isRandomWeather")] + public bool IsRandomWeather { get; set; } + + [JsonPropertyName("cloudinessType")] + public CloudinessType CloudinessType { get; set; } + + [JsonPropertyName("rainType")] + public RainType RainType { get; set; } + + [JsonPropertyName("fogType")] + public FogType FogType { get; set; } + + [JsonPropertyName("windType")] + public WindSpeed WindType { get; set; } + + [JsonPropertyName("timeFlowType")] + public TimeFlowType TimeFlowType { get; set; } + + [JsonPropertyName("hourOfDay")] + public int HourOfDay { get; set; } +} + +public class BotSettings +{ + [JsonPropertyName("isScavWars")] + public bool IsScavWars { get; set; } + + [JsonPropertyName("botAmount")] + public BotAmount BotAmount { get; set; } +} + +public class WavesSettings +{ + [JsonPropertyName("botAmount")] + public BotAmount BotAmount { get; set; } + + [JsonPropertyName("botDifficulty")] + public BotDifficulty BotDifficulty { get; set; } + + [JsonPropertyName("isBosses")] + public bool IsBosses { get; set; } + + [JsonPropertyName("isTaggedAndCursed")] + public bool IsTaggedAndCursed { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/RequestIdRequest.cs b/Core/Models/Eft/Match/RequestIdRequest.cs new file mode 100644 index 00000000..d5f2622d --- /dev/null +++ b/Core/Models/Eft/Match/RequestIdRequest.cs @@ -0,0 +1,9 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class RequestIdRequest +{ + [JsonPropertyName("requestId")] + public string RequestId { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/Server.cs b/Core/Models/Eft/Match/Server.cs new file mode 100644 index 00000000..64a01fdb --- /dev/null +++ b/Core/Models/Eft/Match/Server.cs @@ -0,0 +1,15 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class Server +{ + [JsonPropertyName("ping")] + public int Ping { get; set; } + + [JsonPropertyName("ip")] + public string Ip { get; set; } + + [JsonPropertyName("port")] + public int Port { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/SessionStatus.cs b/Core/Models/Eft/Match/SessionStatus.cs new file mode 100644 index 00000000..773224f5 --- /dev/null +++ b/Core/Models/Eft/Match/SessionStatus.cs @@ -0,0 +1,42 @@ +using System.Text.Json.Serialization; + +namespace Core.Models.Eft.Match; + +public class SessionStatus +{ + [JsonPropertyName("profileid")] + public string ProfileId { get; set; } + + [JsonPropertyName("profileToken")] + public string ProfileToken { get; set; } + + [JsonPropertyName("status")] + public string Status { get; set; } + + [JsonPropertyName("ip")] + public string Ip { get; set; } + + [JsonPropertyName("port")] + public int Port { get; set; } + + [JsonPropertyName("sid")] + public string Sid { get; set; } + + [JsonPropertyName("version")] + public string? Version { get; set; } + + [JsonPropertyName("location")] + public string? Location { get; set; } + + [JsonPropertyName("raidMode")] + public string? RaidMode { get; set; } + + [JsonPropertyName("mode")] + public string? Mode { get; set; } + + [JsonPropertyName("shortId")] + public string? ShortId { get; set; } + + [JsonPropertyName("additional_info")] + public List? AdditionalInfo { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/StartLocalRaidRequestData.cs b/Core/Models/Eft/Match/StartLocalRaidRequestData.cs new file mode 100644 index 00000000..d09d5c1a --- /dev/null +++ b/Core/Models/Eft/Match/StartLocalRaidRequestData.cs @@ -0,0 +1,32 @@ +using System.Text.Json.Serialization; +using Core.Models.Enums; + +namespace Core.Models.Eft.Match; + +public class StartLocalRaidRequestData +{ + [JsonPropertyName("serverId")] + public string ServerId { get; set; } + + [JsonPropertyName("location")] + public string Location { get; set; } + + [JsonPropertyName("timeVariant")] + public string TimeVariant { get; set; } + + [JsonPropertyName("mode")] + public string Mode { get; set; } + + [JsonPropertyName("playerSide")] + public string PlayerSide { get; set; } + + [JsonPropertyName("transitionType")] + public TransitionType TransitionType { get; set; } + + [JsonPropertyName("transition")] + public Transition Transition { get; set; } + + /** Should loot generation be skipped, default false */ + [JsonPropertyName("sptSkipLootGeneration")] + public bool? ShouldSkipLootGeneration { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Match/StartLocalRaidResponseData.cs b/Core/Models/Eft/Match/StartLocalRaidResponseData.cs new file mode 100644 index 00000000..a489e511 --- /dev/null +++ b/Core/Models/Eft/Match/StartLocalRaidResponseData.cs @@ -0,0 +1,48 @@ +using System.Text.Json.Serialization; +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Enums; + +namespace Core.Models.Eft.Match; + +public class StartLocalRaidResponseData +{ + [JsonPropertyName("serverId")] + public string ServerId { get; set; } + + [JsonPropertyName("serverSettings")] + public LocationServices ServerSettings { get; set; } + + [JsonPropertyName("profile")] + public ProfileInsuredItems Profile { get; set; } + + [JsonPropertyName("locationLoot")] + public LocationBase LocationLoot { get; set; } + + [JsonPropertyName("transitionType")] + public TransitionType TransitionType { get; set; } + + [JsonPropertyName("transition")] + public Transition Transition { get; set; } +} + +public class ProfileInsuredItems +{ + [JsonPropertyName("insuredItems")] + public List InsuredItems { get; set; } +} + +public class Transition +{ + [JsonPropertyName("transitionType")] + public TransitionType TransitionType { get; set; } + + [JsonPropertyName("transitionRaidId")] + public string TransitionRaidId { get; set; } + + [JsonPropertyName("transitionCount")] + public int TransitionCount { get; set; } + + [JsonPropertyName("visitedLocations")] + public List VisitedLocations { get; set; } +} \ No newline at end of file diff --git a/Core/Models/Eft/Ragfair/SearchRequestData.cs b/Core/Models/Eft/Ragfair/SearchRequestData.cs index 35928abf..fa37c184 100644 --- a/Core/Models/Eft/Ragfair/SearchRequestData.cs +++ b/Core/Models/Eft/Ragfair/SearchRequestData.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Enums; namespace Core.Models.Eft.Ragfair; diff --git a/Core/Models/Eft/Ws/WsChatMessageReceived.cs b/Core/Models/Eft/Ws/WsChatMessageReceived.cs index 7b00d922..da50426b 100644 --- a/Core/Models/Eft/Ws/WsChatMessageReceived.cs +++ b/Core/Models/Eft/Ws/WsChatMessageReceived.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Match; using Core.Models.Eft.Profile; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Eft/Ws/WsFriendListAccept.cs b/Core/Models/Eft/Ws/WsFriendListAccept.cs index 4161fa15..9d38d90e 100644 --- a/Core/Models/Eft/Ws/WsFriendListAccept.cs +++ b/Core/Models/Eft/Ws/WsFriendListAccept.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Profile; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Eft/Ws/WsGroupMatchInviteAccept.cs b/Core/Models/Eft/Ws/WsGroupMatchInviteAccept.cs index dd213c6b..4febe122 100644 --- a/Core/Models/Eft/Ws/WsGroupMatchInviteAccept.cs +++ b/Core/Models/Eft/Ws/WsGroupMatchInviteAccept.cs @@ -1,5 +1,7 @@ +using Core.Models.Eft.Match; + namespace Core.Models.Eft.Ws; -public class WsGroupMatchInviteAccept : WsNotificationEvent, IGroupCharacter +public class WsGroupMatchInviteAccept : WsNotificationEvent, GroupCharacter // TODO: trying to inherit multiTypes { } \ No newline at end of file diff --git a/Core/Models/Eft/Ws/WsGroupMatchInviteSend.cs b/Core/Models/Eft/Ws/WsGroupMatchInviteSend.cs index 2364870d..21624403 100644 --- a/Core/Models/Eft/Ws/WsGroupMatchInviteSend.cs +++ b/Core/Models/Eft/Ws/WsGroupMatchInviteSend.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Match; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Eft/Ws/WsGroupMatchRaidReady.cs b/Core/Models/Eft/Ws/WsGroupMatchRaidReady.cs index 4fddf596..f2f38ad6 100644 --- a/Core/Models/Eft/Ws/WsGroupMatchRaidReady.cs +++ b/Core/Models/Eft/Ws/WsGroupMatchRaidReady.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Match; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Eft/Ws/WsGroupMatchRaidSettings.cs b/Core/Models/Eft/Ws/WsGroupMatchRaidSettings.cs index fb2dabf6..2559b72d 100644 --- a/Core/Models/Eft/Ws/WsGroupMatchRaidSettings.cs +++ b/Core/Models/Eft/Ws/WsGroupMatchRaidSettings.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Match; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Eft/Ws/WsUserConfirmed.cs b/Core/Models/Eft/Ws/WsUserConfirmed.cs index 9ed46840..6b814341 100644 --- a/Core/Models/Eft/Ws/WsUserConfirmed.cs +++ b/Core/Models/Eft/Ws/WsUserConfirmed.cs @@ -1,4 +1,5 @@ using System.Text.Json.Serialization; +using Core.Models.Enums; namespace Core.Models.Eft.Ws; diff --git a/Core/Models/Enums/ExitStatus.cs b/Core/Models/Enums/ExitStatus.cs new file mode 100644 index 00000000..3c19762b --- /dev/null +++ b/Core/Models/Enums/ExitStatus.cs @@ -0,0 +1,11 @@ +namespace Core.Models.Enums; + +public enum ExitStatus +{ + SURVIVED, + KILLED, + LEFT, + RUNNER, + MISSINGINACTION, + TRANSIT +} \ No newline at end of file diff --git a/Core/Models/Enums/PlayersSpawnPlace.cs b/Core/Models/Enums/PlayersSpawnPlace.cs new file mode 100644 index 00000000..91c4ec72 --- /dev/null +++ b/Core/Models/Enums/PlayersSpawnPlace.cs @@ -0,0 +1,8 @@ +namespace Core.Models.Enums; + +public enum PlayersSpawnPlace +{ + SAME_PLACE, + DIFFERENT_PLACES, + AT_THE_ENDS_OF_THE_MAP +} \ No newline at end of file diff --git a/Core/Models/Enums/ProfileStatus.cs b/Core/Models/Enums/ProfileStatus.cs new file mode 100644 index 00000000..b9fc1774 --- /dev/null +++ b/Core/Models/Enums/ProfileStatus.cs @@ -0,0 +1,10 @@ +namespace Core.Models.Enums; + +public enum ProfileStatus +{ + FREE, + MATCH_WAIT, + BUSY, + LEAVING, + TRANSFER, +} \ No newline at end of file diff --git a/Core/Models/Enums/RagfairSort.cs b/Core/Models/Enums/RagfairSort.cs new file mode 100644 index 00000000..52b499c2 --- /dev/null +++ b/Core/Models/Enums/RagfairSort.cs @@ -0,0 +1,11 @@ +namespace Core.Models.Enums; + +public enum RagfairSort +{ + ID = 0, + BARTER = 2, + RATING = 3, + OFFER_TITLE = 4, + PRICE = 5, + EXPIRY = 6, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidMode.cs b/Core/Models/Enums/RaidMode.cs new file mode 100644 index 00000000..428f33c1 --- /dev/null +++ b/Core/Models/Enums/RaidMode.cs @@ -0,0 +1,8 @@ +namespace Core.Models.Enums; + +public enum RaidMode +{ + ONLINE, + LOCAL, + COOP +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/BotAmount.cs b/Core/Models/Enums/RaidSettings/BotAmount.cs new file mode 100644 index 00000000..5fcaa5a4 --- /dev/null +++ b/Core/Models/Enums/RaidSettings/BotAmount.cs @@ -0,0 +1,11 @@ +namespace Core.Models.Enums.RaidSettings; + +public enum BotAmount +{ + AS_ONLINE, + NO_BOTS, + LOW, + MEDIUM, + HIGH, + HORDE, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/BotDifficulty.cs b/Core/Models/Enums/RaidSettings/BotDifficulty.cs new file mode 100644 index 00000000..9a50d541 --- /dev/null +++ b/Core/Models/Enums/RaidSettings/BotDifficulty.cs @@ -0,0 +1,11 @@ +namespace Core.Models.Enums.RaidSettings; + +public enum BotDifficulty +{ + AS_ONLINE, + EASY, + MEDIUM, + HARD, + IMPOSSIBLE, + RANDOM, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/TimeAndWeather/CloudinessType.cs b/Core/Models/Enums/RaidSettings/TimeAndWeather/CloudinessType.cs new file mode 100644 index 00000000..afeb8aa9 --- /dev/null +++ b/Core/Models/Enums/RaidSettings/TimeAndWeather/CloudinessType.cs @@ -0,0 +1,11 @@ +namespace Core.Models.Enums.RaidSettings.TimeAndWeather; + +public enum CloudinessType +{ + CLEAR, + PARTLY_CLOUDY, + CLOUDY, + CLOUDY_WITH_GAPS, + HEAVY_CLOUD_COVER, + THUNDER_CLOUD +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/TimeAndWeather/FogType.cs b/Core/Models/Enums/RaidSettings/TimeAndWeather/FogType.cs new file mode 100644 index 00000000..6b1c8daa --- /dev/null +++ b/Core/Models/Enums/RaidSettings/TimeAndWeather/FogType.cs @@ -0,0 +1,10 @@ +namespace Core.Models.Enums.RaidSettings.TimeAndWeather; + +public enum FogType +{ + NO_FOG, + FAINT, + FOG, + HEAVY, + CONTINUOUS, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/TimeAndWeather/RainType.cs b/Core/Models/Enums/RaidSettings/TimeAndWeather/RainType.cs new file mode 100644 index 00000000..69bbdfd3 --- /dev/null +++ b/Core/Models/Enums/RaidSettings/TimeAndWeather/RainType.cs @@ -0,0 +1,10 @@ +namespace Core.Models.Enums.RaidSettings.TimeAndWeather; + +public enum RainType +{ + NO_RAIN, + DRIZZLING, + RAIN, + HEAVY, + SHOWER, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/TimeAndWeather/TimeFlowType.cs b/Core/Models/Enums/RaidSettings/TimeAndWeather/TimeFlowType.cs new file mode 100644 index 00000000..442ae0dd --- /dev/null +++ b/Core/Models/Enums/RaidSettings/TimeAndWeather/TimeFlowType.cs @@ -0,0 +1,13 @@ +namespace Core.Models.Enums.RaidSettings.TimeAndWeather; + +public enum TimeFlowType +{ + X0, + X0_14, + X0_25, + X0_5, + X1, + X2, + X4, + X8, +} \ No newline at end of file diff --git a/Core/Models/Enums/RaidSettings/TimeAndWeather/WindSpeed.cs b/Core/Models/Enums/RaidSettings/TimeAndWeather/WindSpeed.cs new file mode 100644 index 00000000..cdfa8ce4 --- /dev/null +++ b/Core/Models/Enums/RaidSettings/TimeAndWeather/WindSpeed.cs @@ -0,0 +1,10 @@ +namespace Core.Models.Enums.RaidSettings.TimeAndWeather; + +public enum WindSpeed +{ + LIGHT, + MODERATE, + STRONG, + VERY_STRONG, + HURRICANE, +} \ No newline at end of file diff --git a/Core/Models/Enums/SideType.cs b/Core/Models/Enums/SideType.cs new file mode 100644 index 00000000..8da83b7d --- /dev/null +++ b/Core/Models/Enums/SideType.cs @@ -0,0 +1,8 @@ +namespace Core.Models.Enums; + +public enum SideType +{ + PMC, + SAVAGE, + RANDOM +} \ No newline at end of file diff --git a/Core/Models/Enums/TransitionType.cs b/Core/Models/Enums/TransitionType.cs new file mode 100644 index 00000000..044463cf --- /dev/null +++ b/Core/Models/Enums/TransitionType.cs @@ -0,0 +1,8 @@ +namespace Core.Models.Enums; + +public enum TransitionType +{ + NONE = 0, + COMMON = 1, + EVENT = 2 +} \ No newline at end of file