aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Globals/ObjectMgr.cpp
diff options
context:
space:
mode:
authortreeston <treeston.mmoc@gmail.com>2017-02-19 19:26:44 +0100
committerShauren <shauren.trinity@gmail.com>2019-07-21 21:06:54 +0200
commit6455f1c256e566da43d55583bca9c94c0d3139ce (patch)
tree40cf3dfba0e020153afd89af1dfafbe6d5885b78 /src/server/game/Globals/ObjectMgr.cpp
parent83e277724945a8849c93cf041ecb071a76c4c7b4 (diff)
DB/Creature: The instance_encounters extra flag (CREATURE_FLAG_EXTRA_DUNGEON_BOSS) now properly propagates to all difficulty entries (not just difficulty 0).
This lets us simplify IsDungeonBoss() on Creature (and move it to header). Closes #18824. (cherrypicked from 1beb2e5fd6e85332173b1f3e414d5b385c3022fb)
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 18c922bbb84..ad5eb8f7969 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -5671,6 +5671,14 @@ void ObjectMgr::LoadInstanceEncounters()
continue;
}
const_cast<CreatureTemplate*>(creatureInfo)->flags_extra |= CREATURE_FLAG_EXTRA_DUNGEON_BOSS;
+ for (uint8 diff = 0; diff < MAX_CREATURE_DIFFICULTIES; ++diff)
+ {
+ if (uint32 diffEntry = creatureInfo->DifficultyEntry[diff])
+ {
+ if (CreatureTemplate const* diffInfo = GetCreatureTemplate(diffEntry))
+ const_cast<CreatureTemplate*>(diffInfo)->flags_extra |= CREATURE_FLAG_EXTRA_DUNGEON_BOSS;
+ }
+ }
break;
}
case ENCOUNTER_CREDIT_CAST_SPELL: