Core/Scripts port _DespawnAtEvade functionality to 3.3.5 branch

Implement _DespawnAtEvade  functionality to boss Lich King
This commit is contained in:
sirikfoll
2016-02-09 20:27:10 -02:00
parent 8eabbb0427
commit a36d78526d
4 changed files with 55 additions and 24 deletions

View File

@@ -547,6 +547,29 @@ void BossAI::UpdateAI(uint32 diff)
DoMeleeAttackIfReady();
}
void BossAI::_DespawnAtEvade(uint32 delayToRespawn)
{
if (delayToRespawn < 2)
{
TC_LOG_ERROR("scripts", "_DespawnAtEvade called with delay of %u seconds, defaulting to 2.", delayToRespawn);
delayToRespawn = 2;
}
uint32 corpseDelay = me->GetCorpseDelay();
uint32 respawnDelay = me->GetRespawnDelay();
me->SetCorpseDelay(1);
me->SetRespawnDelay(delayToRespawn - 1);
me->DespawnOrUnsummon();
me->SetCorpseDelay(corpseDelay);
me->SetRespawnDelay(respawnDelay);
if(instance)
instance->SetBossState(_bossId, FAIL);
}
// WorldBossAI - for non-instanced bosses
WorldBossAI::WorldBossAI(Creature* creature) :