Merge pull request #14 from CWXDEV/main

added more types and callbacks filled in
This commit is contained in:
clodanSPT
2025-01-07 13:02:32 +00:00
committed by GitHub
84 changed files with 1543 additions and 127 deletions
+5
View File
@@ -7,6 +7,11 @@ namespace Core.Callbacks;
public class BotCallbacks
{
public BotCallbacks()
{
}
public string GetBotLimit(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
+9 -3
View File
@@ -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<GetFriendListDataResponse> GetFriendList(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
@@ -143,7 +149,7 @@ public class DialogCallbacks
throw new NotImplementedException();
}
public async Task<bool> OnUpdate(int timeSinceLastRun)
public async Task<bool> OnUpdate(long timeSinceLastRun)
{
throw new NotImplementedException();
}
+3 -2
View File
@@ -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()
{
+15 -3
View File
@@ -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();
}
+4 -3
View File
@@ -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<bool> OnUpdate(int timeSinceLastRun)
public async Task<bool> OnUpdate(long timeSinceLastRun)
{
throw new NotImplementedException();
}
+9 -2
View File
@@ -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();
+4 -3
View File
@@ -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<bool> OnUpdate(int secondsSinceLastRun)
public Task<bool> OnUpdate(long timeSinceLastRun)
{
throw new NotImplementedException();
}
+5
View File
@@ -7,6 +7,11 @@ namespace Core.Callbacks;
public class InventoryCallbacks
{
public InventoryCallbacks()
{
}
public ItemEventRouterResponse MoveItem(PmcData pmcData, InventoryMoveRequestData info, string sessionID)
{
throw new NotImplementedException();
+20 -2
View File
@@ -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<ItemEventRouterResponse> HandleEvents(string url, ItemEventRouterRequest info, string sessionID)
public ItemEventCallbacks()
{
}
public async Task<GetBodyResponseData<ItemEventRouterResponse>> HandleEvents(string url, ItemEventRouterRequest info, string sessionID)
{
throw new NotImplementedException();
}
public bool IsCriticalError(List<Warning> warnings)
{
throw new NotImplementedException();
}
public int GetErrorCode(List<Warning> warnings)
{
throw new NotImplementedException();
}
+20 -12
View File
@@ -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();
}
}
+10 -2
View File
@@ -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<LocationsGenerateAllResponse> GetLocationData(string url, object info, string sessionID)
public LocationCallbacks()
{
}
public GetBodyResponseData<LocationsGenerateAllResponse> GetLocationData(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<LocationBase> GetLocation(string url, GetLocationRequestData info, string sessionID)
public GetBodyResponseData<GetAirdropLootResponse> GetAirdropLoot(string url, GetAirdropLootRequest info, string sessionID)
{
throw new NotImplementedException();
}
+149
View File
@@ -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<MatchGroupCurrentResponse> 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<string> SendGroupInvite(string url, MatchGroupInviteSendRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<List<GroupCharacter>> AcceptGroupInvite(string url, RequestIdRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> DeclineGroupInvite(string url, RequestIdRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> CancelGroupInvite(string url, RequestIdRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> TransferGroup(string url, MatchGroupTransferRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> 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<bool> ServerAvailable(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<ProfileStatusResponse> JoinMatch(string url, MatchGroupStartGameRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<Metrics> GetMetrics(string url, object info, string sessionID) // TODO: No type given
{
throw new NotImplementedException();
}
public GetBodyResponseData<MatchGroupStatusResponse> GetGroupStatus(string url, MatchGroupStatusRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> DeleteGroup(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> LeaveGroup(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> RemovePlayerFromGroup(string url, MatchGroupPlayerRemoveRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<StartLocalRaidResponseData> 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<bool> RaidReady(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> NotRaidReady(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
}
+11 -14
View File
@@ -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();
}
+10 -1
View File
@@ -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();
+15 -5
View File
@@ -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<List<object>> GetNotifier(string url, object info, string sessionID)
public GetBodyResponseData<List<object>> 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<object> SelectProfile(string url, UIDRequestData info, string sessionID)
public GetBodyResponseData<SelectProfileResponse> 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();
}
-29
View File
@@ -1,29 +0,0 @@
namespace Core.Callbacks;
public class PresetBuildCallbacks
{
public GetBodyResponseData<List<WeaponBuild>> 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();
}
}
+15 -3
View File
@@ -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();
}
+23
View File
@@ -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<Prestige> GetPrestige(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<object> ObtainPrestige(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
}
+30 -10
View File
@@ -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<CreateProfileResponse> CreateProfile(string url, ProfileCreateRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<object> CreateProfile(string url, ProfileCreateRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<object> GetProfileData(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
@@ -41,8 +46,13 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
public GetBodyResponseData<object> GetProfileStatus(string url, EmptyRequestData info, string sessionID)
public GetBodyResponseData<GetOtherProfileResponse> GetOtherProfile(string url, GetOtherProfileRequest info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<bool> 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();
}
}
+10 -1
View File
@@ -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();
+42 -8
View File
@@ -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<object> Search(string url, SearchRequestData info, string sessionID)
public string GetRoute()
{
throw new NotImplementedException();
}
public async Task<bool> OnUpdate(long timeSinceLastRun)
{
throw new NotImplementedException();
}
public GetBodyResponseData<GetOffersResult> Search(string url, SearchRequestData info, string sessionID)
{
throw new NotImplementedException();
}
@@ -17,12 +41,12 @@ public class RagfairCallbacks
throw new NotImplementedException();
}
public GetBodyResponseData<object> 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<Dictionary<string, int>> 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<RagfairOffer> GetFleaOfferById(string url, GetRagfairOfferByIdRequest info, string sessionID)
{
throw new NotImplementedException();
}
+10 -1
View File
@@ -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();
+19 -4
View File
@@ -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<bool> OnUpdate(long SecondsSinceLastRun)
{
throw new NotImplementedException();
}
public string GetRoute()
{
throw new NotImplementedException();
}
+16 -2
View File
@@ -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();
}
}
+25 -4
View File
@@ -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<bool> OnUpdate(long _)
{
throw new NotImplementedException();
}
public string GetRoute()
{
throw new NotImplementedException();
}
public GetBodyResponseData<List<TraderBase>> 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<ModdedTraders> GetModdedTraderData(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
+17 -2
View File
@@ -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<object> GetWeather(string url, EmptyRequestData info, string sessionID)
public WeatherCallbacks()
{
}
public GetBodyResponseData<WeatherData> GetWeather(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public GetBodyResponseData<GetLocalWeatherResponseData> GetLocalWeather(string url, EmptyRequestData info, string sessionID)
{
throw new NotImplementedException();
}
+28
View File
@@ -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();
}
}
+1
View File
@@ -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;
+2 -2
View File
@@ -41,9 +41,9 @@ public class BuildController
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void RemoveBuild(string sessionId, RemoveBuildReqestData request)
public void RemoveBuild(string sessionId, RemoveBuildRequestData request)
{
RemovePlayerBuild(request.id, sessionId);
RemovePlayerBuild(request.Id, sessionId);
}
/// <summary>
+2 -2
View File
@@ -30,7 +30,7 @@ public class CustomizationController
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse BuyClothing(
PmcData pmcData,
BuyClothingRequest buyClothingRequest,
BuyClothingRequestData buyClothingRequest,
string sessionId)
{
throw new NotImplementedException();
@@ -84,7 +84,7 @@ public class CustomizationController
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public HideoutCustomisationStorage GetHideoutCustomisation(
public HideoutCustomisation GetHideoutCustomisation(
string sessionId,
EmptyRequestData info)
{
+1 -1
View File
@@ -10,7 +10,7 @@ public class DialogueController
///
/// </summary>
/// <param name="chatBot"></param>
public void RegisterChatBot(DialogueChatBot chatBot)
public void RegisterChatBot(DialogueChatBot chatBot) // TODO: this is in with the helper types
{
throw new NotImplementedException();
}
+1
View File
@@ -1,3 +1,4 @@
using Core.Models.Eft.Launcher;
using Core.Models.Eft.Profile;
using Core.Models.Spt.Mod;
+4 -1
View File
@@ -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
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public GetAirDropLootResponse GetAirDropLoot(GetAirDropLootRequest request)
public GetAirdropLootResponse GetAirDropLoot(GetAirdropLootRequest request)
{
throw new NotImplementedException();
}
+3 -1
View File
@@ -1,3 +1,5 @@
using Core.Models.Eft.Match;
namespace Core.Controllers;
public class MatchController
@@ -38,7 +40,7 @@ public class MatchController
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public MatchGroupStatusReponse GetGroupStatus(
public MatchGroupStatusResponse GetGroupStatus(
MatchGroupStatusRequest info)
{
throw new NotImplementedException();
+4 -3
View File
@@ -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
/// <returns></returns>
public ItemEventRouterResponse AddNote(
PmcData pmcData,
NoteActionBody body,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
@@ -29,7 +30,7 @@ public class NoteController
/// <returns></returns>
public ItemEventRouterResponse EditNote(
PmcData pmcData,
NoteActionBody body,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
@@ -44,7 +45,7 @@ public class NoteController
/// <returns></returns>
public ItemEventRouterResponse DeleteNote(
PmcData pmcData,
NoteActionBody body,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
@@ -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<Path> Paths { get; set; }
}
@@ -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<Message> Messages { get; set; }
[JsonPropertyName("profiles")]
public List<object> Profiles { get; set; } // Assuming 'any' translates to 'object'
[JsonPropertyName("hasMessagesWithRewards")]
public bool HasMessagesWithRewards { get; set; }
}
@@ -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; }
}
@@ -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; }
}
@@ -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; }
}
+9
View File
@@ -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; }
}
@@ -0,0 +1,6 @@
namespace Core.Models.Eft.Launcher;
public class RemoveProfileData : LoginRequestData
{
}
@@ -0,0 +1,9 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Location;
public class GetAirdropLootRequest
{
[JsonPropertyName("containerId")]
public string ContainerId { get; set; }
}
@@ -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<Item> Container { get; set; }
}
@@ -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
{
/// <summary>
/// ID of server player just left
/// </summary>
[JsonPropertyName("serverId")]
public string ServerId { get; set; }
[JsonPropertyName("results")]
public EndRaidResult Results { get; set; }
/// <summary>
/// Insured items left in raid by player
/// </summary>
[JsonPropertyName("lostInsuredItems")]
public List<Item> LostInsuredItems { get; set; }
/// <summary>
/// Items sent via traders to player, keyed to service e.g. BTRTransferStash
/// </summary>
[JsonPropertyName("transferItems")]
public Dictionary<string, List<Item>> TransferItems { get; set; }
[JsonPropertyName("locationTransit")]
public LocationTransit LocationTransit { get; set; }
}
public class EndRaidResult
{
public PmcData Profile { get; set; }
/// <summary>
/// "Survived/Transit" etc
/// </summary>
[JsonPropertyName("result")]
public ExitStatus Result { get; set; }
[JsonPropertyName("killerId")]
public string KillerId { get; set; }
[JsonPropertyName("killerAid")]
public string KillerAid { get; set; }
/// <summary>
/// "Gate 3" etc
/// </summary>
[JsonPropertyName("exitName")]
public string ExitName { get; set; }
[JsonPropertyName("inSession")]
public bool InSession { get; set; }
[JsonPropertyName("favorite")]
public bool Favorite { get; set; }
/// <summary>
/// Seconds in raid
/// </summary>
[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<string, TransitProfile> 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; }
/// <summary>
/// The location player last visited
/// </summary>
[JsonPropertyName("sptLastVisitedLocation")]
public string SptLastVisitedLocation { get; set; }
/// <summary>
/// Name of exit taken
/// </summary>
[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; }
}
@@ -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; }
}
+113
View File
@@ -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<Item> Items { get; set; }
}
@@ -0,0 +1,9 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Match;
public class MatchGroupCurrentResponse
{
[JsonPropertyName("squad")]
public List<GroupCharacter> Squad { get; set; }
}
@@ -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; }
}
@@ -0,0 +1,9 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Match;
public class MatchGroupPlayerRemoveRequest
{
[JsonPropertyName("aidToKick")]
public string AidToKick { get; set; }
}
@@ -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<Server> Servers { get; set; }
}
@@ -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; }
}
@@ -0,0 +1,12 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Match;
public class MatchGroupStatusResponse
{
[JsonPropertyName("players")]
public List<GroupCharacter> Players { get; set; }
[JsonPropertyName("maxPveCountExceeded")]
public bool MaxPveCountExceeded { get; set; }
}
@@ -0,0 +1,9 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Match;
public class MatchGroupTransferRequest
{
[JsonPropertyName("aidToChange")]
public string AidToChange { get; set; }
}
@@ -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<SessionStatus> Profiles { get; set; }
}
@@ -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<object> 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; }
}
+96
View File
@@ -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; }
}
@@ -0,0 +1,9 @@
using System.Text.Json.Serialization;
namespace Core.Models.Eft.Match;
public class RequestIdRequest
{
[JsonPropertyName("requestId")]
public string RequestId { get; set; }
}
+15
View File
@@ -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; }
}
+42
View File
@@ -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<object>? AdditionalInfo { get; set; }
}
@@ -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; }
}
@@ -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<InsuredItem> 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<string> VisitedLocations { get; set; }
}
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Enums;
namespace Core.Models.Eft.Ragfair;
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Eft.Match;
using Core.Models.Eft.Profile;
namespace Core.Models.Eft.Ws;
+1
View File
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Eft.Profile;
namespace Core.Models.Eft.Ws;
@@ -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
{
}
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Eft.Match;
namespace Core.Models.Eft.Ws;
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Eft.Match;
namespace Core.Models.Eft.Ws;
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Eft.Match;
namespace Core.Models.Eft.Ws;
+1
View File
@@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Core.Models.Enums;
namespace Core.Models.Eft.Ws;
+11
View File
@@ -0,0 +1,11 @@
namespace Core.Models.Enums;
public enum ExitStatus
{
SURVIVED,
KILLED,
LEFT,
RUNNER,
MISSINGINACTION,
TRANSIT
}
+8
View File
@@ -0,0 +1,8 @@
namespace Core.Models.Enums;
public enum PlayersSpawnPlace
{
SAME_PLACE,
DIFFERENT_PLACES,
AT_THE_ENDS_OF_THE_MAP
}
+10
View File
@@ -0,0 +1,10 @@
namespace Core.Models.Enums;
public enum ProfileStatus
{
FREE,
MATCH_WAIT,
BUSY,
LEAVING,
TRANSFER,
}
+11
View File
@@ -0,0 +1,11 @@
namespace Core.Models.Enums;
public enum RagfairSort
{
ID = 0,
BARTER = 2,
RATING = 3,
OFFER_TITLE = 4,
PRICE = 5,
EXPIRY = 6,
}
+8
View File
@@ -0,0 +1,8 @@
namespace Core.Models.Enums;
public enum RaidMode
{
ONLINE,
LOCAL,
COOP
}
@@ -0,0 +1,11 @@
namespace Core.Models.Enums.RaidSettings;
public enum BotAmount
{
AS_ONLINE,
NO_BOTS,
LOW,
MEDIUM,
HIGH,
HORDE,
}
@@ -0,0 +1,11 @@
namespace Core.Models.Enums.RaidSettings;
public enum BotDifficulty
{
AS_ONLINE,
EASY,
MEDIUM,
HARD,
IMPOSSIBLE,
RANDOM,
}
@@ -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
}
@@ -0,0 +1,10 @@
namespace Core.Models.Enums.RaidSettings.TimeAndWeather;
public enum FogType
{
NO_FOG,
FAINT,
FOG,
HEAVY,
CONTINUOUS,
}
@@ -0,0 +1,10 @@
namespace Core.Models.Enums.RaidSettings.TimeAndWeather;
public enum RainType
{
NO_RAIN,
DRIZZLING,
RAIN,
HEAVY,
SHOWER,
}
@@ -0,0 +1,13 @@
namespace Core.Models.Enums.RaidSettings.TimeAndWeather;
public enum TimeFlowType
{
X0,
X0_14,
X0_25,
X0_5,
X1,
X2,
X4,
X8,
}
@@ -0,0 +1,10 @@
namespace Core.Models.Enums.RaidSettings.TimeAndWeather;
public enum WindSpeed
{
LIGHT,
MODERATE,
STRONG,
VERY_STRONG,
HURRICANE,
}
+8
View File
@@ -0,0 +1,8 @@
namespace Core.Models.Enums;
public enum SideType
{
PMC,
SAVAGE,
RANDOM
}
+8
View File
@@ -0,0 +1,8 @@
namespace Core.Models.Enums;
public enum TransitionType
{
NONE = 0,
COMMON = 1,
EVENT = 2
}