From 55b6f17de39828572e4aa32b57e522ad5b37053d Mon Sep 17 00:00:00 2001 From: Chomp Date: Tue, 14 Jan 2025 18:05:58 +0000 Subject: [PATCH] Stubbed out `client/game/profile/items/moving - hideoutCustomizationSetMannequinPose` --- Core/Callbacks/HideoutCallbacks.cs | 9 ++++- Core/Controllers/HideoutController.cs | 49 ++++++++++++++++++++++++++- 2 files changed, 56 insertions(+), 2 deletions(-) diff --git a/Core/Callbacks/HideoutCallbacks.cs b/Core/Callbacks/HideoutCallbacks.cs index c5f72a45..4bf13666 100644 --- a/Core/Callbacks/HideoutCallbacks.cs +++ b/Core/Callbacks/HideoutCallbacks.cs @@ -247,13 +247,20 @@ public class HideoutCallbacks : OnUpdate /// /// /// - public ItemEventRouterResponse HideoutCustomizationApplyCommand(PmcData pmcData, HideoutCustomizationApplyRequestData info, string sessionID) + public ItemEventRouterResponse HideoutCustomizationApplyCommand(PmcData pmcData, HideoutCustomizationApplyRequestData request, string sessionID) { // return _hideoutController.HideoutCustomizationApply(sessionID, pmcData, info); // TODO: HideoutController is not implemented rn throw new NotImplementedException(); } + /** + * Handle client/game/profile/items/moving - hideoutCustomizationSetMannequinPose + */ + public ItemEventRouterResponse HideoutCustomizationSetMannequinPose(PmcData pmcData, HideoutCustomizationSetMannequinPoseRequest request, string sessionId) { + return _hideoutController.HideoutCustomizationSetMannequinPose(sessionId, pmcData, request); + } + public async Task OnUpdate(long timeSinceLastRun) { if (timeSinceLastRun > _hideoutConfig.RunIntervalSeconds) diff --git a/Core/Controllers/HideoutController.cs b/Core/Controllers/HideoutController.cs index a62833ee..42883ac9 100644 --- a/Core/Controllers/HideoutController.cs +++ b/Core/Controllers/HideoutController.cs @@ -1,9 +1,56 @@ using Core.Annotations; +using Core.Helpers; +using Core.Models.Eft.Common; +using Core.Models.Eft.Hideout; +using Core.Models.Eft.ItemEvent; +using Core.Servers; +using Core.Services; +using Core.Utils; +using ILogger = Core.Models.Utils.ILogger; namespace Core.Controllers; [Injectable] public class HideoutController { - // TODO + private readonly ILogger _logger; + private readonly HashUtil _hashUtil; + private readonly TimeUtil _timeUtil; + private readonly DatabaseService _databaseService; + private readonly RandomUtil _randomUtil; + private readonly InventoryHelper _inventoryHelper; + private readonly ItemHelper _itemHelper; + private readonly SaveServer _saveServer; + + public HideoutController( + ILogger logger, + HashUtil hashUtil, + TimeUtil timeUtil, + DatabaseService databaseService, + RandomUtil randomUtil, + InventoryHelper inventoryHelper, + ItemHelper itemHelper, + SaveServer saveServer) + { + _logger = logger; + _hashUtil = hashUtil; + _timeUtil = timeUtil; + _databaseService = databaseService; + _randomUtil = randomUtil; + _inventoryHelper = inventoryHelper; + _itemHelper = itemHelper; + _saveServer = saveServer; + } + + /** + * Handle HideoutCustomizationSetMannequinPose event + * @param sessionId Session id + * @param pmcData Player profile + * @param request Client request data + * @returns Client response + */ + public ItemEventRouterResponse HideoutCustomizationSetMannequinPose(string sessionId, PmcData pmcData, HideoutCustomizationSetMannequinPoseRequest request) + { + throw new NotImplementedException(); + } }