using SPTarkov.Server.Core.Controllers; using SPTarkov.Server.Core.Models.Eft.Common; using SPTarkov.Server.Core.Models.Eft.ItemEvent; using SPTarkov.Server.Core.Models.Eft.Trade; using SPTarkov.Common.Annotations; namespace SPTarkov.Server.Core.Callbacks; [Injectable] public class TradeCallbacks(TradeController _tradeController) { /// /// Handle client/game/profile/items/moving TradingConfirm event /// /// Players PMC profile /// /// Session/player id /// public ItemEventRouterResponse ProcessTrade(PmcData pmcData, ProcessBaseTradeRequestData info, string sessionID) { return _tradeController.ConfirmTrading(pmcData, info, sessionID); } /// /// Handle RagFairBuyOffer event /// /// Players PMC profile /// /// Session/player id /// public ItemEventRouterResponse ProcessRagfairTrade(PmcData pmcData, ProcessRagfairTradeRequestData info, string sessionID) { return _tradeController.ConfirmRagfairTrading(pmcData, info, sessionID); } /// /// Handle SellAllFromSavage event /// /// Players PMC profile /// /// Session/player id /// public ItemEventRouterResponse SellAllFromSavage(PmcData pmcData, SellScavItemsToFenceRequestData info, string sessionID) { return _tradeController.SellScavItemsToFence(pmcData, info, sessionID); } }