diff --git a/Source/Game/Handlers/CharacterHandler.cs b/Source/Game/Handlers/CharacterHandler.cs index c090cee1d..39376782e 100644 --- a/Source/Game/Handlers/CharacterHandler.cs +++ b/Source/Game/Handlers/CharacterHandler.cs @@ -1557,6 +1557,9 @@ namespace Game InventoryResult inventoryResult = GetPlayer().CanStoreItem(ItemConst.NullBag, ItemConst.NullSlot, itemPosCount, uItem, false); if (inventoryResult == InventoryResult.Ok) { + if (_player.CanEquipItem(ItemConst.NullSlot, out dstPos, uItem, false) != InventoryResult.Ok) + continue; + GetPlayer().RemoveItem(InventorySlots.Bag0, i, true); GetPlayer().StoreItem(itemPosCount, uItem, true); } @@ -1569,6 +1572,9 @@ namespace Game if (item.GetPos() == dstPos) continue; + if (_player.CanUnequipItem(dstPos, true) != InventoryResult.Ok) + continue; + GetPlayer().SwapItem(item.GetPos(), dstPos); }