Merge pull request #21 from CWXDEV/main

Formatting
This commit is contained in:
clodanSPT
2025-01-08 13:47:53 +00:00
committed by GitHub
252 changed files with 6711 additions and 6817 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
namespace Core.Annotations;
[AttributeUsage(AttributeTargets.Class)]
public class Injectable(InjectionType injectionType = InjectionType.Scoped, Type? type = null, int typePriority = Int32.MaxValue) : Attribute
public class Injectable(InjectionType injectionType = InjectionType.Scoped, Type? type = null, int typePriority = int.MaxValue) : Attribute
{
public InjectionType InjectionType { get; set; } = injectionType;
public Type? InjectableTypeOverride { get; set; } = type;
-1
View File
@@ -8,7 +8,6 @@ public class AchievementCallbacks
{
public AchievementCallbacks()
{
}
/// <summary>
+1 -2
View File
@@ -9,9 +9,8 @@ public class BotCallbacks
{
public BotCallbacks()
{
}
/// <summary>
/// Handle singleplayer/settings/bot/limit
/// Is called by client to define each bot roles wave limit
-1
View File
@@ -10,7 +10,6 @@ public class BuildsCallbacks
{
public BuildsCallbacks()
{
}
/// <summary>
+1 -2
View File
@@ -5,10 +5,9 @@ namespace Core.Callbacks;
public class BundleCallbacks
{
private HttpConfig _httpConfig;
public BundleCallbacks()
{
}
/// <summary>
-1
View File
@@ -7,7 +7,6 @@ public class ClientLogCallbacks
{
public ClientLogCallbacks()
{
}
/// <summary>
+2 -4
View File
@@ -11,9 +11,8 @@ public class CustomizationCallbacks
{
public CustomizationCallbacks()
{
}
/// <summary>
/// Handle client/trading/customization/storage
/// </summary>
@@ -49,7 +48,7 @@ public class CustomizationCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/hideout/customization/offer/list
/// </summary>
@@ -85,5 +84,4 @@ public class CustomizationCallbacks
{
throw new NotImplementedException();
}
}
-1
View File
@@ -11,7 +11,6 @@ public class DataCallbacks
{
public DataCallbacks()
{
}
/// <summary>
+5 -6
View File
@@ -11,9 +11,8 @@ public class DialogCallbacks : OnUpdate
{
public DialogCallbacks()
{
}
/// <summary>
/// Handle client/friend/list
/// </summary>
@@ -97,7 +96,7 @@ public class DialogCallbacks : OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/unpin
/// </summary>
@@ -109,7 +108,7 @@ public class DialogCallbacks : OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/read
/// </summary>
@@ -145,7 +144,7 @@ public class DialogCallbacks : OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/friend/request/list/outbox
/// </summary>
@@ -169,7 +168,7 @@ public class DialogCallbacks : OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/friend/request/send
/// </summary>
+5 -6
View File
@@ -10,7 +10,6 @@ public class GameCallbacks : OnLoad
{
public GameCallbacks()
{
}
public async Task OnLoad()
@@ -22,7 +21,7 @@ public class GameCallbacks : OnLoad
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/version/validate
/// </summary>
@@ -34,7 +33,7 @@ public class GameCallbacks : OnLoad
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/start
/// </summary>
@@ -107,7 +106,7 @@ public class GameCallbacks : OnLoad
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/checkVersion
/// </summary>
@@ -119,7 +118,7 @@ public class GameCallbacks : OnLoad
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/keepalive
/// </summary>
@@ -131,7 +130,7 @@ public class GameCallbacks : OnLoad
{
throw new NotImplementedException();
}
/// <summary>
/// Handle singleplayer/settings/version
/// </summary>
+1 -2
View File
@@ -6,9 +6,8 @@ public class HandbookCallbacks : OnLoad
{
public HandbookCallbacks()
{
}
public Task OnLoad()
{
throw new NotImplementedException();
-1
View File
@@ -9,7 +9,6 @@ public class HealthCallbacks
{
public HealthCallbacks()
{
}
/// <summary>
+3 -4
View File
@@ -9,12 +9,11 @@ namespace Core.Callbacks;
public class HideoutCallbacks : OnUpdate
{
private HideoutConfig _hideoutConfig;
public HideoutCallbacks()
{
}
/// <summary>
/// Handle HideoutUpgrade event
/// </summary>
@@ -208,7 +207,7 @@ public class HideoutCallbacks : OnUpdate
{
throw new NotImplementedException();
}
public async Task<bool> OnUpdate(long timeSinceLastRun)
{
throw new NotImplementedException();
-1
View File
@@ -8,7 +8,6 @@ public class InraidCallbacks
{
public InraidCallbacks()
{
}
/// <summary>
-1
View File
@@ -13,7 +13,6 @@ public class InsuranceCallbacks : OnUpdate
public InsuranceCallbacks()
{
}
/// <summary>
+17 -18
View File
@@ -9,9 +9,8 @@ public class InventoryCallbacks
{
public InventoryCallbacks()
{
}
/// <summary>
/// Handle client/game/profile/items/moving Move event
/// </summary>
@@ -24,7 +23,7 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Remove event
/// </summary>
@@ -37,7 +36,7 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Split event
/// </summary>
@@ -50,17 +49,17 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
public ItemEventRouterResponse MergeItem(PmcData pmcData, InventoryMergeRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse TransferItem(PmcData pmcData, InventoryTransferRequestData info, string sessionID)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Swap
/// </summary>
@@ -73,37 +72,37 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
public ItemEventRouterResponse FoldItem(PmcData pmcData, InventoryFoldRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse ToggleItem(PmcData pmcData, InventoryToggleRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse TagItem(PmcData pmcData, InventoryTagRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse BindItem(PmcData pmcData, InventoryBindRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse UnBindItem(PmcData pmcData, InventoryBindRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse ExamineItem(PmcData pmcData, InventoryExamineRequestData info, string sessionID)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle ReadEncyclopedia
/// </summary>
@@ -116,7 +115,7 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle ApplyInventoryChanges
/// </summary>
@@ -129,17 +128,17 @@ public class InventoryCallbacks
{
throw new NotImplementedException();
}
public ItemEventRouterResponse CreateMapMarker(PmcData pmcData, InventoryCreateMarkerRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse DeleteMapMarker(PmcData pmcData, InventoryDeleteMarkerRequestData info, string sessionID)
{
throw new NotImplementedException();
}
public ItemEventRouterResponse EditMapMarker(PmcData pmcData, InventoryEditMarkerRequestData info, string sessionID)
{
throw new NotImplementedException();
+1 -2
View File
@@ -7,9 +7,8 @@ public class ItemEventCallbacks
{
public ItemEventCallbacks()
{
}
public async Task<GetBodyResponseData<ItemEventRouterResponse>> HandleEvents(string url, ItemEventRouterRequest info, string sessionID)
{
throw new NotImplementedException();
+1 -2
View File
@@ -7,9 +7,8 @@ public class LauncherCallbacks
{
public LauncherCallbacks()
{
}
public string Connect()
{
throw new NotImplementedException();
+1 -2
View File
@@ -9,9 +9,8 @@ public class LocationCallbacks
{
public LocationCallbacks()
{
}
/// <summary>
/// Handle client/locations
/// </summary>
+2 -3
View File
@@ -9,9 +9,8 @@ public class MatchCallbacks
{
public MatchCallbacks()
{
}
/// <summary>
/// Handle client/match/updatePing
/// </summary>
@@ -47,7 +46,7 @@ public class MatchCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/current
/// </summary>
+1 -2
View File
@@ -6,9 +6,8 @@ public class ModCallbacks : OnLoad
{
public ModCallbacks()
{
}
public async Task OnLoad()
{
throw new NotImplementedException();
+1 -2
View File
@@ -8,9 +8,8 @@ public class NoteCallbacks
{
public NoteCallbacks()
{
}
/// <summary>
/// Handle AddNote event
/// </summary>
+1 -2
View File
@@ -9,9 +9,8 @@ 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
+1 -2
View File
@@ -6,9 +6,8 @@ public class PresetCallbacks : OnLoad
{
public PresetCallbacks()
{
}
public async Task OnLoad()
{
throw new NotImplementedException();
-1
View File
@@ -8,7 +8,6 @@ public class PrestigeCallbacks
{
public PrestigeCallbacks()
{
}
/// <summary>
+9 -10
View File
@@ -9,9 +9,8 @@ public class ProfileCallbacks
{
public ProfileCallbacks()
{
}
/// <summary>
/// Handle client/game/profile/create
/// </summary>
@@ -23,7 +22,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/list
/// Get the complete player profile (scav + pmc character)
@@ -36,7 +35,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/savage/regenerate
/// Handle the creation of a scav profile for player
@@ -50,7 +49,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/voice/change event
/// </summary>
@@ -62,7 +61,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/nickname/change event
/// Client allows player to adjust their profile name
@@ -75,7 +74,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/nickname/validate
/// </summary>
@@ -87,7 +86,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/profile/nickname/reserved
/// </summary>
@@ -137,7 +136,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/profile/settings
/// </summary>
@@ -149,7 +148,7 @@ public class ProfileCallbacks
{
throw new NotImplementedException();
}
/// <summary>
/// Handle launcher/profile/info
/// </summary>
+1 -2
View File
@@ -10,9 +10,8 @@ public class QuestCallbacks
{
public QuestCallbacks()
{
}
/// <summary>
/// Handle RepeatableQuestChange event
/// </summary>
+3 -4
View File
@@ -13,9 +13,8 @@ public class RagfairCallbacks : OnLoad, OnUpdate
public RagfairCallbacks()
{
}
public async Task OnLoad()
{
throw new NotImplementedException();
@@ -83,7 +82,7 @@ public class RagfairCallbacks : OnLoad, OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RagFairRenewOffer event
/// </summary>
@@ -128,7 +127,7 @@ public class RagfairCallbacks : OnLoad, OnUpdate
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/ragfair/offer/findbyid
/// </summary>
+1 -2
View File
@@ -8,9 +8,8 @@ public class RepairCallbacks
{
public RepairCallbacks()
{
}
/// <summary>
/// Handle TraderRepair event
/// use trader to repair item
+1 -2
View File
@@ -9,9 +9,8 @@ public class SaveCallbacks : OnLoad, OnUpdate
public SaveCallbacks()
{
}
public async Task OnLoad()
{
throw new NotImplementedException();
+1 -2
View File
@@ -8,9 +8,8 @@ public class TradeCallbacks
{
public TradeCallbacks()
{
}
/// <summary>
/// Handle client/game/profile/items/moving TradingConfirm event
/// </summary>
+3 -4
View File
@@ -10,9 +10,8 @@ public class TraderCallbacks : OnLoad, OnUpdate
{
public TraderCallbacks()
{
}
public async Task OnLoad()
{
throw new NotImplementedException();
@@ -22,12 +21,12 @@ public class TraderCallbacks : OnLoad, OnUpdate
{
throw new NotImplementedException();
}
public string GetRoute()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/traderSettings
/// </summary>
+1 -2
View File
@@ -9,9 +9,8 @@ public class WeatherCallbacks
{
public WeatherCallbacks()
{
}
/// <summary>
/// Handle client/weather
/// </summary>
-1
View File
@@ -8,7 +8,6 @@ public class WishlistCallbacks
{
public WishlistCallbacks()
{
}
/// <summary>
+1 -1
View File
@@ -8,7 +8,7 @@ public class ApplicationContext
private const short MaxSavedValues = 10;
private readonly Dictionary<ContextVariableType, LinkedList<ContextVariable>> variables = new();
private readonly object variablesLock = new();
public ContextVariable? GetLatestValue(ContextVariableType type)
{
lock (variablesLock)
+1 -1
View File
@@ -2,7 +2,7 @@
public class ContextVariable(object value, ContextVariableType contextVariableType)
{
public object Value { get; } = value;
public object Value { get; } = value;
public DateTime Timestamp { get; } = DateTime.Now;
public ContextVariableType Type { get; } = contextVariableType;
}
+4
View File
@@ -4,13 +4,17 @@ public enum ContextVariableType
{
/** Logged in users session id */
SESSION_ID = 0,
/** Currently acive raid information */
RAID_CONFIGURATION = 1,
/** SessionID + Timestamp when client first connected, has _ between values */
CLIENT_START_TIMESTAMP = 2,
/** When player is loading into map and loot is requested */
REGISTER_PLAYER_REQUEST = 3,
RAID_ADJUSTMENTS = 4,
/** Data returned from client request object from endLocalRaid() */
TRANSIT_INFO = 5,
APP_BUILDER = 6
@@ -6,7 +6,6 @@ public class AchievementController
{
public AchievementController()
{
}
public GetAchievementsResponse GetAchievements(string sessionID)
+7 -6
View File
@@ -13,9 +13,10 @@ public class BotController
{
private BotConfig _botConfig;
private PmcConfig _pmcConfig;
public BotController()
{}
{
}
public int GetBotPresetGenerationLimit(string type)
{
@@ -26,7 +27,7 @@ public class BotController
{
throw new NotImplementedException();
}
public object GetBotDifficulty(string type, string difficulty) // TODO: return type was: IBotCore | IDifficultyCategories
{
throw new NotImplementedException();
@@ -36,7 +37,7 @@ public class BotController
{
throw new NotImplementedException();
}
public async Task<List<BotBase>> Generate(GenerateBotsRequestData info, bool playerscav)
{
throw new NotImplementedException();
@@ -67,7 +68,7 @@ public class BotController
{
throw new NotImplementedException();
}
public int GetBotLimit(string type)
{
throw new NotImplementedException();
@@ -88,7 +89,7 @@ public class BotController
{
throw new NotImplementedException();
}
public int GetBotCap()
{
throw new NotImplementedException();
+55 -55
View File
@@ -6,63 +6,63 @@ namespace Core.Controllers;
public class BuildController
{
/// <summary>
/// Handle client/handbook/builds/my/list
/// </summary>
/// <param name="sessionID"></param>
/// <returns></returns>
public UserBuilds GetUserBuilds(string sessionID)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/handbook/builds/my/list
/// </summary>
/// <param name="sessionID"></param>
/// <returns></returns>
public UserBuilds GetUserBuilds(string sessionID)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/weapon/save
/// </summary>
/// <param name="sessionId"></param>
/// <param name="body"></param>
public void SaveWeaponBuild(string sessionId, PresetBuildActionRequestData body)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/weapon/save
/// </summary>
/// <param name="sessionId"></param>
/// <param name="body"></param>
public void SaveWeaponBuild(string sessionId, PresetBuildActionRequestData body)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/equipment/save event
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void SaveEquipmentBuild(string sessionId, PresetBuildActionRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/equipment/save event
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void SaveEquipmentBuild(string sessionId, PresetBuildActionRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/delete
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void RemoveBuild(string sessionId, RemoveBuildRequestData request)
{
RemovePlayerBuild(request.Id, sessionId);
}
/// <summary>
/// Handle client/builds/delete
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void RemoveBuild(string sessionId, RemoveBuildRequestData request)
{
RemovePlayerBuild(request.Id, sessionId);
}
/// <summary>
/// Handle client/builds/magazine/save
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void CreateMagazineTemplate(string sessionId, SetMagazineRequest request)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="idToRemove"></param>
/// <param name="sessionId"></param>
private void RemovePlayerBuild(string idToRemove, string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/builds/magazine/save
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void CreateMagazineTemplate(string sessionId, SetMagazineRequest request)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="idToRemove"></param>
/// <param name="sessionId"></param>
private void RemovePlayerBuild(string idToRemove, string sessionId)
{
throw new NotImplementedException();
}
}
+8 -8
View File
@@ -4,12 +4,12 @@ namespace Core.Controllers;
public class ClientLogController
{
/// <summary>
/// Handle /singleplayer/log
/// </summary>
/// <param name="logRequest"></param>
public void ClientLog(ClientLogRequest logRequest)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle /singleplayer/log
/// </summary>
/// <param name="logRequest"></param>
public void ClientLog(ClientLogRequest logRequest)
{
throw new NotImplementedException();
}
}
+122 -122
View File
@@ -9,135 +9,135 @@ namespace Core.Controllers;
public class CustomizationController
{
/// <summary>
/// Get purchasable clothing items from trader that match players side (usec/bear)
/// </summary>
/// <param name="traderId">trader to look up clothing for</param>
/// <param name="sessionId">Session id</param>
/// <returns>Suit array</returns>
public Suit GetTraderSuits(string traderId, string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get purchasable clothing items from trader that match players side (usec/bear)
/// </summary>
/// <param name="traderId">trader to look up clothing for</param>
/// <param name="sessionId">Session id</param>
/// <returns>Suit array</returns>
public Suit GetTraderSuits(string traderId, string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle CustomizationBuy event
/// Purchase/unlock a clothing item from a trader
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="buyClothingRequest">Request object</param>
/// <param name="sessionId">Session id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse BuyClothing(
PmcData pmcData,
BuyClothingRequestData buyClothingRequest,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle CustomizationBuy event
/// Purchase/unlock a clothing item from a trader
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="buyClothingRequest">Request object</param>
/// <param name="sessionId">Session id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse BuyClothing(
PmcData pmcData,
BuyClothingRequestData buyClothingRequest,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Update output object and player profile with purchase details
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="itemsToPayForClothingWith">Clothing purchased</param>
/// <param name="output">Client response</param>
private void PayForClothingItems(
string sessionId,
PmcData pmcData,
List<PaymentItemForClothing> itemsToPayForClothingWith,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Update output object and player profile with purchase details
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="itemsToPayForClothingWith">Clothing purchased</param>
/// <param name="output">Client response</param>
private void PayForClothingItems(
string sessionId,
PmcData pmcData,
List<PaymentItemForClothing> itemsToPayForClothingWith,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Update output object and player profile with purchase details for single piece of clothing
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="paymentItemDetails">Payment details</param>
/// <param name="output">Client response</param>
private void PayForClothingItem(
string sessionId,
PmcData pmcData,
PaymentItemForClothing paymentItemDetails,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Update output object and player profile with purchase details for single piece of clothing
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="paymentItemDetails">Payment details</param>
/// <param name="output">Client response</param>
private void PayForClothingItem(
string sessionId,
PmcData pmcData,
PaymentItemForClothing paymentItemDetails,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
private List<Suit> GetAllTraderSuits(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
private List<Suit> GetAllTraderSuits(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/hideout/customization/offer/list
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public HideoutCustomisation GetHideoutCustomisation(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/hideout/customization/offer/list
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public HideoutCustomisation GetHideoutCustomisation(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/customization/storage
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public List<CustomisationStorage> GetCustomisationStorage(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/customization/storage
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public List<CustomisationStorage> GetCustomisationStorage(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="profile"></param>
/// <returns></returns>
private string GetGameEdition(SptProfile profile)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="profile"></param>
/// <returns></returns>
private string GetGameEdition(SptProfile profile)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle CustomizationSet event
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <param name="pmcData"></param>
/// <returns></returns>
public ItemEventRouterResponse SetClothing(
string sessionId,
CustomizationSetRequest request,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle CustomizationSet event
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <param name="pmcData"></param>
/// <returns></returns>
public ItemEventRouterResponse SetClothing(
string sessionId,
CustomizationSetRequest request,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Applies a purchased suit to the players doll
/// </summary>
/// <param name="customization">Suit to apply to profile</param>
/// <param name="pmcData">Profile to update</param>
private void ApplyClothingItemToProfile(
CustomizationSetOption customization,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Applies a purchased suit to the players doll
/// </summary>
/// <param name="customization">Suit to apply to profile</param>
/// <param name="pmcData">Profile to update</param>
private void ApplyClothingItemToProfile(
CustomizationSetOption customization,
PmcData pmcData)
{
throw new NotImplementedException();
}
}
+227 -227
View File
@@ -6,248 +6,248 @@ namespace Core.Controllers;
public class DialogueController
{
/// <summary>
///
/// </summary>
/// <param name="chatBot"></param>
/*
public void RegisterChatBot(DialogueChatBot chatBot) // TODO: this is in with the helper types
{
throw new NotImplementedException();
}
*/
/// <summary>
///
/// </summary>
/// <param name="chatBot"></param>
/*
public void RegisterChatBot(DialogueChatBot chatBot) // TODO: this is in with the helper types
{
throw new NotImplementedException();
}
*/
/// <summary>
/// Handle onUpdate spt event
/// </summary>
public void Update()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle onUpdate spt event
/// </summary>
public void Update()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/friend/list
/// </summary>
/// <param name="sessionId">session id</param>
/// <returns>GetFriendListDataResponse</returns>
public GetFriendListDataResponse GetFriendList(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/friend/list
/// </summary>
/// <param name="sessionId">session id</param>
/// <returns>GetFriendListDataResponse</returns>
public GetFriendListDataResponse GetFriendList(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/list
/// Create array holding trader dialogs and mail interactions with player
/// Set the content of the dialogue on the list tab.
/// </summary>
/// <param name="sessionId">Session Id</param>
/// <returns>list of dialogs</returns>
public List<DialogueInfo> GenerateDialogueList(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the content of a dialogue
/// </summary>
/// <param name="dialogueId">Dialog id</param>
/// <param name="sessionId">Session Id</param>
/// <returns>DialogueInfo</returns>
public DialogueInfo GetDialogueInfo(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/list
/// Create array holding trader dialogs and mail interactions with player
/// Set the content of the dialogue on the list tab.
/// </summary>
/// <param name="sessionId">Session Id</param>
/// <returns>list of dialogs</returns>
public List<DialogueInfo> GenerateDialogueList(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the users involved in a dialog (player + other party)
/// </summary>
/// <param name="dialogue">The dialog to check for users</param>
/// <param name="messageType">What type of message is being sent</param>
/// <param name="sessionId">Player id</param>
/// <returns>UserDialogInfo list</returns>
public List<UserDialogInfo> GetDialogueUsers(
Dialogue dialogue,
MessageType messageType,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the content of a dialogue
/// </summary>
/// <param name="dialogueId">Dialog id</param>
/// <param name="sessionId">Session Id</param>
/// <returns>DialogueInfo</returns>
public DialogueInfo GetDialogueInfo(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/view
/// Handle player clicking 'messenger' and seeing all the messages they've received
/// Set the content of the dialogue on the details panel, showing all the messages
/// for the specified dialogue.
/// </summary>
/// <param name="request">Get dialog request</param>
/// <param name="sessionId">Session id</param>
/// <returns>GetMailDialogViewResponseData object</returns>
public GetMailDialogViewResponseData GenerateDialogueView(
GetMailDialogViewResponseData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the users involved in a dialog (player + other party)
/// </summary>
/// <param name="dialogue">The dialog to check for users</param>
/// <param name="messageType">What type of message is being sent</param>
/// <param name="sessionId">Player id</param>
/// <returns>UserDialogInfo list</returns>
public List<UserDialogInfo> GetDialogueUsers(
Dialogue dialogue,
MessageType messageType,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get dialog from player profile, create if doesn't exist
/// </summary>
/// <param name="profile">Player profile</param>
/// <param name="request">get dialog request</param>
/// <returns>Dialogue</returns>
private Dialogue GetDialogByIdFromProfile(
SptProfile profile,
GetMailDialogViewRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/view
/// Handle player clicking 'messenger' and seeing all the messages they've received
/// Set the content of the dialogue on the details panel, showing all the messages
/// for the specified dialogue.
/// </summary>
/// <param name="request">Get dialog request</param>
/// <param name="sessionId">Session id</param>
/// <returns>GetMailDialogViewResponseData object</returns>
public GetMailDialogViewResponseData GenerateDialogueView(
GetMailDialogViewResponseData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the users involved in a mail between two entities
/// </summary>
/// <param name="fullProfile">Player profile</param>
/// <param name="userDialogs">The participants of the mail</param>
/// <returns>UserDialogInfo list</returns>
private List<UserDialogInfo> GetProfilesForMail(
SptProfile fullProfile,
List<UserDialogInfo>? userDialogs)
{
throw new NotImplementedException();
}
/// <summary>
/// Get dialog from player profile, create if doesn't exist
/// </summary>
/// <param name="profile">Player profile</param>
/// <param name="request">get dialog request</param>
/// <returns>Dialogue</returns>
private Dialogue GetDialogByIdFromProfile(
SptProfile profile,
GetMailDialogViewRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Get a count of messages with attachments from a particular dialog
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog id</param>
/// <returns>Count of messages with attachments</returns>
private int GetUnreadMessagesWithAttachmentsCount(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
/// <summary>
/// Does list have messages with uncollected rewards (includes expired rewards)
/// </summary>
/// <param name="messages">Messages to check</param>
/// <returns>true if uncollected rewards found</returns>
private bool MessagesHaveUncollectedRewards(List<Message> messages)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the users involved in a mail between two entities
/// </summary>
/// <param name="fullProfile">Player profile</param>
/// <param name="userDialogs">The participants of the mail</param>
/// <returns>UserDialogInfo list</returns>
private List<UserDialogInfo> GetProfilesForMail(
SptProfile fullProfile,
List<UserDialogInfo>? userDialogs)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/remove
/// Remove an entire dialog with an entity (trader/user)
/// </summary>
/// <param name="dialogueId">id of the dialog to remove</param>
/// <param name="sessionId">Player id</param>
public void RemoveDialogue(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get a count of messages with attachments from a particular dialog
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog id</param>
/// <returns>Count of messages with attachments</returns>
private int GetUnreadMessagesWithAttachmentsCount(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/pin && Handle client/mail/dialog/unpin
/// </summary>
/// <param name="dialogueId"></param>
/// <param name="shouldPin"></param>
/// <param name="sessionId"></param>
public void SetDialoguePin(
string dialogueId,
bool shouldPin,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Does list have messages with uncollected rewards (includes expired rewards)
/// </summary>
/// <param name="messages">Messages to check</param>
/// <returns>true if uncollected rewards found</returns>
private bool MessagesHaveUncollectedRewards(List<Message> messages)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/read
/// Set a dialog to be read (no number alert/attachment alert)
/// </summary>
/// <param name="dialogueIds">Dialog ids to set as read</param>
/// <param name="sessionId">Player profile id</param>
public void SetRead(
HashSet<string> dialogueIds,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/remove
/// Remove an entire dialog with an entity (trader/user)
/// </summary>
/// <param name="dialogueId">id of the dialog to remove</param>
/// <param name="sessionId">Player id</param>
public void RemoveDialogue(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/getAllAttachments
/// Get all uncollected items attached to mail in a particular dialog
/// </summary>
/// <param name="dialogueId">Dialog to get mail attachments from</param>
/// <param name="sessionId">Session id</param>
/// <returns>GetAllAttachmentsResponse or null if dialogue doesnt exist</returns>
public GetAllAttachmentsResponse? GetAllAttachments(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/pin && Handle client/mail/dialog/unpin
/// </summary>
/// <param name="dialogueId"></param>
/// <param name="shouldPin"></param>
/// <param name="sessionId"></param>
public void SetDialoguePin(
string dialogueId,
bool shouldPin,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// handle client/mail/msg/send
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public string SendMessage(
string sessionId,
SendMessageRequest request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/read
/// Set a dialog to be read (no number alert/attachment alert)
/// </summary>
/// <param name="dialogueIds">Dialog ids to set as read</param>
/// <param name="sessionId">Player profile id</param>
public void SetRead(
HashSet<string> dialogueIds,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get messages from a specific dialog that have items not expired
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog to get mail attachments from</param>
/// <returns>message list</returns>
private List<Message> GetActiveMessagesFromDialogue(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/mail/dialog/getAllAttachments
/// Get all uncollected items attached to mail in a particular dialog
/// </summary>
/// <param name="dialogueId">Dialog to get mail attachments from</param>
/// <param name="sessionId">Session id</param>
/// <returns>GetAllAttachmentsResponse or null if dialogue doesnt exist</returns>
public GetAllAttachmentsResponse? GetAllAttachments(
string dialogueId,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Return list of messages with uncollected items (includes expired)
/// </summary>
/// <param name="messages">Messages to parse</param>
/// <returns>messages with items to collect</returns>
private List<Message> GetMessageWithAttachments(List<Message> messages)
{
throw new NotImplementedException();
}
/// <summary>
/// handle client/mail/msg/send
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public string SendMessage(
string sessionId,
SendMessageRequest request)
{
throw new NotImplementedException();
}
/// <summary>
/// Delete expired items from all messages in player profile. triggers when updating traders.
/// </summary>
/// <param name="sessionId">Session id</param>
private void RemoveExpiredItemsFromMessages(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get messages from a specific dialog that have items not expired
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog to get mail attachments from</param>
/// <returns>message list</returns>
private List<Message> GetActiveMessagesFromDialogue(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
/// <summary>
/// Removes expired items from a message in player profile
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog id</param>
private void RemoveExpiredItemsFromMessage(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
/// <summary>
/// Return list of messages with uncollected items (includes expired)
/// </summary>
/// <param name="messages">Messages to parse</param>
/// <returns>messages with items to collect</returns>
private List<Message> GetMessageWithAttachments(List<Message> messages)
{
throw new NotImplementedException();
}
/// <summary>
/// Delete expired items from all messages in player profile. triggers when updating traders.
/// </summary>
/// <param name="sessionId">Session id</param>
private void RemoveExpiredItemsFromMessages(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Removes expired items from a message in player profile
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="dialogueId">Dialog id</param>
private void RemoveExpiredItemsFromMessage(
string sessionId,
string dialogueId)
{
throw new NotImplementedException();
}
}
+161 -161
View File
@@ -6,180 +6,180 @@ namespace Core.Controllers;
public class GameController
{
/// <summary>
/// Handle client/game/start
/// </summary>
/// <param name="url"></param>
/// <param name="info"></param>
/// <param name="sessionId"></param>
/// <param name="startTimeStampMs"></param>
public void GameStart(
string url,
EmptyRequestData info,
string sessionId,
long startTimeStampMs)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/start
/// </summary>
/// <param name="url"></param>
/// <param name="info"></param>
/// <param name="sessionId"></param>
/// <param name="startTimeStampMs"></param>
public void GameStart(
string url,
EmptyRequestData info,
string sessionId,
long startTimeStampMs)
{
throw new NotImplementedException();
}
/// <summary>
/// Handles migrating profiles from older SPT versions
/// </summary>
/// <param name="fullProfile"></param>
/// <remarks>Formerly migrate39xProfile in node server</remarks>
private void MigrateProfile(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Handles migrating profiles from older SPT versions
/// </summary>
/// <param name="fullProfile"></param>
/// <remarks>Formerly migrate39xProfile in node server</remarks>
private void MigrateProfile(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/config
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GameConfigResponse GetGameConfig(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/config
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GameConfigResponse GetGameConfig(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/mode
/// </summary>
/// <param name="sessionId"></param>
/// <param name="requestData"></param>
/// <returns></returns>
public object GetGameMode( // TODO: Returns `any` in node server
string sessionId,
GameModeRequestData requestData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/mode
/// </summary>
/// <param name="sessionId"></param>
/// <param name="requestData"></param>
/// <returns></returns>
public object GetGameMode( // TODO: Returns `any` in node server
string sessionId,
GameModeRequestData requestData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/server/list
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public List<ServerDetails> GetServer(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/server/list
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public List<ServerDetails> GetServer(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/current
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
/*
public CurrentGroupResponse GetCurrentGroup(string sessionId)
{
throw new NotImplementedException();
}
*/
/// <summary>
/// Handle client/match/group/current
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
/*
public CurrentGroupResponse GetCurrentGroup(string sessionId)
{
throw new NotImplementedException();
}
*/
/// <summary>
/// Handle client/checkVersion
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public CheckVersionResponse GetValidGameVersion(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/checkVersion
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public CheckVersionResponse GetValidGameVersion(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/keepalive
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GameKeepAliveResponse GetKeepAlive(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/game/keepalive
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GameKeepAliveResponse GetKeepAlive(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle singleplayer/settings/getRaidTime
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public GetRaidTimeResponse GetRaidTime(
string sessionId,
GetRaidTimeRequest request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle singleplayer/settings/getRaidTime
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public GetRaidTimeResponse GetRaidTime(
string sessionId,
GetRaidTimeRequest request)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public SurveyResponseData GetSurvey(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Players set botReload to a high value and don't expect the crazy fast reload speeds, give them a warn about it
/// </summary>
/// <param name="pmcProfile">Player profile</param>
private void WarnOnActiveBotReloadSkill(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public SurveyResponseData GetSurvey(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// When player logs in, iterate over all active effects and reduce timer
/// </summary>
/// <param name="pmcProfile">Profile to adjust values for</param>
private void UpdateProfileHealthValues(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Players set botReload to a high value and don't expect the crazy fast reload speeds, give them a warn about it
/// </summary>
/// <param name="pmcProfile">Player profile</param>
private void WarnOnActiveBotReloadSkill(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Send starting gifts to profile after x days
/// </summary>
/// <param name="pmcProfile">Profile to add gifts to</param>
private void SendPraporGiftsToNewProfiles(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// When player logs in, iterate over all active effects and reduce timer
/// </summary>
/// <param name="pmcProfile">Profile to adjust values for</param>
private void UpdateProfileHealthValues(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Get a list of installed mods and save their details to the profile being used
/// </summary>
/// <param name="fullProfile">Profile to add mod details to</param>
private void SaveActiveModsToProfile(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Send starting gifts to profile after x days
/// </summary>
/// <param name="pmcProfile">Profile to add gifts to</param>
private void SendPraporGiftsToNewProfiles(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Add the logged in players name to PMC name pool
/// </summary>
/// <param name="pmcProfile">Profile of player to get name from</param>
private void AddPlayerToPmcNames(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Get a list of installed mods and save their details to the profile being used
/// </summary>
/// <param name="fullProfile">Profile to add mod details to</param>
private void SaveActiveModsToProfile(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Check for a dialog with the key 'undefined', and remove it
/// </summary>
/// <param name="fullProfile">Profile to check for dialog in</param>
private void CheckForAndRemoveUndefinedDialogues(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Add the logged in players name to PMC name pool
/// </summary>
/// <param name="pmcProfile">Profile of player to get name from</param>
private void AddPlayerToPmcNames(PmcData pmcProfile)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="fullProfile"></param>
private void LogProfileDetails(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
/// Check for a dialog with the key 'undefined', and remove it
/// </summary>
/// <param name="fullProfile">Profile to check for dialog in</param>
private void CheckForAndRemoveUndefinedDialogues(SptProfile fullProfile)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="fullProfile"></param>
private void LogProfileDetails(SptProfile fullProfile)
{
throw new NotImplementedException();
}
}
+4 -4
View File
@@ -3,8 +3,8 @@ namespace Core.Controllers;
// TODO: This seems unused, is it even needed?
public class HandBookController
{
public void Load()
{
throw new NotImplementedException();
}
public void Load()
{
throw new NotImplementedException();
}
}
+59 -59
View File
@@ -6,64 +6,64 @@ namespace Core.Controllers;
public class HealthController
{
/// <summary>
/// When healing in menu
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="request">Healing request</param>
/// <param name="sessionId">Player id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse OffRaidHeal(
PmcData pmcData,
OffraidHealRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Eat event
/// Consume food/water outside of a raid
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="request">Eat request</param>
/// <param name="sessionId">Session id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse OffRaidEat(
PmcData pmcData,
OffraidEatRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RestoreHealth event
/// Occurs on post-raid healing page
/// </summary>
/// <param name="pmcData">player profile</param>
/// <param name="request">Request data from client</param>
/// <param name="sessionId">Session id</param>
/// <returns></returns>
public ItemEventRouterResponse HealthTreatment(
PmcData pmcData,
HealthTreatmentRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// When healing in menu
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="request">Healing request</param>
/// <param name="sessionId">Player id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse OffRaidHeal(
PmcData pmcData,
OffraidHealRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// applies skills from hideout workout.
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="info">Request data</param>
/// <param name="sessionId">session id</param>
public void ApplyWorkoutChanges(
PmcData pmcData,
WorkoutData info,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Eat event
/// Consume food/water outside of a raid
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="request">Eat request</param>
/// <param name="sessionId">Session id</param>
/// <returns>ItemEventRouterResponse</returns>
public ItemEventRouterResponse OffRaidEat(
PmcData pmcData,
OffraidEatRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RestoreHealth event
/// Occurs on post-raid healing page
/// </summary>
/// <param name="pmcData">player profile</param>
/// <param name="request">Request data from client</param>
/// <param name="sessionId">Session id</param>
/// <returns></returns>
public ItemEventRouterResponse HealthTreatment(
PmcData pmcData,
HealthTreatmentRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// applies skills from hideout workout.
/// </summary>
/// <param name="pmcData">Player profile</param>
/// <param name="info">Request data</param>
/// <param name="sessionId">session id</param>
public void ApplyWorkoutChanges(
PmcData pmcData,
WorkoutData info,
string sessionId)
{
throw new NotImplementedException();
}
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class HideoutController
{
// TODO
// TODO
}
+55 -55
View File
@@ -4,63 +4,63 @@ namespace Core.Controllers;
public class InRaidController
{
/// <summary>
/// Save locationId to active profiles in-raid object AND app context
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="info">Register player request</param>
public void AddPlayer(
string sessionId,
RegisterPlayerRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Save locationId to active profiles in-raid object AND app context
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="info">Register player request</param>
public void AddPlayer(
string sessionId,
RegisterPlayerRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle raid/profile/scavsave
/// Save profile state to disk
/// Handles pmc/pscav
/// </summary>
/// <param name="offRaidProfileData"></param>
/// <param name="sessionId"></param>
public void SavePostRaidProfileForScav(
ScavSaveRequestData offRaidProfileData,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle raid/profile/scavsave
/// Save profile state to disk
/// Handles pmc/pscav
/// </summary>
/// <param name="offRaidProfileData"></param>
/// <param name="sessionId"></param>
public void SavePostRaidProfileForScav(
ScavSaveRequestData offRaidProfileData,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the inraid config from configs/inraid.json
/// </summary>
public void GetInRaidConfig()
{
throw new NotImplementedException();
}
/// <summary>
/// Get the inraid config from configs/inraid.json
/// </summary>
public void GetInRaidConfig()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="url"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public float GetTraitorScavHostileChance(
string url,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="url"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public float GetTraitorScavHostileChance(
string url,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="url"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public List<string> GetBossConvertSettings(
string url,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="url"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public List<string> GetBossConvertSettings(
string url,
string sessionId)
{
throw new NotImplementedException();
}
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class InsuranceController
{
// TODO
// TODO
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class InventoryController
{
// TODO
// TODO
}
+125 -125
View File
@@ -6,142 +6,142 @@ namespace Core.Controllers;
public class LauncherController
{
/// <summary>
///
/// </summary>
/// <returns></returns>
public ConnectResponse Connect()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
public ConnectResponse Connect()
{
throw new NotImplementedException();
}
/// <summary>
/// Get descriptive text for each of the profile edtions a player can choose, keyed by profile.json profile type
/// e.g. "Edge Of Darkness"
/// </summary>
/// <returns>Dictionary of profile types with related descriptive text</returns>
private Dictionary<string, string> GetProfileDescriptions()
{
throw new NotImplementedException();
}
/// <summary>
/// Get descriptive text for each of the profile edtions a player can choose, keyed by profile.json profile type
/// e.g. "Edge Of Darkness"
/// </summary>
/// <returns>Dictionary of profile types with related descriptive text</returns>
private Dictionary<string, string> GetProfileDescriptions()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public Info Find(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public Info Find(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string Login(LoginRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string Login(LoginRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string Register(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string Register(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
private string CreateAccount(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
private string CreateAccount(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
private string GenerateProfileId()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
private string GenerateProfileId()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="timeStamp"></param>
/// <param name="counter"></param>
/// <returns></returns>
private string FormatId(
long timeStamp,
int counter)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="timeStamp"></param>
/// <param name="counter"></param>
/// <returns></returns>
private string FormatId(
long timeStamp,
int counter)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string ChangeUsername(ChangeRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string ChangeUsername(ChangeRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string ChangePassword(ChangeRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public string ChangePassword(ChangeRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle launcher requesting profile be wiped
/// </summary>
/// <param name="info">RegisterData</param>
/// <returns>Session id</returns>
public string Wipe(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle launcher requesting profile be wiped
/// </summary>
/// <param name="info">RegisterData</param>
/// <returns>Session id</returns>
public string Wipe(RegisterData info)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
public string GetCompatibleTarkovVersion()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
public string GetCompatibleTarkovVersion()
{
throw new NotImplementedException();
}
/// <summary>
/// Get the mods the server has currently loaded
/// </summary>
/// <returns>Dictionary of mod name and mod details</returns>
public Dictionary<string, PackageJsonData> GetLoadedServerMods() // TODO: We no longer use a package.json
{
throw new NotImplementedException();
}
/// <summary>
/// Get the mods the server has currently loaded
/// </summary>
/// <returns>Dictionary of mod name and mod details</returns>
public Dictionary<string, PackageJsonData> GetLoadedServerMods() // TODO: We no longer use a package.json
{
throw new NotImplementedException();
}
/// <summary>
/// Get the mods a profile has ever loaded into game with
/// </summary>
/// <param name="sessionId">Player id</param>
/// <returns>List of mod details</returns>
public List<ModDetails> GetServerModsProfileUsed(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Get the mods a profile has ever loaded into game with
/// </summary>
/// <param name="sessionId">Player id</param>
/// <returns>List of mod details</returns>
public List<ModDetails> GetServerModsProfileUsed(string sessionId)
{
throw new NotImplementedException();
}
}
+19 -19
View File
@@ -5,24 +5,24 @@ namespace Core.Controllers;
public class LocationController
{
/// <summary>
/// Handle client/locations
/// Get all maps base location properties without loot data
/// </summary>
/// <param name="sessionId">Players Id</param>
/// <returns>LocationsGenerateAllResponse</returns>
public LocationsGenerateAllResponse GenerateAll(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/locations
/// Get all maps base location properties without loot data
/// </summary>
/// <param name="sessionId">Players Id</param>
/// <returns>LocationsGenerateAllResponse</returns>
public LocationsGenerateAllResponse GenerateAll(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/airdrop/loot
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public GetAirdropLootResponse GetAirDropLoot(GetAirdropLootRequest request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/airdrop/loot
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public GetAirdropLootResponse GetAirDropLoot(GetAirdropLootRequest request)
{
throw new NotImplementedException();
}
}
+82 -82
View File
@@ -4,93 +4,93 @@ namespace Core.Controllers;
public class MatchController
{
/// <summary>
///
/// </summary>
/// <returns></returns>
public bool GetEnabled()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <returns></returns>
public bool GetEnabled()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/delete
/// </summary>
/// <param name="info"></param>
public void DeleteGroup(object info) // TODO: info is `any` in the node server
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/delete
/// </summary>
/// <param name="info"></param>
public void DeleteGroup(object info) // TODO: info is `any` in the node server
{
throw new NotImplementedException();
}
/// <summary>
/// Handle match/group/start_game
/// </summary>
/// <param name="info"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ProfileStatusResponse JoinMatch(
MatchGroupStartGameRequest info,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle match/group/start_game
/// </summary>
/// <param name="info"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ProfileStatusResponse JoinMatch(
MatchGroupStartGameRequest info,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/status
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public MatchGroupStatusResponse GetGroupStatus(
MatchGroupStatusRequest info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/group/status
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
public MatchGroupStatusResponse GetGroupStatus(
MatchGroupStatusRequest info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle /client/raid/configuration
/// </summary>
/// <param name="request"></param>
/// <param name="sessionId"></param>
public void ConfigureOfflineRaid(
GetRaidConfigurationRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle /client/raid/configuration
/// </summary>
/// <param name="request"></param>
/// <param name="sessionId"></param>
public void ConfigureOfflineRaid(
GetRaidConfigurationRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Convert a difficulty value from pre-raid screen to a bot difficulty
/// </summary>
/// <param name="botDifficulty">dropdown difficulty value</param>
/// <returns>bot difficulty</returns>
private string ConvertDifficultyDropdownIntoBotDifficulty(
string botDifficulty)
{
throw new NotImplementedException();
}
/// <summary>
/// Convert a difficulty value from pre-raid screen to a bot difficulty
/// </summary>
/// <param name="botDifficulty">dropdown difficulty value</param>
/// <returns>bot difficulty</returns>
private string ConvertDifficultyDropdownIntoBotDifficulty(
string botDifficulty)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/local/start
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public StartLocalRaidResponseData StartLocalRaid(
string sessionId,
StartLocalRaidRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/local/start
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
/// <returns></returns>
public StartLocalRaidResponseData StartLocalRaid(
string sessionId,
StartLocalRaidRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/local/end
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void EndLocalRaid(
string sessionId,
EndLocalRaidRequestData request)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/match/local/end
/// </summary>
/// <param name="sessionId"></param>
/// <param name="request"></param>
public void EndLocalRaid(
string sessionId,
EndLocalRaidRequestData request)
{
throw new NotImplementedException();
}
}
+44 -44
View File
@@ -6,48 +6,48 @@ namespace Core.Controllers;
public class NoteController
{
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse AddNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse EditNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse DeleteNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse AddNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse EditNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="pmcData"></param>
/// <param name="body"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse DeleteNote(
PmcData pmcData,
NoteActionData body,
string sessionId)
{
throw new NotImplementedException();
}
}
+30 -30
View File
@@ -4,36 +4,36 @@ namespace Core.Controllers;
public class NotifierController
{
/// <summary>
/// Resolve an array of session notifications.
///
/// If no notifications are currently queued then intermittently check for new notifications until either
/// one or more appear or when a timeout expires.
/// If no notifications are available after the timeout, use a default message.
/// </summary>
/// <param name="sessionId"></param>
public async Task NotifyAsync(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Resolve an array of session notifications.
///
/// If no notifications are currently queued then intermittently check for new notifications until either
/// one or more appear or when a timeout expires.
/// If no notifications are available after the timeout, use a default message.
/// </summary>
/// <param name="sessionId"></param>
public async Task NotifyAsync(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public string GetServer(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public string GetServer(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/notifier/channel/create
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public NotifierChannel GetChannel(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/notifier/channel/create
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public NotifierChannel GetChannel(string sessionId)
{
throw new NotImplementedException();
}
}
+7 -7
View File
@@ -2,11 +2,11 @@ namespace Core.Controllers;
public class PresetController
{
/// <summary>
///
/// </summary>
public void Initialize()
{
throw new NotImplementedException();
}
/// <summary>
///
/// </summary>
public void Initialize()
{
throw new NotImplementedException();
}
}
+24 -24
View File
@@ -5,29 +5,29 @@ namespace Core.Controllers;
public class PrestigeController
{
/// <summary>
/// Handle /client/prestige/list
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public Prestige GetPrestige(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle /client/prestige/list
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public Prestige GetPrestige(
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle /client/prestige/obtain
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public object ObtainPrestige( // TODO: returns `any` in the node server, not implemented either
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException("Method not Implemented");
}
/// <summary>
/// Handle /client/prestige/obtain
/// </summary>
/// <param name="sessionId"></param>
/// <param name="info"></param>
/// <returns></returns>
public object ObtainPrestige( // TODO: returns `any` in the node server, not implemented either
string sessionId,
EmptyRequestData info)
{
throw new NotImplementedException("Method not Implemented");
}
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class ProfileController
{
// TODO
// TODO
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class QuestController
{
// TODO
// TODO
}
+1 -1
View File
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class RagfairController
{
// TODO
// TODO
}
+32 -32
View File
@@ -6,36 +6,36 @@ namespace Core.Controllers;
public class RepairController
{
/// <summary>
/// Handle TraderRepair event
/// Repair with trader
/// </summary>
/// <param name="sessionId">session id</param>
/// <param name="body">endpoint request data</param>
/// <param name="pmcData">player profile</param>
/// <returns>item event router action</returns>
public ItemEventRouterResponse TraderRepair(
string sessionId,
TraderRepairActionDataRequest body,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Repair event
/// Repair with repair kit
/// </summary>
/// <param name="sessionId">session id</param>
/// <param name="body">endpoint request data</param>
/// <param name="pmcData">player profile</param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public ItemEventRouterResponse RepairWithKit(
string sessionId,
RepairActionDataRequest body,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle TraderRepair event
/// Repair with trader
/// </summary>
/// <param name="sessionId">session id</param>
/// <param name="body">endpoint request data</param>
/// <param name="pmcData">player profile</param>
/// <returns>item event router action</returns>
public ItemEventRouterResponse TraderRepair(
string sessionId,
TraderRepairActionDataRequest body,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle Repair event
/// Repair with repair kit
/// </summary>
/// <param name="sessionId">session id</param>
/// <param name="body">endpoint request data</param>
/// <param name="pmcData">player profile</param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public ItemEventRouterResponse RepairWithKit(
string sessionId,
RepairActionDataRequest body,
PmcData pmcData)
{
throw new NotImplementedException();
}
}
@@ -2,5 +2,5 @@ namespace Core.Controllers;
public class RepeatableQuestController
{
// TODO
// TODO
}
+131 -131
View File
@@ -9,141 +9,141 @@ namespace Core.Controllers;
public class TradeController
{
/// <summary>
/// Handle TradingConfirm event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ConfirmTrading(
PmcData pmcData,
ProcessBaseTradeRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RagFairBuyOffer event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ConfirmRagfairTrading(
PmcData pmcData,
ProcessRagfairTradeRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle TradingConfirm event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ConfirmTrading(
PmcData pmcData,
ProcessBaseTradeRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Buy an item off the flea sold by a trader
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="fleaOffer">Offer being purchased</param>
/// <param name="offerRequest">request data from client</param>
/// <param name="output">Output to send back to client</param>
private void BuyTraderItemFromRagfair(
string sessionId,
PmcData pmcData,
RagfairOffer fleaOffer,
OfferRequest offerRequest,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Buy an item off the flea sold by a PMC
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="fleaOffer">Offer being purchased</param>
/// <param name="offerRequest">request data from client</param>
/// <param name="output">Output to send back to client</param>
private void BuyPmcItemFromRagfair(
string sessionId,
PmcData pmcData,
RagfairOffer fleaOffer,
OfferRequest offerRequest,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RagFairBuyOffer event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ConfirmRagfairTrading(
PmcData pmcData,
ProcessRagfairTradeRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Is the provided offerid and ownerid from a player made offer
/// </summary>
/// <param name="offerId">id of the offer</param>
/// <param name="offerOwnerId">Owner id</param>
/// <returns>true if offer was made by a player</returns>
private bool IsPlayerOffer(
string offerId,
string offerOwnerId)
{
throw new NotImplementedException();
}
/// <summary>
/// Buy an item off the flea sold by a trader
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="fleaOffer">Offer being purchased</param>
/// <param name="offerRequest">request data from client</param>
/// <param name="output">Output to send back to client</param>
private void BuyTraderItemFromRagfair(
string sessionId,
PmcData pmcData,
RagfairOffer fleaOffer,
OfferRequest offerRequest,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Does Player have necessary trader loyalty to purchase flea offer
/// </summary>
/// <param name="fleaOffer">Flea offer being bought</param>
/// <param name="pmcData">Player profile</param>
/// <returns>True if player can buy offer</returns>
private bool PlayerLacksTraderLoyaltyLevelToBuyOffer(
RagfairOffer fleaOffer,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Buy an item off the flea sold by a PMC
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="pmcData">Player profile</param>
/// <param name="fleaOffer">Offer being purchased</param>
/// <param name="offerRequest">request data from client</param>
/// <param name="output">Output to send back to client</param>
private void BuyPmcItemFromRagfair(
string sessionId,
PmcData pmcData,
RagfairOffer fleaOffer,
OfferRequest offerRequest,
ItemEventRouterResponse output)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle SellAllFromSavage event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse SellScavItemsToFence(
PmcData pmcData,
SellScavItemsToFenceRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Is the provided offerid and ownerid from a player made offer
/// </summary>
/// <param name="offerId">id of the offer</param>
/// <param name="offerOwnerId">Owner id</param>
/// <returns>true if offer was made by a player</returns>
private bool IsPlayerOffer(
string offerId,
string offerOwnerId)
{
throw new NotImplementedException();
}
/// <summary>
/// Send the specified rouble total to player as mail
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="roublesToSend">amount of roubles to send</param>
/// <param name="trader">Trader to sell items to</param>
private void MailMoneyToPlayer(
string sessionId,
int roublesToSend,
string trader)
{
throw new NotImplementedException();
}
/// <summary>
/// Does Player have necessary trader loyalty to purchase flea offer
/// </summary>
/// <param name="fleaOffer">Flea offer being bought</param>
/// <param name="pmcData">Player profile</param>
/// <returns>True if player can buy offer</returns>
private bool PlayerLacksTraderLoyaltyLevelToBuyOffer(
RagfairOffer fleaOffer,
PmcData pmcData)
{
throw new NotImplementedException();
}
/// <summary>
/// Looks up an items children and gets total handbook price for them
/// </summary>
/// <param name="parentItemId">parent item that has children we want to sum price of</param>
/// <param name="items">All items (parent + children)</param>
/// <param name="handbookPrices">Prices of items from handbook</param>
/// <param name="traderDetails">Trader being sold to, to perform buy category check against</param>
/// <returns>Rouble price</returns>
private int GetPriceOfItemAndChildren(
string parentItemId,
List<Item> items,
Dictionary<string, int> handbookPrices,
TraderBase traderDetails)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle SellAllFromSavage event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse SellScavItemsToFence(
PmcData pmcData,
SellScavItemsToFenceRequestData request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Send the specified rouble total to player as mail
/// </summary>
/// <param name="sessionId">Session id</param>
/// <param name="roublesToSend">amount of roubles to send</param>
/// <param name="trader">Trader to sell items to</param>
private void MailMoneyToPlayer(
string sessionId,
int roublesToSend,
string trader)
{
throw new NotImplementedException();
}
/// <summary>
/// Looks up an items children and gets total handbook price for them
/// </summary>
/// <param name="parentItemId">parent item that has children we want to sum price of</param>
/// <param name="items">All items (parent + children)</param>
/// <param name="handbookPrices">Prices of items from handbook</param>
/// <param name="traderDetails">Trader being sold to, to perform buy category check against</param>
/// <returns>Rouble price</returns>
private int GetPriceOfItemAndChildren(
string parentItemId,
List<Item> items,
Dictionary<string, int> handbookPrices,
TraderBase traderDetails)
{
throw new NotImplementedException();
}
}
+72 -72
View File
@@ -5,82 +5,82 @@ namespace Core.Controllers;
public class TraderController
{
/// <summary>
/// Runs when onLoad event is fired
/// Iterate over traders, ensure a pristine copy of their assorts is stored in traderAssortService
/// Store timestamp of next assort refresh in nextResupply property of traders .base object
/// </summary>
public void Load()
{
throw new NotImplementedException();
}
/// <summary>
/// Runs when onLoad event is fired
/// Iterate over traders, ensure a pristine copy of their assorts is stored in traderAssortService
/// Store timestamp of next assort refresh in nextResupply property of traders .base object
/// </summary>
public void Load()
{
throw new NotImplementedException();
}
/// <summary>
/// Runs when onUpdate is fired
/// If current time is > nextResupply(expire) time of trader, refresh traders assorts and
/// Fence is handled slightly differently
/// </summary>
/// <returns></returns>
public bool Update()
{
throw new NotImplementedException();
}
/// <summary>
/// Runs when onUpdate is fired
/// If current time is > nextResupply(expire) time of trader, refresh traders assorts and
/// Fence is handled slightly differently
/// </summary>
/// <returns></returns>
public bool Update()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/traderSettings
/// </summary>
/// <param name="sessionId">session id</param>
/// <returns>Return a list of all traders</returns>
public List<TraderBase> GetAllTraders(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/traderSettings
/// </summary>
/// <param name="sessionId">session id</param>
/// <returns>Return a list of all traders</returns>
public List<TraderBase> GetAllTraders(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Order traders by their traderId (Ttid)
/// </summary>
/// <param name="traderA">First trader to compare</param>
/// <param name="traderB">Second trader to compare</param>
/// <returns>1,-1 or 0</returns>
private int SortByTraderId(
TraderBase traderA,
TraderBase traderB)
{
throw new NotImplementedException();
}
/// <summary>
/// Order traders by their traderId (Ttid)
/// </summary>
/// <param name="traderA">First trader to compare</param>
/// <param name="traderB">Second trader to compare</param>
/// <returns>1,-1 or 0</returns>
private int SortByTraderId(
TraderBase traderA,
TraderBase traderB)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/getTrader
/// </summary>
/// <param name="sessionId"></param>
/// <param name="traderId"></param>
/// <returns></returns>
public TraderBase GetTrader(
string sessionId,
string traderId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/getTrader
/// </summary>
/// <param name="sessionId"></param>
/// <param name="traderId"></param>
/// <returns></returns>
public TraderBase GetTrader(
string sessionId,
string traderId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/getTraderAssort
/// </summary>
/// <param name="sessionId"></param>
/// <param name="traderId"></param>
/// <returns></returns>
public TraderAssort GetAssort(
string sessionId,
string traderId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/trading/api/getTraderAssort
/// </summary>
/// <param name="sessionId"></param>
/// <param name="traderId"></param>
/// <returns></returns>
public TraderAssort GetAssort(
string sessionId,
string traderId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/items/prices/TRADERID
/// </summary>
/// <returns></returns>
public GetItemPricesResponse GetItemPrices()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/items/prices/TRADERID
/// </summary>
/// <returns></returns>
public GetItemPricesResponse GetItemPrices()
{
throw new NotImplementedException();
}
}
+17 -17
View File
@@ -5,22 +5,22 @@ namespace Core.Controllers;
public class WeatherController
{
/// <summary>
/// Handle client/weather
/// </summary>
/// <returns></returns>
public WeatherData Generate()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/weather
/// </summary>
/// <returns></returns>
public WeatherData Generate()
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/localGame/weather
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GetLocalWeatherResponseData GenerateLocal(string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle client/localGame/weather
/// </summary>
/// <param name="sessionId"></param>
/// <returns></returns>
public GetLocalWeatherResponseData GenerateLocal(string sessionId)
{
throw new NotImplementedException();
}
}
+43 -43
View File
@@ -6,48 +6,48 @@ namespace Core.Controllers;
public class WishlistController
{
/// <summary>
/// Handle AddToWishList
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse AddToWishList(
PmcData pmcData,
AddToWishlistRequest request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle AddToWishList
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse AddToWishList(
PmcData pmcData,
AddToWishlistRequest request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RemoveFromWishList event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse RemoveFromWishList(
PmcData pmcData,
RemoveFromWishlistRequest request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle changeWishlistItemCategory event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ChangeWishListItemCategory(
PmcData pmcData,
ChangeWishlistItemCategoryRequest request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle RemoveFromWishList event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse RemoveFromWishList(
PmcData pmcData,
RemoveFromWishlistRequest request,
string sessionId)
{
throw new NotImplementedException();
}
/// <summary>
/// Handle changeWishlistItemCategory event
/// </summary>
/// <param name="pmcData"></param>
/// <param name="request"></param>
/// <param name="sessionId"></param>
/// <returns></returns>
public ItemEventRouterResponse ChangeWishListItemCategory(
PmcData pmcData,
ChangeWishlistItemCategoryRequest request,
string sessionId)
{
throw new NotImplementedException();
}
}
+5 -4
View File
@@ -12,7 +12,6 @@ public class BotInventoryGenerator
public BotInventoryGenerator()
{
}
/// <summary>
@@ -109,7 +108,8 @@ public class BotInventoryGenerator
/// <param name="isPmc">Is the bot being generated as a pmc</param>
/// <param name="itemGenerationLimitsMinMax">Limits for items the bot can have</param>
/// <param name="botLevel">level of bot having weapon generated</param>
public void GenerateAndAddWeaponsToBot(BotBaseInventory templateInventory, Chances equipmentChances, string sessionId, BotBaseInventory botInventory, string botRole,
public void GenerateAndAddWeaponsToBot(BotBaseInventory templateInventory, Chances equipmentChances, string sessionId, BotBaseInventory botInventory,
string botRole,
bool isPmc, Generation itemGenerationLimitsMinMax, int botLevel)
{
throw new NotImplementedException();
@@ -124,7 +124,7 @@ public class BotInventoryGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Add weapon + spare mags/ammo to bots inventory
/// </summary>
@@ -137,7 +137,8 @@ public class BotInventoryGenerator
/// <param name="isPmc">Is the bot being generated as a pmc</param>
/// <param name="itemGenerationWeights"></param>
/// <param name="botLevel"></param>
public void AddWeaponAndMagazineToInventory(string sessionId, object weaponSlot, BotBaseInventory templateInventory, BotBaseInventory botInventory, Chances equipmentChances, string botRole,
public void AddWeaponAndMagazineToInventory(string sessionId, object weaponSlot, BotBaseInventory templateInventory, BotBaseInventory botInventory,
Chances equipmentChances, string botRole,
bool isPmc, Generation itemGenerationWeights, int botLevel)
{
throw new NotImplementedException();
-1
View File
@@ -9,7 +9,6 @@ public class BotLevelGenerator
{
public BotLevelGenerator()
{
}
/// <summary>
+4 -3
View File
@@ -12,7 +12,6 @@ public class BotLootGenerator
public BotLootGenerator()
{
}
/// <summary>
@@ -86,7 +85,8 @@ public class BotLootGenerator
/// <param name="totalValueLimitRub">Total value of loot allowed in roubles</param>
/// <param name="isPmc">Is bot being generated for a pmc</param>
/// <exception cref="NotImplementedException"></exception>
public void AddLootFromPool(Dictionary<string, int> pool, List<string> equipmentSlots, int totalItemCount, BotBaseInventory inventoryToAddItemsTo, // TODO: type for containersIdFull was Set<string>
public void AddLootFromPool(Dictionary<string, int> pool, List<string> equipmentSlots, int totalItemCount,
BotBaseInventory inventoryToAddItemsTo, // TODO: type for containersIdFull was Set<string>
string botRole, ItemSpawnLimitSettings? itemSpawnLimits, List<string> containersIdFull, int totalValueLimitRub = 0, bool isPmc = false)
{
throw new NotImplementedException();
@@ -127,7 +127,8 @@ public class BotLootGenerator
/// <param name="isPmc">are we generating for a pmc</param>
/// <param name="botLevel"></param>
/// <param name="containersIdFull"></param>
public void AddLooseWeaponsToInventorySlot(string sessionId, BotBaseInventory botInventory, string equipmentSlot, BotBaseInventory templateInventory, // TODO: type for containersIdFull was Set<string>
public void AddLooseWeaponsToInventorySlot(string sessionId, BotBaseInventory botInventory, string equipmentSlot,
BotBaseInventory templateInventory, // TODO: type for containersIdFull was Set<string>
Dictionary<string, double> modsChances, string botRole, bool isPmc, int botLevel, List<string>? containersIdFull)
{
throw new NotImplementedException();
+2 -2
View File
@@ -229,14 +229,14 @@ public class BotWeaponGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Fill each Camora with a bullet
/// </summary>
/// <param name="weaponMods">Weapon mods to find and update camora mod(s) from</param>
/// <param name="magazineId">Magazine id to find and add to</param>
/// <param name="ammoTpl">Ammo template id to hydrate with</param>
protected void FillCamorasWithAmmo(List<Item> weaponMods, string magazineId, string ammoTpl)
protected void FillCamorasWithAmmo(List<Item> weaponMods, string magazineId, string ammoTpl)
{
throw new NotImplementedException();
}
+5 -6
View File
@@ -9,9 +9,8 @@ public class FenceBaseAssortGenerator
public FenceBaseAssortGenerator()
{
}
/// <summary>
/// Create base fence assorts dynamically and store in memory
/// </summary>
@@ -19,7 +18,7 @@ public class FenceBaseAssortGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Check ammo in boxes and loose ammos has a penetration value above the configured value in trader.json / ammoMaxPenLimit
/// </summary>
@@ -29,7 +28,7 @@ public class FenceBaseAssortGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Gets the penetration power value of an ammo, works with ammo boxes and raw ammos.
/// </summary>
@@ -39,7 +38,7 @@ public class FenceBaseAssortGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Add soft inserts and armor plates to an armor.
/// </summary>
@@ -49,7 +48,7 @@ public class FenceBaseAssortGenerator
{
throw new NotImplementedException();
}
/// <summary>
/// Check if item is valid for being added to fence assorts
/// </summary>
+3 -2
View File
@@ -153,9 +153,10 @@ public class LocationLootGenerator
{
throw new NotImplementedException();
}
// TODO: rewrite, BIG yikes
protected ContainerItem CreateStaticLootItem(string chosenTemplate, Dictionary<string, List<StaticAmmoDetails>> staticAmmoDistribution, string? parentIdentifier = null)
protected ContainerItem CreateStaticLootItem(string chosenTemplate, Dictionary<string, List<StaticAmmoDetails>> staticAmmoDistribution,
string? parentIdentifier = null)
{
throw new NotImplementedException();
}
+1 -2
View File
@@ -6,9 +6,8 @@ public class PMCLootGenerator
{
public PMCLootGenerator()
{
}
/// <summary>
/// Create a List of loot items a PMC can have in their pockets
/// </summary>
+15 -16
View File
@@ -10,15 +10,14 @@ public class PlayerScavGenerator
public PlayerScavGenerator()
{
}
/// <summary>
/// Update a player profile to include a new player scav profile
/// </summary>
/// <param name="sessionID">session id to specify what profile is updated</param>
/// <returns>profile object</returns>
public PmcData Generate(string sessionID)
public PmcData Generate(string sessionID)
{
throw new NotImplementedException();
}
@@ -40,7 +39,7 @@ public class PlayerScavGenerator
/// </summary>
/// <param name="pmcData">pmc profile</param>
/// <returns>karma level</returns>
protected double GetScavKarmaLevel(PmcData pmcData)
protected double GetScavKarmaLevel(PmcData pmcData)
{
throw new NotImplementedException();
}
@@ -51,7 +50,7 @@ public class PlayerScavGenerator
/// </summary>
/// <param name="botTypeForLoot">bot type to use for inventory/chances</param>
/// <returns>IBotType object</returns>
protected BotType ConstructBotBaseTemplate(string botTypeForLoot)
protected BotType ConstructBotBaseTemplate(string botTypeForLoot)
{
throw new NotImplementedException();
}
@@ -61,32 +60,32 @@ public class PlayerScavGenerator
/// </summary>
/// <param name="karmaSettings">Values to modify the bot template with</param>
/// <param name="baseBotNode">bot template to modify according to karama level settings</param>
protected void AdjustBotTemplateWithKarmaSpecificSettings(KarmaLevel karmaSettings, BotType baseBotNode)
{
throw new NotImplementedException();
}
protected Skills GetScavSkills(PmcData scavProfile)
protected void AdjustBotTemplateWithKarmaSpecificSettings(KarmaLevel karmaSettings, BotType baseBotNode)
{
throw new NotImplementedException();
}
protected Skills GetDefaultScavSkills()
protected Skills GetScavSkills(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected Stats GetScavStats(PmcData scavProfile)
protected Skills GetDefaultScavSkills()
{
throw new NotImplementedException();
}
protected int GetScavLevel(PmcData scavProfile)
protected Stats GetScavStats(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected int GetScavExperience(PmcData scavProfile)
protected int GetScavLevel(PmcData scavProfile)
{
throw new NotImplementedException();
}
protected int GetScavExperience(PmcData scavProfile)
{
throw new NotImplementedException();
}
@@ -98,7 +97,7 @@ public class PlayerScavGenerator
/// <param name="scavData">scav profile</param>
/// <param name="pmcData">pmc profile</param>
/// <returns></returns>
protected PmcData SetScavCooldownTimer(PmcData scavData, PmcData pmcData)
protected PmcData SetScavCooldownTimer(PmcData scavData, PmcData pmcData)
{
throw new NotImplementedException();
}
+5 -6
View File
@@ -7,15 +7,14 @@ public class RagfairAssortGenerator
{
public RagfairAssortGenerator()
{
}
/// <summary>
/// Get an array of arrays that can be sold on the flea
/// Each sub array contains item + children (if any)
/// </summary>
/// <returns>List of Lists</returns>
public List<List<Item>> GetAssortItems()
public List<List<Item>> GetAssortItems()
{
throw new NotImplementedException();
}
@@ -24,7 +23,7 @@ public class RagfairAssortGenerator
/// Check internal generatedAssortItems array has objects
/// </summary>
/// <returns>true if array has objects</returns>
protected bool AssortsAreGenerated()
protected bool AssortsAreGenerated()
{
throw new NotImplementedException();
}
@@ -33,7 +32,7 @@ public class RagfairAssortGenerator
/// Generate an array of arrays (item + children) the flea can sell
/// </summary>
/// <returns>List of Lists (item + children)</returns>
protected List<List<Item>> GenerateRagfairAssortItems()
protected List<List<Item>> GenerateRagfairAssortItems()
{
throw new NotImplementedException();
}
@@ -43,7 +42,7 @@ public class RagfairAssortGenerator
/// ragfairConfig.dynamic.showDefaultPresetsOnly decides if its all presets or just defaults
/// </summary>
/// <returns>Dictionary</returns>
protected List<Preset> GetPresetsToAdd()
protected List<Preset> GetPresetsToAdd()
{
throw new NotImplementedException();
}
@@ -4,7 +4,6 @@ public class BarrelInvetoryMagGen : InventoryMagGen
{
public BarrelInvetoryMagGen()
{
}
public int GetPriority()
@@ -6,7 +6,6 @@ public class ExternalInventoryMagGen : InventoryMagGen
{
public ExternalInventoryMagGen()
{
}
public int GetPriority()
@@ -4,7 +4,6 @@ public class InternalMagazineInventoryMagGen : InventoryMagGen
{
public InternalMagazineInventoryMagGen()
{
}
public int GetPriority()
@@ -4,7 +4,6 @@ public class UbglExternalMagGen : InventoryMagGen
{
public UbglExternalMagGen()
{
}
public int GetPriority()
+1 -2
View File
@@ -9,10 +9,9 @@ public class InventoryMagGen
private TemplateItem _weaponTemplate;
private TemplateItem _ammoTemplate;
private BotBaseInventory _pmcInventory;
public InventoryMagGen()
{
}
public GenerationData GetMagCount()
@@ -6,7 +6,7 @@ public class RandomisedBotLevelResult
{
[JsonPropertyName("level")]
public int? Level { get; set; }
[JsonPropertyName("exp")]
public int? Exp { get; set; }
}
+1 -1
View File
@@ -3,7 +3,7 @@ using Core.Models.Eft.Profile;
namespace Core.Models.Eft.Builds;
public class SetMagazineRequest
public class SetMagazineRequest
{
[JsonPropertyName("Id")]
public string? Id { get; set; }
@@ -2,5 +2,4 @@
public class EmptyRequestData
{
}
File diff suppressed because it is too large Load Diff
+99 -99
View File
@@ -5,190 +5,190 @@ namespace Core.Models.Eft.Common;
public class Location
{
/** Map meta-data */
[JsonPropertyName("base")]
public LocationBase? Base { get; set; }
/** Map meta-data */
[JsonPropertyName("base")]
public LocationBase? Base { get; set; }
/** Loose loot positions and item weights */
[JsonPropertyName("looseLoot")]
public LooseLoot? LooseLoot { get; set; }
/** Loose loot positions and item weights */
[JsonPropertyName("looseLoot")]
public LooseLoot? LooseLoot { get; set; }
/** Static loot item weights */
[JsonPropertyName("staticLoot")]
public Dictionary<string, StaticLootDetails>? StaticLoot { get; set; }
/** Static loot item weights */
[JsonPropertyName("staticLoot")]
public Dictionary<string, StaticLootDetails>? StaticLoot { get; set; }
/** Static container positions and item weights */
[JsonPropertyName("staticContainers")]
public StaticContainerDetails? StaticContainers { get; set; }
/** Static container positions and item weights */
[JsonPropertyName("staticContainers")]
public StaticContainerDetails? StaticContainers { get; set; }
[JsonPropertyName("staticAmmo")]
public Dictionary<string, StaticAmmoDetails[]> StaticAmmo { get; set; }
[JsonPropertyName("staticAmmo")]
public Dictionary<string, StaticAmmoDetails[]> StaticAmmo { get; set; }
/** All possible static containers on map + their assign groupings */
[JsonPropertyName("statics")]
public StaticContainer? StaticContainer { get; set; }
/** All possible static containers on map + their assign groupings */
[JsonPropertyName("statics")]
public StaticContainer? StaticContainer { get; set; }
/** All possible map extracts */
[JsonPropertyName("allExtracts")]
public Exit[] AllExtracts { get; set; }
/** All possible map extracts */
[JsonPropertyName("allExtracts")]
public Exit[] AllExtracts { get; set; }
// TODO: talk to chomp about this type!
[JsonPropertyName("statics")]
public Dictionary<string, object>? Statics { get; set; }
// TODO: talk to chomp about this type!
[JsonPropertyName("statics")]
public Dictionary<string, object>? Statics { get; set; }
}
public class StaticContainer
{
[JsonPropertyName("containersGroups")]
public Dictionary<string, ContainerMinMax>? ContainersGroups { get; set; }
[JsonPropertyName("containersGroups")]
public Dictionary<string, ContainerMinMax>? ContainersGroups { get; set; }
[JsonPropertyName("containers")]
public Dictionary<string, ContainerData>? Containers { get; set; }
[JsonPropertyName("containers")]
public Dictionary<string, ContainerData>? Containers { get; set; }
}
public class ContainerMinMax
{
[JsonPropertyName("minContainers")]
public int? MinContainers { get; set; }
[JsonPropertyName("minContainers")]
public int? MinContainers { get; set; }
[JsonPropertyName("maxContainers")]
public int? MaxContainers { get; set; }
[JsonPropertyName("maxContainers")]
public int? MaxContainers { get; set; }
[JsonPropertyName("current")]
public int? Current { get; set; }
[JsonPropertyName("current")]
public int? Current { get; set; }
[JsonPropertyName("chosenCount")]
public int? ChosenCount { get; set; }
[JsonPropertyName("chosenCount")]
public int? ChosenCount { get; set; }
}
public class ContainerData
{
[JsonPropertyName("groupId")]
public string? GroupId { get; set; }
[JsonPropertyName("groupId")]
public string? GroupId { get; set; }
}
public class StaticLootDetails
{
[JsonPropertyName("itemcountDistribution")]
public ItemCountDistribution[] ItemCountDistribution { get; set; }
[JsonPropertyName("itemcountDistribution")]
public ItemCountDistribution[] ItemCountDistribution { get; set; }
[JsonPropertyName("itemDistribution")]
public ItemDistribution[] ItemDistribution { get; set; }
[JsonPropertyName("itemDistribution")]
public ItemDistribution[] ItemDistribution { get; set; }
}
public class ItemCountDistribution
{
[JsonPropertyName("count")]
public int? Count { get; set; }
[JsonPropertyName("count")]
public int? Count { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
}
public class ItemDistribution
{
[JsonPropertyName("tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
}
public class StaticPropsBase
{
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("IsContainer")]
public bool? IsContainer { get; set; }
[JsonPropertyName("IsContainer")]
public bool? IsContainer { get; set; }
[JsonPropertyName("useGravity")]
public bool? UseGravity { get; set; }
[JsonPropertyName("useGravity")]
public bool? UseGravity { get; set; }
[JsonPropertyName("randomRotation")]
public bool? RandomRotation { get; set; }
[JsonPropertyName("randomRotation")]
public bool? RandomRotation { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
[JsonPropertyName("IsGroupPosition")]
public bool? IsGroupPosition { get; set; }
[JsonPropertyName("IsGroupPosition")]
public bool? IsGroupPosition { get; set; }
[JsonPropertyName("IsAlwaysSpawn")]
public bool? IsAlwaysSpawn { get; set; }
[JsonPropertyName("IsAlwaysSpawn")]
public bool? IsAlwaysSpawn { get; set; }
[JsonPropertyName("GroupPositions")]
public GroupPosition[] GroupPositions { get; set; }
[JsonPropertyName("GroupPositions")]
public GroupPosition[] GroupPositions { get; set; }
[JsonPropertyName("Root")]
public string? Root { get; set; }
[JsonPropertyName("Root")]
public string? Root { get; set; }
[JsonPropertyName("Items")]
public Item[] Items { get; set; }
[JsonPropertyName("Items")]
public Item[] Items { get; set; }
}
public class StaticWeaponProps : StaticPropsBase
{
[JsonPropertyName("Items")]
public Item[] Items { get; set; }
[JsonPropertyName("Items")]
public Item[] Items { get; set; }
}
public class StaticContainerDetails
{
[JsonPropertyName("staticWeapons")]
public StaticWeaponProps[] StaticWeapons { get; set; }
[JsonPropertyName("staticWeapons")]
public StaticWeaponProps[] StaticWeapons { get; set; }
[JsonPropertyName("staticContainers")]
public StaticContainerData[] StaticContainers { get; set; }
[JsonPropertyName("staticContainers")]
public StaticContainerData[] StaticContainers { get; set; }
[JsonPropertyName("staticForced")]
public StaticForcedProps[] StaticForced { get; set; }
[JsonPropertyName("staticForced")]
public StaticForcedProps[] StaticForced { get; set; }
}
public class StaticContainerData
{
[JsonPropertyName("probability")]
public float? Probability { get; set; }
[JsonPropertyName("probability")]
public float? Probability { get; set; }
[JsonPropertyName("template")]
public StaticContainerProps? Template { get; set; }
[JsonPropertyName("template")]
public StaticContainerProps? Template { get; set; }
}
public class StaticAmmoDetails
{
[JsonPropertyName("tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
[JsonPropertyName("relativeProbability")]
public float? RelativeProbability { get; set; }
}
public class StaticForcedProps
{
[JsonPropertyName("containerId")]
public string? ContainerId { get; set; }
[JsonPropertyName("containerId")]
public string? ContainerId { get; set; }
[JsonPropertyName("itemTpl")]
public string? ItemTpl { get; set; }
[JsonPropertyName("itemTpl")]
public string? ItemTpl { get; set; }
}
public class StaticContainerProps : StaticPropsBase
{
[JsonPropertyName("Items")]
public StaticItem[] Items { get; set; }
[JsonPropertyName("Items")]
public StaticItem[] Items { get; set; }
}
public class StaticItem
{
[JsonPropertyName("_id")]
public string? Id { get; set; }
[JsonPropertyName("_id")]
public string? Id { get; set; }
[JsonPropertyName("_tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("_tpl")]
public string? Tpl { get; set; }
[JsonPropertyName("upd")]
public Upd? Upd { get; set; }
[JsonPropertyName("upd")]
public Upd? Upd { get; set; }
}
File diff suppressed because it is too large Load Diff
+60 -60
View File
@@ -5,114 +5,114 @@ namespace Core.Models.Eft.Common;
public class LooseLoot
{
[JsonPropertyName("spawnpointCount")]
public SpawnpointCount? SpawnpointCount { get; set; }
[JsonPropertyName("spawnpointCount")]
public SpawnpointCount? SpawnpointCount { get; set; }
[JsonPropertyName("spawnpointsForced")]
public List<SpawnpointsForced>? SpawnpointsForced { get; set; }
[JsonPropertyName("spawnpointsForced")]
public List<SpawnpointsForced>? SpawnpointsForced { get; set; }
[JsonPropertyName("spawnpoints")]
public List<Spawnpoint>? Spawnpoints { get; set; }
[JsonPropertyName("spawnpoints")]
public List<Spawnpoint>? Spawnpoints { get; set; }
}
public class SpawnpointCount
{
[JsonPropertyName("mean")]
public double? Mean { get; set; }
[JsonPropertyName("mean")]
public double? Mean { get; set; }
[JsonPropertyName("std")]
public double? Std { get; set; }
[JsonPropertyName("std")]
public double? Std { get; set; }
}
public class SpawnpointsForced
{
[JsonPropertyName("locationId")]
public string? LocationId { get; set; }
[JsonPropertyName("locationId")]
public string? LocationId { get; set; }
[JsonPropertyName("probability")]
public double? Probability { get; set; }
[JsonPropertyName("probability")]
public double? Probability { get; set; }
[JsonPropertyName("template")]
public SpawnpointTemplate? Template { get; set; }
[JsonPropertyName("template")]
public SpawnpointTemplate? Template { get; set; }
}
public class SpawnpointTemplate
{
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("IsContainer")]
public bool? IsContainer { get; set; }
[JsonPropertyName("IsContainer")]
public bool? IsContainer { get; set; }
[JsonPropertyName("useGravity")]
public bool? UseGravity { get; set; }
[JsonPropertyName("useGravity")]
public bool? UseGravity { get; set; }
[JsonPropertyName("randomRotation")]
public bool? RandomRotation { get; set; }
[JsonPropertyName("randomRotation")]
public bool? RandomRotation { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
[JsonPropertyName("IsAlwaysSpawn")]
public bool? IsAlwaysSpawn { get; set; }
[JsonPropertyName("IsAlwaysSpawn")]
public bool? IsAlwaysSpawn { get; set; }
[JsonPropertyName("IsGroupPosition")]
public bool? IsGroupPosition { get; set; }
[JsonPropertyName("IsGroupPosition")]
public bool? IsGroupPosition { get; set; }
[JsonPropertyName("GroupPositions")]
public List<GroupPosition>? GroupPositions { get; set; }
[JsonPropertyName("GroupPositions")]
public List<GroupPosition>? GroupPositions { get; set; }
[JsonPropertyName("Root")]
public string? Root { get; set; }
[JsonPropertyName("Root")]
public string? Root { get; set; }
[JsonPropertyName("Items")]
public List<Item>? Items { get; set; }
[JsonPropertyName("Items")]
public List<Item>? Items { get; set; }
}
public class GroupPosition
{
[JsonPropertyName("Name")]
public string? Name { get; set; }
[JsonPropertyName("Name")]
public string? Name { get; set; }
[JsonPropertyName("Weight")]
public double? Weight { get; set; }
[JsonPropertyName("Weight")]
public double? Weight { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Position")]
public XYZ? Position { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
[JsonPropertyName("Rotation")]
public XYZ? Rotation { get; set; }
}
public class Spawnpoint
{
[JsonPropertyName("locationId")]
public string? LocationId { get; set; }
[JsonPropertyName("locationId")]
public string? LocationId { get; set; }
[JsonPropertyName("probability")]
public double? Probability { get; set; }
[JsonPropertyName("probability")]
public double? Probability { get; set; }
[JsonPropertyName("template")]
public SpawnpointTemplate? Template { get; set; }
[JsonPropertyName("template")]
public SpawnpointTemplate? Template { get; set; }
[JsonPropertyName("itemDistribution")]
public List<LooseLootItemDistribution>? ItemDistribution { get; set; }
[JsonPropertyName("itemDistribution")]
public List<LooseLootItemDistribution>? ItemDistribution { get; set; }
}
public class LooseLootItemDistribution
{
[JsonPropertyName("composedKey")]
public ComposedKey? ComposedKey { get; set; }
[JsonPropertyName("composedKey")]
public ComposedKey? ComposedKey { get; set; }
[JsonPropertyName("relativeProbability")]
public double? RelativeProbability { get; set; }
[JsonPropertyName("relativeProbability")]
public double? RelativeProbability { get; set; }
}
public class ComposedKey
{
[JsonPropertyName("key")]
public string? Key { get; set; }
[JsonPropertyName("key")]
public string? Key { get; set; }
}
+7 -7
View File
@@ -9,16 +9,16 @@ public class PmcData : BotBase
public class PostRaidPmcData : BotBase
{
[JsonPropertyName("Stats")]
public PostRaidStats? Stats { get; set; }
[JsonPropertyName("Stats")]
public PostRaidStats? Stats { get; set; }
}
public class PostRaidStats
{
[JsonPropertyName("Eft")]
public EftStats? Eft { get; set; }
[JsonPropertyName("Eft")]
public EftStats? Eft { get; set; }
/** Only found in profile we get from client post raid */
[JsonPropertyName("Arena")]
public EftStats? Arena { get; set; }
/** Only found in profile we get from client post raid */
[JsonPropertyName("Arena")]
public EftStats? Arena { get; set; }
}
+1 -1
View File
@@ -2,7 +2,7 @@
namespace Core.Models.Eft.Common.Tables;
public class Achievement
public class Achievement
{
[JsonPropertyName("id")]
public string? Id { get; set; }
+5 -2
View File
@@ -209,7 +209,7 @@ public enum BanType
TRADING = 3,
ONLINE = 4,
FRIENDS = 5,
CHANGE_NICKNAME = 6,
CHANGE_NICKNAME = 6
}
public class Customization
@@ -302,8 +302,10 @@ public class Skills
{
[JsonConverter(typeof(ArrayToObjectFactoryConverter))]
public Dictionary<SkillTypes, Common> Common { get; set; }
[JsonConverter(typeof(ArrayToObjectFactoryConverter))]
public Dictionary<string, Mastering> Mastering { get; set; }
public double Points { get; set; }
}
@@ -419,6 +421,7 @@ public class DamageHistory
{
public string LethalDamagePart { get; set; }
public LethalDamage LethalDamage { get; set; }
[JsonConverter(typeof(ArrayToObjectFactoryConverter))]
public BodyPartsDamageHistory BodyParts { get; set; }
}
@@ -683,7 +686,7 @@ public enum SurvivorClass
NEUTRALIZER = 1,
MARAUDER = 2,
PARAMEDIC = 3,
SURVIVOR = 4,
SURVIVOR = 4
}
public class Quests
+131 -132
View File
@@ -2,399 +2,398 @@
namespace Core.Models.Eft.Common.Tables;
public class BotCore
{
[JsonPropertyName("SAVAGE_KILL_DIST")]
public double? SavageKillDistance { get; set; }
[JsonPropertyName("SOUND_DOOR_BREACH_METERS")]
public double? SoundDoorBreachMeters { get; set; }
[JsonPropertyName("SOUND_DOOR_OPEN_METERS")]
public double? SoundDoorOpenMeters { get; set; }
[JsonPropertyName("STEP_NOISE_DELTA")]
public double? StepNoiseDelta { get; set; }
[JsonPropertyName("JUMP_NOISE_DELTA")]
public double? JumpNoiseDelta { get; set; }
[JsonPropertyName("GUNSHOT_SPREAD")]
public double? GunshotSpread { get; set; }
[JsonPropertyName("GUNSHOT_SPREAD_SILENCE")]
public double? GunshotSpreadSilence { get; set; }
[JsonPropertyName("BASE_WALK_SPEREAD2")]
public double? BaseWalkSpread2 { get; set; }
[JsonPropertyName("MOVE_SPEED_COEF_MAX")]
public double? MoveSpeedCoefficientMax { get; set; }
[JsonPropertyName("SPEED_SERV_SOUND_COEF_A")]
public double? SpeedServiceSoundCoefficientA { get; set; }
[JsonPropertyName("SPEED_SERV_SOUND_COEF_B")]
public double? SpeedServiceSoundCoefficientB { get; set; }
[JsonPropertyName("G")]
public double? Gravity { get; set; }
[JsonPropertyName("STAY_COEF")]
public double? StayCoefficient { get; set; }
[JsonPropertyName("SIT_COEF")]
public double? SitCoefficient { get; set; }
[JsonPropertyName("LAY_COEF")]
public double? LayCoefficient { get; set; }
[JsonPropertyName("MAX_ITERATIONS")]
public double? MaxIterations { get; set; }
[JsonPropertyName("START_DIST_TO_COV")]
public double? StartDistanceToCover { get; set; }
[JsonPropertyName("MAX_DIST_TO_COV")]
public double? MaxDistanceToCover { get; set; }
[JsonPropertyName("STAY_HEIGHT")]
public double? StayHeight { get; set; }
[JsonPropertyName("CLOSE_POINTS")]
public double? ClosePoints { get; set; }
[JsonPropertyName("COUNT_TURNS")]
public double? CountTurns { get; set; }
[JsonPropertyName("SIMPLE_POINT_LIFE_TIME_SEC")]
public double? SimplePointLifetimeSeconds { get; set; }
[JsonPropertyName("DANGER_POINT_LIFE_TIME_SEC")]
public double? DangerPointLifetimeSeconds { get; set; }
[JsonPropertyName("DANGER_POWER")]
public double? DangerPower { get; set; }
[JsonPropertyName("COVER_DIST_CLOSE")]
public double? CoverDistanceClose { get; set; }
[JsonPropertyName("GOOD_DIST_TO_POINT")]
public double GoodDistanceToPoint { get; set; }
[JsonPropertyName("COVER_TOOFAR_FROM_BOSS")]
public double CoverTooFarFromBoss { get; set; }
[JsonPropertyName("COVER_TOOFAR_FROM_BOSS_SQRT")]
public double CoverTooFarFromBossSqrt { get; set; }
[JsonPropertyName("MAX_Y_DIFF_TO_PROTECT")]
public double MaxYDifferenceToProtect { get; set; }
[JsonPropertyName("FLARE_POWER")]
public double FlarePower { get; set; }
[JsonPropertyName("MOVE_COEF")]
public double MoveCoefficient { get; set; }
[JsonPropertyName("PRONE_POSE")]
public double PronePose { get; set; }
[JsonPropertyName("LOWER_POSE")]
public double LowerPose { get; set; }
[JsonPropertyName("MAX_POSE")]
public double MaxPose { get; set; }
[JsonPropertyName("FLARE_TIME")]
public double FlareTime { get; set; }
[JsonPropertyName("MAX_REQUESTS__PER_GROUP")]
public double MaxRequestsPerGroup { get; set; }
[JsonPropertyName("UPDATE_GOAL_TIMER_SEC")]
public double UpdateGoalTimerSeconds { get; set; }
[JsonPropertyName("DIST_NOT_TO_GROUP")]
public double DistanceNotToGroup { get; set; }
[JsonPropertyName("DIST_NOT_TO_GROUP_SQR")]
public double DistanceNotToGroupSquared { get; set; }
[JsonPropertyName("LAST_SEEN_POS_LIFETIME")]
public double LastSeenPositionLifetime { get; set; }
[JsonPropertyName("DELTA_GRENADE_START_TIME")]
public double DeltaGrenadeStartTime { get; set; }
[JsonPropertyName("DELTA_GRENADE_END_TIME")]
public double DeltaGrenadeEndTime { get; set; }
[JsonPropertyName("DELTA_GRENADE_RUN_DIST")]
public double DeltaGrenadeRunDistance { get; set; }
[JsonPropertyName("DELTA_GRENADE_RUN_DIST_SQRT")]
public double DeltaGrenadeRunDistanceSqrt { get; set; }
[JsonPropertyName("PATROL_MIN_LIGHT_DIST")]
public double PatrolMinimumLightDistance { get; set; }
[JsonPropertyName("HOLD_MIN_LIGHT_DIST")]
public double HoldMinimumLightDistance { get; set; }
[JsonPropertyName("STANDART_BOT_PAUSE_DOOR")]
public double StandardBotPauseDoor { get; set; }
[JsonPropertyName("ARMOR_CLASS_COEF")]
public double ArmorClassCoefficient { get; set; }
[JsonPropertyName("SHOTGUN_POWER")]
public double ShotgunPower { get; set; }
[JsonPropertyName("RIFLE_POWER")]
public double RiflePower { get; set; }
[JsonPropertyName("PISTOL_POWER")]
public double PistolPower { get; set; }
[JsonPropertyName("SMG_POWER")]
public double SMGPower { get; set; }
[JsonPropertyName("SNIPE_POWER")]
public double SniperPower { get; set; }
[JsonPropertyName("GESTUS_PERIOD_SEC")]
public double GestusPeriodSeconds { get; set; }
[JsonPropertyName("GESTUS_AIMING_DELAY")]
public double GestusAimingDelay { get; set; }
[JsonPropertyName("GESTUS_REQUEST_LIFETIME")]
public double GestusRequestLifetime { get; set; }
[JsonPropertyName("GESTUS_FIRST_STAGE_MAX_TIME")]
public double GestusFirstStageMaxTime { get; set; }
[JsonPropertyName("GESTUS_SECOND_STAGE_MAX_TIME")]
public double GestusSecondStageMaxTime { get; set; }
[JsonPropertyName("GESTUS_MAX_ANSWERS")]
public double GestusMaxAnswers { get; set; }
[JsonPropertyName("GESTUS_FUCK_TO_SHOOT")]
public double GestusFuckToShoot { get; set; }
[JsonPropertyName("GESTUS_DIST_ANSWERS")]
public double GestusDistanceAnswers { get; set; }
[JsonPropertyName("GESTUS_DIST_ANSWERS_SQRT")]
public double GestusDistanceAnswersSqrt { get; set; }
[JsonPropertyName("GESTUS_ANYWAY_CHANCE")]
public double GestusAnywayChance { get; set; }
[JsonPropertyName("TALK_DELAY")]
public double TalkDelay { get; set; }
[JsonPropertyName("CAN_SHOOT_TO_HEAD")]
public bool CanShootToHead { get; set; }
[JsonPropertyName("CAN_TILT")]
public bool CanTilt { get; set; }
[JsonPropertyName("TILT_CHANCE")]
public double TiltChance { get; set; }
[JsonPropertyName("MIN_BLOCK_DIST")]
public double MinimumBlockDistance { get; set; }
[JsonPropertyName("MIN_BLOCK_TIME")]
public double MinimumBlockTime { get; set; }
[JsonPropertyName("COVER_SECONDS_AFTER_LOSE_VISION")]
public double CoverSecondsAfterLoseVision { get; set; }
[JsonPropertyName("MIN_ARG_COEF")]
public double MinimumArgumentCoefficient { get; set; }
[JsonPropertyName("MAX_ARG_COEF")]
public double MaximumArgumentCoefficient { get; set; }
[JsonPropertyName("DEAD_AGR_DIST")]
public double DeadAgrDistance { get; set; }
[JsonPropertyName("MAX_DANGER_CARE_DIST_SQRT")]
public double MaxDangerCareDistanceSqrt { get; set; }
[JsonPropertyName("MAX_DANGER_CARE_DIST")]
public double MaxDangerCareDistance { get; set; }
[JsonPropertyName("MIN_MAX_PERSON_SEARCH")]
public double MinimumMaximumPersonSearch { get; set; }
[JsonPropertyName("PERCENT_PERSON_SEARCH")]
public double PercentPersonSearch { get; set; }
[JsonPropertyName("LOOK_ANYSIDE_BY_WALL_SEC_OF_ENEMY")]
public double LookAnySideByWallSecondsOfEnemy { get; set; }
[JsonPropertyName("CLOSE_TO_WALL_ROTATE_BY_WALL_SQRT")]
public double CloseToWallRotateByWallSqrt { get; set; }
[JsonPropertyName("SHOOT_TO_CHANGE_RND_PART_MIN")]
public double ShootToChangeRandomPartMinimum { get; set; }
[JsonPropertyName("SHOOT_TO_CHANGE_RND_PART_MAX")]
public double ShootToChangeRandomPartMaximum { get; set; }
[JsonPropertyName("SHOOT_TO_CHANGE_RND_PART_DELTA")]
public double ShootToChangeRandomPartDelta { get; set; }
[JsonPropertyName("FORMUL_COEF_DELTA_DIST")]
public double FormulaCoefficientDeltaDistance { get; set; }
[JsonPropertyName("FORMUL_COEF_DELTA_SHOOT")]
public double FormulaCoefficientDeltaShoot { get; set; }
[JsonPropertyName("FORMUL_COEF_DELTA_FRIEND_COVER")]
public double FormulaCoefficientDeltaFriendCover { get; set; }
[JsonPropertyName("SUSPETION_POINT_DIST_CHECK")]
public double SuspicionPointDistanceCheck { get; set; }
[JsonPropertyName("MAX_BASE_REQUESTS_PER_PLAYER")]
public double MaxBaseRequestsPerPlayer { get; set; }
[JsonPropertyName("MAX_HOLD_REQUESTS_PER_PLAYER")]
public double MaxHoldRequestsPerPlayer { get; set; }
[JsonPropertyName("MAX_GO_TO_REQUESTS_PER_PLAYER")]
public double MaxGoToRequestsPerPlayer { get; set; }
[JsonPropertyName("MAX_COME_WITH_ME_REQUESTS_PER_PLAYER")]
public double MaxComeWithMeRequestsPerPlayer { get; set; }
[JsonPropertyName("CORE_POINT_MAX_VALUE")]
public double CorePointMaxValue { get; set; }
[JsonPropertyName("CORE_POINTS_MAX")]
public double CorePointsMax { get; set; }
[JsonPropertyName("CORE_POINTS_MIN")]
public double CorePointsMin { get; set; }
[JsonPropertyName("BORN_POISTS_FREE_ONLY_FAREST_BOT")]
public bool BornPointsFreeOnlyFarthestBot { get; set; }
[JsonPropertyName("BORN_POINSTS_FREE_ONLY_FAREST_PLAYER")]
public bool BornPointsFreeOnlyFarthestPlayer { get; set; }
[JsonPropertyName("SCAV_GROUPS_TOGETHER")]
public bool ScavGroupsTogether { get; set; }
[JsonPropertyName("LAY_DOWN_ANG_SHOOT")]
public double LayDownAngleShoot { get; set; }
[JsonPropertyName("HOLD_REQUEST_TIME_SEC")]
public double HoldRequestTimeSeconds { get; set; }
[JsonPropertyName("TRIGGERS_DOWN_TO_RUN_WHEN_MOVE")]
public double TriggersDownToRunWhenMove { get; set; }
[JsonPropertyName("MIN_DIST_TO_RUN_WHILE_ATTACK_MOVING")]
public double MinimumDistanceToRunWhileAttackingMoving { get; set; }
[JsonPropertyName("MIN_DIST_TO_RUN_WHILE_ATTACK_MOVING_OTHER_ENEMIS")]
public double MinimumDistanceToRunWhileAttackingMovingOtherEnemies { get; set; }
[JsonPropertyName("MIN_DIST_TO_STOP_RUN")]
public double MinimumDistanceToStopRunning { get; set; }
[JsonPropertyName("JUMP_SPREAD_DIST")]
public double JumpSpreadDistance { get; set; }
[JsonPropertyName("LOOK_TIMES_TO_KILL")]
public double LookTimesToKill { get; set; }
[JsonPropertyName("COME_INSIDE_TIMES")]
public double ComeInsideTimes { get; set; }
[JsonPropertyName("TOTAL_TIME_KILL")]
public double TotalTimeKill { get; set; }
[JsonPropertyName("TOTAL_TIME_KILL_AFTER_WARN")]
public double TotalTimeKillAfterWarning { get; set; }
[JsonPropertyName("MOVING_AIM_COEF")]
public double MovingAimCoefficient { get; set; }
[JsonPropertyName("VERTICAL_DIST_TO_IGNORE_SOUND")]
public double VerticalDistanceToIgnoreSound { get; set; }
[JsonPropertyName("DEFENCE_LEVEL_SHIFT")]
public double DefenseLevelShift { get; set; }
[JsonPropertyName("MIN_DIST_CLOSE_DEF")]
public double MinimumDistanceCloseDefense { get; set; }
[JsonPropertyName("USE_ID_PRIOR_WHO_GO")]
public bool UseIdPriorWhoGoes { get; set; }
[JsonPropertyName("SMOKE_GRENADE_RADIUS_COEF")]
public double SmokeGrenadeRadiusCoefficient { get; set; }
[JsonPropertyName("GRENADE_PRECISION")]
public double GrenadePrecision { get; set; }
[JsonPropertyName("MAX_WARNS_BEFORE_KILL")]
public double MaxWarningsBeforeKill { get; set; }
[JsonPropertyName("CARE_ENEMY_ONLY_TIME")]
public double CareEnemyOnlyTime { get; set; }
[JsonPropertyName("MIDDLE_POINT_COEF")]
public double MiddlePointCoefficient { get; set; }
[JsonPropertyName("MAIN_TACTIC_ONLY_ATTACK")]
public bool MainTacticOnlyAttack { get; set; }
[JsonPropertyName("LAST_DAMAGE_ACTIVE")]
public double LastDamageActive { get; set; }
[JsonPropertyName("SHALL_DIE_IF_NOT_INITED")]
public bool ShallDieIfNotInitialized { get; set; }
[JsonPropertyName("CHECK_BOT_INIT_TIME_SEC")]
public double CheckBotInitializationTimeSeconds { get; set; }
[JsonPropertyName("WEAPON_ROOT_Y_OFFSET")]
public double WeaponRootYOffset { get; set; }
[JsonPropertyName("DELTA_SUPRESS_DISTANCE_SQRT")]
public double DeltaSuppressDistanceSqrt { get; set; }
[JsonPropertyName("DELTA_SUPRESS_DISTANCE")]
public double DeltaSuppressDistance { get; set; }
[JsonPropertyName("WAVE_COEF_LOW")]
public double WaveCoefficientLow { get; set; }
[JsonPropertyName("WAVE_COEF_MID")]
public double WaveCoefficientMid { get; set; }
[JsonPropertyName("WAVE_COEF_HIGH")]
public double WaveCoefficientHigh { get; set; }
[JsonPropertyName("WAVE_COEF_HORDE")]
public double WaveCoefficientHorde { get; set; }
[JsonPropertyName("WAVE_ONLY_AS_ONLINE")]
public bool WaveOnlyAsOnline { get; set; }
[JsonPropertyName("LOCAL_BOTS_COUNT")]
public double LocalBotsCount { get; set; }
[JsonPropertyName("AXE_MAN_KILLS_END")]
public double AxeManKillsEnd { get; set; }
}
}
+22 -19
View File
@@ -68,7 +68,7 @@ public class Chances
[JsonPropertyName("equipmentMods")]
public Dictionary<string, double>? EquipmentModsChances { get; set; }
[JsonPropertyName("mods")]
public Dictionary<string, double>? Mods { get; set; }
}
@@ -126,19 +126,19 @@ public class ModsChances
{
[JsonPropertyName("mod_charge")]
public double ModCharge { get; set; }
[JsonPropertyName("mod_bipod")]
public double ModBipod { get; set; }
[JsonPropertyName("mod_barrel")]
public double ModBarrel { get; set; }
[JsonPropertyName("mod_catch")]
public double ModCatch { get; set; }
[JsonPropertyName("mod_gas_block")]
public double ModGasBlock { get; set; }
[JsonPropertyName("mod_hammer")]
public double ModHammer { get; set; }
@@ -240,43 +240,43 @@ public class ModsChances
[JsonPropertyName("mod_handguard")]
public double ModHandguard { get; set; }
[JsonPropertyName("back_plate")]
public double BackPlate { get; set; }
[JsonPropertyName("front_plate")]
public double FrontPlate { get; set; }
[JsonPropertyName("left_side_plate")]
public double LeftSidePlate { get; set; }
[JsonPropertyName("right_side_plate")]
public double RightSidePlate { get; set; }
[JsonPropertyName("mod_mount_002")]
public double ModMount002 { get; set; }
[JsonPropertyName("mod_mount_003")]
public double ModMount003 { get; set; }
[JsonPropertyName("mod_mount_004")]
public double ModMount004 { get; set; }
[JsonPropertyName("mod_mount_005")]
public double ModMount005 { get; set; }
[JsonPropertyName("mod_mount_006")]
public double ModMount006 { get; set; }
[JsonPropertyName("mod_muzzle_000")]
public double ModMuzzle000 { get; set; }
[JsonPropertyName("mod_muzzle_001")]
public double ModMuzzle001 { get; set; }
[JsonPropertyName("mod_pistol_grip_akms")]
public double ModPistolGripAkms { get; set; }
[JsonPropertyName("mod_pistolgrip")]
public double ModPistol_Grip { get; set; }
}
@@ -286,10 +286,13 @@ public class Difficulties
{
[JsonPropertyName("easy")]
public DifficultyCategories? Easy { get; set; }
[JsonPropertyName("normal")]
public DifficultyCategories? Normal { get; set; }
[JsonPropertyName("hard")]
public DifficultyCategories? Hard { get; set; }
[JsonPropertyName("impossible")]
public DifficultyCategories? Impossible { get; set; }
}
@@ -6,10 +6,10 @@ public class CustomisationStorage
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("source")]
public string? Source { get; set; }
[JsonPropertyName("type")]
public string? Type { get; set; }
}
@@ -6,7 +6,7 @@ public class HandbookBase
{
[JsonPropertyName("Categories")]
public List<HandbookCategory>? Categories { get; set; }
[JsonPropertyName("Items")]
public List<HandbookItem>? Items { get; set; }
}
@@ -15,16 +15,16 @@ public class HandbookCategory
{
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("ParentId")]
public string? ParentId { get; set; }
[JsonPropertyName("Icon")]
public string? Icon { get; set; }
[JsonPropertyName("Color")]
public string? Color { get; set; }
[JsonPropertyName("Order")]
public string? Order { get; set; }
}
@@ -33,10 +33,10 @@ public class HandbookItem
{
[JsonPropertyName("Id")]
public string? Id { get; set; }
[JsonPropertyName("ParentId")]
public string? ParentId { get; set; }
[JsonPropertyName("Price")]
public decimal? Price { get; set; }
}
+18 -10
View File
@@ -2,19 +2,23 @@
namespace Core.Models.Eft.Common.Tables;
public class Item
{
[JsonPropertyName("_id")]
public string? Id { get; set; }
[JsonPropertyName("_tpl")]
public string? Template { get; set; }
[JsonPropertyName("parentId")]
public string? ParentId { get; set; }
[JsonPropertyName("slotId")]
public string? SlotId { get; set; }
[JsonPropertyName("location")]
public object? Location { get; set; } // TODO: Can be IItemLocation or number
[JsonPropertyName("upd")]
public Upd? Update { get; set; }
}
@@ -25,6 +29,7 @@ public class ItemLocation
public float? Y { get; set; }
public object? R { get; set; } // TODO: Can be string or number
public bool? IsSearched { get; set; }
/** SPT property? */
public object? Rotation { get; set; } // TODO: Can be string or boolean
}
@@ -36,9 +41,11 @@ public class Upd
public UpdTogglable? Togglable { get; set; }
public UpdMap? Map { get; set; }
public UpdTag? Tag { get; set; }
/** SPT specific property, not made by BSG */
[JsonPropertyName("sptPresetId")]
public string? SptPresetId { get; set; }
public UpdFaceShield? FaceShield { get; set; }
public double? StackObjectsCount { get; set; }
public bool? UnlimitedCount { get; set; }
@@ -62,7 +69,8 @@ public class Upd
public PinLockState? PinLockState { get; set; }
}
public enum PinLockState {
public enum PinLockState
{
Free,
Locked,
Pinned
@@ -72,13 +80,13 @@ public class UpdBuff
{
[JsonPropertyName("Rarity")]
public string? Rarity { get; set; }
[JsonPropertyName("BuffType")]
public string? BuffType { get; set; }
[JsonPropertyName("Value")]
public int? Value { get; set; }
[JsonPropertyName("ThresholdDurability")]
public int? ThresholdDurability { get; set; }
}
@@ -99,7 +107,7 @@ public class MapMarker
{
[JsonPropertyName("X")]
public int? X { get; set; }
[JsonPropertyName("Y")]
public int? Y { get; set; }
}
@@ -108,7 +116,7 @@ public class UpdTag
{
[JsonPropertyName("Color")]
public int? Color { get; set; }
[JsonPropertyName("Name")]
public string? Name { get; set; }
}
@@ -123,7 +131,7 @@ public class UpdRepairable
{
[JsonPropertyName("Durability")]
public int? Durability { get; set; }
[JsonPropertyName("MaxDurability")]
public int? MaxDurability { get; set; }
}
@@ -144,10 +152,10 @@ public class UpdSight
{
[JsonPropertyName("ScopesCurrentCalibPointIndexes")]
public List<int>? ScopesCurrentCalibPointIndexes { get; set; }
[JsonPropertyName("ScopesSelectedModes")]
public List<int>? ScopesSelectedModes { get; set; }
[JsonPropertyName("SelectedScope")]
public int? SelectedScope { get; set; }
}
@@ -23,6 +23,6 @@ public class Path
[JsonPropertyName("Destination")]
public string? Destination { get; set; }
public bool? Event { get; set; }
}
-1
View File
@@ -2,7 +2,6 @@ using System.Text.Json.Serialization;
namespace Core.Models.Eft.Common.Tables;
public class Match
{
[JsonPropertyName("metrics")]
+10 -10
View File
@@ -12,19 +12,19 @@ public class PretigeElement
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("conditions")]
public List<QuestCondition>? Conditions { get; set; }
[JsonPropertyName("rewards")]
public List<QuestReward>? Rewards { get; set; }
[JsonPropertyName("transferConfigs")]
public TransferConfigs? TransferConfigs { get; set; }
[JsonPropertyName("image")]
public string? Image { get; set; }
[JsonPropertyName("bigImage")]
public string? BigImage { get; set; }
}
@@ -33,10 +33,10 @@ public class TransferConfigs
{
[JsonPropertyName("stashConfig")]
public StashPrestigeConfig? StashConfig { get; set; }
[JsonPropertyName("skillConfig")]
public PrestigeSkillConfig? SkillConfig { get; set; }
[JsonPropertyName("masteringConfig")]
public PrestigeMasteringConfig? MasteringConfig { get; set; }
}
@@ -45,10 +45,10 @@ public class StashPrestigeConfig
{
[JsonPropertyName("xCellCount")]
public int? XCellCount { get; set; }
[JsonPropertyName("yCellCount")]
public int? YCellCount { get; set; }
[JsonPropertyName("filters")]
public StashPrestigeFilters? Filters { get; set; }
}
@@ -57,7 +57,7 @@ public class StashPrestigeFilters
{
[JsonPropertyName("includedItems")]
public List<string>? IncludedItems { get; set; }
[JsonPropertyName("excludedItems")]
public List<string>? ExcludedItems { get; set; }
}
+90 -90
View File
@@ -10,106 +10,106 @@ public class Quest
/// </summary>
[JsonPropertyName("QuestName")]
public string? QuestName { get; set; }
[JsonPropertyName("_id")]
public string? Id { get; set; }
[JsonPropertyName("canShowNotificationsInGame")]
public bool? CanShowNotificationsInGame { get; set; }
[JsonPropertyName("conditions")]
public QuestConditionTypes? Conditions { get; set; }
[JsonPropertyName("description")]
public string? Description { get; set; }
[JsonPropertyName("failMessageText")]
public string? FailMessageText { get; set; }
[JsonPropertyName("name")]
public string? Name { get; set; }
[JsonPropertyName("note")]
public string? Note { get; set; }
[JsonPropertyName("traderId")]
public string? TraderId { get; set; }
[JsonPropertyName("location")]
public string? Location { get; set; }
[JsonPropertyName("image")]
public string? Image { get; set; }
[JsonPropertyName("type")]
public QuestTypeEnum? Type { get; set; }
[JsonPropertyName("isKey")]
public bool? IsKey { get; set; }
[JsonPropertyName("restartable")]
public bool? Restartable { get; set; }
[JsonPropertyName("instantComplete")]
public bool? InstantComplete { get; set; }
[JsonPropertyName("secretQuest")]
public bool? SecretQuest { get; set; }
[JsonPropertyName("startedMessageText")]
public string? StartedMessageText { get; set; }
[JsonPropertyName("successMessageText")]
public string? SuccessMessageText { get; set; }
[JsonPropertyName("acceptPlayerMessage")]
public string? AcceptPlayerMessage { get; set; }
[JsonPropertyName("declinePlayerMessage")]
public string? DeclinePlayerMessage { get; set; }
[JsonPropertyName("completePlayerMessage")]
public string? CompletePlayerMessage { get; set; }
[JsonPropertyName("templateId")]
public string? TemplateId { get; set; }
[JsonPropertyName("rewards")]
public QuestRewards? Rewards { get; set; }
/// <summary>
/// Becomes 'AppearStatus' inside client
/// </summary>
[JsonPropertyName("status")]
public object? Status { get; set; } // TODO: string | number
[JsonPropertyName("KeyQuest")]
public bool? KeyQuest { get; set; }
[JsonPropertyName("changeQuestMessageText")]
public string? ChangeQuestMessageText { get; set; }
/// <summary>
/// "Pmc" or "Scav"
/// </summary>
[JsonPropertyName("side")]
public string? Side { get; set; }
[JsonPropertyName("acceptanceAndFinishingSource")]
public string? AcceptanceAndFinishingSource { get; set; }
[JsonPropertyName("progressSource")]
public string? ProgressSource { get; set; }
[JsonPropertyName("rankingModes")]
public List<string>? RankingModes { get; set; }
[JsonPropertyName("gameModes")]
public List<string>? GameModes { get; set; }
[JsonPropertyName("arenaLocations")]
public List<string>? ArenaLocations { get; set; }
/// <summary>
/// Status of quest to player
/// </summary>
@@ -121,16 +121,16 @@ public class QuestConditionTypes
{
[JsonPropertyName("Started")]
public List<QuestCondition>? Started { get; set; }
[JsonPropertyName("AvailableForFinish")]
public List<QuestCondition>? AvailableForFinish { get; set; }
[JsonPropertyName("AvailableForStart")]
public List<QuestCondition>? AvailableForStart { get; set; }
[JsonPropertyName("Success")]
public List<QuestCondition>? Success { get; set; }
[JsonPropertyName("Fail")]
public List<QuestCondition>? Fail { get; set; }
}
@@ -139,91 +139,91 @@ public class QuestCondition
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("index")]
public int? Index { get; set; }
[JsonPropertyName("compareMethod")]
public string? CompareMethod { get; set; }
[JsonPropertyName("dynamicLocale")]
public bool? DynamicLocale { get; set; }
[JsonPropertyName("visibilityConditions")]
public List<VisibilityCondition>? VisibilityConditions { get; set; }
[JsonPropertyName("globalQuestCounterId")]
public string? GlobalQuestCounterId { get; set; }
[JsonPropertyName("parentId")]
public string? ParentId { get; set; }
[JsonPropertyName("target")]
public object? Target { get; set; } // TODO: string[] | string
[JsonPropertyName("value")]
public object? Value { get; set; } // TODO: string | number
[JsonPropertyName("type")]
public object? Type { get; set; } // TODO: boolean | string
[JsonPropertyName("status")]
public List<QuestStatus>? Status { get; set; }
[JsonPropertyName("availableAfter")]
public int? AvailableAfter { get; set; }
[JsonPropertyName("dispersion")]
public double? Dispersion { get; set; }
[JsonPropertyName("onlyFoundInRaid")]
public bool? OnlyFoundInRaid { get; set; }
[JsonPropertyName("oneSessionOnly")]
public bool? OneSessionOnly { get; set; }
[JsonPropertyName("isResetOnConditionFailed")]
public bool? IsResetOnConditionFailed { get; set; }
[JsonPropertyName("isNecessary")]
public bool? IsNecessary { get; set; }
[JsonPropertyName("doNotResetIfCounterCompleted")]
public bool? DoNotResetIfCounterCompleted { get; set; }
[JsonPropertyName("dogtagLevel")]
public object? DogtagLevel { get; set; } // TODO: number | string
[JsonPropertyName("traderId")]
public string? TraderId { get; set; }
[JsonPropertyName("maxDurability")]
public object? MaxDurability { get; set; } // TODO: number | string
[JsonPropertyName("minDurability")]
public object? MinDurability { get; set; } // TODO: number | string
[JsonPropertyName("counter")]
public QuestConditionCounter? Counter { get; set; }
[JsonPropertyName("plantTime")]
public int? PlantTime { get; set; }
[JsonPropertyName("zoneId")]
public string? ZoneId { get; set; }
[JsonPropertyName("countInRaid")]
public bool? CountInRaid { get; set; }
[JsonPropertyName("completeInSeconds")]
public int? CompleteInSeconds { get; set; }
[JsonPropertyName("isEncoded")]
public bool? IsEncoded { get; set; }
[JsonPropertyName("conditionType")]
public string? ConditionType { get; set; }
[JsonPropertyName("areaType")]
public HideoutAreas? AreaType { get; set; }
}
@@ -232,7 +232,7 @@ public class QuestConditionCounter
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("conditions")]
public List<QuestConditionCounterCondition>? Conditions { get; set; }
}
@@ -241,76 +241,76 @@ public class QuestConditionCounterCondition
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("dynamicLocale")]
public bool? DynamicLocale { get; set; }
[JsonPropertyName("target")]
public object? Target { get; set; } // TODO: string[] | string
[JsonPropertyName("completeInSeconds")]
public int? CompleteInSeconds { get; set; }
[JsonPropertyName("energy")]
public ValueCompare? Energy { get; set; }
[JsonPropertyName("exitName")]
public string? ExitName { get; set; }
[JsonPropertyName("hydration")]
public ValueCompare? Hydration { get; set; }
[JsonPropertyName("time")]
public ValueCompare? Time { get; set; }
[JsonPropertyName("compareMethod")]
public string? CompareMethod { get; set; }
[JsonPropertyName("value")]
public object? Value { get; set; } // TODO: number | string
[JsonPropertyName("weapon")]
public List<string>? Weapon { get; set; }
[JsonPropertyName("distance")]
public CounterConditionDistance? Distance { get; set; }
[JsonPropertyName("equipmentInclusive")]
public List<List<string>>? EquipmentInclusive { get; set; }
[JsonPropertyName("weaponModsInclusive")]
public List<List<string>>? WeaponModsInclusive { get; set; }
[JsonPropertyName("weaponModsExclusive")]
public List<List<string>>? WeaponModsExclusive { get; set; }
[JsonPropertyName("enemyEquipmentInclusive")]
public List<List<string>>? EnemyEquipmentInclusive { get; set; }
[JsonPropertyName("enemyEquipmentExclusive")]
public List<List<string>>? EnemyEquipmentExclusive { get; set; }
[JsonPropertyName("weaponCaliber")]
public List<string>? WeaponCaliber { get; set; }
[JsonPropertyName("savageRole")]
public List<string>? SavageRole { get; set; }
[JsonPropertyName("status")]
public List<string>? Status { get; set; }
[JsonPropertyName("bodyPart")]
public List<string>? BodyPart { get; set; }
[JsonPropertyName("daytime")]
public DaytimeCounter? Daytime { get; set; }
[JsonPropertyName("conditionType")]
public string? ConditionType { get; set; }
[JsonPropertyName("enemyHealthEffects")]
public List<EnemyHealthEffect>? EnemyHealthEffects { get; set; }
[JsonPropertyName("resetOnSessionEnd")]
public bool? ResetOnSessionEnd { get; set; }
}
@@ -6,28 +6,28 @@ public class RepeatableQuest : Quest
{
[JsonPropertyName("changeCost")]
public List<ChangeCost?>? ChangeCost { get; set; }
[JsonPropertyName("changeStandingCost")]
public int? ChangeStandingCost { get; set; }
[JsonPropertyName("sptRepatableGroupName")]
public string? SptRepatableGroupName { get; set; }
[JsonPropertyName("acceptanceAndFinishingSource")]
public string? AcceptanceAndFinishingSource { get; set; }
[JsonPropertyName("progressSource")]
public string? ProgressSource { get; set; }
[JsonPropertyName("rankingModes")]
public List<string?>? RankingModes { get; set; }
[JsonPropertyName("gameModes")]
public List<string>? GameModes { get; set; }
[JsonPropertyName("arenaLocations")]
public List<string>? ArenaLocations { get; set; }
[JsonPropertyName("questStatus")]
public RepeatableQuestStatus? QuestStatus { get; set; }
}
@@ -36,13 +36,13 @@ public class RepeatableQuestDatabase
{
[JsonPropertyName("templates")]
public RepeatableTemplates? Templates { get; set; }
[JsonPropertyName("rewards")]
public RewardOptions? Rewards { get; set; }
[JsonPropertyName("data")]
public Options? Data { get; set; }
[JsonPropertyName("samples")]
public List<SampleQuests?>? Samples { get; set; }
}
@@ -51,19 +51,19 @@ public class RepeatableQuestStatus
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("uid")]
public string? Uid { get; set; }
[JsonPropertyName("qid")]
public string? Qid { get; set; }
[JsonPropertyName("startTime")]
public long? StartTime { get; set; }
[JsonPropertyName("status")]
public int? Status { get; set; }
[JsonPropertyName("statusTimers")]
public object? StatusTimers { get; set; } // Use object for any type
}
@@ -72,10 +72,10 @@ public class RepeatableTemplates
{
[JsonPropertyName("Elimination")]
public Quest? Elimination { get; set; }
[JsonPropertyName("Completion")]
public Quest? Completion { get; set; }
[JsonPropertyName("Exploration")]
public Quest? Exploration { get; set; }
}
@@ -84,28 +84,28 @@ public class PmcDataRepeatableQuest
{
[JsonPropertyName("id")]
public string? Id { get; set; }
[JsonPropertyName("name")]
public string? Name { get; set; }
[JsonPropertyName("unavailableTime")]
public string? UnavailableTime { get; set; }
[JsonPropertyName("activeQuests")]
public List<RepeatableQuest?>? ActiveQuests { get; set; }
[JsonPropertyName("inactiveQuests")]
public List<RepeatableQuest>? InactiveQuests { get; set; }
[JsonPropertyName("endTime")]
public long? EndTime { get; set; }
[JsonPropertyName("changeRequirement")]
public Dictionary<string?, ChangeRequirement?>? ChangeRequirement { get; set; }
[JsonPropertyName("freeChanges")]
public int? FreeChanges { get; set; }
[JsonPropertyName("freeChangesAvailable")]
public int? FreeChangesAvailable { get; set; }
}
@@ -114,7 +114,7 @@ public class ChangeRequirement
{
[JsonPropertyName("changeCost")]
public List<ChangeCost?>? ChangeCost { get; set; }
[JsonPropertyName("changeStandingCost")]
public int? ChangeStandingCost { get; set; }
}
@@ -123,7 +123,7 @@ public class ChangeCost
{
[JsonPropertyName("templateId")]
public string? TemplateId { get; set; }
[JsonPropertyName("count")]
public int? Count { get; set; }
}
@@ -146,7 +146,7 @@ public class CompletionFilter
{
[JsonPropertyName("itemsBlacklist")]
public List<ItemsBlacklist>? ItemsBlacklist { get; set; }
[JsonPropertyName("itemsWhitelist")]
public List<ItemsWhitelist>? ItemsWhitelist { get; set; }
}
@@ -155,7 +155,7 @@ public class ItemsBlacklist
{
[JsonPropertyName("minPlayerLevel")]
public int? MinPlayerLevel { get; set; }
[JsonPropertyName("itemIds")]
public List<string>? ItemIds { get; set; }
}
@@ -164,7 +164,7 @@ public class ItemsWhitelist
{
[JsonPropertyName("minPlayerLevel")]
public int? MinPlayerLevel { get; set; }
[JsonPropertyName("itemIds")]
public List<string>? ItemIds { get; set; }
}
@@ -173,58 +173,58 @@ public class SampleQuests
{
[JsonPropertyName("_id")]
public string? Id { get; set; }
[JsonPropertyName("traderId")]
public string? TraderId { get; set; }
[JsonPropertyName("location")]
public string? Location { get; set; }
[JsonPropertyName("image")]
public string? Image { get; set; }
[JsonPropertyName("type")]
public string? Type { get; set; }
[JsonPropertyName("isKey")]
public bool? IsKey { get; set; }
[JsonPropertyName("restartable")]
public bool? Restartable { get; set; }
[JsonPropertyName("instantComplete")]
public bool? InstantComplete { get; set; }
[JsonPropertyName("secretQuest")]
public bool? SecretQuest { get; set; }
[JsonPropertyName("canShowNotificationsInGame")]
public bool? CanShowNotificationsInGame { get; set; }
[JsonPropertyName("rewards")]
public QuestRewards? Rewards { get; set; }
[JsonPropertyName("conditions")]
public QuestConditionTypes? Conditions { get; set; }
[JsonPropertyName("name")]
public string? Name { get; set; }
[JsonPropertyName("note")]
public string? Note { get; set; }
[JsonPropertyName("description")]
public string? Description { get; set; }
[JsonPropertyName("successMessageText")]
public string? SuccessMessageText { get; set; }
[JsonPropertyName("failMessageText")]
public string? FailMessageText { get; set; }
[JsonPropertyName("startedMessageText")]
public string? StartedMessageText { get; set; }
[JsonPropertyName("templateId")]
public string? TemplateId { get; set; }
}

Some files were not shown because too many files have changed in this diff Show More