mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-15 00:06:11 +00:00
Merge branch 'azerothcore:master' into Playerbot
This commit is contained in:
@@ -133,13 +133,13 @@ struct boss_anub_arak : public BossAI
|
||||
DoCastSelf(SPELL_IMPALE_PERIODIC, true);
|
||||
|
||||
++_submergePhase;
|
||||
events.Reset();
|
||||
ScheduleSubmerged();
|
||||
}
|
||||
}
|
||||
|
||||
void ScheduleEmerged()
|
||||
{
|
||||
events.Reset();
|
||||
events.SetPhase(PHASE_EMERGED);
|
||||
events.ScheduleEvent(EVENT_CARRION_BEETLES, 6500ms, 0, PHASE_EMERGED);
|
||||
events.ScheduleEvent(EVENT_LEECHING_SWARM, 20s, 0, PHASE_EMERGED);
|
||||
@@ -148,7 +148,6 @@ struct boss_anub_arak : public BossAI
|
||||
|
||||
void ScheduleSubmerged()
|
||||
{
|
||||
events.Reset();
|
||||
events.SetPhase(PHASE_SUBMERGED);
|
||||
events.ScheduleEvent(EVENT_EMERGE, 60s, 0, PHASE_SUBMERGED);
|
||||
|
||||
@@ -209,14 +208,13 @@ struct boss_anub_arak : public BossAI
|
||||
}
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* who) override
|
||||
void JustEngagedWith(Unit* /*who*/) override
|
||||
{
|
||||
BossAI::JustEngagedWith(who);
|
||||
Talk(SAY_AGGRO);
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
|
||||
events.SetPhase(PHASE_EMERGED);
|
||||
events.ScheduleEvent(EVENT_CLOSE_DOORS, 5s);
|
||||
events.ScheduleEvent(EVENT_CLOSE_DOORS, 5s, 0, PHASE_EMERGED);
|
||||
ScheduleEmerged();
|
||||
|
||||
// set up world triggers
|
||||
@@ -288,7 +286,8 @@ struct boss_anub_arak : public BossAI
|
||||
if (_remainingLargeSummonsBeforeEmerge == 0)
|
||||
{
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_EMERGE, 5s);
|
||||
events.SetPhase(PHASE_SUBMERGED);
|
||||
events.ScheduleEvent(EVENT_EMERGE, 5s, 0, PHASE_SUBMERGED);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -333,10 +332,10 @@ struct boss_anub_arak : public BossAI
|
||||
DoCastSelf(SPELL_SELF_ROOT, true);
|
||||
me->DisableRotate(true);
|
||||
me->SendMovementFlagUpdate();
|
||||
events.ScheduleEvent(EVENT_ENABLE_ROTATE, 3300ms);
|
||||
events.ScheduleEvent(EVENT_ENABLE_ROTATE, 3300ms, 0, PHASE_EMERGED);
|
||||
DoCast(target, SPELL_POUND);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_POUND, 18s);
|
||||
events.ScheduleEvent(EVENT_POUND, 18s, 0, PHASE_EMERGED);
|
||||
break;
|
||||
case EVENT_ENABLE_ROTATE:
|
||||
me->RemoveAurasDueToSpell(SPELL_SELF_ROOT);
|
||||
|
||||
@@ -33,7 +33,6 @@ enum Yells
|
||||
enum Spells
|
||||
{
|
||||
SPELL_CURSE_OF_LIFE = 49527,
|
||||
SPELL_RAIN_OF_FIRE = 49518,
|
||||
SPELL_SHADOW_VOLLEY = 49528,
|
||||
|
||||
// flesh spells
|
||||
@@ -56,7 +55,6 @@ enum Misc
|
||||
ACTION_TURN_BONES = 1,
|
||||
|
||||
EVENT_SPELL_CURSE_OF_LIFE = 1,
|
||||
EVENT_SPELL_RAIN_OF_FIRE = 2,
|
||||
EVENT_SPELL_SHADOW_VOLLEY = 3,
|
||||
EVENT_SPELL_EYE_BEAM = 4,
|
||||
EVENT_SPELL_LIGHTNING_BREATH = 5,
|
||||
@@ -97,7 +95,6 @@ public:
|
||||
Talk(SAY_AGGRO);
|
||||
BossAI::JustEngagedWith(who);
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 5s);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, 14s, 18s);
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, 8s, 10s);
|
||||
events.ScheduleEvent(EVENT_SPELL_TURN_FLESH, 1s);
|
||||
}
|
||||
@@ -146,17 +143,11 @@ public:
|
||||
switch (events.ExecuteEvent())
|
||||
{
|
||||
case EVENT_SPELL_CURSE_OF_LIFE:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f, true))
|
||||
me->CastSpell(target, SPELL_CURSE_OF_LIFE, false);
|
||||
DoCastRandomTarget(SPELL_CURSE_OF_LIFE, 0, 30.0f, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 13s);
|
||||
break;
|
||||
case EVENT_SPELL_RAIN_OF_FIRE:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f, true))
|
||||
me->CastSpell(target, SPELL_RAIN_OF_FIRE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, 16s);
|
||||
break;
|
||||
case EVENT_SPELL_SHADOW_VOLLEY:
|
||||
me->CastSpell(me, SPELL_SHADOW_VOLLEY, false);
|
||||
DoCastAOE(SPELL_SHADOW_VOLLEY);
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, 9s);
|
||||
break;
|
||||
case EVENT_SPELL_TURN_FLESH:
|
||||
@@ -173,9 +164,8 @@ public:
|
||||
events.ScheduleEvent(EVENT_SPELL_TURN_FLESH, 1s);
|
||||
break;
|
||||
case EVENT_TURN_FLESH_REAL:
|
||||
me->CastSpell(me, SPELL_DUMMY, true);
|
||||
|
||||
me->GetMotionMaster()->MoveChase(me->GetVictim());
|
||||
DoCastSelf(SPELL_DUMMY, true);
|
||||
me->ResumeChasingVictim();
|
||||
events.ScheduleEvent(EVENT_SPELL_EYE_BEAM, 11s);
|
||||
events.ScheduleEvent(EVENT_SPELL_LIGHTNING_BREATH, 3s);
|
||||
events.ScheduleEvent(EVENT_SPELL_POISON_CLOUD, 6s);
|
||||
@@ -199,7 +189,6 @@ public:
|
||||
me->CastSpell(me, SPELL_CLEAR_GIFT, true);
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 1s);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, 12s, 14s);
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, 8s, 10s);
|
||||
break;
|
||||
}
|
||||
@@ -249,7 +238,6 @@ class spell_tharon_ja_dummy_aura : public AuraScript
|
||||
{
|
||||
PreventDefaultAction();
|
||||
GetUnitOwner()->GetThreatMgr().ResetAllThreat();
|
||||
GetUnitOwner()->GetMotionMaster()->Clear();
|
||||
GetUnitOwner()->CastSpell((Unit*)nullptr, SPELL_TURN_BONES, false);
|
||||
GetUnitOwner()->GetAI()->DoAction(ACTION_TURN_BONES);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user