diff options
Diffstat (limited to 'src/game')
-rw-r--r-- | src/game/InstanceData.cpp | 11 | ||||
-rw-r--r-- | src/game/InstanceData.h | 3 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/game/InstanceData.cpp b/src/game/InstanceData.cpp index cc42a453ea8..3ff804818ea 100644 --- a/src/game/InstanceData.cpp +++ b/src/game/InstanceData.cpp @@ -322,6 +322,17 @@ void InstanceData::DoCompleteAchievement(uint32 achievement) pPlayer->CompletedAchievement(AE); } +// Update Achievement Criteria for all players in instance +void InstanceData::DoUpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1, uint32 miscvalue2, Unit *unit, uint32 time) +{ + Map::PlayerList const &PlayerList = instance->GetPlayers(); + + if (!PlayerList.isEmpty()) + for (Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i) + if (Player *pPlayer = i->getSource()) + pPlayer->UpdateAchievementCriteria(type, miscvalue1, miscvalue2, unit, time); +} + // Remove Auras due to Spell on all players in instance void InstanceData::DoRemoveAurasDueToSpellOnPlayers(uint32 spell) { diff --git a/src/game/InstanceData.h b/src/game/InstanceData.h index e6fcb25b355..eb4581a84b9 100644 --- a/src/game/InstanceData.h +++ b/src/game/InstanceData.h @@ -158,6 +158,9 @@ class InstanceData : public ZoneScript // Complete Achievement for all players in instance void DoCompleteAchievement(uint32 achievement); + // Update Achievement Criteria for all players in instance + void DoUpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0, Unit *unit=NULL, uint32 time=0); + // Remove Auras due to Spell on all players in instance void DoRemoveAurasDueToSpellOnPlayers(uint32 spell); |