From 2d234bdc1cdc3c628cbfb9a0038d8fd60374273f Mon Sep 17 00:00:00 2001 From: Bluzume <39113159+KuromeSan@users.noreply.github.com> Date: Tue, 9 Nov 2021 17:24:16 -0500 Subject: [PATCH] Fix trading not working if inv full --- .../HorseIsleServer/Player/Trade.cs | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/HorseIsleServer/HorseIsleServer/Player/Trade.cs b/HorseIsleServer/HorseIsleServer/Player/Trade.cs index eb99ce7..c456bcc 100644 --- a/HorseIsleServer/HorseIsleServer/Player/Trade.cs +++ b/HorseIsleServer/HorseIsleServer/Player/Trade.cs @@ -130,18 +130,20 @@ namespace HISP.Player */ bool itemYouFail = false; - foreach (ItemInstance[] inst in OtherTrade.ItemsOffered) + if (OtherTrade.ItemsOffered.Length > 0) { - if (Trader.Inventory.HasItemId(inst[0].ItemId)) + foreach (ItemInstance[] inst in OtherTrade.ItemsOffered) { - InventoryItem items = Trader.Inventory.GetItemByItemId(inst[0].ItemId); - if (items.ItemInstances.Length + inst.Length > ConfigReader.MAX_STACK) + if (Trader.Inventory.HasItemId(inst[0].ItemId)) { - itemYouFail = true; + InventoryItem items = Trader.Inventory.GetItemByItemId(inst[0].ItemId); + if (items.ItemInstances.Length + inst.Length > ConfigReader.MAX_STACK) + { + itemYouFail = true; + } } } } - if (itemYouFail) { fail = true; @@ -150,14 +152,18 @@ namespace HISP.Player } bool itemOtherFail = false; - foreach (ItemInstance[] inst in ItemsOffered) + if (ItemsOffered.Length > 0) { - if (OtherTrade.Trader.Inventory.HasItemId(inst[0].ItemId)) + + foreach (ItemInstance[] inst in ItemsOffered) { - InventoryItem items = OtherTrade.Trader.Inventory.GetItemByItemId(inst[0].ItemId); - if (items.ItemInstances.Length + inst.Length > ConfigReader.MAX_STACK) + if (OtherTrade.Trader.Inventory.HasItemId(inst[0].ItemId)) { - itemOtherFail = true; + InventoryItem items = OtherTrade.Trader.Inventory.GetItemByItemId(inst[0].ItemId); + if (items.ItemInstances.Length + inst.Length > ConfigReader.MAX_STACK) + { + itemOtherFail = true; + } } } }