aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Guilds/Guild.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-06-19 23:56:40 +0200
committerShauren <shauren.trinity@gmail.com>2016-06-19 23:56:40 +0200
commit42f6bb4d37ae3a28cecddc6e82e5b4455aa29a16 (patch)
treef8e6ecc2248b7b95d7314fc07e01b6fc22e71840 /src/server/game/Guilds/Guild.cpp
parent0de1adf2812a4fa896dc5cd21314e596b44457b9 (diff)
Core/PacketIO: Updated garrison, guild and inspect packets
Diffstat (limited to 'src/server/game/Guilds/Guild.cpp')
-rw-r--r--src/server/game/Guilds/Guild.cpp46
1 files changed, 18 insertions, 28 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp
index 9c217ea6888..b09b75be882 100644
--- a/src/server/game/Guilds/Guild.cpp
+++ b/src/server/game/Guilds/Guild.cpp
@@ -3214,21 +3214,16 @@ void Guild::_SendBankContentUpdate(uint8 tabId, SlotIds slots) const
if (tabItem)
{
- uint32 enchants = 0;
- for (uint32 ench = 0; ench < MAX_ENCHANTMENT_SLOT; ++ench)
- if (tabItem->GetEnchantmentId(EnchantmentSlot(ench)))
- ++enchants;
-
- itemInfo.SocketEnchant.reserve(enchants);
- for (uint32 ench = 0; ench < MAX_ENCHANTMENT_SLOT; ++ench)
+ for (std::size_t i = 0; i < tabItem->GetDynamicValues(ITEM_DYNAMIC_FIELD_GEMS).size(); ++i)
{
- if (uint32 enchantId = tabItem->GetEnchantmentId(EnchantmentSlot(ench)))
- {
- WorldPackets::Guild::GuildBankItemInfo::GuildBankSocketEnchant socketEnchant;
- socketEnchant.SocketEnchantID = int32(enchantId);
- socketEnchant.SocketIndex = int32(ench);
- itemInfo.SocketEnchant.push_back(socketEnchant);
- }
+ uint32 gemItemId = tabItem->GetDynamicValue(ITEM_DYNAMIC_FIELD_GEMS, i);
+ if (!gemItemId)
+ continue;
+
+ WorldPackets::Item::ItemGemInstanceData gem;
+ gem.Slot = i;
+ gem.Item.ItemID = gemItemId;
+ itemInfo.SocketEnchant.push_back(gem);
}
}
@@ -3302,21 +3297,16 @@ void Guild::SendBankList(WorldSession* session, uint8 tabId, bool fullUpdate) co
itemInfo.OnUseEnchantmentID = 0/*int32(tabItem->GetItemSuffixFactor())*/;
itemInfo.Flags = 0;
- uint32 enchants = 0;
- for (uint32 ench = 0; ench < MAX_ENCHANTMENT_SLOT; ++ench)
- if (tabItem->GetEnchantmentId(EnchantmentSlot(ench)))
- ++enchants;
-
- itemInfo.SocketEnchant.reserve(enchants);
- for (uint32 ench = 0; ench < MAX_ENCHANTMENT_SLOT; ++ench)
+ for (std::size_t i = 0; i < tabItem->GetDynamicValues(ITEM_DYNAMIC_FIELD_GEMS).size(); ++i)
{
- if (uint32 enchantId = tabItem->GetEnchantmentId(EnchantmentSlot(ench)))
- {
- WorldPackets::Guild::GuildBankItemInfo::GuildBankSocketEnchant socketEnchant;
- socketEnchant.SocketEnchantID = int32(enchantId);
- socketEnchant.SocketIndex = int32(ench);
- itemInfo.SocketEnchant.push_back(socketEnchant);
- }
+ uint32 gemItemId = tabItem->GetDynamicValue(ITEM_DYNAMIC_FIELD_GEMS, i);
+ if (!gemItemId)
+ continue;
+
+ WorldPackets::Item::ItemGemInstanceData gem;
+ gem.Slot = i;
+ gem.Item.ItemID = gemItemId;
+ itemInfo.SocketEnchant.push_back(gem);
}
itemInfo.Locked = false;