Scripts/Ulduar: Changed behaving of Elders when Freya is killed

This commit is contained in:
Lopin
2011-10-09 14:04:21 +02:00
parent 20fdd5532f
commit 3b4b6a2d9a
@@ -24,11 +24,6 @@
#include "GridNotifiersImpl.h" #include "GridNotifiersImpl.h"
#include "ulduar.h" #include "ulduar.h"
/*
* **** TODO ****
* Achievements *
*/
enum FreyaYells enum FreyaYells
{ {
// Freya // Freya
@@ -188,6 +183,7 @@ enum FreyaNpcs
enum FreyaActions enum FreyaActions
{ {
ACTION_ELDER_DEATH = 1, ACTION_ELDER_DEATH = 1,
ACTION_ELDER_FREYA_KILLED = 2,
}; };
enum FreyaEvents enum FreyaEvents
@@ -331,7 +327,7 @@ class boss_freya : public CreatureScript
void DamageTaken(Unit* /*who*/, uint32& damage) void DamageTaken(Unit* /*who*/, uint32& damage)
{ {
if (damage >= me->GetHealth() && instance) if (damage >= me->GetHealth())
{ {
damage = 0; damage = 0;
DoScriptText(SAY_DEATH, me); DoScriptText(SAY_DEATH, me);
@@ -351,11 +347,11 @@ class boss_freya : public CreatureScript
Elder[n] = ObjectAccessor::GetCreature(*me, instance->GetData64(BOSS_BRIGHTLEAF + n)); Elder[n] = ObjectAccessor::GetCreature(*me, instance->GetData64(BOSS_BRIGHTLEAF + n));
if (Elder[n] && Elder[n]->isAlive()) if (Elder[n] && Elder[n]->isAlive())
{ {
Elder[n]->setFaction(35);
Elder[n]->RemoveAllAuras(); Elder[n]->RemoveAllAuras();
Elder[n]->AttackStop(); Elder[n]->AttackStop();
Elder[n]->CombatStop(true); Elder[n]->CombatStop(true);
Elder[n]->DeleteThreatList(); Elder[n]->DeleteThreatList();
Elder[n]->GetAI()->DoAction(ACTION_ELDER_FREYA_KILLED);
} }
} }
} }
@@ -811,6 +807,10 @@ class boss_elder_brightleaf : public CreatureScript
++elderCount; ++elderCount;
lumberjack = true; lumberjack = true;
break; break;
case ACTION_ELDER_FREYA_KILLED:
me->DespawnOrUnsummon(10000);
_JustDied();
break;
} }
} }
@@ -933,6 +933,10 @@ class boss_elder_stonebark : public CreatureScript
++elderCount; ++elderCount;
lumberjack = true; lumberjack = true;
break; break;
case ACTION_ELDER_FREYA_KILLED:
me->DespawnOrUnsummon(10000);
_JustDied();
break;
} }
} }
@@ -1042,6 +1046,10 @@ class boss_elder_ironbranch : public CreatureScript
++elderCount; ++elderCount;
lumberjack = true; lumberjack = true;
break; break;
case ACTION_ELDER_FREYA_KILLED:
me->DespawnOrUnsummon(10000);
_JustDied();
break;
} }
} }