aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Achievements/CriteriaHandler.cpp4
-rw-r--r--src/server/game/DataStores/DBCEnums.h2
-rw-r--r--src/server/game/DungeonFinding/LFGMgr.cpp2
3 files changed, 6 insertions, 2 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp
index 1c5e80f69b3..c8e4443ad2d 100644
--- a/src/server/game/Achievements/CriteriaHandler.cpp
+++ b/src/server/game/Achievements/CriteriaHandler.cpp
@@ -573,6 +573,7 @@ void CriteriaHandler::UpdateCriteria(CriteriaType type, uint64 miscValue1 /*= 0*
case CriteriaType::MoneyEarnedFromAuctions:/* FIXME: for online player only currently */
case CriteriaType::TotalDamageTaken:
case CriteriaType::TotalHealReceived:
+ case CriteriaType::CompletedLFGDungeon:
case CriteriaType::CompletedLFGDungeonWithStrangers:
case CriteriaType::DamageDealt:
case CriteriaType::HealingDone:
@@ -825,7 +826,6 @@ void CriteriaHandler::UpdateCriteria(CriteriaType type, uint64 miscValue1 /*= 0*
case CriteriaType::BattlePetAchievementPointsEarned:
case CriteriaType::ReleasedSpirit:
case CriteriaType::AccountKnownPet:
- case CriteriaType::CompletedLFGDungeon:
case CriteriaType::KickInitiatorInLFGDungeon:
case CriteriaType::KickVoterInLFGDungeon:
case CriteriaType::KickTargetInLFGDungeon:
@@ -1199,6 +1199,7 @@ bool CriteriaHandler::IsCompletedCriteria(Criteria const* criteria, uint64 requi
case CriteriaType::DefeatDungeonEncounterWhileElegibleForLoot:
case CriteriaType::GetLootByType:
case CriteriaType::LearnTradeskillSkillLine:
+ case CriteriaType::CompletedLFGDungeon:
case CriteriaType::CompletedLFGDungeonWithStrangers:
case CriteriaType::DeliveredKillingBlow:
case CriteriaType::CurrencyGained:
@@ -1380,6 +1381,7 @@ bool CriteriaHandler::RequirementsSatisfied(Criteria const* criteria, uint64 mis
case CriteriaType::KillPlayer:
case CriteriaType::TotalDamageTaken:
case CriteriaType::TotalHealReceived:
+ case CriteriaType::CompletedLFGDungeon:
case CriteriaType::CompletedLFGDungeonWithStrangers:
case CriteriaType::GotHaircut:
case CriteriaType::WinDuel:
diff --git a/src/server/game/DataStores/DBCEnums.h b/src/server/game/DataStores/DBCEnums.h
index e0a58c52c70..61140dd8173 100644
--- a/src/server/game/DataStores/DBCEnums.h
+++ b/src/server/game/DataStores/DBCEnums.h
@@ -619,7 +619,7 @@ enum class CriteriaType : int16
EarnAchievementPoints = 115, // Earn achievement points
RollDisenchant = 116, /*NYI*/ // Roll disenchant and get {#Disenchant Roll}
RollAnyDisenchant = 117, /*NYI*/ // Roll any number on disenchant
- CompletedLFGDungeon = 118, /*NYI*/ // Completed an LFG dungeon
+ CompletedLFGDungeon = 118, // Completed an LFG dungeon
CompletedLFGDungeonWithStrangers = 119, // Completed an LFG dungeon with strangers
KickInitiatorInLFGDungeon = 120, /*NYI*/ // Kicked in an LFG dungeon (initiator)
KickVoterInLFGDungeon = 121, /*NYI*/ // Kicked in an LFG dungeon (voter)
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp
index 94e596acff9..9297209a2f3 100644
--- a/src/server/game/DungeonFinding/LFGMgr.cpp
+++ b/src/server/game/DungeonFinding/LFGMgr.cpp
@@ -1538,6 +1538,8 @@ void LFGMgr::FinishDungeon(ObjectGuid gguid, const uint32 dungeonId, Map const*
continue;
}
+ player->UpdateCriteria(CriteriaType::CompletedLFGDungeon, 1);
+
// Update achievements
if (dungeon->difficulty == DIFFICULTY_HEROIC)
{