mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
fix(Core/Achievements): Track World Wide Winner arena wins (#26772)
This commit is contained in:
@@ -1775,7 +1775,7 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui
|
|||||||
{
|
{
|
||||||
// those requirements couldn't be found in the dbc
|
// those requirements couldn't be found in the dbc
|
||||||
AchievementCriteriaDataSet const* data = sAchievementMgr->GetCriteriaDataSet(achievementCriteria);
|
AchievementCriteriaDataSet const* data = sAchievementMgr->GetCriteriaDataSet(achievementCriteria);
|
||||||
if (!data || !data->Meets(GetPlayer(), nullptr))
|
if (!data || !data->Meets(GetPlayer(), unit))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// Check map id requirement
|
// Check map id requirement
|
||||||
|
|||||||
@@ -342,7 +342,7 @@ void Arena::EndBattleground(TeamId winnerTeamId)
|
|||||||
// update achievement BEFORE personal rating update
|
// update achievement BEFORE personal rating update
|
||||||
uint32 rating = player->GetArenaPersonalRating(winnerArenaTeam->GetSlot());
|
uint32 rating = player->GetArenaPersonalRating(winnerArenaTeam->GetSlot());
|
||||||
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA, rating ? rating : 1);
|
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA, rating ? rating : 1);
|
||||||
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_WIN_ARENA, GetMapId());
|
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_WIN_ARENA, GetMapId(), 0, player);
|
||||||
|
|
||||||
// Last standing - Rated 5v5 arena & be solely alive player
|
// Last standing - Rated 5v5 arena & be solely alive player
|
||||||
if (GetArenaType() == ARENA_TYPE_5v5 && aliveWinners == 1 && player->IsAlive())
|
if (GetArenaType() == ARENA_TYPE_5v5 && aliveWinners == 1 && player->IsAlive())
|
||||||
|
|||||||
Reference in New Issue
Block a user