mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 16:37:01 +00:00
[8460] Use achievtment criteria data from table for ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL as expected.
This commit is contained in:
parent
3b40f8960a
commit
62501d2e02
2 changed files with 13 additions and 20 deletions
|
|
@ -1017,10 +1017,22 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui
|
||||||
SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE);
|
SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE);
|
||||||
break;
|
break;
|
||||||
case ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL:
|
case ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL:
|
||||||
|
case ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL2:
|
||||||
|
{
|
||||||
if (!miscvalue1 || miscvalue1 != achievementCriteria->cast_spell.spellID)
|
if (!miscvalue1 || miscvalue1 != achievementCriteria->cast_spell.spellID)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
// those requirements couldn't be found in the dbc
|
||||||
|
AchievementCriteriaDataSet const* data = achievementmgr.GetCriteriaDataSet(achievementCriteria);
|
||||||
|
if(!data)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if(!data->Meets(GetPlayer(),unit))
|
||||||
|
continue;
|
||||||
|
|
||||||
SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE);
|
SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE);
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SPELL:
|
case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SPELL:
|
||||||
if(miscvalue1 && miscvalue1!=achievementCriteria->learn_spell.spellID)
|
if(miscvalue1 && miscvalue1!=achievementCriteria->learn_spell.spellID)
|
||||||
continue;
|
continue;
|
||||||
|
|
@ -1279,25 +1291,6 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui
|
||||||
case ACHIEVEMENT_CRITERIA_TYPE_KNOWN_FACTIONS:
|
case ACHIEVEMENT_CRITERIA_TYPE_KNOWN_FACTIONS:
|
||||||
SetCriteriaProgress(achievementCriteria, GetPlayer()->GetReputationMgr().GetVisibleFactionCount());
|
SetCriteriaProgress(achievementCriteria, GetPlayer()->GetReputationMgr().GetVisibleFactionCount());
|
||||||
break;
|
break;
|
||||||
case ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL2:
|
|
||||||
{
|
|
||||||
if (!miscvalue1)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (!miscvalue1 || miscvalue1 != achievementCriteria->cast_spell.spellID)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
// those requirements couldn't be found in the dbc
|
|
||||||
AchievementCriteriaDataSet const* data = achievementmgr.GetCriteriaDataSet(achievementCriteria);
|
|
||||||
if(!data)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if(!data->Meets(GetPlayer(),unit))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LINE:
|
case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LINE:
|
||||||
{
|
{
|
||||||
if (miscvalue1 && miscvalue1 != achievementCriteria->learn_skill_line.skillLine)
|
if (miscvalue1 && miscvalue1 != achievementCriteria->learn_skill_line.skillLine)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "8459"
|
#define REVISION_NR "8460"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue