mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-22 05:06:24 +00:00
refactor(Scripts/Northrend): conversion to std::chrono (#15269)
Co-authored-by: Maelthyrr <maelthyrr@users.noreply.github.com>
This commit is contained in:
@@ -86,15 +86,15 @@ public:
|
||||
BossAI::JustEngagedWith(who);
|
||||
_raptorCount = 0;
|
||||
|
||||
events.ScheduleEvent(EVENT_SPELL_BELLOWING_ROAR, 33000);
|
||||
events.ScheduleEvent(EVENT_SPELL_GRIEVOUS_BITE, 20000);
|
||||
events.ScheduleEvent(EVENT_SPELL_MANGLING_SLASH, 18500);
|
||||
events.ScheduleEvent(EVENT_SPELL_FEARSOME_ROAR, urand(10000, 20000));
|
||||
events.ScheduleEvent(EVENT_SPELL_PIERCING_SLASH, 17000);
|
||||
events.ScheduleEvent(EVENT_SPELL_BELLOWING_ROAR, 33s);
|
||||
events.ScheduleEvent(EVENT_SPELL_GRIEVOUS_BITE, 20s);
|
||||
events.ScheduleEvent(EVENT_SPELL_MANGLING_SLASH, 18s + 500ms);
|
||||
events.ScheduleEvent(EVENT_SPELL_FEARSOME_ROAR, 10s, 20s);
|
||||
events.ScheduleEvent(EVENT_SPELL_PIERCING_SLASH, 17s);
|
||||
if (IsHeroic())
|
||||
{
|
||||
events.ScheduleEvent(EVENT_MENACING_CLAW, 21000);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAPTOR_CALL, urand(20000, 25000));
|
||||
events.ScheduleEvent(EVENT_MENACING_CLAW, 21s);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAPTOR_CALL, 20s, 25s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,27 +111,27 @@ public:
|
||||
{
|
||||
case EVENT_SPELL_BELLOWING_ROAR:
|
||||
me->CastSpell(me, SPELL_BELLOWING_ROAR, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_BELLOWING_ROAR, 40000);
|
||||
events.ScheduleEvent(EVENT_SPELL_BELLOWING_ROAR, 40s);
|
||||
break;
|
||||
case EVENT_SPELL_GRIEVOUS_BITE:
|
||||
me->CastSpell(me->GetVictim(), SPELL_GRIEVOUS_BITE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_GRIEVOUS_BITE, 20000);
|
||||
events.ScheduleEvent(EVENT_SPELL_GRIEVOUS_BITE, 20s);
|
||||
break;
|
||||
case EVENT_SPELL_MANGLING_SLASH:
|
||||
me->CastSpell(me->GetVictim(), SPELL_MANGLING_SLASH, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_MANGLING_SLASH, 20000);
|
||||
events.ScheduleEvent(EVENT_SPELL_MANGLING_SLASH, 20s);
|
||||
break;
|
||||
case EVENT_SPELL_FEARSOME_ROAR:
|
||||
me->CastSpell(me, SPELL_FEARSOME_ROAR, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_FEARSOME_ROAR, 17000);
|
||||
events.ScheduleEvent(EVENT_SPELL_FEARSOME_ROAR, 17s);
|
||||
break;
|
||||
case EVENT_SPELL_PIERCING_SLASH:
|
||||
me->CastSpell(me->GetVictim(), SPELL_PIERCING_SLASH, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_PIERCING_SLASH, 20000);
|
||||
events.ScheduleEvent(EVENT_SPELL_PIERCING_SLASH, 20s);
|
||||
break;
|
||||
case EVENT_SPELL_RAPTOR_CALL:
|
||||
me->CastSpell(me, SPELL_RAPTOR_CALL, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAPTOR_CALL, 20000);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAPTOR_CALL, 20s);
|
||||
break;
|
||||
case EVENT_MENACING_CLAW:
|
||||
Talk(SAY_CLAW_EMOTE);
|
||||
@@ -141,7 +141,7 @@ public:
|
||||
me->AttackerStateUpdate(me->GetVictim());
|
||||
if (me->GetVictim())
|
||||
me->AttackerStateUpdate(me->GetVictim());
|
||||
events.ScheduleEvent(EVENT_MENACING_CLAW, 20000);
|
||||
events.ScheduleEvent(EVENT_MENACING_CLAW, 20s);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -122,11 +122,11 @@ public:
|
||||
Talk(SAY_AGGRO);
|
||||
BossAI::JustEngagedWith(who);
|
||||
|
||||
events.ScheduleEvent(EVENT_SUMMON_FETID_TROLL, 3000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_SHADOWCASTER, 9000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_HULKING_CORPSE, 30000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_CRYSTAL_HANDLER, 20000);
|
||||
events.ScheduleEvent(EVENT_CHECK_PHASE, 80000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_FETID_TROLL, 3s);
|
||||
events.ScheduleEvent(EVENT_SUMMON_SHADOWCASTER, 9s);
|
||||
events.ScheduleEvent(EVENT_SUMMON_HULKING_CORPSE, 30s);
|
||||
events.ScheduleEvent(EVENT_SUMMON_CRYSTAL_HANDLER, 20s);
|
||||
events.ScheduleEvent(EVENT_CHECK_PHASE, 80s);
|
||||
|
||||
me->CastSpell(me, SPELL_ARCANE_BLAST, true);
|
||||
me->CastSpell(me, SPELL_ARCANE_FIELD, true);
|
||||
@@ -167,7 +167,7 @@ public:
|
||||
if (events.GetNextEventTime(EVENT_KILL_TALK) == 0)
|
||||
{
|
||||
Talk(SAY_KILL);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6000);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -191,17 +191,17 @@ public:
|
||||
case EVENT_SUMMON_FETID_TROLL:
|
||||
if (Creature* trigger = summons.GetCreatureWithEntry(NPC_CRYSTAL_CHANNEL_TARGET))
|
||||
trigger->CastSpell(trigger, SPELL_SUMMON_FETID_TROLL_CORPSE, true, nullptr, nullptr, me->GetGUID());
|
||||
events.ScheduleEvent(EVENT_SUMMON_FETID_TROLL, 3000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_FETID_TROLL, 3s);
|
||||
break;
|
||||
case EVENT_SUMMON_HULKING_CORPSE:
|
||||
if (Creature* trigger = summons.GetCreatureWithEntry(NPC_CRYSTAL_CHANNEL_TARGET))
|
||||
trigger->CastSpell(trigger, SPELL_SUMMON_HULKING_CORPSE, true, nullptr, nullptr, me->GetGUID());
|
||||
events.ScheduleEvent(EVENT_SUMMON_HULKING_CORPSE, 30000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_HULKING_CORPSE, 30s);
|
||||
break;
|
||||
case EVENT_SUMMON_SHADOWCASTER:
|
||||
if (Creature* trigger = summons.GetCreatureWithEntry(NPC_CRYSTAL_CHANNEL_TARGET))
|
||||
trigger->CastSpell(trigger, SPELL_SUMMON_RISEN_SHADOWCASTER, true, nullptr, nullptr, me->GetGUID());
|
||||
events.ScheduleEvent(EVENT_SUMMON_SHADOWCASTER, 10000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_SHADOWCASTER, 10s);
|
||||
break;
|
||||
case EVENT_SUMMON_CRYSTAL_HANDLER:
|
||||
if (_crystalCounter++ < 4)
|
||||
@@ -211,18 +211,18 @@ public:
|
||||
if (Creature* target = ObjectAccessor::GetCreature(*me, _stage ? _summonTargetLeftGUID : _summonTargetRightGUID))
|
||||
target->CastSpell(target, SPELL_SUMMON_CRYSTAL_HANDLER, true, nullptr, nullptr, me->GetGUID());
|
||||
_stage = _stage ? 0 : 1;
|
||||
events.ScheduleEvent(EVENT_SUMMON_CRYSTAL_HANDLER, 20000);
|
||||
events.ScheduleEvent(EVENT_SUMMON_CRYSTAL_HANDLER, 20s);
|
||||
}
|
||||
break;
|
||||
case EVENT_CHECK_PHASE:
|
||||
if (me->HasAura(SPELL_BEAM_CHANNEL))
|
||||
{
|
||||
events.ScheduleEvent(EVENT_CHECK_PHASE, 2000);
|
||||
events.ScheduleEvent(EVENT_CHECK_PHASE, 2s);
|
||||
break;
|
||||
}
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_CAST_OFFENSIVE_SPELL, 3000);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 10000);
|
||||
events.ScheduleEvent(EVENT_CAST_OFFENSIVE_SPELL, 3s);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 10s);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->InterruptNonMeleeSpells(false);
|
||||
@@ -232,16 +232,16 @@ public:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100, true))
|
||||
me->CastSpell(target, RAND(SPELL_BLIZZARD, SPELL_FROSTBOLT, SPELL_TOUCH_OF_MISERY), false);
|
||||
|
||||
events.ScheduleEvent(EVENT_CAST_OFFENSIVE_SPELL, 500);
|
||||
events.ScheduleEvent(EVENT_CAST_OFFENSIVE_SPELL, 500ms);
|
||||
break;
|
||||
case EVENT_SPELL_SUMMON_MINIONS:
|
||||
if (me->HasUnitState(UNIT_STATE_CASTING))
|
||||
{
|
||||
me->CastSpell(me, SPELL_SUMMON_MINIONS, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 15000);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 15s);
|
||||
break;
|
||||
}
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 500);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUMMON_MINIONS, 500ms);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,10 +94,10 @@ public:
|
||||
{
|
||||
Talk(SAY_AGGRO);
|
||||
BossAI::JustEngagedWith(who);
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 5000);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, urand(14000, 18000));
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, urand(8000, 10000));
|
||||
events.ScheduleEvent(EVENT_SPELL_TURN_FLESH, 1000);
|
||||
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);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* /*victim*/) override
|
||||
@@ -105,7 +105,7 @@ public:
|
||||
if (events.GetNextEventTime(EVENT_KILL_TALK) == 0)
|
||||
{
|
||||
Talk(SAY_KILL);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6000);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
{
|
||||
Talk(SAY_SKELETON);
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_TURN_BONES_REAL, 3000);
|
||||
events.ScheduleEvent(EVENT_TURN_BONES_REAL, 3s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -146,16 +146,16 @@ public:
|
||||
case EVENT_SPELL_CURSE_OF_LIFE:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f, true))
|
||||
me->CastSpell(target, SPELL_CURSE_OF_LIFE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 13000);
|
||||
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, 16000);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, 16s);
|
||||
break;
|
||||
case EVENT_SPELL_SHADOW_VOLLEY:
|
||||
me->CastSpell(me, SPELL_SHADOW_VOLLEY, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, 9000);
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, 9s);
|
||||
break;
|
||||
case EVENT_SPELL_TURN_FLESH:
|
||||
if (me->HealthBelowPct(50))
|
||||
@@ -165,18 +165,18 @@ public:
|
||||
me->CastSpell((Unit*)nullptr, SPELL_TURN_FLESH, false);
|
||||
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_TURN_FLESH_REAL, 3000);
|
||||
events.ScheduleEvent(EVENT_TURN_FLESH_REAL, 3s);
|
||||
return;
|
||||
}
|
||||
events.ScheduleEvent(EVENT_SPELL_TURN_FLESH, 1000);
|
||||
events.ScheduleEvent(EVENT_SPELL_TURN_FLESH, 1s);
|
||||
break;
|
||||
case EVENT_TURN_FLESH_REAL:
|
||||
me->CastSpell(me, SPELL_DUMMY, true);
|
||||
|
||||
me->GetMotionMaster()->MoveChase(me->GetVictim());
|
||||
events.ScheduleEvent(EVENT_SPELL_EYE_BEAM, 11000);
|
||||
events.ScheduleEvent(EVENT_SPELL_LIGHTNING_BREATH, 3000);
|
||||
events.ScheduleEvent(EVENT_SPELL_POISON_CLOUD, 6000);
|
||||
events.ScheduleEvent(EVENT_SPELL_EYE_BEAM, 11s);
|
||||
events.ScheduleEvent(EVENT_SPELL_LIGHTNING_BREATH, 3s);
|
||||
events.ScheduleEvent(EVENT_SPELL_POISON_CLOUD, 6s);
|
||||
break;
|
||||
case EVENT_SPELL_EYE_BEAM:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 35.0f, true))
|
||||
@@ -184,21 +184,21 @@ public:
|
||||
break;
|
||||
case EVENT_SPELL_LIGHTNING_BREATH:
|
||||
me->CastSpell(me->GetVictim(), SPELL_LIGHTNING_BREATH, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_LIGHTNING_BREATH, 8000);
|
||||
events.ScheduleEvent(EVENT_SPELL_LIGHTNING_BREATH, 8s);
|
||||
break;
|
||||
case EVENT_SPELL_POISON_CLOUD:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 35.0f, true))
|
||||
me->CastSpell(target, SPELL_POISON_CLOUD, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_POISON_CLOUD, 10000);
|
||||
events.ScheduleEvent(EVENT_SPELL_POISON_CLOUD, 10s);
|
||||
break;
|
||||
case EVENT_TURN_BONES_REAL:
|
||||
me->SetDisplayId(me->GetNativeDisplayId());
|
||||
me->CastSpell(me, SPELL_FLESH_VISUAL, true);
|
||||
me->CastSpell(me, SPELL_CLEAR_GIFT, true);
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_SPELL_CURSE_OF_LIFE, 1000);
|
||||
events.ScheduleEvent(EVENT_SPELL_RAIN_OF_FIRE, urand(12000, 14000));
|
||||
events.ScheduleEvent(EVENT_SPELL_SHADOW_VOLLEY, urand(8000, 10000));
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
@@ -69,16 +69,16 @@ public:
|
||||
{
|
||||
BossAI::Reset();
|
||||
events2.Reset();
|
||||
events2.ScheduleEvent(EVENT_SPAWN_INVADERS, 30000);
|
||||
events2.ScheduleEvent(EVENT_SPAWN_INVADERS, 30s);
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* who) override
|
||||
{
|
||||
events.ScheduleEvent(EVENT_SPELL_INFECTED_WOUND, urand(6000, 10000));
|
||||
events.ScheduleEvent(EVENT_SPELL_CRUSH, urand(3000, 5000));
|
||||
events.ScheduleEvent(EVENT_SPELL_CONSUME, 15000);
|
||||
events.ScheduleEvent(EVENT_SPELL_CORPSE_EXPLODE, 35000);
|
||||
events.ScheduleEvent(EVENT_SPAWN_INVADERS, 20000, 30000);
|
||||
events.ScheduleEvent(EVENT_SPELL_INFECTED_WOUND, 6s, 10s);
|
||||
events.ScheduleEvent(EVENT_SPELL_CRUSH, 3s, 5s);
|
||||
events.ScheduleEvent(EVENT_SPELL_CONSUME, 15s);
|
||||
events.ScheduleEvent(EVENT_SPELL_CORPSE_EXPLODE, 35s);
|
||||
events.ScheduleEvent(EVENT_SPAWN_INVADERS, 20s, 30s);
|
||||
|
||||
me->setActive(true);
|
||||
instance->SetBossState(DATA_TROLLGORE, IN_PROGRESS);
|
||||
@@ -100,7 +100,7 @@ public:
|
||||
if (events.GetNextEventTime(EVENT_KILL_TALK) == 0)
|
||||
{
|
||||
Talk(SAY_KILL);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6000);
|
||||
events.ScheduleEvent(EVENT_KILL_TALK, 6s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ public:
|
||||
me->CastSpell(me, SPELL_SUMMON_INVADER_A, true);
|
||||
me->CastSpell(me, SPELL_SUMMON_INVADER_B, true);
|
||||
me->CastSpell(me, SPELL_SUMMON_INVADER_C, true);
|
||||
events2.ScheduleEvent(EVENT_SPAWN_INVADERS, 30000);
|
||||
events2.ScheduleEvent(EVENT_SPAWN_INVADERS, 30s);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -133,21 +133,21 @@ public:
|
||||
{
|
||||
case EVENT_SPELL_INFECTED_WOUND:
|
||||
me->CastSpell(me->GetVictim(), SPELL_INFECTED_WOUND, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_INFECTED_WOUND, urand(25000, 35000));
|
||||
events.ScheduleEvent(EVENT_SPELL_INFECTED_WOUND, 25s, 35s);
|
||||
break;
|
||||
case EVENT_SPELL_CRUSH:
|
||||
me->CastSpell(me->GetVictim(), SPELL_CRUSH, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CRUSH, urand(10000, 15000));
|
||||
events.ScheduleEvent(EVENT_SPELL_CRUSH, 10s, 15s);
|
||||
break;
|
||||
case EVENT_SPELL_CONSUME:
|
||||
Talk(SAY_CONSUME);
|
||||
me->CastSpell(me, SPELL_CONSUME, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CONSUME, 15000);
|
||||
events.ScheduleEvent(EVENT_SPELL_CONSUME, 15s);
|
||||
break;
|
||||
case EVENT_SPELL_CORPSE_EXPLODE:
|
||||
Talk(SAY_EXPLODE);
|
||||
me->CastSpell(me, SPELL_CORPSE_EXPLODE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CORPSE_EXPLODE, urand(15000, 19000));
|
||||
events.ScheduleEvent(EVENT_SPELL_CORPSE_EXPLODE, 15s, 19s);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user