aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Player/CollectionMgr.cpp4
-rw-r--r--src/server/game/Entities/Player/CollectionMgr.h2
-rw-r--r--src/server/game/Entities/Player/Player.cpp7
3 files changed, 10 insertions, 3 deletions
diff --git a/src/server/game/Entities/Player/CollectionMgr.cpp b/src/server/game/Entities/Player/CollectionMgr.cpp
index 0dffcc6e8ad..45d893f8c95 100644
--- a/src/server/game/Entities/Player/CollectionMgr.cpp
+++ b/src/server/game/Entities/Player/CollectionMgr.cpp
@@ -422,9 +422,9 @@ void CollectionMgr::AddItemAppearance(Item* item)
AddItemAppearance(itemModifiedAppearance);
}
-void CollectionMgr::AddItemAppearance(uint32 itemId)
+void CollectionMgr::AddItemAppearance(uint32 itemId, uint32 appearanceModId /*= 0*/)
{
- ItemModifiedAppearanceEntry const* itemModifiedAppearance = sDB2Manager.GetItemModifiedAppearance(itemId, 0);
+ ItemModifiedAppearanceEntry const* itemModifiedAppearance = sDB2Manager.GetItemModifiedAppearance(itemId, appearanceModId);
if (!CanAddAppearance(itemModifiedAppearance))
return;
diff --git a/src/server/game/Entities/Player/CollectionMgr.h b/src/server/game/Entities/Player/CollectionMgr.h
index 2cb11bdab8b..6547bea5b71 100644
--- a/src/server/game/Entities/Player/CollectionMgr.h
+++ b/src/server/game/Entities/Player/CollectionMgr.h
@@ -87,7 +87,7 @@ public:
void LoadAccountItemAppearances(PreparedQueryResult knownAppearances, PreparedQueryResult favoriteAppearances);
void SaveAccountItemAppearances(SQLTransaction& trans);
void AddItemAppearance(Item* item);
- void AddItemAppearance(uint32 itemId);
+ void AddItemAppearance(uint32 itemId, uint32 appearanceModId = 0);
void RemoveTemporaryAppearance(Item* item);
// returns pair<hasAppearance, isTemporary>
std::pair<bool, bool> HasItemAppearance(uint32 itemModifiedAppearanceId) const;
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 749aa969585..045066cdedf 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -17525,6 +17525,13 @@ void Player::_LoadVoidStorage(PreparedQueryResult result)
}
_voidStorageItems[slot] = new VoidStorageItem(itemId, itemEntry, creatorGuid, randomProperty, suffixFactor, upgradeId, bonusListIDs);
+
+ WorldPackets::Item::ItemInstance voidInstance;
+ voidInstance.Initialize(_voidStorageItems[slot]);
+ BonusData bonus;
+ bonus.Initialize(voidInstance);
+
+ GetSession()->GetCollectionMgr()->AddItemAppearance(itemId, bonus.AppearanceModID);
}
while (result->NextRow());
}