Core/Scripts: Fix a DB warning for Ruby Sanctum (npcflag) and remove unneeded declare of EventMap.
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
UPDATE `creature_template` SET `npcflag`=2 WHERE `entry`=40429;
|
||||||
@@ -81,8 +81,8 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
{
|
{
|
||||||
_Reset();
|
_Reset();
|
||||||
_introDone = false;
|
_introDone = false;
|
||||||
_events.SetPhase(PHASE_INTRO);
|
events.SetPhase(PHASE_INTRO);
|
||||||
_events.ScheduleEvent(EVENT_OOC_CHANNEL, 0, 0, PHASE_INTRO);
|
events.ScheduleEvent(EVENT_OOC_CHANNEL, 0, 0, PHASE_INTRO);
|
||||||
_cloneCount = RAID_MODE<uint8>(1, 2, 2, 3);
|
_cloneCount = RAID_MODE<uint8>(1, 2, 2, 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -95,7 +95,7 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
return;
|
return;
|
||||||
_introDone = true;
|
_introDone = true;
|
||||||
me->setActive(true);
|
me->setActive(true);
|
||||||
_events.ScheduleEvent(EVENT_INTRO_TALK, 7000, 0, PHASE_INTRO);
|
events.ScheduleEvent(EVENT_INTRO_TALK, 7000, 0, PHASE_INTRO);
|
||||||
break;
|
break;
|
||||||
case ACTION_CLONE:
|
case ACTION_CLONE:
|
||||||
{
|
{
|
||||||
@@ -111,14 +111,14 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnterCombat(Unit* /*victim*/)
|
void EnterCombat(Unit* /*who*/)
|
||||||
{
|
{
|
||||||
me->InterruptNonMeleeSpells(false);
|
me->InterruptNonMeleeSpells(false);
|
||||||
_EnterCombat();
|
_EnterCombat();
|
||||||
_events.SetPhase(PHASE_COMBAT);
|
events.SetPhase(PHASE_COMBAT);
|
||||||
_events.ScheduleEvent(EVENT_CLEAVE, 110000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_CLEAVE, 110000, 0, PHASE_COMBAT);
|
||||||
_events.ScheduleEvent(EVENT_ENERVATING_BRAND, 130000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_ENERVATING_BRAND, 130000, 0, PHASE_COMBAT);
|
||||||
_events.ScheduleEvent(EVENT_BLADE_TEMPEST, 150000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_BLADE_TEMPEST, 150000, 0, PHASE_COMBAT);
|
||||||
Talk(SAY_AGGRO);
|
Talk(SAY_AGGRO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,15 +170,15 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
|
|
||||||
void UpdateAI(uint32 const diff)
|
void UpdateAI(uint32 const diff)
|
||||||
{
|
{
|
||||||
if (!UpdateVictim() && !(_events.GetPhaseMask() & PHASE_INTRO_MASK))
|
if (!UpdateVictim() && !(events.GetPhaseMask() & PHASE_INTRO_MASK))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_events.Update(diff);
|
events.Update(diff);
|
||||||
|
|
||||||
if (me->HasUnitState(UNIT_STAT_CASTING) && !(_events.GetPhaseMask() & PHASE_INTRO_MASK))
|
if (me->HasUnitState(UNIT_STAT_CASTING) && !(events.GetPhaseMask() & PHASE_INTRO_MASK))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
while (uint32 eventId = _events.ExecuteEvent())
|
while (uint32 eventId = events.ExecuteEvent())
|
||||||
{
|
{
|
||||||
switch (eventId)
|
switch (eventId)
|
||||||
{
|
{
|
||||||
@@ -188,21 +188,21 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
case EVENT_OOC_CHANNEL:
|
case EVENT_OOC_CHANNEL:
|
||||||
if (Creature* channelTarget = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_CRYSTAL_CHANNEL_TARGET)))
|
if (Creature* channelTarget = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_CRYSTAL_CHANNEL_TARGET)))
|
||||||
DoCast(channelTarget, SPELL_BARRIER_CHANNEL);
|
DoCast(channelTarget, SPELL_BARRIER_CHANNEL);
|
||||||
_events.ScheduleEvent(EVENT_OOC_CHANNEL, 7000, 0, PHASE_INTRO);
|
events.ScheduleEvent(EVENT_OOC_CHANNEL, 7000, 0, PHASE_INTRO);
|
||||||
break;
|
break;
|
||||||
case EVENT_CLEAVE:
|
case EVENT_CLEAVE:
|
||||||
DoCastVictim(SPELL_CLEAVE);
|
DoCastVictim(SPELL_CLEAVE);
|
||||||
_events.ScheduleEvent(EVENT_CLEAVE, 24000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_CLEAVE, 24000, 0, PHASE_COMBAT);
|
||||||
break;
|
break;
|
||||||
case EVENT_BLADE_TEMPEST:
|
case EVENT_BLADE_TEMPEST:
|
||||||
DoCast(me, SPELL_BLADE_TEMPEST);
|
DoCast(me, SPELL_BLADE_TEMPEST);
|
||||||
_events.ScheduleEvent(EVENT_BLADE_TEMPEST, 24000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_BLADE_TEMPEST, 24000, 0, PHASE_COMBAT);
|
||||||
break;
|
break;
|
||||||
case EVENT_ENERVATING_BRAND:
|
case EVENT_ENERVATING_BRAND:
|
||||||
for (uint8 i = 0; i < RAID_MODE<uint8>(4, 8, 8, 10); i++)
|
for (uint8 i = 0; i < RAID_MODE<uint8>(4, 8, 8, 10); i++)
|
||||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 45.0f, true))
|
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 45.0f, true))
|
||||||
DoCast(target, SPELL_ENERVATING_BRAND);
|
DoCast(target, SPELL_ENERVATING_BRAND);
|
||||||
_events.ScheduleEvent(EVENT_ENERVATING_BRAND, 26000, 0, PHASE_COMBAT);
|
events.ScheduleEvent(EVENT_ENERVATING_BRAND, 26000, 0, PHASE_COMBAT);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@@ -213,7 +213,6 @@ class boss_baltharus_the_warborn : public CreatureScript
|
|||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
EventMap _events;
|
|
||||||
uint8 _cloneCount;
|
uint8 _cloneCount;
|
||||||
bool _introDone;
|
bool _introDone;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user