Merge branch 'master' into Playerbot

This commit is contained in:
Yunfan Li
2024-02-22 23:34:59 +08:00
16 changed files with 259 additions and 31 deletions

View File

@@ -990,6 +990,10 @@ InventoryResult Guild::BankMoveItemData::CanStore(Item* pItem, bool swap)
if (pItem->IsSoulBound())
return EQUIP_ERR_CANT_DROP_SOULBOUND;
// Prevent swapping limited duration items into guild bank
if (pItem->GetTemplate()->Duration > 0)
return EQUIP_ERR_ITEMS_CANT_BE_SWAPPED;
// Make sure destination bank tab exists
if (m_container >= m_pGuild->_GetPurchasedTabsSize())
return EQUIP_ERR_ITEM_DOESNT_GO_INTO_BAG;

View File

@@ -1346,6 +1346,12 @@ void WorldSession::HandleWrapItemOpcode(WorldPacket& recvData)
return;
}
if (item->GetTemplate()->Duration > 0)
{
_player->SendEquipError(EQUIP_ERR_UNIQUE_CANT_BE_WRAPPED, item, nullptr);
return;
}
CharacterDatabaseTransaction trans = CharacterDatabase.BeginTransaction();
CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_CHAR_GIFT);