diff options
| author | Gustavo <sirikfoll@hotmail.com> | 2016-07-18 07:35:11 -0300 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2016-07-18 12:35:11 +0200 |
| commit | f826ecb4b2e8cc1fa54419947dff041a580d9c03 (patch) | |
| tree | 6a267cc70cd1de170904d895214e2af40ada985e | |
| parent | 028e473ec4693291266770616bcc54b71fefa835 (diff) | |
Core/AI Prevent bosses respawn when BossState is set to DONE (#17616)
| -rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedCreature.cpp | 8 | ||||
| -rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedCreature.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp index 6475cc8117e..316a9704cac 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp @@ -507,6 +507,14 @@ void BossAI::_EnterCombat() ScheduleTasks(); } +bool BossAI::CanRespawn() +{ + if (instance && instance->GetBossState(_bossId) == DONE) + return false; + + return true; +} + void BossAI::TeleportCheaters() { float x, y, z; diff --git a/src/server/game/AI/ScriptedAI/ScriptedCreature.h b/src/server/game/AI/ScriptedAI/ScriptedCreature.h index 5a4ec290459..bbc7e8beadb 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedCreature.h +++ b/src/server/game/AI/ScriptedAI/ScriptedCreature.h @@ -361,6 +361,7 @@ class TC_GAME_API BossAI : public ScriptedAI void JustReachedHome() override { _JustReachedHome(); } bool CanAIAttack(Unit const* target) const override { return CheckBoundary(target); } + bool CanRespawn() override; protected: void _Reset(); |
