diff options
Diffstat (limited to 'src/server/game/Instances/InstanceScript.cpp')
-rw-r--r-- | src/server/game/Instances/InstanceScript.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/Instances/InstanceScript.cpp b/src/server/game/Instances/InstanceScript.cpp index 2494c4852af..edc8cd584f7 100644 --- a/src/server/game/Instances/InstanceScript.cpp +++ b/src/server/game/Instances/InstanceScript.cpp @@ -35,6 +35,7 @@ #include "PhasingHandler.h" #include "Player.h" #include "RBAC.h" +#include "ScriptedCreature.h" #include "ScriptReloadMgr.h" #include "SmartEnum.h" #include "SpellMgr.h" @@ -729,6 +730,14 @@ DungeonEncounterEntry const* InstanceScript::GetBossDungeonEncounter(uint32 id) return id < bosses.size() ? bosses[id].GetDungeonEncounterForDifficulty(instance->GetDifficultyID()) : nullptr; } +DungeonEncounterEntry const* InstanceScript::GetBossDungeonEncounter(Creature const* creature) const +{ + if (BossAI const* bossAi = dynamic_cast<BossAI const*>(creature->GetAI())) + return GetBossDungeonEncounter(bossAi->GetBossId()); + + return nullptr; +} + bool InstanceScript::CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* /*source*/, Unit const* /*target*/ /*= nullptr*/, uint32 /*miscvalue1*/ /*= 0*/) { TC_LOG_ERROR("misc", "Achievement system call InstanceScript::CheckAchievementCriteriaMeet but instance script for map %u not have implementation for achievement criteria %u", |