aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server/Packets
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2019-11-23 00:03:42 +0100
committerShauren <shauren.trinity@gmail.com>2019-11-23 00:03:42 +0100
commit0a2d9ad2f7673e2b7ee62b7cc6f1a19639d37864 (patch)
tree0b48ab1588b0d711dba4a768ffcbe8e3d9a360f9 /src/server/game/Server/Packets
parentec9d624aec9e0a39b1bcee7d4077f46be358faad (diff)
Core/Items: Add ItemContext param to Item::Create function
Diffstat (limited to 'src/server/game/Server/Packets')
-rw-r--r--src/server/game/Server/Packets/ItemPacketsCommon.cpp8
-rw-r--r--src/server/game/Server/Packets/ItemPacketsCommon.h3
2 files changed, 6 insertions, 5 deletions
diff --git a/src/server/game/Server/Packets/ItemPacketsCommon.cpp b/src/server/game/Server/Packets/ItemPacketsCommon.cpp
index 83fb1bd9328..e3a5c95eaf5 100644
--- a/src/server/game/Server/Packets/ItemPacketsCommon.cpp
+++ b/src/server/game/Server/Packets/ItemPacketsCommon.cpp
@@ -38,7 +38,7 @@ void WorldPackets::Item::ItemInstance::Initialize(::Item const* item)
{
ItemBonus = boost::in_place();
ItemBonus->BonusListIDs.insert(ItemBonus->BonusListIDs.end(), bonusListIds.begin(), bonusListIds.end());
- ItemBonus->Context = item->m_itemData->Context;
+ ItemBonus->Context = item->GetContext();
}
if (uint32 mask = item->m_itemData->ModifiersMask)
@@ -56,12 +56,12 @@ void WorldPackets::Item::ItemInstance::Initialize(UF::SocketedGem const* gem)
ItemID = gem->ItemID;
ItemBonusInstanceData bonus;
- bonus.Context = gem->Context;
+ bonus.Context = ItemContext(*gem->Context);
for (uint16 bonusListId : gem->BonusListIDs)
if (bonusListId)
bonus.BonusListIDs.push_back(bonusListId);
- if (bonus.Context || !bonus.BonusListIDs.empty())
+ if (bonus.Context != ItemContext::NONE || !bonus.BonusListIDs.empty())
ItemBonus = bonus;
}
@@ -131,7 +131,7 @@ ByteBuffer& operator>>(ByteBuffer& data, WorldPackets::Item::ItemBonusInstanceDa
{
uint32 bonusListIdSize;
- data >> itemBonusInstanceData.Context;
+ itemBonusInstanceData.Context = data.read<ItemContext>();
data >> bonusListIdSize;
for (uint32 i = 0u; i < bonusListIdSize; ++i)
diff --git a/src/server/game/Server/Packets/ItemPacketsCommon.h b/src/server/game/Server/Packets/ItemPacketsCommon.h
index 3f0d500c069..ef8b1d4d509 100644
--- a/src/server/game/Server/Packets/ItemPacketsCommon.h
+++ b/src/server/game/Server/Packets/ItemPacketsCommon.h
@@ -27,6 +27,7 @@ class ByteBuffer;
class Item;
struct LootItem;
struct VoidStorageItem;
+enum class ItemContext : uint8;
namespace UF
{
@@ -39,7 +40,7 @@ namespace WorldPackets
{
struct ItemBonusInstanceData
{
- uint8 Context = 0;
+ ItemContext Context = ItemContext(0);
std::vector<int32> BonusListIDs;
bool operator==(ItemBonusInstanceData const& r) const;