From 3f0bef7a329901c6c35686ea53e35db61cadc438 Mon Sep 17 00:00:00 2001 From: rastikzzz Date: Wed, 8 Apr 2009 18:16:57 +0200 Subject: [PATCH] [7637] Prevent console spam - FATAL: Unknown arena team type %u for some arena team. Signed-off-by: Triply --- src/game/AchievementMgr.cpp | 20 ++++++-------------- src/shared/revision_nr.h | 2 +- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/src/game/AchievementMgr.cpp b/src/game/AchievementMgr.cpp index 2c41080d3..97795847f 100644 --- a/src/game/AchievementMgr.cpp +++ b/src/game/AchievementMgr.cpp @@ -673,20 +673,12 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui // AchievementMgr::UpdateAchievementCriteria might also be called on login - skip in this case if(!miscvalue1) continue; - // skip wrong arena achievements, if not achievIdByArenaSlot then normal totla death counter - bool notfit = false; - for(int i = 0; i < MAX_ARENA_SLOT; ++i) - { - if(achievIdByArenaSlot[i] == achievement->ID) - { - BattleGround* bg = GetPlayer()->GetBattleGround(); - if(!bg || ArenaTeam::GetSlotByType(bg->GetArenaType())!=i) - notfit = true; - - break; - } - } - if(notfit) + BattleGround* bg = GetPlayer()->GetBattleGround(); + if(!bg || !bg->isArena()) + continue; + //bg is arena so bg->GetArenaType() will return correct value + uint8 slot = ArenaTeam::GetSlotByType(bg->GetArenaType()); + if(slot >= MAX_ARENA_SLOT || achievIdByArenaSlot[slot] != achievement->ID) continue; SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 6a2841108..47b8aa86a 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "7636" + #define REVISION_NR "7637" #endif // __REVISION_NR_H__