diff --git a/Libraries/Core/Models/Eft/Hideout/HandleQTEEventRequestData.cs b/Libraries/Core/Models/Eft/Hideout/HandleQTEEventRequestData.cs index 1c0adafc..55844e08 100644 --- a/Libraries/Core/Models/Eft/Hideout/HandleQTEEventRequestData.cs +++ b/Libraries/Core/Models/Eft/Hideout/HandleQTEEventRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Hideout; -public record HandleQTEEventRequestData +public record HandleQTEEventRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - /** true if QTE was successful, otherwise false */ [JsonPropertyName("results")] public List? Results { get; set; } diff --git a/Libraries/Core/Models/Eft/Inventory/InventoryExamineRequestData.cs b/Libraries/Core/Models/Eft/Inventory/InventoryExamineRequestData.cs index 385cf403..3c549e2b 100644 --- a/Libraries/Core/Models/Eft/Inventory/InventoryExamineRequestData.cs +++ b/Libraries/Core/Models/Eft/Inventory/InventoryExamineRequestData.cs @@ -7,7 +7,4 @@ public record InventoryExamineRequestData : InventoryBaseActionRequestData { [JsonPropertyName("item")] public string? Item { get; set; } - - [JsonPropertyName("fromOwner")] - public OwnerInfo? FromOwner { get; set; } } diff --git a/Libraries/Core/Models/Eft/Quests/AcceptQuestRequestData.cs b/Libraries/Core/Models/Eft/Quests/AcceptQuestRequestData.cs index 294bc323..8ec0e0a0 100644 --- a/Libraries/Core/Models/Eft/Quests/AcceptQuestRequestData.cs +++ b/Libraries/Core/Models/Eft/Quests/AcceptQuestRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Quests; -public record AcceptQuestRequestData +public record AcceptQuestRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "QuestAccept"; - [JsonPropertyName("qid")] public string? QuestId { get; set; } diff --git a/Libraries/Core/Models/Eft/Quests/CompleteQuestRequestData.cs b/Libraries/Core/Models/Eft/Quests/CompleteQuestRequestData.cs index 041de453..eaa90d6e 100644 --- a/Libraries/Core/Models/Eft/Quests/CompleteQuestRequestData.cs +++ b/Libraries/Core/Models/Eft/Quests/CompleteQuestRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Quests; -public record CompleteQuestRequestData +public record CompleteQuestRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - /** Quest Id */ [JsonPropertyName("qid")] public string? QuestId { get; set; } diff --git a/Libraries/Core/Models/Eft/Quests/FailQuestRequestData.cs b/Libraries/Core/Models/Eft/Quests/FailQuestRequestData.cs index 42a1919c..16f23f2b 100644 --- a/Libraries/Core/Models/Eft/Quests/FailQuestRequestData.cs +++ b/Libraries/Core/Models/Eft/Quests/FailQuestRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Quests; -public record FailQuestRequestData +public record FailQuestRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "QuestFail"; - [JsonPropertyName("qid")] public string? QuestId { get; set; } diff --git a/Libraries/Core/Models/Eft/Quests/HandoverQuestRequestData.cs b/Libraries/Core/Models/Eft/Quests/HandoverQuestRequestData.cs index 353855c9..eef9be4f 100644 --- a/Libraries/Core/Models/Eft/Quests/HandoverQuestRequestData.cs +++ b/Libraries/Core/Models/Eft/Quests/HandoverQuestRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Quests; -public record HandoverQuestRequestData +public record HandoverQuestRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "QuestHandover"; - [JsonPropertyName("qid")] public string? QuestId { get; set; } diff --git a/Libraries/Core/Models/Eft/Quests/RepeatableQuestChangeEvent.cs b/Libraries/Core/Models/Eft/Quests/RepeatableQuestChangeEvent.cs index 10135f2d..553d542b 100644 --- a/Libraries/Core/Models/Eft/Quests/RepeatableQuestChangeEvent.cs +++ b/Libraries/Core/Models/Eft/Quests/RepeatableQuestChangeEvent.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Quests; -public record RepeatableQuestChangeRequest +public record RepeatableQuestChangeRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "RepeatableQuestChange"; - [JsonPropertyName("qid")] public string? QuestId { get; set; } } diff --git a/Libraries/Core/Models/Eft/Ragfair/AddOfferRequestData.cs b/Libraries/Core/Models/Eft/Ragfair/AddOfferRequestData.cs index 9f995521..67cd02a1 100644 --- a/Libraries/Core/Models/Eft/Ragfair/AddOfferRequestData.cs +++ b/Libraries/Core/Models/Eft/Ragfair/AddOfferRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Ragfair; -public record AddOfferRequestData +public record AddOfferRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("sellInOnePiece")] public bool? SellInOnePiece { get; set; } diff --git a/Libraries/Core/Models/Eft/Ragfair/ExtendOfferRequestData.cs b/Libraries/Core/Models/Eft/Ragfair/ExtendOfferRequestData.cs index 20ce035b..3a0e7a50 100644 --- a/Libraries/Core/Models/Eft/Ragfair/ExtendOfferRequestData.cs +++ b/Libraries/Core/Models/Eft/Ragfair/ExtendOfferRequestData.cs @@ -1,8 +1,9 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Ragfair; -public record ExtendOfferRequestData +public record ExtendOfferRequestData : InventoryBaseActionRequestData { [JsonPropertyName("offerId")] public string? OfferId { get; set; } diff --git a/Libraries/Core/Models/Eft/Ragfair/RemoveOfferRequestData.cs b/Libraries/Core/Models/Eft/Ragfair/RemoveOfferRequestData.cs index 4ab13f67..147042ec 100644 --- a/Libraries/Core/Models/Eft/Ragfair/RemoveOfferRequestData.cs +++ b/Libraries/Core/Models/Eft/Ragfair/RemoveOfferRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Ragfair; -public record RemoveOfferRequestData +public record RemoveOfferRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("offerId")] public string? OfferId { get; set; } } diff --git a/Libraries/Core/Models/Eft/Repair/RepairActionDataRequest.cs b/Libraries/Core/Models/Eft/Repair/RepairActionDataRequest.cs index 73a911a9..6c2458bc 100644 --- a/Libraries/Core/Models/Eft/Repair/RepairActionDataRequest.cs +++ b/Libraries/Core/Models/Eft/Repair/RepairActionDataRequest.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Repair; -public record RepairActionDataRequest : BaseRepairActionDataRequest +public record RepairActionDataRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "Repair"; - [JsonPropertyName("repairKitsInfo")] public List? RepairKitsInfo { get; set; } diff --git a/Libraries/Core/Models/Eft/Repair/TraderRepairActionDataRequest.cs b/Libraries/Core/Models/Eft/Repair/TraderRepairActionDataRequest.cs index bd77e3fe..ce1c35f4 100644 --- a/Libraries/Core/Models/Eft/Repair/TraderRepairActionDataRequest.cs +++ b/Libraries/Core/Models/Eft/Repair/TraderRepairActionDataRequest.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Repair; -public record TraderRepairActionDataRequest : BaseRepairActionDataRequest +public record TraderRepairActionDataRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "TraderRepair"; - [JsonPropertyName("tid")] public string? TId { get; set; } diff --git a/Libraries/Core/Models/Eft/Trade/ProcessBaseTradeRequestData.cs b/Libraries/Core/Models/Eft/Trade/ProcessBaseTradeRequestData.cs index af2525dd..9ed92be5 100644 --- a/Libraries/Core/Models/Eft/Trade/ProcessBaseTradeRequestData.cs +++ b/Libraries/Core/Models/Eft/Trade/ProcessBaseTradeRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Trade; -public record ProcessBaseTradeRequestData +public record ProcessBaseTradeRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("type")] public string? Type { get; set; } diff --git a/Libraries/Core/Models/Eft/Trade/ProcessRagfairTradeRequestData.cs b/Libraries/Core/Models/Eft/Trade/ProcessRagfairTradeRequestData.cs index ab527f75..01f6fdf3 100644 --- a/Libraries/Core/Models/Eft/Trade/ProcessRagfairTradeRequestData.cs +++ b/Libraries/Core/Models/Eft/Trade/ProcessRagfairTradeRequestData.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Trade; -public record ProcessRagfairTradeRequestData +public record ProcessRagfairTradeRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("offers")] public List? Offers { get; set; } } diff --git a/Libraries/Core/Models/Eft/Trade/SellScavItemsToFenceRequestData.cs b/Libraries/Core/Models/Eft/Trade/SellScavItemsToFenceRequestData.cs index bee88f7c..604e54c1 100644 --- a/Libraries/Core/Models/Eft/Trade/SellScavItemsToFenceRequestData.cs +++ b/Libraries/Core/Models/Eft/Trade/SellScavItemsToFenceRequestData.cs @@ -1,19 +1,11 @@ using System.Text.Json.Serialization; using Core.Models.Eft.Common.Request; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Trade; -public record SellScavItemsToFenceRequestData +public record SellScavItemsToFenceRequestData : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } = "SellAllFromSavage"; - [JsonPropertyName("totalValue")] public double? TotalValue { get; set; } - - [JsonPropertyName("fromOwner")] - public OwnerInfo? FromOwner { get; set; } - - [JsonPropertyName("toOwner")] - public OwnerInfo? ToOwner { get; set; } } diff --git a/Libraries/Core/Models/Eft/Wishlist/AddToWishlistRequest.cs b/Libraries/Core/Models/Eft/Wishlist/AddToWishlistRequest.cs index c43e66f8..1541ab98 100644 --- a/Libraries/Core/Models/Eft/Wishlist/AddToWishlistRequest.cs +++ b/Libraries/Core/Models/Eft/Wishlist/AddToWishlistRequest.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Wishlist; -public record AddToWishlistRequest +public record AddToWishlistRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("items")] public Dictionary? Items { get; set; } } diff --git a/Libraries/Core/Models/Eft/Wishlist/ChangeWishlistItemCategoryRequest.cs b/Libraries/Core/Models/Eft/Wishlist/ChangeWishlistItemCategoryRequest.cs index d3096058..4e1ec30a 100644 --- a/Libraries/Core/Models/Eft/Wishlist/ChangeWishlistItemCategoryRequest.cs +++ b/Libraries/Core/Models/Eft/Wishlist/ChangeWishlistItemCategoryRequest.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Wishlist; -public record ChangeWishlistItemCategoryRequest +public record ChangeWishlistItemCategoryRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("item")] public string? Item { get; set; } diff --git a/Libraries/Core/Models/Eft/Wishlist/RemoveFromWishlistRequest.cs b/Libraries/Core/Models/Eft/Wishlist/RemoveFromWishlistRequest.cs index 011b5ccc..6fdd09f1 100644 --- a/Libraries/Core/Models/Eft/Wishlist/RemoveFromWishlistRequest.cs +++ b/Libraries/Core/Models/Eft/Wishlist/RemoveFromWishlistRequest.cs @@ -1,12 +1,10 @@ using System.Text.Json.Serialization; +using Core.Models.Eft.Inventory; namespace Core.Models.Eft.Wishlist; -public record RemoveFromWishlistRequest +public record RemoveFromWishlistRequest : InventoryBaseActionRequestData { - [JsonPropertyName("Action")] - public string? Action { get; set; } - [JsonPropertyName("items")] public List? Items { get; set; } } diff --git a/Libraries/Core/Utils/Json/Converters/BaseInteractionRequestDataConverter.cs b/Libraries/Core/Utils/Json/Converters/BaseInteractionRequestDataConverter.cs index 9e2272bb..0e50a9e3 100644 --- a/Libraries/Core/Utils/Json/Converters/BaseInteractionRequestDataConverter.cs +++ b/Libraries/Core/Utils/Json/Converters/BaseInteractionRequestDataConverter.cs @@ -2,6 +2,15 @@ using System.Text.Json.Serialization; using Core.Models.Eft.Common.Request; using Core.Models.Eft.Customization; +using Core.Models.Eft.Hideout; +using Core.Models.Eft.Inventory; +using Core.Models.Eft.Notes; +using Core.Models.Eft.Quests; +using Core.Models.Eft.Ragfair; +using Core.Models.Eft.Repair; +using Core.Models.Eft.Trade; +using Core.Models.Eft.Wishlist; +using Core.Models.Enums; namespace Core.Utils.Json.Converters; @@ -24,8 +33,90 @@ public class BaseInteractionRequestDataConverter : JsonConverter(jsonText, options); - /////////////////////////////////////////// + /////////////////////////////////////////// InventoryBaseActionRequestData + case "AddToWishList": + return JsonSerializer.Deserialize(jsonText, options); + case "RemoveFromWishList": + return JsonSerializer.Deserialize(jsonText, options); + case "ChangeWishlistItemCategory": + return JsonSerializer.Deserialize(jsonText, options); + case "TradingConfirm": + return JsonSerializer.Deserialize(jsonText, options); + case "RagFairBuyOffer": + return JsonSerializer.Deserialize(jsonText, options); + case "SellAllFromSavage": + return JsonSerializer.Deserialize(jsonText, options); + case "Repair": + return JsonSerializer.Deserialize(jsonText, options); + case "TraderRepair": + return JsonSerializer.Deserialize(jsonText, options); + case "RagFairAddOffer": + return JsonSerializer.Deserialize(jsonText, options); + case "RagFairRemoveOffer": + return JsonSerializer.Deserialize(jsonText, options); + case "RagFairRenewOffer": + return JsonSerializer.Deserialize(jsonText, options); + case "QuestAccept": + return JsonSerializer.Deserialize(jsonText, options); + case "QuestComplete": + return JsonSerializer.Deserialize(jsonText, options); + case "QuestHandover": + return JsonSerializer.Deserialize(jsonText, options); + case "RepeatableQuestChange": + return JsonSerializer.Deserialize(jsonText, options); + case "AddNote": + case "EditNote": + case "DeleteNote": + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.MOVE: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.REMOVE: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.SPLIT: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.MERGE: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.TRANSFER: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.SWAP: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.FOLD: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.TOGGLE: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.TAG: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.BIND: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.UNBIND: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.EXAMINE: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.READ_ENCYCLOPEDIA: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.APPLY_INVENTORY_CHANGES: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.CREATE_MAP_MARKER: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.DELETE_MAP_MARKER: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.EDIT_MAP_MARKER: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.OPEN_RANDOM_LOOT_CONTAINER: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.HIDEOUT_QTE_EVENT: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.REDEEM_PROFILE_REWARD: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.SET_FAVORITE_ITEMS: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.QUEST_FAIL: + return JsonSerializer.Deserialize(jsonText, options); + case ItemEventActions.PIN_LOCK: + return JsonSerializer.Deserialize(jsonText, options); + default: + // bitch } }