aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Achievements/CriteriaHandler.cpp3
-rw-r--r--src/server/game/DataStores/DBCEnums.h2
-rw-r--r--src/server/game/Entities/Player/CollectionMgr.cpp2
3 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp
index dd3e015a241..793f738e4f4 100644
--- a/src/server/game/Achievements/CriteriaHandler.cpp
+++ b/src/server/game/Achievements/CriteriaHandler.cpp
@@ -553,6 +553,7 @@ void CriteriaHandler::UpdateCriteria(CriteriaType type, uint64 miscValue1 /*= 0*
case CriteriaType::PlaceGarrisonBuilding:
case CriteriaType::ActivateAnyGarrisonBuilding:
case CriteriaType::LearnAnyHeirloom:
+ case CriteriaType::LearnAnyTransmog:
case CriteriaType::HonorLevelIncrease:
case CriteriaType::PrestigeLevelIncrease:
case CriteriaType::LearnAnyTransmogInSlot:
@@ -1283,6 +1284,7 @@ bool CriteriaHandler::IsCompletedCriteria(Criteria const* criteria, uint64 requi
case CriteriaType::AbandonAnyQuest:
case CriteriaType::BuyTaxi:
case CriteriaType::AcceptSummon:
+ case CriteriaType::LearnAnyTransmog:
default:
break;
}
@@ -1389,6 +1391,7 @@ bool CriteriaHandler::RequirementsSatisfied(Criteria const* criteria, uint64 mis
case CriteriaType::BuyItemsFromVendors:
case CriteriaType::SellItemsToVendors:
case CriteriaType::GainLevels:
+ case CriteriaType::LearnAnyTransmog:
if (!miscValue1)
return false;
break;
diff --git a/src/server/game/DataStores/DBCEnums.h b/src/server/game/DataStores/DBCEnums.h
index bb26966e88c..118cefe1b58 100644
--- a/src/server/game/DataStores/DBCEnums.h
+++ b/src/server/game/DataStores/DBCEnums.h
@@ -694,7 +694,7 @@ enum class CriteriaType : int16
EarnArtifactXP = 190, // Earn Artifact XP
AnyArtifactPowerRankPurchased = 191, // Artifact Power Ranks Purchased
LearnTransmog = 192, /*NYI*/ // Learn Transmog "{ItemModifiedAppearance}"
- LearnAnyTransmog = 193, /*NYI*/ // Learn Any Transmog
+ LearnAnyTransmog = 193, // Learn Any Transmog
HonorLevelIncrease = 194, // (Player) honor level increase
PrestigeLevelIncrease = 195, /*NYI*/ // (Player) prestige level increase
ActivelyReachLevel = 196, // Actively level to level {#Level}
diff --git a/src/server/game/Entities/Player/CollectionMgr.cpp b/src/server/game/Entities/Player/CollectionMgr.cpp
index ba4fb42b5fc..333ee1b2907 100644
--- a/src/server/game/Entities/Player/CollectionMgr.cpp
+++ b/src/server/game/Entities/Player/CollectionMgr.cpp
@@ -763,6 +763,8 @@ void CollectionMgr::AddItemAppearance(ItemModifiedAppearanceEntry const* itemMod
_temporaryAppearances.erase(temporaryAppearance);
}
+ _owner->GetPlayer()->UpdateCriteria(CriteriaType::LearnAnyTransmog, 1);
+
if (ItemEntry const* item = sItemStore.LookupEntry(itemModifiedAppearance->ItemID))
{
int32 transmogSlot = ItemTransmogrificationSlots[item->InventoryType];