From a1cad6b2dc5bd99302d9dacd18ebcc1116d0ef96 Mon Sep 17 00:00:00 2001 From: Cj <161484149+CJ-SPT@users.noreply.github.com> Date: Mon, 6 Jan 2025 20:22:50 -0500 Subject: [PATCH] More controllers --- Core/Controllers/ClientLogController.cs | 15 +++ Core/Controllers/CustomizationController.cs | 141 ++++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 Core/Controllers/ClientLogController.cs create mode 100644 Core/Controllers/CustomizationController.cs diff --git a/Core/Controllers/ClientLogController.cs b/Core/Controllers/ClientLogController.cs new file mode 100644 index 00000000..3dcab6af --- /dev/null +++ b/Core/Controllers/ClientLogController.cs @@ -0,0 +1,15 @@ +using Core.Models.Spt.Logging; + +namespace Core.Controllers; + +public class ClientLogController +{ + /// + /// Handle /singleplayer/log + /// + /// + public void ClientLog(ClientLogRequest logRequest) + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Core/Controllers/CustomizationController.cs b/Core/Controllers/CustomizationController.cs new file mode 100644 index 00000000..f8e7307b --- /dev/null +++ b/Core/Controllers/CustomizationController.cs @@ -0,0 +1,141 @@ +using Core.Models.Eft.Common; +using Core.Models.Eft.Common.Tables; +using Core.Models.Eft.Hideout; +using Core.Models.Eft.Profile; + +namespace Core.Controllers; + +public class CustomizationController +{ + /// + /// Get purchasable clothing items from trader that match players side (usec/bear) + /// + /// trader to look up clothing for + /// Session id + /// Suit array + public Suit GetTraderSuits(string traderId, string sessionId) + { + throw new NotImplementedException(); + } + + /// + /// Handle CustomizationBuy event + /// Purchase/unlock a clothing item from a trader + /// + /// Player profile + /// Request object + /// Session id + /// ItemEventRouterResponse + public ItemEventRouterResponse BuyClothing( + PmcData pmcData, + BuyClothingRequest buyClothingRequest, + string sessionId) + { + throw new NotImplementedException(); + } + + /// + /// Update output object and player profile with purchase details + /// + /// Session id + /// Player profile + /// Clothing purchased + /// Client response + private void PayForClothingItems( + string sessionId, + PmcData pmcData, + List itemsToPayForClothingWith, + ItemEventRouterResponse output) + { + throw new NotImplementedException(); + } + + /// + /// Update output object and player profile with purchase details for single piece of clothing + /// + /// Session id + /// Player profile + /// Payment details + /// Client response + private void PayForClothingItem( + string sessionId, + PmcData pmcData, + PaymentItemForClothing paymentItemDetails, + ItemEventRouterResponse output) + { + throw new NotImplementedException(); + } + + /// + /// + /// + /// + /// + private List GetAllTraderSuits(string sessionId) + { + throw new NotImplementedException(); + } + + /// + /// Handle client/hideout/customization/offer/list + /// + /// + /// + /// + public HideoutCustomisationStorage GetHideoutCustomisation( + string sessionId, + EmptyRequestData info) + { + throw new NotImplementedException(); + } + + /// + /// Handle client/customization/storage + /// + /// + /// + /// + public List GetCustomisationStorage( + string sessionId, + EmptyRequestData info) + { + throw new NotImplementedException(); + } + + /// + /// + /// + /// + /// + private string GetGameEdition(SptProfile profile) + { + throw new NotImplementedException(); + } + + /// + /// Handle CustomizationSet event + /// + /// + /// + /// + /// + public ItemEventRouterResponse SetClothing( + string sessionId, + CustomizationSetRequest request, + PmcData pmcData) + { + throw new NotImplementedException(); + } + + /// + /// Applies a purchased suit to the players doll + /// + /// Suit to apply to profile + /// Profile to update + private void ApplyClothingItemToProfile( + CustomizationSetOption customization, + PmcData pmcData) + { + throw new NotImplementedException(); + } +} \ No newline at end of file