From 4a195d1927169489d6a24c68f152c569e73c426c Mon Sep 17 00:00:00 2001 From: gmriggs Date: Tue, 3 Jun 2025 21:09:00 -0400 Subject: [PATCH] add missing ServerSaveFailed messages for vendor transactions --- Source/ACE.Server/WorldObjects/Player_Commerce.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Source/ACE.Server/WorldObjects/Player_Commerce.cs b/Source/ACE.Server/WorldObjects/Player_Commerce.cs index 2c2646d5b3..9b96787e2d 100644 --- a/Source/ACE.Server/WorldObjects/Player_Commerce.cs +++ b/Source/ACE.Server/WorldObjects/Player_Commerce.cs @@ -23,12 +23,14 @@ public void HandleActionBuyItem(uint vendorGuid, List items) { if (IsBusy) { + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(WeenieError.YoureTooBusy); return; } if (IsTrading) { + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(WeenieError.CantDoThatTradeInProgress); return; } @@ -37,12 +39,14 @@ public void HandleActionBuyItem(uint vendorGuid, List items) if (vendor == null) { + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(WeenieError.NoObject); return; } // if this succeeds, it automatically calls player.FinalizeBuyTransaction() - vendor.BuyItems_ValidateTransaction(items, this); + if (!vendor.BuyItems_ValidateTransaction(items, this)) + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(); } @@ -123,6 +127,7 @@ public void HandleActionSellItem(uint vendorGuid, List itemProfiles { if (IsBusy) { + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(WeenieError.YoureTooBusy); return; } @@ -131,6 +136,7 @@ public void HandleActionSellItem(uint vendorGuid, List itemProfiles if (vendor == null) { + Session.Network.EnqueueSend(new GameEventInventoryServerSaveFailed(Session, Guid.Full)); SendUseDoneEvent(WeenieError.NoObject); return; }