aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-05-06 21:43:32 +0200
committerShauren <shauren.trinity@gmail.com>2017-05-06 21:43:32 +0200
commit707fd7cdfa967e45c8e3301dcde5740af6a60266 (patch)
treeebe145b99c0fc26040b33c023aef69e70ecaea5e /src
parent0c3c5dd0e11cfa2016d8b4e0f721fa62a3b20c2e (diff)
Core/Items: Fixed default item appearances
Closes #19558
Diffstat (limited to 'src')
-rw-r--r--src/server/game/DataStores/DB2Stores.cpp16
-rw-r--r--src/server/game/DataStores/DB2Stores.h1
-rw-r--r--src/server/game/Entities/Item/Item.cpp3
-rw-r--r--src/server/game/Entities/Player/CollectionMgr.cpp1
4 files changed, 8 insertions, 13 deletions
diff --git a/src/server/game/DataStores/DB2Stores.cpp b/src/server/game/DataStores/DB2Stores.cpp
index 01a0850365a..c426070adcb 100644
--- a/src/server/game/DataStores/DB2Stores.cpp
+++ b/src/server/game/DataStores/DB2Stores.cpp
@@ -708,9 +708,6 @@ void DB2Manager::LoadStores(std::string const& dataPath, uint32 defaultLocale)
{
ASSERT(appearanceMod->ItemID <= 0xFFFFFF);
_itemModifiedAppearancesByItem[appearanceMod->ItemID | (appearanceMod->AppearanceModID << 24)] = appearanceMod;
- auto defaultAppearance = _itemDefaultAppearancesByItem.find(appearanceMod->ItemID);
- if (defaultAppearance == _itemDefaultAppearancesByItem.end() || defaultAppearance->second->Index > appearanceMod->Index)
- _itemDefaultAppearancesByItem[appearanceMod->ItemID] = appearanceMod;
}
for (ItemSetSpellEntry const* itemSetSpell : sItemSetSpellStore)
@@ -1404,17 +1401,20 @@ ItemModifiedAppearanceEntry const* DB2Manager::GetItemModifiedAppearance(uint32
return itr->second;
// Fall back to unmodified appearance
- itr = _itemDefaultAppearancesByItem.find(itemId);
- if (itr != _itemDefaultAppearancesByItem.end())
- return itr->second;
+ if (appearanceModId)
+ {
+ itr = _itemModifiedAppearancesByItem.find(itemId);
+ if (itr != _itemModifiedAppearancesByItem.end())
+ return itr->second;
+ }
return nullptr;
}
ItemModifiedAppearanceEntry const* DB2Manager::GetDefaultItemModifiedAppearance(uint32 itemId) const
{
- auto itr = _itemDefaultAppearancesByItem.find(itemId);
- if (itr != _itemDefaultAppearancesByItem.end())
+ auto itr = _itemModifiedAppearancesByItem.find(itemId);
+ if (itr != _itemModifiedAppearancesByItem.end())
return itr->second;
return nullptr;
diff --git a/src/server/game/DataStores/DB2Stores.h b/src/server/game/DataStores/DB2Stores.h
index d161ac438cb..a03a3205e37 100644
--- a/src/server/game/DataStores/DB2Stores.h
+++ b/src/server/game/DataStores/DB2Stores.h
@@ -382,7 +382,6 @@ private:
ItemClassByOldEnumContainer _itemClassByOldEnum;
std::unordered_set<uint32> _itemsWithCurrencyCost;
ItemModifiedAppearanceByItemContainer _itemModifiedAppearancesByItem;
- ItemModifiedAppearanceByItemContainer _itemDefaultAppearancesByItem;
ItemToBonusTreeContainer _itemToBonusTree;
ItemSetSpellContainer _itemSetSpells;
ItemSpecOverridesContainer _itemSpecOverrides;
diff --git a/src/server/game/Entities/Item/Item.cpp b/src/server/game/Entities/Item/Item.cpp
index 407b0f4bf51..44b23a6bc31 100644
--- a/src/server/game/Entities/Item/Item.cpp
+++ b/src/server/game/Entities/Item/Item.cpp
@@ -2469,9 +2469,6 @@ void BonusData::Initialize(ItemTemplate const* proto)
}
AppearanceModID = 0;
- if (ItemModifiedAppearanceEntry const* defaultAppearance = sDB2Manager.GetDefaultItemModifiedAppearance(proto->GetId()))
- AppearanceModID = defaultAppearance->AppearanceModID;
-
RepairCostMultiplier = 1.0f;
ScalingStatDistribution = proto->GetScalingStatDistribution();
ItemLevelOverride = 0;
diff --git a/src/server/game/Entities/Player/CollectionMgr.cpp b/src/server/game/Entities/Player/CollectionMgr.cpp
index 6db308493e0..a4c8c179cf3 100644
--- a/src/server/game/Entities/Player/CollectionMgr.cpp
+++ b/src/server/game/Entities/Player/CollectionMgr.cpp
@@ -556,7 +556,6 @@ uint32 const PlayerClassByArmorSubclass[MAX_ITEM_SUBCLASS_ARMOR] =
(1 << (CLASS_PALADIN - 1)) | (1 << (CLASS_DEATH_KNIGHT - 1)) | (1 << (CLASS_SHAMAN - 1)) | (1 << (CLASS_DRUID - 1)), //ITEM_SUBCLASS_ARMOR_RELIC
};
-
void CollectionMgr::AddItemAppearance(Item* item)
{
if (!item->IsSoulBound())