refactor(Scripts/Northrend): conversion to std::chrono (#15269)

Co-authored-by: Maelthyrr <maelthyrr@users.noreply.github.com>
This commit is contained in:
Maelthyr
2023-03-07 13:23:33 +01:00
committed by GitHub
parent 527f462826
commit 0200a288cd
140 changed files with 3306 additions and 3371 deletions

View File

@@ -171,22 +171,22 @@ public:
me->SetInCombatWithZone();
Talk(SAY_AGGRO);
events.ScheduleEvent(EVENT_BJARNGRIM_CHANGE_STANCE, 20000, 0);
events.ScheduleEvent(EVENT_BJARNGRIM_CHANGE_STANCE, 20s, 0);
// DEFENSIVE STANCE
events.ScheduleEvent(EVENT_BJARNGRIM_REFLECTION, 8000, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_PUMMEL, 5000, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_KNOCK, 16000, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_IRONFORM, 12000, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_REFLECTION, 8s, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_PUMMEL, 5s, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_KNOCK, 16s, STANCE_DEFENSIVE);
events.ScheduleEvent(EVENT_BJARNGRIM_IRONFORM, 12s, STANCE_DEFENSIVE);
// BERSERKER STANCE
events.ScheduleEvent(EVENT_BJARNGRIM_MORTAL_STRIKE, 20000 + 4000, STANCE_BERSERKER);
events.ScheduleEvent(EVENT_BJARNGRIM_WHIRLWIND, 20000 + 6000, STANCE_BERSERKER);
events.ScheduleEvent(EVENT_BJARNGRIM_MORTAL_STRIKE, 24s, STANCE_BERSERKER);
events.ScheduleEvent(EVENT_BJARNGRIM_WHIRLWIND, 26s, STANCE_BERSERKER);
// BATTLE STANCE
events.ScheduleEvent(EVENT_BJARNGRIM_INTERCEPT, 20000 + 3000, STANCE_BATTLE);
events.ScheduleEvent(EVENT_BJARNGRIM_CLEAVE, 20000 + 5000, STANCE_BATTLE);
events.ScheduleEvent(EVENT_BJARNGRIM_SLAM, 20000 + 10000, STANCE_BATTLE);
events.ScheduleEvent(EVENT_BJARNGRIM_INTERCEPT, 23s, STANCE_BATTLE);
events.ScheduleEvent(EVENT_BJARNGRIM_CLEAVE, 25s, STANCE_BATTLE);
events.ScheduleEvent(EVENT_BJARNGRIM_SLAM, 30s, STANCE_BATTLE);
if (m_pInstance)
{
@@ -311,7 +311,7 @@ public:
// roll new stance
RemoveStanceAura(m_uiStance);
RollStance(m_uiStance);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
///////////////////////////////////////////////////////
@@ -319,19 +319,19 @@ public:
///////////////////////////////////////////////////////
case EVENT_BJARNGRIM_REFLECTION:
me->CastSpell(me, SPELL_BJARNGRIM_REFLETION, true);
events.RepeatEvent(8000 + rand() % 1000);
events.Repeat(8s, 9s);
break;
case EVENT_BJARNGRIM_PUMMEL:
me->CastSpell(me->GetVictim(), SPELL_PUMMEL, false);
events.RepeatEvent(10000 + rand() % 1000);
events.Repeat(10s, 11s);
break;
case EVENT_BJARNGRIM_KNOCK:
me->CastSpell(me, SPELL_KNOCK_AWAY, false);
events.RepeatEvent(20000 + rand() % 1000);
events.Repeat(20s, 21s);
break;
case EVENT_BJARNGRIM_IRONFORM:
me->CastSpell(me, SPELL_IRONFORM, true);
events.RepeatEvent(18000 + rand() % 5000);
events.Repeat(18s, 23s);
break;
///////////////////////////////////////////////////////
@@ -339,11 +339,11 @@ public:
///////////////////////////////////////////////////////
case EVENT_BJARNGRIM_MORTAL_STRIKE:
me->CastSpell(me->GetVictim(), SPELL_MORTAL_STRIKE, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_BJARNGRIM_WHIRLWIND:
me->CastSpell(me, SPELL_WHIRLWIND, true);
events.RepeatEvent(25000);
events.Repeat(25s);
break;
///////////////////////////////////////////////////////
@@ -353,15 +353,15 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random))
me->CastSpell(target, SPELL_INTERCEPT, true);
events.RepeatEvent(30000);
events.Repeat(30s);
break;
case EVENT_BJARNGRIM_CLEAVE:
me->CastSpell(me->GetVictim(), SPELL_CLEAVE, false);
events.RepeatEvent(25000);
events.Repeat(25s);
break;
case EVENT_BJARNGRIM_SLAM:
me->CastSpell(me->GetVictim(), SPELL_SLAM, false);
events.RepeatEvent(10000 + rand() % 2000);
events.Repeat(10s, 12s);
break;
}
@@ -397,8 +397,8 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_ARC_WELD, 2000);
events.ScheduleEvent(EVENT_RENEW_STEEL, 10000 + rand() % 1000);
events.ScheduleEvent(EVENT_ARC_WELD, 2s);
events.ScheduleEvent(EVENT_RENEW_STEEL, 10s, 11s);
}
void UpdateAI(uint32 diff) override
@@ -416,14 +416,14 @@ public:
{
case EVENT_ARC_WELD:
me->CastSpell(me->GetVictim(), SPELL_ARC_WELD, true);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_RENEW_STEEL:
if (Creature* bjarngrim = ObjectAccessor::GetCreature(*me, BjarngrimGUID))
if (bjarngrim->IsAlive())
me->CastSpell(bjarngrim, me->GetMap()->IsHeroic() ? SPELL_RENEW_STEEL_H : SPELL_RENEW_STEEL_N, true);
events.RepeatEvent(10000 + rand() % 4000);
events.Repeat(10s, 14s);
break;
}

View File

@@ -106,10 +106,10 @@ public:
{
events.SetPhase(1);
if (!spark)
events.RescheduleEvent(EVENT_CHECK_HEALTH, 1000, 0, 1);
events.RescheduleEvent(EVENT_CHECK_HEALTH, 1s, 0, 1);
events.RescheduleEvent(EVENT_BALL_LIGHTNING, 10000, 0, 1);
events.RescheduleEvent(EVENT_STATIC_OVERLOAD, 5000, 0, 1);
events.RescheduleEvent(EVENT_BALL_LIGHTNING, 10s, 0, 1);
events.RescheduleEvent(EVENT_STATIC_OVERLOAD, 5s, 0, 1);
}
void JustEngagedWith(Unit*) override
@@ -171,7 +171,7 @@ public:
me->SetControlled(true, UNIT_STATE_STUNNED);
events.SetPhase(2);
events.ScheduleEvent(EVENT_CALL_SPARKS, 15000, 0, 2);
events.ScheduleEvent(EVENT_CALL_SPARKS, 15s, 0, 2);
}
void UpdateAI(uint32 diff) override
@@ -190,25 +190,25 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random))
me->CastSpell(target, me->GetMap()->IsHeroic() ? SPELL_BALL_LIGHTNING_H : SPELL_BALL_LIGHTNING_N, false);
events.RepeatEvent(10000 + rand() % 1000);
events.Repeat(10s, 11s);
break;
case EVENT_STATIC_OVERLOAD:
if (Unit* target = SelectTarget(SelectTargetMethod::Random))
me->CastSpell(target, me->GetMap()->IsHeroic() ? SPELL_STATIC_OVERLOAD_H : SPELL_STATIC_OVERLOAD_N, false);
events.RepeatEvent(5000 + rand() % 1000);
events.Repeat(5s, 6s);
break;
case EVENT_CHECK_HEALTH:
if (HealthBelowPct(HealthCheck))
me->CastSpell(me, SPELL_DISPERSE, false);
events.RepeatEvent(1000);
events.Repeat(1s);
return;
case EVENT_CALL_SPARKS:
{
EntryCheckPredicate pred(NPC_SPARK_OF_IONAR);
summons.DoAction(ACTION_CALLBACK, pred);
events.ScheduleEvent(EVENT_RESTORE, 2000, 0, 2);
events.ScheduleEvent(EVENT_RESTORE, 2s, 0, 2);
return;
}
case EVENT_RESTORE:

View File

@@ -117,9 +117,9 @@ public:
me->SetInCombatWithZone();
Talk(SAY_AGGRO);
events.ScheduleEvent(EVENT_ARC_LIGHTNING, 10000);
events.ScheduleEvent(EVENT_SHOCKWAVE, 3000);
events.ScheduleEvent(EVENT_LIGHTNING_NOVA, 15000);
events.ScheduleEvent(EVENT_ARC_LIGHTNING, 10s);
events.ScheduleEvent(EVENT_SHOCKWAVE, 3s);
events.ScheduleEvent(EVENT_LIGHTNING_NOVA, 15s);
if (m_pInstance)
{
@@ -222,15 +222,15 @@ public:
HealthCheck -= 25;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
case EVENT_LIGHTNING_NOVA:
events.RepeatEvent(15000);
events.Repeat(15s);
me->CastSpell(me, SPELL_LIGHTNING_NOVA_VISUAL, true);
me->CastSpell(me, SPELL_LIGHTNING_NOVA_THUNDERS, true);
events.DelayEvents(5001);
events.ScheduleEvent(EVENT_AURA_REMOVE, me->GetMap()->IsHeroic() ? 4000 : 5000);
events.DelayEvents(5s);
events.ScheduleEvent(EVENT_AURA_REMOVE, me->GetMap()->IsHeroic() ? 4s : 5s);
me->CastSpell(me, me->GetMap()->IsHeroic() ? SPELL_LIGHTNING_NOVA_H : SPELL_LIGHTNING_NOVA_N, false);
break;
@@ -241,7 +241,7 @@ public:
if (Unit* target = SelectTargetFromPlayerList(100, SPELL_ARC_LIGHTNING))
me->CastSpell(target, SPELL_ARC_LIGHTNING, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_AURA_REMOVE:
me->RemoveAura(SPELL_LIGHTNING_NOVA_THUNDERS);

View File

@@ -192,10 +192,10 @@ public:
void ScheduleEvents(bool anvil)
{
events.SetPhase(1);
events.RescheduleEvent(EVENT_HEAT, 8000, 0, 1);
events.RescheduleEvent(EVENT_SHATTER, 10000, 0, 1);
events.RescheduleEvent(EVENT_CHECK_HEALTH, anvil ? 1000 : 6000, 0, 1);
events.RescheduleEvent(EVENT_POSITION, 4000, 0, 1);
events.RescheduleEvent(EVENT_HEAT, 8s, 0, 1);
events.RescheduleEvent(EVENT_SHATTER, 10s, 0, 1);
events.RescheduleEvent(EVENT_CHECK_HEALTH, anvil ? 1s : 6s, 0, 1);
events.RescheduleEvent(EVENT_POSITION, 4s, 0, 1);
}
void JustSummoned(Creature* summon) override
@@ -243,7 +243,7 @@ public:
me->SetControlled(true, UNIT_STATE_ROOT);
}
else
events.ScheduleEvent(EVENT_MOVE_TO_ANVIL, 0, 0, 2);
events.ScheduleEvent(EVENT_MOVE_TO_ANVIL, 0ms, 0, 2);
}
void SpellHitTarget(Unit* /*who*/, SpellInfo const* spellInfo) override
@@ -269,7 +269,7 @@ public:
if (me->GetMotionMaster()->GetCurrentMovementGeneratorType() == CHASE_MOTION_TYPE)
me->GetMotionMaster()->MovementExpired();
events.ScheduleEvent(EVENT_MOVE_TO_ANVIL, 0, 0, 2);
events.ScheduleEvent(EVENT_MOVE_TO_ANVIL, 0ms, 0, 2);
}
void UpdateAI(uint32 diff) override
@@ -287,17 +287,17 @@ public:
{
case EVENT_HEAT:
me->CastSpell(me, me->GetMap()->IsHeroic() ? SPELL_HEAT_H : SPELL_HEAT_N, true);
events.RepeatEvent(8000);
events.Repeat(8s);
break;
case EVENT_CHECK_HEALTH:
if (HealthBelowPct(HealthCheck))
GoToAnvil();
events.RepeatEvent(1000);
events.Repeat(1s);
return;
case EVENT_SHATTER:
{
events.RepeatEvent(10000);
events.Repeat(10s);
summons.DoAction(ACTION_SHATTER);
break;
}
@@ -309,7 +309,7 @@ public:
if (me->GetDistance(1331.9f, -106, 56) > 95)
EnterEvadeMode();
else
events.RepeatEvent(4000);
events.Repeat(4s);
return;
}
@@ -342,8 +342,8 @@ public:
void Reset() override
{
events.Reset();
events.ScheduleEvent(EVENT_BLAST, 7000);
events.ScheduleEvent(EVENT_IMMOLATION, 3000);
events.ScheduleEvent(EVENT_BLAST, 7s);
events.ScheduleEvent(EVENT_IMMOLATION, 3s);
}
void DamageTaken(Unit*, uint32& uiDamage, DamageEffectType, SpellSchoolMask) override
@@ -397,11 +397,11 @@ public:
{
case EVENT_BLAST:
me->CastSpell(me, SPELL_BLAST_WAVE, false);
events.RepeatEvent(14000);
events.Repeat(14s);
break;
case EVENT_IMMOLATION:
me->CastSpell(me->GetVictim(), me->GetMap()->IsHeroic() ? SPELL_IMMOLATION_STRIKE_H : SPELL_IMMOLATION_STRIKE_N, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
@@ -482,7 +482,7 @@ public:
_isActive = false;
_attackGUID = who->GetGUID();
events.Reset();
events.RescheduleEvent(EVENT_UNFREEZE, 5000);
events.RescheduleEvent(EVENT_UNFREEZE, 5s);
}
}
}
@@ -492,16 +492,16 @@ public:
events.Reset();
if (me->GetEntry() == 28961) // NPC_TITANIUM_SIEGEBREAKER
{
events.ScheduleEvent(EVENT_PIERCING_HOWL, 10000 + rand() % 15000);
events.ScheduleEvent(EVENT_PENETRATING_STRIKE, 5000 + rand() % 5000);
events.ScheduleEvent(EVENT_FRIGHTENING_SHOUT, 20000 + rand() % 8000);
events.ScheduleEvent(EVENT_BLADE_TURNING, 12000);
events.ScheduleEvent(EVENT_PIERCING_HOWL, 10s, 25s);
events.ScheduleEvent(EVENT_PENETRATING_STRIKE, 5s, 10s);
events.ScheduleEvent(EVENT_FRIGHTENING_SHOUT, 20s, 28s);
events.ScheduleEvent(EVENT_BLADE_TURNING, 12s);
}
else
{
events.ScheduleEvent(EVENT_THROW, 10000 + rand() % 15000);
events.ScheduleEvent(EVENT_DEADLY_THROW, 15000 + rand() % 15000);
events.ScheduleEvent(EVENT_DEFLECTION, 15000);
events.ScheduleEvent(EVENT_THROW, 10s, 25s);
events.ScheduleEvent(EVENT_DEADLY_THROW, 15s, 30s);
events.ScheduleEvent(EVENT_DEFLECTION, 15s);
}
}
@@ -542,31 +542,31 @@ public:
{
case EVENT_PIERCING_HOWL:
me->CastSpell(me->GetVictim(), SPELL_PIERCING_HOWL, false);
events.RepeatEvent(10000 + rand() % 1500);
events.Repeat(10s, 25s);
break;
case EVENT_PENETRATING_STRIKE:
me->CastSpell(me->GetVictim(), SPELL_PENETRATING_STRIKE, false);
events.RepeatEvent(5000 + rand() % 5000);
events.Repeat(5s, 10s);
break;
case EVENT_FRIGHTENING_SHOUT:
me->CastSpell(me->GetVictim(), SPELL_FRIGHTENING_SHOUT, false);
events.RepeatEvent(20000 + rand() % 8000);
events.Repeat(20s, 28s);
break;
case EVENT_BLADE_TURNING:
me->CastSpell(me->GetVictim(), me->GetMap()->IsHeroic() ? SPELL_BLADE_TURNING_H : SPELL_BLADE_TURNING_N, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_THROW:
me->CastSpell(SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0), me->GetMap()->IsHeroic() ? SPELL_THROW_H : SPELL_THROW_N, true);
events.RepeatEvent(10000 + rand() % 15000);
events.Repeat(10s, 25s);
break;
case EVENT_DEADLY_THROW:
me->CastSpell(SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0), me->GetMap()->IsHeroic() ? SPELL_DEADLY_THROW_H : SPELL_DEADLY_THROW_N, true);
events.RepeatEvent(15000 + rand() % 15000);
events.Repeat(15s, 30s);
break;
case EVENT_DEFLECTION:
me->CastSpell(me, me->GetMap()->IsHeroic() ? SPELL_DEFLECTION_H : SPELL_DEFLECTION_N, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}

View File

@@ -84,11 +84,11 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.Reset();
events.RescheduleEvent(EVENT_BOULDER, 8000);
events.RescheduleEvent(EVENT_STOMP, 5000);
events.RescheduleEvent(EVENT_GROUND_SLAM, 15000);
events.RescheduleEvent(EVENT_BOULDER, 8s);
events.RescheduleEvent(EVENT_STOMP, 5s);
events.RescheduleEvent(EVENT_GROUND_SLAM, 15s);
if (me->GetMap()->IsHeroic())
events.RescheduleEvent(EVENT_GROUND_SPIKE, 10000);
events.RescheduleEvent(EVENT_GROUND_SPIKE, 10s);
if (pInstance)
pInstance->SetData(BOSS_KRYSTALLUS, IN_PROGRESS);
@@ -125,34 +125,34 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0))
me->CastSpell(target, DUNGEON_MODE(BOULDER_TOSS, BOULDER_TOSS_H), false);
events.RepeatEvent(5000 + rand() % 2000);
events.Repeat(5s, 7s);
break;
}
case EVENT_GROUND_SPIKE:
{
me->CastSpell(me->GetVictim(), GROUND_SPIKE_H, false); // current enemy target
events.RepeatEvent(8000 + rand() % 3000);
events.Repeat(8s, 11s);
break;
}
case EVENT_STOMP:
{
me->CastSpell(me, DUNGEON_MODE(STOMP, STOMP_H), false);
events.RepeatEvent(13000 + rand() % 5000);
events.Repeat(13s, 18s);
break;
}
case EVENT_GROUND_SLAM:
{
events.RepeatEvent(10000 + rand() % 3000);
events.Repeat(10s, 13s);
me->CastSpell(me->GetVictim(), GROUND_SLAM, true);
events.DelayEvents(10000);
events.RescheduleEvent(EVENT_SHATTER, 8000);
events.DelayEvents(10s);
events.RescheduleEvent(EVENT_SHATTER, 8s);
break;
}
case EVENT_SHATTER:
{
me->CastSpell((Unit*)nullptr, DUNGEON_MODE(SHATTER, SHATTER_H), false);
Talk(SAY_SHATTER);
events.RescheduleEvent(EVENT_REMOVE_STONED, 1500);
events.RescheduleEvent(EVENT_REMOVE_STONED, 1500ms);
break;
}
case EVENT_REMOVE_STONED:

View File

@@ -80,10 +80,10 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.ScheduleEvent(EVENT_STORM, 5000);
events.ScheduleEvent(EVENT_SHOCK, 26000 + rand() % 6000);
events.ScheduleEvent(EVENT_PILLAR, 12000 + rand() % 8000);
events.ScheduleEvent(EVENT_PARTING, 8000);
events.ScheduleEvent(EVENT_STORM, 5s);
events.ScheduleEvent(EVENT_SHOCK, 26s, 32s);
events.ScheduleEvent(EVENT_PILLAR, 12s, 20s);
events.ScheduleEvent(EVENT_PARTING, 8s);
Talk(SAY_AGGRO);
if (pInstance)
@@ -108,7 +108,7 @@ public:
case EVENT_STORM:
{
me->CastSpell(me->GetVictim(), DUNGEON_MODE(STORM_OF_GRIEF, STORM_OF_GRIEF_H), true);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
case EVENT_SHOCK:
@@ -116,7 +116,7 @@ public:
me->CastSpell(me->GetVictim(), DUNGEON_MODE(SHOCK_OF_SORROW, SHOCK_OF_SORROW_H), false);
Talk(SAY_STUN);
events.RepeatEvent(16000 + rand() % 6000);
events.Repeat(16s, 22s);
break;
}
case EVENT_PILLAR:
@@ -124,7 +124,7 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0))
me->CastSpell(target, DUNGEON_MODE(PILLAR_OF_WOE, PILLAR_OF_WOE_H), false);
events.RepeatEvent(12000 + rand() % 8000);
events.Repeat(12s, 20s);
break;
}
case EVENT_PARTING:
@@ -132,7 +132,7 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0))
me->CastSpell(target, PARTING_SORROW, false);
events.RepeatEvent(6000 + rand() % 10000);
events.Repeat(6s, 16s);
break;
}
}

View File

@@ -165,14 +165,14 @@ public:
{
Talk(SAY_AGGRO);
events.ScheduleEvent(EVENT_CHECK_HEALTH, 1000);
events.ScheduleEvent(EVENT_SHIELD, 14000 + rand() % 5000);
events.ScheduleEvent(EVENT_CHAIN_LIGHTNING, 6000 + rand() % 6000);
events.ScheduleEvent(EVENT_STATIC_CHARGE, 24000);
events.ScheduleEvent(EVENT_LIGHTNING_RING, 25000 + rand() % 6000);
events.ScheduleEvent(EVENT_SUMMON, 20000);
events.ScheduleEvent(EVENT_SUMMON, 21500);
events.ScheduleEvent(EVENT_SUMMON_SPEACH, 20000);
events.ScheduleEvent(EVENT_CHECK_HEALTH, 1s);
events.ScheduleEvent(EVENT_SHIELD, 14s, 19s);
events.ScheduleEvent(EVENT_CHAIN_LIGHTNING, 6s, 12s);
events.ScheduleEvent(EVENT_STATIC_CHARGE, 24s);
events.ScheduleEvent(EVENT_LIGHTNING_RING, 25s, 31s);
events.ScheduleEvent(EVENT_SUMMON, 20s);
events.ScheduleEvent(EVENT_SUMMON, 21s + 500ms);
events.ScheduleEvent(EVENT_SUMMON_SPEACH, 20s);
if (pInstance)
{
@@ -214,8 +214,8 @@ public:
{
SummonPhase = PHASE_SUMMON_OOZE;
events.CancelEvent(EVENT_SUMMON);
events.ScheduleEvent(EVENT_SUMMON, 0);
events.ScheduleEvent(EVENT_SUMMON, 1500);
events.ScheduleEvent(EVENT_SUMMON, 0ms);
events.ScheduleEvent(EVENT_SUMMON, 1500ms);
if (pInstance)
if (Creature* brann = ObjectAccessor::GetCreature(*me, pInstance->GetGuidData(NPC_BRANN)))
@@ -236,17 +236,17 @@ public:
me->CastSpell(me, SPELL_FRENZY, false);
events.CancelEvent(EVENT_SUMMON);
events.ScheduleEvent(EVENT_SUMMON, 0);
events.ScheduleEvent(EVENT_SUMMON, 0ms);
break;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
}
case EVENT_SHIELD:
{
me->CastSpell(me, DUNGEON_MODE(SPELL_LIGHTNING_SHIELD, SPELL_LIGHTNING_SHIELD_H), false);
events.RepeatEvent(14000 + rand() % 5000);
events.Repeat(14s, 19s);
break;
}
case EVENT_CHAIN_LIGHTNING:
@@ -254,7 +254,7 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0))
me->CastSpell(target, DUNGEON_MODE(SPELL_CHAIN_LIGHTNING, SPELL_CHAIN_LIGHTNING_H), false);
events.RepeatEvent(6000 + rand() % 6000);
events.Repeat(6s, 12s);
break;
}
case EVENT_STATIC_CHARGE:
@@ -262,14 +262,14 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true, 0))
me->CastSpell(target, DUNGEON_MODE(SPELL_STATIC_CHARGE, SPELL_STATIC_CHARGE_H), false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
}
case EVENT_LIGHTNING_RING:
{
me->CastSpell(me, DUNGEON_MODE(SPELL_LIGHTNING_RING, SPELL_LIGHTNING_RING_H), false);
events.RepeatEvent(25000 + rand() % 6000);
events.DelayEvents(10000); // Channel duration
events.Repeat(25s, 31s);
events.DelayEvents(10s); // Channel duration
break;
}
case EVENT_SUMMON_SPEACH:
@@ -289,7 +289,7 @@ public:
case PHASE_SUMMON_UNFRIENDLY_DWARFES:
{
SummonDwarfes(false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
}
case PHASE_SUMMON_OOZE:
@@ -303,7 +303,7 @@ public:
summons.Summon(ooze);
}
}
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
case PHASE_SUMMON_FRIENDLY_DWARFES:
@@ -454,7 +454,7 @@ public:
case EVENT_TOXIC_VOLLEY:
{
me->CastSpell(me, DUNGEON_MODE(SPELL_TOXIC_VOLLEY, SPELL_TOXIC_VOLLEY_H), false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
}
@@ -483,7 +483,7 @@ public:
void MovementInform(uint32 type, uint32 point) override
{
if (type == POINT_MOTION_TYPE && point == 0)
events.RescheduleEvent(EVENT_MALFORMED_OOZE_CHECK, 1000);
events.RescheduleEvent(EVENT_MALFORMED_OOZE_CHECK, 1s);
}
void JustEngagedWith(Unit*) override { }
@@ -508,7 +508,7 @@ public:
break;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
}
}

View File

@@ -424,8 +424,8 @@ public:
kaddrak->CastSpell(plr, DUNGEON_MODE(SPELL_GLARE_OF_THE_TRIBUNAL, SPELL_GLARE_OF_THE_TRIBUNAL_H), true);
}
events.RescheduleEvent(EVENT_KADDRAK_SWITCH_EYE, 1500);
events.RepeatEvent(2000 + urand(0, 2000));
events.RescheduleEvent(EVENT_KADDRAK_SWITCH_EYE, 1500ms);
events.Repeat(2s, 4s);
break;
}
case EVENT_KADDRAK_SWITCH_EYE:
@@ -456,7 +456,7 @@ public:
}
}
}
events.RepeatEvent(20000);
events.Repeat(20s);
break;
}
case EVENT_ABEDNEUM_HEAD: // Third
@@ -474,7 +474,7 @@ public:
cr->CastSpell(cr, DUNGEON_MODE(SPELL_SEARING_GAZE, SPELL_SEARING_GAZE_H), true);
}
}
events.RepeatEvent(30000);
events.Repeat(30s);
break;
}
case EVENT_SUMMON_MONSTERS:
@@ -519,7 +519,7 @@ public:
plr->GroupEventHappens(QUEST_HALLS_OF_STONE, me);
}
events.ScheduleEvent(EVENT_GO_TO_SJONNIR, 279000);
events.ScheduleEvent(EVENT_GO_TO_SJONNIR, 279s);
break;
}
case EVENT_GO_TO_SJONNIR:
@@ -634,16 +634,16 @@ void brann_bronzebeard::brann_bronzebeardAI::InitializeEvent()
TalkEvent = true;
events.Reset();
events.ScheduleEvent(EVENT_SUMMON_MONSTERS, 21000);
events.ScheduleEvent(EVENT_KADDRAK_HEAD, 20000);
events.ScheduleEvent(EVENT_MARNAK_HEAD, 105000);
events.ScheduleEvent(EVENT_ABEDNEUM_HEAD, 205000);
events.ScheduleEvent(EVENT_TRIBUNAL_END, 315000);
events.ScheduleEvent(EVENT_SUMMON_MONSTERS, 21s);
events.ScheduleEvent(EVENT_KADDRAK_HEAD, 20s);
events.ScheduleEvent(EVENT_MARNAK_HEAD, 105s);
events.ScheduleEvent(EVENT_ABEDNEUM_HEAD, 205s);
events.ScheduleEvent(EVENT_TRIBUNAL_END, 315s);
// Viusals
events.ScheduleEvent(EVENT_KADDRAK_VISUAL, 20000);
events.ScheduleEvent(EVENT_MARNAK_VISUAL, 105000);
events.ScheduleEvent(EVENT_ABEDNEUM_VISUAL, 205000);
events.ScheduleEvent(EVENT_KADDRAK_VISUAL, 20s);
events.ScheduleEvent(EVENT_MARNAK_VISUAL, 105s);
events.ScheduleEvent(EVENT_ABEDNEUM_VISUAL, 205s);
}
void brann_bronzebeard::brann_bronzebeardAI::WaypointReached(uint32 id)
@@ -717,8 +717,8 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_DRP_CHARGE, 10000);
events.ScheduleEvent(EVENT_DRP_CLEAVE, 7000);
events.ScheduleEvent(EVENT_DRP_CHARGE, 10s);
events.ScheduleEvent(EVENT_DRP_CLEAVE, 7s);
}
void UpdateAI(uint32 diff) override
@@ -737,13 +737,13 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, SPELL_DRP_CHARGE, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
case EVENT_DRP_CLEAVE:
{
me->CastSpell(me->GetVictim(), SPELL_DRP_CLEAVE, false);
events.RepeatEvent(7000);
events.Repeat(7s);
break;
}
}
@@ -775,8 +775,8 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_DRS_LIGHTNING_BOLD, 5000);
events.ScheduleEvent(EVENT_DRS_SHADOW_WORD_PAIN, 12000);
events.ScheduleEvent(EVENT_DRS_LIGHTNING_BOLD, 5s);
events.ScheduleEvent(EVENT_DRS_SHADOW_WORD_PAIN, 12s);
}
void UpdateAI(uint32 diff) override
@@ -793,13 +793,13 @@ public:
case EVENT_DRS_LIGHTNING_BOLD:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_DRS_LIGHTING_BOLT_H : SPELL_DRS_LIGHTING_BOLT, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
case EVENT_DRS_SHADOW_WORD_PAIN:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_DRS_SHADOW_WORD_PAIN_H : SPELL_DRS_SHADOW_WORD_PAIN, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
}
}
@@ -830,8 +830,8 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_IGC_CRUSH, 6000);
events.ScheduleEvent(EVENT_IGC_GROUND_SMASH, 4000);
events.ScheduleEvent(EVENT_IGC_CRUSH, 6s);
events.ScheduleEvent(EVENT_IGC_GROUND_SMASH, 4s);
}
void UpdateAI(uint32 diff) override
{
@@ -847,13 +847,13 @@ public:
case EVENT_IGC_CRUSH:
{
me->CastSpell(me->GetVictim(), SPELL_IGC_CRUSH_ARMOR, false);
events.RepeatEvent(6000);
events.Repeat(6s);
break;
}
case EVENT_IGC_GROUND_SMASH:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_IGC_GROUND_SMASH_H : SPELL_IGC_GROUND_SMASH, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
}

View File

@@ -416,10 +416,10 @@ public:
init.Launch();
events.Reset();
events.SetPhase(PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_1, 5000, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_2, 15000, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_3, 23000, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_FINISH, 36000, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_1, 5s, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_2, 15s, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_3, 23s, 0, PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_INTRO_FINISH, 36s, 0, PHASE_ROLE_PLAY);
break;
}
case ACTION_DESPAWN_ALGALON:
@@ -427,12 +427,12 @@ public:
events.Reset();
summons.DespawnAll();
events.SetPhase(PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_1, 5000);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_2, 17000);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_3, 26000);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_1, 5s);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_2, 17s);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_3, 26s);
if (me->IsInCombat())
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_4, 26000);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_5, 32000);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_4, 26s);
events.ScheduleEvent(EVENT_DESPAWN_ALGALON_5, 32s);
me->DespawnOrUnsummon(39000);
me->SetReactState(REACT_PASSIVE);
@@ -451,7 +451,7 @@ public:
case ACTION_ASCEND:
summons.DespawnAll();
events.SetPhase(PHASE_BIG_BANG);
events.ScheduleEvent(EVENT_ASCEND_TO_THE_HEAVENS, 1500);
events.ScheduleEvent(EVENT_ASCEND_TO_THE_HEAVENS, 1500ms);
break;
case ACTION_FEEDS_ON_TEARS_FAILED:
_fedOnTears = false;
@@ -484,7 +484,7 @@ public:
if (!_firstPull)
{
events.ScheduleEvent(EVENT_START_COMBAT, 0);
events.ScheduleEvent(EVENT_START_COMBAT, 0ms);
introDelay = 8000;
}
else
@@ -493,7 +493,7 @@ public:
_firstPull = false;
Talk(SAY_ALGALON_START_TIMER);
introDelay = 22000;
events.ScheduleEvent(EVENT_START_COMBAT, 14000);
events.ScheduleEvent(EVENT_START_COMBAT, 14s);
m_pInstance->SetData(DATA_DESPAWN_ALGALON, 0);
}
@@ -507,7 +507,7 @@ public:
events.ScheduleEvent(EVENT_BIG_BANG, 90000 + introDelay);
events.ScheduleEvent(EVENT_ASCEND_TO_THE_HEAVENS, 360000 + introDelay);
events.ScheduleEvent(EVENT_CHECK_HERALD_ITEMS, 5000);
events.ScheduleEvent(EVENT_CHECK_HERALD_ITEMS, 5s);
DoCheckHeraldOfTheTitans();
}
@@ -521,15 +521,15 @@ public:
else if (pointId == POINT_ALGALON_OUTRO)
{
me->SetFacingTo(1.605703f);
events.ScheduleEvent(EVENT_OUTRO_3, 1200);
events.ScheduleEvent(EVENT_OUTRO_4, 2400);
events.ScheduleEvent(EVENT_OUTRO_5, 8500);
events.ScheduleEvent(EVENT_OUTRO_6, 15500);
events.ScheduleEvent(EVENT_OUTRO_7, 55500);
events.ScheduleEvent(EVENT_OUTRO_8, 73500);
events.ScheduleEvent(EVENT_OUTRO_9, 85500);
events.ScheduleEvent(EVENT_OUTRO_10, 101500);
events.ScheduleEvent(EVENT_OUTRO_11, 117500);
events.ScheduleEvent(EVENT_OUTRO_3, 1200ms);
events.ScheduleEvent(EVENT_OUTRO_4, 2400ms);
events.ScheduleEvent(EVENT_OUTRO_5, 8500ms);
events.ScheduleEvent(EVENT_OUTRO_6, 15s + 500ms);
events.ScheduleEvent(EVENT_OUTRO_7, 55s + 500ms);
events.ScheduleEvent(EVENT_OUTRO_8, 73s + 500ms);
events.ScheduleEvent(EVENT_OUTRO_9, 85s + 500ms);
events.ScheduleEvent(EVENT_OUTRO_10, 101s + 500ms);
events.ScheduleEvent(EVENT_OUTRO_11, 117s + 500ms);
}
}
@@ -609,9 +609,9 @@ public:
summons.DespawnAll();
me->InterruptNonMeleeSpells(false);
events.SetPhase(PHASE_ROLE_PLAY);
events.ScheduleEvent(EVENT_OUTRO_START, 1500);
events.ScheduleEvent(EVENT_OUTRO_1, 7200);
events.ScheduleEvent(EVENT_OUTRO_2, 8700);
events.ScheduleEvent(EVENT_OUTRO_START, 1500ms);
events.ScheduleEvent(EVENT_OUTRO_1, 7200ms);
events.ScheduleEvent(EVENT_OUTRO_2, 8700ms);
}
}
@@ -678,34 +678,34 @@ public:
break;
case EVENT_QUANTUM_STRIKE:
me->CastSpell(me->GetVictim(), SPELL_QUANTUM_STRIKE, false);
events.RepeatEvent(urand(3000, 4500));
events.Repeat(3000ms, 4500ms);
break;
case EVENT_PHASE_PUNCH:
me->CastSpell(me->GetVictim(), SPELL_PHASE_PUNCH, false);
events.RepeatEvent(15500);
events.Repeat(15s + 500ms);
break;
case EVENT_SUMMON_COLLAPSING_STAR:
Talk(SAY_ALGALON_COLLAPSING_STAR);
Talk(EMOTE_ALGALON_COLLAPSING_STAR);
for (uint8 i = 0; i < COLLAPSING_STAR_COUNT; ++i)
me->SummonCreature(NPC_COLLAPSING_STAR, CollapsingStarPos[i], TEMPSUMMON_CORPSE_TIMED_DESPAWN, 2000);
events.RepeatEvent(60000);
events.Repeat(1min);
break;
case EVENT_COSMIC_SMASH:
Talk(EMOTE_ALGALON_COSMIC_SMASH);
me->CastCustomSpell(SPELL_COSMIC_SMASH, SPELLVALUE_MAX_TARGETS, RAID_MODE(1, 3), (Unit*)nullptr);
events.RepeatEvent(25500);
events.Repeat(25s + 500ms);
break;
case EVENT_ACTIVATE_LIVING_CONSTELLATION:
{
if (events.GetPhaseMask() & PHASE_MASK_NO_UPDATE)
{
events.RepeatEvent(4000);
events.Repeat(4s);
break;
}
CallConstellations();
//me->CastSpell(me, SPELL_TRIGGER_3_ADDS, true);
events.RepeatEvent(50000);
events.Repeat(50s);
break;
}
case EVENT_BIG_BANG:
@@ -717,13 +717,13 @@ public:
summons.DoAction(ACTION_BIG_BANG, pred);
me->CastSpell((Unit*)nullptr, SPELL_BIG_BANG, false);
events.RepeatEvent(90500);
events.Repeat(90s + 500ms);
break;
}
case EVENT_ASCEND_TO_THE_HEAVENS:
Talk(SAY_ALGALON_ASCEND);
me->CastSpell((Unit*)nullptr, SPELL_ASCEND_TO_THE_HEAVENS, false);
events.ScheduleEvent(EVENT_EVADE, 2500);
events.ScheduleEvent(EVENT_EVADE, 2500ms);
break;
case EVENT_EVADE:
events.Reset();
@@ -806,7 +806,7 @@ public:
break;
case EVENT_CHECK_HERALD_ITEMS:
if (!DoCheckHeraldOfTheTitans())
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
@@ -842,16 +842,16 @@ public:
me->SetWalk(false);
_currentPoint = 0;
events.Reset();
events.ScheduleEvent(EVENT_BRANN_MOVE_INTRO, 1);
events.ScheduleEvent(EVENT_BRANN_MOVE_INTRO, 1ms);
break;
case ACTION_FINISH_INTRO:
Talk(SAY_BRANN_ALGALON_INTRO_2);
events.ScheduleEvent(EVENT_BRANN_MOVE_INTRO, 1);
events.ScheduleEvent(EVENT_BRANN_MOVE_INTRO, 1ms);
break;
case ACTION_OUTRO:
me->GetMotionMaster()->MovePoint(POINT_BRANN_OUTRO, BrannOutroPos[1]);
events.ScheduleEvent(EVENT_BRANN_OUTRO_1, 87500);
events.ScheduleEvent(EVENT_BRANN_OUTRO_2, 116500);
events.ScheduleEvent(EVENT_BRANN_OUTRO_1, 87s + 500ms);
events.ScheduleEvent(EVENT_BRANN_OUTRO_2, 116s + 500ms);
break;
}
}
@@ -873,7 +873,7 @@ public:
me->SetFacingTo(4.6156f);
me->SetWalk(false);
Talk(SAY_BRANN_ALGALON_INTRO_1);
events.ScheduleEvent(EVENT_SUMMON_ALGALON, 7500);
events.ScheduleEvent(EVENT_SUMMON_ALGALON, 7500ms);
return;
case 10:
me->DespawnOrUnsummon(1);
@@ -972,7 +972,7 @@ public:
void Reset() override
{
events.Reset();
events.ScheduleEvent(EVENT_ARCANE_BARRAGE, 2500);
events.ScheduleEvent(EVENT_ARCANE_BARRAGE, 2500ms);
_isActive = false;
}
@@ -1001,7 +1001,7 @@ public:
case ACTION_BIG_BANG:
events.SetPhase(PHASE_BIG_BANG);
events.DelayEvents(9500);
events.ScheduleEvent(EVENT_RESUME_UPDATING, 9500);
events.ScheduleEvent(EVENT_RESUME_UPDATING, 9500ms);
break;
}
}
@@ -1031,7 +1031,7 @@ public:
{
case EVENT_ARCANE_BARRAGE:
me->CastCustomSpell(SPELL_ARCANE_BARRAGE, SPELLVALUE_MAX_TARGETS, 1, (Unit*)nullptr, true);
events.RepeatEvent(2500);
events.Repeat(2500ms);
break;
case EVENT_RESUME_UPDATING:
events.SetPhase(0);
@@ -1136,7 +1136,7 @@ public:
_locked = true;
// Start Algalon event
me->SetGameObjectFlag(GO_FLAG_IN_USE);
events.ScheduleEvent(EVENT_DESPAWN_CONSOLE, 5000);
events.ScheduleEvent(EVENT_DESPAWN_CONSOLE, 5000ms);
if (Creature* brann = me->SummonCreature(NPC_BRANN_BRONZBEARD_ALG, BrannIntroSpawnPos))
brann->AI()->DoAction(ACTION_START_INTRO);

View File

@@ -237,7 +237,7 @@ public:
me->setActive(true);
me->SetInCombatWithZone();
me->CastSpell(me, SPELL_HIGH_VOLTAGE, true);
events.ScheduleEvent(EVENT_ENRAGE, 900000);
events.ScheduleEvent(EVENT_ENRAGE, 15min);
UpdatePhase();
if (!pInstance)
@@ -275,14 +275,14 @@ public:
switch (_phase)
{
case 1:
events.RescheduleEvent(EVENT_FUSION_PUNCH, 15000);
events.RescheduleEvent(EVENT_FUSION_PUNCH, 15s);
break;
case 2:
events.RescheduleEvent(EVENT_STATIC_DISRUPTION, 20000);
events.RescheduleEvent(EVENT_STATIC_DISRUPTION, 20s);
break;
case 3:
me->ResetLootMode();
events.RescheduleEvent(EVENT_OVERWHELMING_POWER, 8000);
events.RescheduleEvent(EVENT_OVERWHELMING_POWER, 8s);
break;
}
}
@@ -342,13 +342,13 @@ public:
{
case EVENT_FUSION_PUNCH:
me->CastSpell(me->GetVictim(), SPELL_FUSION_PUNCH, false);
events.RepeatEvent(urand(15000, 20000));
events.Repeat(15s, 20s);
break;
case EVENT_STATIC_DISRUPTION:
if (Unit* pTarget = SelectTarget(SelectTargetMethod::MinDistance, 0, 0, true))
me->CastSpell(pTarget, SPELL_STATIC_DISRUPTION, false);
events.RepeatEvent(urand(20000, 40000));
events.Repeat(20s, 40s);
break;
case EVENT_OVERWHELMING_POWER:
Talk(SAY_STEELBREAKER_POWER);
@@ -430,7 +430,7 @@ public:
me->InterruptNonMeleeSpells(false);
me->setActive(true);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_ENRAGE, 900000);
events.ScheduleEvent(EVENT_ENRAGE, 15min);
UpdatePhase();
if (!pInstance)
@@ -452,15 +452,15 @@ public:
switch (_phase)
{
case 1:
events.RescheduleEvent(EVENT_SHIELD_OF_RUNES, 20000);
events.RescheduleEvent(EVENT_RUNE_OF_POWER, 30000);
events.RescheduleEvent(EVENT_SHIELD_OF_RUNES, 20s);
events.RescheduleEvent(EVENT_RUNE_OF_POWER, 30s);
break;
case 2:
events.RescheduleEvent(EVENT_RUNE_OF_DEATH, 35000);
events.RescheduleEvent(EVENT_RUNE_OF_DEATH, 35s);
break;
case 3:
me->ResetLootMode();
events.RescheduleEvent(EVENT_RUNE_OF_SUMMONING, urand(20000, 30000));
events.RescheduleEvent(EVENT_RUNE_OF_SUMMONING, 20s, 30s);
break;
}
}
@@ -516,25 +516,25 @@ public:
target = me;
me->CastSpell(target, SPELL_RUNE_OF_POWER, true);
events.RepeatEvent(60000);
events.Repeat(1min);
break;
}
case EVENT_SHIELD_OF_RUNES:
me->CastSpell(me, SPELL_SHIELD_OF_RUNES, false);
events.RescheduleEvent(EVENT_SHIELD_OF_RUNES, urand(27000, 34000));
events.RescheduleEvent(EVENT_SHIELD_OF_RUNES, 27s, 34s);
break;
case EVENT_RUNE_OF_DEATH:
if (Unit* target = SelectTarget(SelectTargetMethod::Random))
me->CastSpell(target, SPELL_RUNE_OF_DEATH, true);
Talk(SAY_MOLGEIM_RUNE_DEATH);
events.RepeatEvent(urand(30000, 40000));
events.Repeat(30s, 40s);
break;
case EVENT_RUNE_OF_SUMMONING:
Talk(SAY_MOLGEIM_SUMMON);
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_RUNE_OF_SUMMONING);
events.RepeatEvent(urand(30000, 45000));
events.Repeat(30s, 45s);
break;
case EVENT_ENRAGE:
me->CastSpell(me, SPELL_BERSERK, true);
@@ -647,7 +647,7 @@ public:
me->InterruptNonMeleeSpells(false);
me->setActive(true);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_ENRAGE, 900000);
events.ScheduleEvent(EVENT_ENRAGE, 15min);
UpdatePhase();
if (!pInstance)
@@ -669,16 +669,16 @@ public:
switch (_phase)
{
case 1:
events.RescheduleEvent(EVENT_CHAIN_LIGHTNING, urand(9000, 17000));
events.RescheduleEvent(EVENT_OVERLOAD, urand(25000, 40000));
events.RescheduleEvent(EVENT_CHAIN_LIGHTNING, 9s, 17s);
events.RescheduleEvent(EVENT_OVERLOAD, 25s, 40s);
break;
case 2:
events.RescheduleEvent(EVENT_LIGHTNING_WHIRL, urand(20000, 40000));
events.RescheduleEvent(EVENT_LIGHTNING_WHIRL, 20s, 40s);
break;
case 3:
me->ResetLootMode();
me->CastSpell(me, SPELL_STORMSHIELD, true);
events.RescheduleEvent(EVENT_LIGHTNING_TENDRILS, urand(15000, 16000));
events.RescheduleEvent(EVENT_LIGHTNING_TENDRILS, 15s, 16s);
break;
}
}
@@ -763,23 +763,23 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_CHAIN_LIGHTNING, false);
events.RepeatEvent(urand(9000, 17000));
events.Repeat(9s, 17s);
break;
case EVENT_OVERLOAD:
Talk(EMOTE_BRUNDIR_OVERLOAD);
me->CastSpell(me, SPELL_OVERLOAD, true);
events.RescheduleEvent(EVENT_OVERLOAD, urand(25000, 40000));
events.RescheduleEvent(EVENT_OVERLOAD, 25s, 40s);
break;
case EVENT_LIGHTNING_WHIRL:
Talk(SAY_BRUNDIR_SPECIAL);
me->CastSpell(me, SPELL_LIGHTNING_WHIRL, true);
events.RepeatEvent(urand(10000, 25000));
events.Repeat(10s, 25s);
break;
case EVENT_LIGHTNING_TENDRILS:
{
// Reschedule old
events.RepeatEvent(35000);
events.DelayEvents(18000);
events.Repeat(35s);
events.DelayEvents(18s);
Talk(SAY_BRUNDIR_FLIGHT);
Unit* oldVictim = me->GetVictim();
@@ -796,7 +796,7 @@ public:
me->CastSpell(me, SPELL_LIGHTNING_TENDRILS, true);
me->CastSpell(me, 61883, true);
events.ScheduleEvent(EVENT_LIGHTNING_LAND, 16000);
events.ScheduleEvent(EVENT_LIGHTNING_LAND, 16s);
events.ScheduleEvent(EVENT_LIGHTNING_FLIGHT, 1s);
break;
}
@@ -804,7 +804,7 @@ public:
{
float speed = me->GetDistance(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()) / (1000.0f * 0.001f);
me->MonsterMoveWithSpeed(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), speed);
events.ScheduleEvent(EVENT_LAND_LAND, 1000);
events.ScheduleEvent(EVENT_LAND_LAND, 1s);
break;
}
case EVENT_LAND_LAND:

View File

@@ -177,12 +177,12 @@ public:
if (m_pInstance)
m_pInstance->SetData(TYPE_AURIAYA, IN_PROGRESS);
events.ScheduleEvent(EVENT_TERRIFYING_SCREECH, 35000);
events.ScheduleEvent(EVENT_SONIC_SCREECH, 45000);
events.ScheduleEvent(EVENT_GUARDIAN_SWARM, 70000);
events.ScheduleEvent(EVENT_SUMMON_FERAL_DEFENDER, 60000);
events.ScheduleEvent(EVENT_SENTINEL_BLAST, 36000);
events.ScheduleEvent(EVENT_ENRAGE, 600000);
events.ScheduleEvent(EVENT_TERRIFYING_SCREECH, 35s);
events.ScheduleEvent(EVENT_SONIC_SCREECH, 45s);
events.ScheduleEvent(EVENT_GUARDIAN_SWARM, 70s);
events.ScheduleEvent(EVENT_SUMMON_FERAL_DEFENDER, 60s);
events.ScheduleEvent(EVENT_SENTINEL_BLAST, 36s);
events.ScheduleEvent(EVENT_ENRAGE, 10min);
summons.DoZoneInCombat(NPC_SANCTUM_SENTRY);
@@ -212,7 +212,7 @@ public:
void DoAction(int32 param) override
{
if (param == ACTION_FERAL_DEATH_WITH_STACK)
events.ScheduleEvent(EVENT_RESPAWN_FERAL_DEFENDER, 25000);
events.ScheduleEvent(EVENT_RESPAWN_FERAL_DEFENDER, 25s);
else if (param == ACTION_FERAL_DEATH)
_nineLives = true;
}
@@ -232,7 +232,7 @@ public:
Talk(EMOTE_DEFFENDER);
me->CastSpell(me, SPELL_ACTIVATE_FERAL_DEFENDER, true);
me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_INTERRUPT_CAST, true);
events.ScheduleEvent(EVENT_REMOVE_IMMUNE, 3000);
events.ScheduleEvent(EVENT_REMOVE_IMMUNE, 3s);
break;
case EVENT_REMOVE_IMMUNE:
me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_INTERRUPT_CAST, false);
@@ -240,19 +240,19 @@ public:
case EVENT_TERRIFYING_SCREECH:
Talk(EMOTE_FEAR);
me->CastSpell(me, SPELL_TERRIFYING_SCREECH, false);
events.RepeatEvent(35000);
events.Repeat(35s);
break;
case EVENT_SONIC_SCREECH:
me->CastSpell(me, SPELL_SONIC_SCREECH, false);
events.RepeatEvent(50000);
events.Repeat(50s);
break;
case EVENT_GUARDIAN_SWARM:
me->CastSpell(me->GetVictim(), SPELL_GUARDIAN_SWARM, false);
events.RepeatEvent(40000);
events.Repeat(40s);
break;
case EVENT_SENTINEL_BLAST:
me->CastSpell(me, SPELL_SENTINEL_BLAST, false);
events.RepeatEvent(35000);
events.Repeat(35s);
events.DelayEvents(5000, 0);
break;
case EVENT_RESPAWN_FERAL_DEFENDER:

View File

@@ -382,7 +382,7 @@ public:
if (!me->GetVictim())
{
me->CastSpell(me, SPELL_PURSUED, false);
events.RescheduleEvent(EVENT_PURSUE, 31000);
events.RescheduleEvent(EVENT_PURSUE, 31s);
}
_speakTimer = 0;
}
@@ -404,31 +404,31 @@ public:
EnterEvadeMode();
return;
}
events.RepeatEvent(5000);
events.Repeat(5s);
break;
case EVENT_PURSUE:
Talk(FLAME_LEVIATHAN_SAY_PURSUE);
me->CastSpell(me, SPELL_PURSUED, false);
events.RescheduleEvent(EVENT_PURSUE, 31000);
events.RescheduleEvent(EVENT_PURSUE, 31s);
return;
case EVENT_SPEED:
me->CastSpell(me, SPELL_GATHERING_SPEED, false);
events.RepeatEvent(15000);
events.Repeat(15s);
return;
case EVENT_MISSILE:
me->CastSpell(me, SPELL_MISSILE_BARRAGE, true);
events.RepeatEvent(4000);
events.Repeat(4s);
return;
case EVENT_VENT:
me->CastSpell(me, SPELL_FLAME_VENTS, false);
events.RepeatEvent(20000);
events.Repeat(20s);
return;
case EVENT_SUMMON:
if(summons.size() < 20)
if (Creature* lift = DoSummonFlyer(NPC_MECHANOLIFT, me, 30.0f, 50.0f, 0))
lift->GetMotionMaster()->MoveRandom(100);
events.RepeatEvent(4000);
events.Repeat(4s);
return;
case EVENT_SOUND_BEGINNING:
if (_towersCount)
@@ -445,7 +445,7 @@ public:
return;
case EVENT_THORIMS_HAMMER:
SummonTowerHelpers(TOWER_OF_STORMS);
events.RepeatEvent(60000 + rand() % 60000);
events.Repeat(1min, 2min);
Talk(FLAME_LEVIATHAN_EMOTE_STORM);
Talk(FLAME_LEVIATHAN_SAY_TOWER_STORM);
return;
@@ -520,19 +520,19 @@ void boss_flame_leviathan::boss_flame_leviathanAI::ActivateTowers()
{
case EVENT_TOWER_OF_LIFE_DESTROYED:
me->AddAura(SPELL_TOWER_OF_LIFE, me);
events.RescheduleEvent(EVENT_FREYA, 30000);
events.RescheduleEvent(EVENT_FREYA, 30s);
break;
case EVENT_TOWER_OF_STORM_DESTROYED:
me->AddAura(SPELL_TOWER_OF_STORMS, me);
events.RescheduleEvent(EVENT_THORIMS_HAMMER, 60000);
events.RescheduleEvent(EVENT_THORIMS_HAMMER, 1min);
break;
case EVENT_TOWER_OF_FROST_DESTROYED:
me->AddAura(SPELL_TOWER_OF_FROST, me);
events.RescheduleEvent(EVENT_HODIRS_FURY, 20000);
events.RescheduleEvent(EVENT_HODIRS_FURY, 20s);
break;
case EVENT_TOWER_OF_FLAMES_DESTROYED:
me->AddAura(SPELL_TOWER_OF_FLAMES, me);
events.RescheduleEvent(EVENT_MIMIRONS_INFERNO, 42000);
events.RescheduleEvent(EVENT_MIMIRONS_INFERNO, 42s);
break;
}
}
@@ -599,14 +599,14 @@ void boss_flame_leviathan::boss_flame_leviathanAI::TurnHealStations(bool _apply)
void boss_flame_leviathan::boss_flame_leviathanAI::ScheduleEvents()
{
events.RescheduleEvent(EVENT_MISSILE, 5000);
events.RescheduleEvent(EVENT_VENT, 20000);
events.RescheduleEvent(EVENT_SPEED, 15000);
events.RescheduleEvent(EVENT_SUMMON, 10000);
events.RescheduleEvent(EVENT_SOUND_BEGINNING, 10000);
events.RescheduleEvent(EVENT_POSITION_CHECK, 5000);
events.RescheduleEvent(EVENT_MISSILE, 5s);
events.RescheduleEvent(EVENT_VENT, 20s);
events.RescheduleEvent(EVENT_SPEED, 15s);
events.RescheduleEvent(EVENT_SUMMON, 10s);
events.RescheduleEvent(EVENT_SOUND_BEGINNING, 10s);
events.RescheduleEvent(EVENT_POSITION_CHECK, 5s);
events.RescheduleEvent(EVENT_PURSUE, 0);
events.RescheduleEvent(EVENT_PURSUE, 0ms);
}
void boss_flame_leviathan::boss_flame_leviathanAI::SpellHit(Unit* /*caster*/, SpellInfo const* spellInfo)
@@ -619,8 +619,8 @@ void boss_flame_leviathan::boss_flame_leviathanAI::SpellHit(Unit* /*caster*/, S
Talk(FLAME_LEVIATHAN_EMOTE_REPAIR);
Talk(FLAME_LEVIATHAN_SAY_OVERLOAD);
events.DelayEvents(20 * IN_MILLISECONDS + 1);
events.ScheduleEvent(EVENT_REINSTALL, 20 * IN_MILLISECONDS);
events.DelayEvents(21ms);
events.ScheduleEvent(EVENT_REINSTALL, 20ms);
}
else if (spellInfo->Id == 62522 /*SPELL_ELECTROSHOCK*/)
me->InterruptNonMeleeSpells(false);
@@ -647,7 +647,7 @@ void boss_flame_leviathan::boss_flame_leviathanAI::JustDied(Unit*)
void boss_flame_leviathan::boss_flame_leviathanAI::KilledUnit(Unit* who)
{
if (who == me->GetVictim())
events.RescheduleEvent(EVENT_PURSUE, 0);
events.RescheduleEvent(EVENT_PURSUE, 0ms);
if (who->GetTypeId() == TYPEID_PLAYER)
Talk(FLAME_LEVIATHAN_SAY_SLAY);

View File

@@ -421,7 +421,7 @@ public:
if (!_respawningTrio)
{
_respawningTrio = true;
events.ScheduleEvent(EVENT_FREYA_RESPAWN_TRIO, 10000);
events.ScheduleEvent(EVENT_FREYA_RESPAWN_TRIO, 10s);
}
++_trioKilled;
@@ -447,7 +447,7 @@ public:
aur->SetStackAmount(aur->GetStackAmount() - param);
else // Aura out of stack
{
events.ScheduleEvent(EVENT_FREYA_NATURE_BOMB, 5000);
events.ScheduleEvent(EVENT_FREYA_NATURE_BOMB, 5s);
events.SetPhase(EVENT_PHASE_FINAL);
aur->Remove();
return;
@@ -482,10 +482,10 @@ public:
if (Aura* aur = me->AddAura(SPELL_ATTUNED_TO_NATURE, me))
aur->SetStackAmount(150);
events.ScheduleEvent(EVENT_FREYA_ADDS_SPAM, 10000, 0, EVENT_PHASE_ADDS);
events.ScheduleEvent(EVENT_FREYA_LIFEBINDER, 30000);
events.ScheduleEvent(EVENT_FREYA_SUNBEAM, 17000);
events.ScheduleEvent(EVENT_FREYA_BERSERK, 600000);
events.ScheduleEvent(EVENT_FREYA_ADDS_SPAM, 10s, 0, EVENT_PHASE_ADDS);
events.ScheduleEvent(EVENT_FREYA_LIFEBINDER, 30s);
events.ScheduleEvent(EVENT_FREYA_SUNBEAM, 17s);
events.ScheduleEvent(EVENT_FREYA_BERSERK, 10min);
events.SetPhase(EVENT_PHASE_ADDS);
if( !m_pInstance )
@@ -502,7 +502,7 @@ public:
elder->CastSpell(elder, SPELL_STONEBARK_ESSENCE, true);
elder->SetInCombatWithZone();
events.ScheduleEvent(EVENT_FREYA_GROUND_TREMOR, 35000);
events.ScheduleEvent(EVENT_FREYA_GROUND_TREMOR, 35s);
_elderGUID[0] = elder->GetGUID();
}
@@ -513,7 +513,7 @@ public:
elder->CastSpell(elder, SPELL_IRONBRANCH_ESSENCE, true);
elder->SetInCombatWithZone();
events.ScheduleEvent(EVENT_FREYA_IRON_ROOT, 20000);
events.ScheduleEvent(EVENT_FREYA_IRON_ROOT, 20s);
_elderGUID[1] = elder->GetGUID();
}
@@ -524,7 +524,7 @@ public:
elder->CastSpell(elder, SPELL_BRIGHTLEAF_ESSENCE, true);
elder->SetInCombatWithZone();
events.ScheduleEvent(EVENT_FREYA_UNSTABLE_SUN_BEAM, 60000);
events.ScheduleEvent(EVENT_FREYA_UNSTABLE_SUN_BEAM, 1min);
_elderGUID[2] = elder->GetGUID();
}
@@ -561,17 +561,17 @@ public:
else if (me->GetAura(SPELL_ATTUNED_TO_NATURE))
{
me->RemoveAura(SPELL_ATTUNED_TO_NATURE);
events.ScheduleEvent(EVENT_FREYA_NATURE_BOMB, 5000);
events.ScheduleEvent(EVENT_FREYA_NATURE_BOMB, 5s);
events.SetPhase(EVENT_PHASE_FINAL);
return;
}
_spawnedAmount++;
events.RepeatEvent(60000);
events.Repeat(1min);
break;
case EVENT_FREYA_LIFEBINDER:
{
Talk(EMOTE_LIFEBINDERS_GIFT);
events.RepeatEvent(45000);
events.Repeat(45s);
float x, y, z;
for (uint8 i = 0; i < 10; ++i)
{
@@ -591,7 +591,7 @@ public:
case EVENT_FREYA_SUNBEAM:
if (Unit* target = SelectTarget(SelectTargetMethod::Random))
me->CastSpell(target, SPELL_SUNBEAM, false);
events.RepeatEvent(15000 + urand(0, 5000));
events.Repeat(15s, 20s);
break;
case EVENT_FREYA_RESPAWN_TRIO:
_deforestation = 0;
@@ -615,7 +615,7 @@ public:
if (!(--_minCount))
break;
}
events.RepeatEvent(18000);
events.Repeat(18s);
break;
}
case EVENT_FREYA_BERSERK:
@@ -625,12 +625,12 @@ public:
case EVENT_FREYA_GROUND_TREMOR:
Talk(EMOTE_GROUND_TREMOR);
me->CastSpell(me, SPELL_GROUND_TREMOR_FREYA, false);
events.RepeatEvent(25000 + urand(0, 10000));
events.Repeat(25s, 35s);
break;
case EVENT_FREYA_IRON_ROOT:
Talk(EMOTE_IRON_ROOTS);
me->CastCustomSpell(SPELL_IRON_ROOTS_FREYA, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(45000 + urand(0, 10000));
events.Repeat(45s, 55s);
break;
case EVENT_FREYA_UNSTABLE_SUN_BEAM:
me->SummonCreature(NPC_FREYA_UNSTABLE_SUN_BEAM, me->GetPositionX() + urand(7, 25), me->GetPositionY() + urand(7, 25), me->GetMapHeight(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()), 0, TEMPSUMMON_TIMED_DESPAWN, 10000);
@@ -639,7 +639,7 @@ public:
me->SummonCreature(NPC_FREYA_UNSTABLE_SUN_BEAM, me->GetPositionX() + urand(7, 25), me->GetPositionY() + urand(7, 25), me->GetMapHeight(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()), 0, TEMPSUMMON_TIMED_DESPAWN, 10000);
me->SummonCreature(NPC_FREYA_UNSTABLE_SUN_BEAM, me->GetPositionX() + urand(7, 25), me->GetPositionY() + urand(7, 25), me->GetMapHeight(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()), 0, TEMPSUMMON_TIMED_DESPAWN, 10000);
}
events.RepeatEvent(38000 + urand(0, 10000));
events.Repeat(38s, 48s);
break;
}
@@ -700,9 +700,9 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_STONEBARK_FISTS_OF_STONE, 40000);
events.ScheduleEvent(EVENT_STONEBARK_GROUND_TREMOR, 5000);
events.ScheduleEvent(EVENT_STONEBARK_PETRIFIED_BARK, 20000);
events.ScheduleEvent(EVENT_STONEBARK_FISTS_OF_STONE, 40s);
events.ScheduleEvent(EVENT_STONEBARK_GROUND_TREMOR, 5s);
events.ScheduleEvent(EVENT_STONEBARK_PETRIFIED_BARK, 20s);
if (!me->HasAura(SPELL_DRAINED_OF_POWER)) // Prevents speech if combat is initiated by hardmode activation
Talk(SAY_ELDER_AGGRO);
@@ -730,17 +730,17 @@ public:
{
case EVENT_STONEBARK_FISTS_OF_STONE:
me->CastSpell(me, SPELL_FISTS_OF_STONE, false);
events.RepeatEvent(60000);
events.Repeat(1min);
break;
case EVENT_STONEBARK_GROUND_TREMOR:
if (!me->HasAura(SPELL_FISTS_OF_STONE))
me->CastSpell(me, SPELL_GROUND_TREMOR, false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_STONEBARK_PETRIFIED_BARK:
_chargesCount = RAID_MODE(60, 120);
me->CastSpell(me, SPELL_PETRIFIED_BARK, false);
events.RepeatEvent(30000);
events.Repeat(30s);
break;
}
@@ -796,9 +796,9 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_BRIGHTLEAF_FLUX, 10000);
events.ScheduleEvent(EVENT_BRIGHTLEAF_SOLAR_FLARE, 5000);
events.ScheduleEvent(EVENT_BRIGHTLEAF_UNSTABLE_SUN_BEAM, 8000);
events.ScheduleEvent(EVENT_BRIGHTLEAF_FLUX, 10s);
events.ScheduleEvent(EVENT_BRIGHTLEAF_SOLAR_FLARE, 5s);
events.ScheduleEvent(EVENT_BRIGHTLEAF_UNSTABLE_SUN_BEAM, 8s);
if (!me->HasAura(SPELL_DRAINED_OF_POWER)) // Prevents speech if combat is initiated by hardmode activation
Talk(SAY_ELDER_AGGRO);
@@ -818,7 +818,7 @@ public:
case EVENT_BRIGHTLEAF_FLUX:
if (Aura* aur = me->AddAura(SPELL_BRIGHTLEAF_FLUX, me))
aur->SetStackAmount(urand(1, 10));
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_BRIGHTLEAF_SOLAR_FLARE:
if (Aura* aur = me->GetAura(SPELL_BRIGHTLEAF_FLUX))
@@ -826,10 +826,10 @@ public:
me->CastCustomSpell(SPELL_SOLAR_FLARE, SPELLVALUE_MAX_TARGETS, aur->GetStackAmount(), me, false);
me->RemoveAura(aur);
}
events.RepeatEvent(15000);
events.Repeat(15s);
break;
case EVENT_BRIGHTLEAF_UNSTABLE_SUN_BEAM:
events.ScheduleEvent(EVENT_BRIGHTLEAF_DESPAWN_SUN_BEAM, 15000);
events.ScheduleEvent(EVENT_BRIGHTLEAF_DESPAWN_SUN_BEAM, 15s);
if (Creature* beam = me->SummonCreature(NPC_UNSTABLE_SUN_BRIGHTLEAF, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()))
{
beam->CastSpell(beam, SPELL_UNSTABLE_SUN_BEAM_AURA, true);
@@ -842,7 +842,7 @@ public:
beam->CastSpell(beam, SPELL_PHOTOSYNTHESIS, true);
summons.Summon(beam);
}
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_BRIGHTLEAF_DESPAWN_SUN_BEAM:
for (SummonList::iterator i = summons.begin(); i != summons.end();)
@@ -907,9 +907,9 @@ public:
void JustEngagedWith(Unit*) override
{
events.ScheduleEvent(EVENT_IRONBRANCH_IMPALE, 10000);
events.ScheduleEvent(EVENT_IRONBRANCH_IRON_ROOT, 15000);
events.ScheduleEvent(EVENT_IRONBRANCH_THORN_SWARM, 3000);
events.ScheduleEvent(EVENT_IRONBRANCH_IMPALE, 10s);
events.ScheduleEvent(EVENT_IRONBRANCH_IRON_ROOT, 15s);
events.ScheduleEvent(EVENT_IRONBRANCH_THORN_SWARM, 3s);
if (!me->HasAura(SPELL_DRAINED_OF_POWER)) // Prevents speech if combat is initiated by hardmode activation
Talk(SAY_ELDER_AGGRO);
@@ -928,16 +928,16 @@ public:
{
case EVENT_IRONBRANCH_IMPALE:
me->CastSpell(me->GetVictim(), SPELL_IMPALE, false);
events.RepeatEvent(17000);
events.Repeat(17s);
break;
case EVENT_IRONBRANCH_IRON_ROOT:
me->CastCustomSpell(SPELL_IRON_ROOTS, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_IRONBRANCH_THORN_SWARM:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), SPELL_THORN_SWARM, false);
events.RepeatEvent(14000);
events.Repeat(14s);
break;
}
@@ -1119,24 +1119,24 @@ public:
if (me->GetEntry() == NPC_ANCIENT_CONSERVATOR)
{
me->CastSpell(me, SPELL_HEALTHY_SPORE_SUMMON, true);
events.ScheduleEvent(EVENT_ANCIENT_CONSERVATOR_GRIP, 6000);
events.ScheduleEvent(EVENT_ANCIENT_CONSERVATOR_NATURE_FURY, 14000);
events.ScheduleEvent(EVENT_ANCIENT_CONSERVATOR_GRIP, 6s);
events.ScheduleEvent(EVENT_ANCIENT_CONSERVATOR_NATURE_FURY, 14s);
_stackCount = ACTION_REMOVE_25_STACK;
}
else if (me->GetEntry() == NPC_ANCIENT_WATER_SPIRIT)
{
events.ScheduleEvent(EVENT_WATER_SPIRIT_CHARGE, 12000);
events.ScheduleEvent(EVENT_WATER_SPIRIT_CHARGE, 12s);
_stackCount = ACTION_REMOVE_10_STACK;
}
else if (me->GetEntry() == NPC_STORM_LASHER)
{
events.ScheduleEvent(EVENT_STORM_LASHER_LIGHTNING_LASH, 10000);
events.ScheduleEvent(EVENT_STORM_LASHER_STORMBOLT, 6000);
events.ScheduleEvent(EVENT_STORM_LASHER_LIGHTNING_LASH, 10s);
events.ScheduleEvent(EVENT_STORM_LASHER_STORMBOLT, 6s);
_stackCount = ACTION_REMOVE_10_STACK;
}
else if (me->GetEntry() == NPC_DETONATING_LASHER)
{
events.ScheduleEvent(EVENT_DETONATING_LASHER_FLAME_LASH, 10000);
events.ScheduleEvent(EVENT_DETONATING_LASHER_FLAME_LASH, 10s);
_stackCount = ACTION_REMOVE_2_STACK;
}
else if (me->GetEntry() == NPC_SNAPLASHER)
@@ -1159,7 +1159,7 @@ public:
{
case EVENT_ANCIENT_CONSERVATOR_NATURE_FURY:
me->CastSpell(me->GetVictim(), SPELL_NATURE_FURY, false);
events.RepeatEvent(14000);
events.Repeat(14s);
break;
case EVENT_ANCIENT_CONSERVATOR_GRIP:
me->CastSpell(me, SPELL_CONSERVATOR_GRIP, true);
@@ -1167,8 +1167,8 @@ public:
case EVENT_WATER_SPIRIT_CHARGE:
me->CastSpell(me, SPELL_TIDAL_WAVE_AURA, true);
me->CastSpell(me->GetVictim(), SPELL_TIDAL_WAVE, false);
events.RepeatEvent(12000);
events.ScheduleEvent(EVENT_WATER_SPIRIT_DAMAGE, 3000);
events.Repeat(12s);
events.ScheduleEvent(EVENT_WATER_SPIRIT_DAMAGE, 3s);
break;
case EVENT_WATER_SPIRIT_DAMAGE:
me->CastSpell(me, SPELL_TIDAL_WAVE_DAMAGE, false);
@@ -1176,11 +1176,11 @@ public:
case EVENT_STORM_LASHER_LIGHTNING_LASH:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_LIGHTNING_LASH, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_STORM_LASHER_STORMBOLT:
me->CastSpell(me->GetVictim(), SPELL_STORMBOLT, false);
events.RepeatEvent(6000);
events.Repeat(6s);
break;
case EVENT_DETONATING_LASHER_FLAME_LASH:
me->CastSpell(me->GetVictim(), SPELL_FLAME_LASH, false);
@@ -1189,7 +1189,7 @@ public:
AttackStart(target);
else
me->DespawnOrUnsummon(1);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}

View File

@@ -157,12 +157,12 @@ public:
me->SetInCombatWithZone();
events.Reset();
events.RescheduleEvent(EVENT_SPELL_VEZAX_SHADOW_CRASH, 13000);
events.RescheduleEvent(EVENT_SPELL_SEARING_FLAMES, 10000, 1);
events.RescheduleEvent(EVENT_SPELL_SURGE_OF_DARKNESS, 63000);
events.RescheduleEvent(EVENT_SPELL_MARK_OF_THE_FACELESS, 20000);
events.RescheduleEvent(EVENT_SPELL_SUMMON_SARONITE_VAPORS, 30000);
events.RescheduleEvent(EVENT_BERSERK, 600000);
events.RescheduleEvent(EVENT_SPELL_VEZAX_SHADOW_CRASH, 13s);
events.RescheduleEvent(EVENT_SPELL_SEARING_FLAMES, 10s, 1);
events.RescheduleEvent(EVENT_SPELL_SURGE_OF_DARKNESS, 63s);
events.RescheduleEvent(EVENT_SPELL_MARK_OF_THE_FACELESS, 20s);
events.RescheduleEvent(EVENT_SPELL_SUMMON_SARONITE_VAPORS, 30s);
events.RescheduleEvent(EVENT_BERSERK, 10min);
Talk(SAY_AGGRO);
@@ -210,7 +210,7 @@ public:
return;
if( !berserk && (me->GetPositionX() < 1720.0f || me->GetPositionX() > 1940.0f || me->GetPositionY() < 20.0f || me->GetPositionY() > 210.0f) )
events.RescheduleEvent(EVENT_BERSERK, 1);
events.RescheduleEvent(EVENT_BERSERK, 1ms);
events.Update(diff);
@@ -228,7 +228,7 @@ public:
break;
case EVENT_SPELL_VEZAX_SHADOW_CRASH:
{
events.RepeatEvent(10000);
events.Repeat(10s);
std::vector<Player*> players;
Map::PlayerList const& pl = me->GetMap()->GetPlayers();
@@ -244,7 +244,7 @@ public:
Player* target = players.at(urand(0, players.size() - 1));
me->SetGuidValue(UNIT_FIELD_TARGET, target->GetGUID());
me->CastSpell(target, SPELL_VEZAX_SHADOW_CRASH, false);
events.ScheduleEvent(EVENT_RESTORE_TARGET, 750);
events.ScheduleEvent(EVENT_RESTORE_TARGET, 750ms);
}
}
break;
@@ -255,13 +255,13 @@ public:
case EVENT_SPELL_SEARING_FLAMES:
if(!me->HasAura(SPELL_SARONITE_BARRIER))
me->CastSpell(me->GetVictim(), SPELL_SEARING_FLAMES, false);
events.RepeatEvent( me->GetMap()->Is25ManRaid() ? 8000 : 15000 );
events.Repeat(me->GetMap()->Is25ManRaid() ? 8s : 15s);
break;
case EVENT_SPELL_SURGE_OF_DARKNESS:
Talk(SAY_SURGE_OF_DARKNESS);
Talk(SAY_EMOTE_SURGE_OF_DARKNESS);
me->CastSpell(me, SPELL_SURGE_OF_DARKNESS, false);
events.RepeatEvent(63000);
events.Repeat(63s);
events.DelayEvents(10000, 1);
break;
case EVENT_SPELL_MARK_OF_THE_FACELESS:
@@ -288,7 +288,7 @@ public:
if (t)
me->CastSpell(t, SPELL_MARK_OF_THE_FACELESS_AURA, false);
events.RepeatEvent(40000);
events.Repeat(40s);
}
break;
case EVENT_SPELL_SUMMON_SARONITE_VAPORS:
@@ -297,7 +297,7 @@ public:
me->CastSpell(me, SPELL_SUMMON_SARONITE_VAPORS, false);
if( vaporsCount < 6 || !hardmodeAvailable )
events.RepeatEvent(30000);
events.Repeat(30s);
else
{
for (ObjectGuid const& guid : summons)
@@ -310,7 +310,7 @@ public:
events.DelayEvents(12000, 0);
events.DelayEvents(12000, 1);
events.ScheduleEvent(EVENT_SARONITE_VAPORS_SWIRL, 6000);
events.ScheduleEvent(EVENT_SARONITE_VAPORS_SWIRL, 6s);
}
}
break;
@@ -321,7 +321,7 @@ public:
if( Creature* sv = ObjectAccessor::GetCreature(*me, *(summons.begin())) )
sv->CastSpell(sv, SPELL_SARONITE_ANIMUS_FORMATION_VISUAL, true);
events.ScheduleEvent(EVENT_SPELL_SUMMON_SARONITE_ANIMUS, 2000);
events.ScheduleEvent(EVENT_SPELL_SUMMON_SARONITE_ANIMUS, 2s);
break;
}
break;
@@ -334,7 +334,7 @@ public:
if( Creature* sv = ObjectAccessor::GetCreature(*me, *(summons.begin())) )
sv->CastSpell(sv, SPELL_SUMMON_SARONITE_ANIMUS, true);
events.ScheduleEvent(EVENT_DESPAWN_SARONITE_VAPORS, 2500);
events.ScheduleEvent(EVENT_DESPAWN_SARONITE_VAPORS, 2500ms);
break;
}
break;

View File

@@ -269,10 +269,10 @@ public:
me->CastSpell(me, SPELL_BITING_COLD_BOSS_AURA, true);
SmallIcicles(true);
events.Reset();
events.ScheduleEvent(EVENT_FLASH_FREEZE, urand(48000, 49000));
events.ScheduleEvent(EVENT_FREEZE, urand(17000,20000));
events.ScheduleEvent(EVENT_BERSERK, 480000);
events.ScheduleEvent(EVENT_HARD_MODE_MISSED, 180000);
events.ScheduleEvent(EVENT_FLASH_FREEZE, 48s, 49s);
events.ScheduleEvent(EVENT_FREEZE, 17s, 20s);
events.ScheduleEvent(EVENT_BERSERK, 8min);
events.ScheduleEvent(EVENT_HARD_MODE_MISSED, 3min);
Talk(TEXT_AGGRO);
if (pInstance && pInstance->GetData(TYPE_HODIR) != DONE)
@@ -298,7 +298,7 @@ public:
if (GameObject* go = pInstance->instance->GetGameObject(pInstance->GetGuidData(GO_HODIR_CHEST_HARD)))
{
go->SetGoState(GO_STATE_ACTIVE);
events.ScheduleEvent(EVENT_DESPAWN_CHEST, 3000);
events.ScheduleEvent(EVENT_DESPAWN_CHEST, 3s);
}
}
break;
@@ -461,10 +461,10 @@ public:
Talk(TEXT_FLASH_FREEZE);
Talk(TEXT_EMOTE_FREEZE);
SmallIcicles(false);
events.ScheduleEvent(EVENT_FLASH_FREEZE, urand(48000, 49000));
events.ScheduleEvent(EVENT_SMALL_ICICLES_ENABLE, Is25ManRaid() ? 12000 : 24000);
events.ScheduleEvent(EVENT_FROZEN_BLOWS, 15000);
events.RescheduleEvent(EVENT_FREEZE, urand(17000, 20000));
events.ScheduleEvent(EVENT_FLASH_FREEZE, 48s, 49s);
events.ScheduleEvent(EVENT_SMALL_ICICLES_ENABLE, Is25ManRaid() ? 12s : 24s);
events.ScheduleEvent(EVENT_FROZEN_BLOWS, 15s);
events.RescheduleEvent(EVENT_FREEZE, 17s, 20s);
}
break;
case EVENT_SMALL_ICICLES_ENABLE:
@@ -488,7 +488,7 @@ public:
{
me->CastSpell(target, SPELL_FREEZE, false);
}
events.RescheduleEvent(EVENT_FREEZE, urand(17000, 20000));
events.RescheduleEvent(EVENT_FREEZE, 17s, 20s);
break;
}
@@ -781,9 +781,9 @@ public:
void ScheduleAbilities()
{
events.ScheduleEvent(EVENT_PRIEST_DISPELL_MAGIC, 7000);
events.ScheduleEvent(EVENT_PRIEST_GREAT_HEAL, urand(6000, 7000));
events.ScheduleEvent(EVENT_PRIEST_SMITE, 2100);
events.ScheduleEvent(EVENT_PRIEST_DISPELL_MAGIC, 7s);
events.ScheduleEvent(EVENT_PRIEST_GREAT_HEAL, 6s, 7s);
events.ScheduleEvent(EVENT_PRIEST_SMITE, 2100ms);
}
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
@@ -791,7 +791,7 @@ public:
if(spell->Id == SPELL_FLASH_FREEZE_TRAPPED_NPC)
{
events.Reset();
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2000);
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2s);
}
}
@@ -817,21 +817,21 @@ public:
ScheduleAbilities();
break;
}
events.RepeatEvent(2000);
events.Repeat(2s);
}
break;
case EVENT_PRIEST_DISPELL_MAGIC:
me->CastCustomSpell(SPELL_PRIEST_DISPELL_MAGIC, SPELLVALUE_MAX_TARGETS, 1, (Unit*)nullptr, false);
events.RepeatEvent(7000);
events.Repeat(7s);
break;
case EVENT_PRIEST_GREAT_HEAL:
me->CastSpell(me, SPELL_PRIEST_GREAT_HEAL, false);
events.RepeatEvent(urand(6000, 7000));
events.Repeat(6s, 7s);
break;
case EVENT_PRIEST_SMITE:
if (Unit* victim = me->GetVictim())
me->CastSpell(victim, SPELL_PRIEST_SMITE, false);
events.RepeatEvent(2100);
events.Repeat(2100ms);
break;
}
}
@@ -879,8 +879,8 @@ public:
void ScheduleAbilities()
{
events.ScheduleEvent(EVENT_DRUID_WRATH, 1600);
events.ScheduleEvent(EVENT_DRUID_STARLIGHT, 10000);
events.ScheduleEvent(EVENT_DRUID_WRATH, 1600ms);
events.ScheduleEvent(EVENT_DRUID_STARLIGHT, 10s);
}
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
@@ -888,7 +888,7 @@ public:
if(spell->Id == SPELL_FLASH_FREEZE_TRAPPED_NPC)
{
events.Reset();
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2000);
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2s);
}
}
@@ -914,22 +914,22 @@ public:
ScheduleAbilities();
break;
}
events.RepeatEvent(2000);
events.Repeat(2s);
}
break;
case EVENT_DRUID_WRATH:
if (Unit* victim = me->GetVictim())
me->CastSpell(victim, SPELL_DRUID_WRATH, false);
events.RepeatEvent(1600);
events.Repeat(1600ms);
break;
case EVENT_DRUID_STARLIGHT:
if (me->GetPositionZ() < 433.0f) // ensure npc is on the ground
{
me->CastSpell(me, SPELL_DRUID_STARLIGHT_AREA_AURA, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
events.RepeatEvent(3000);
events.Repeat(3s);
break;
}
}
@@ -977,8 +977,8 @@ public:
void ScheduleAbilities()
{
events.ScheduleEvent(EVENT_SHAMAN_LAVA_BURST, 2600);
events.ScheduleEvent(EVENT_SHAMAN_STORM_CLOUD, 10000);
events.ScheduleEvent(EVENT_SHAMAN_LAVA_BURST, 2600ms);
events.ScheduleEvent(EVENT_SHAMAN_STORM_CLOUD, 10s);
}
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
@@ -986,7 +986,7 @@ public:
if(spell->Id == SPELL_FLASH_FREEZE_TRAPPED_NPC)
{
events.Reset();
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2000);
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2s);
}
}
@@ -1019,18 +1019,18 @@ public:
ScheduleAbilities();
break;
}
events.RepeatEvent(2000);
events.Repeat(2s);
}
break;
case EVENT_SHAMAN_LAVA_BURST:
if (Unit* victim = me->GetVictim())
me->CastSpell(victim, SPELL_SHAMAN_LAVA_BURST, false);
events.RepeatEvent(2600);
events.Repeat(2600ms);
break;
case EVENT_SHAMAN_STORM_CLOUD:
if (Player* target = ScriptedAI::SelectTargetFromPlayerList(35.0f, SPELL_SHAMAN_STORM_CLOUD))
me->CastSpell(target, SPELL_SHAMAN_STORM_CLOUD, false);
events.RepeatEvent(30000);
events.Repeat(30s);
break;
}
}
@@ -1078,9 +1078,9 @@ public:
void ScheduleAbilities()
{
events.ScheduleEvent(EVENT_MAGE_FIREBALL, 3100);
events.ScheduleEvent(EVENT_MAGE_TOASTY_FIRE, 6000);
events.ScheduleEvent(EVENT_MAGE_MELT_ICE, 1000);
events.ScheduleEvent(EVENT_MAGE_FIREBALL, 3100ms);
events.ScheduleEvent(EVENT_MAGE_TOASTY_FIRE, 6s);
events.ScheduleEvent(EVENT_MAGE_MELT_ICE, 1s);
}
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
@@ -1088,7 +1088,7 @@ public:
if(spell->Id == SPELL_FLASH_FREEZE_TRAPPED_NPC)
{
events.Reset();
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2000);
events.ScheduleEvent(EVENT_TRY_FREE_HELPER, 2s);
}
}
@@ -1114,17 +1114,17 @@ public:
ScheduleAbilities();
break;
}
events.RepeatEvent(2000);
events.Repeat(2s);
}
break;
case EVENT_MAGE_FIREBALL:
if (Unit* victim = me->GetVictim())
me->CastSpell(victim, SPELL_MAGE_FIREBALL, false);
events.RepeatEvent(3100);
events.Repeat(3100ms);
break;
case EVENT_MAGE_TOASTY_FIRE:
me->CastSpell(me, SPELL_MAGE_CONJURE_TOASTY_FIRE, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_MAGE_MELT_ICE:
{
@@ -1141,11 +1141,11 @@ public:
if( found )
{
events.DelayEvents(2000);
events.RepeatEvent(1999);
events.DelayEvents(2s);
events.Repeat(2s);
break;
}
events.RepeatEvent(5000);
events.Repeat(5s);
}
break;
}

View File

@@ -247,9 +247,9 @@ public:
lastShatterMSTime = 0;
events.Reset();
events.ScheduleEvent(EVENT_ACTIVATE_CONSTRUCT, RAID_MODE(40000, 30000));
events.ScheduleEvent(EVENT_SPELL_SCORCH, 10000);
events.ScheduleEvent(EVENT_SPELL_FLAME_JETS, 32000);
events.ScheduleEvent(EVENT_GRAB, 25000);
events.ScheduleEvent(EVENT_SPELL_SCORCH, 10s);
events.ScheduleEvent(EVENT_SPELL_FLAME_JETS, 32s);
events.ScheduleEvent(EVENT_GRAB, 25s);
Talk(SAY_AGGRO);
DoZoneInCombat();
@@ -354,8 +354,8 @@ public:
me->DisableRotate(true);
me->SendMovementFlagUpdate();
me->CastSpell(me->GetVictim(), S_SCORCH, false);
events.RepeatEvent(20000);
events.RescheduleEvent(EVENT_ENABLE_ROTATE, 3001);
events.Repeat(20s);
events.RescheduleEvent(EVENT_ENABLE_ROTATE, 3s);
break;
case EVENT_ENABLE_ROTATE:
me->SetControlled(false, UNIT_STATE_ROOT);
@@ -364,7 +364,7 @@ public:
case EVENT_SPELL_FLAME_JETS:
Talk(EMOTE_JETS);
me->CastSpell(me->GetVictim(), S_FLAME_JETS, false);
events.RepeatEvent(25000);
events.Repeat(25s);
break;
case EVENT_GRAB:
{
@@ -406,8 +406,8 @@ public:
}
}
events.RepeatEvent(24000); // +6000 below
events.DelayEvents(6000);
events.Repeat(24s);
events.DelayEvents(6s);
}
break;
}

View File

@@ -349,7 +349,7 @@ public:
if (me->IsInCombat())
{
Talk(SAY_LEFT_ARM_GONE);
events.ScheduleEvent(EVENT_RESTORE_ARM_LEFT, 50000);
events.ScheduleEvent(EVENT_RESTORE_ARM_LEFT, 50s);
}
}
else
@@ -358,13 +358,13 @@ public:
if (me->IsInCombat())
{
Talk(SAY_RIGHT_ARM_GONE);
events.ScheduleEvent(EVENT_RESTORE_ARM_RIGHT, 50000);
events.ScheduleEvent(EVENT_RESTORE_ARM_RIGHT, 50s);
}
}
me->CastSpell(me, SPELL_ARM_DEAD, true);
if (!_right && !_left)
events.ScheduleEvent(EVENT_STONE_SHOUT, 5000);
events.ScheduleEvent(EVENT_STONE_SHOUT, 5s);
}
}
@@ -382,11 +382,11 @@ public:
if (m_pInstance)
m_pInstance->SetData(TYPE_KOLOGARN, IN_PROGRESS);
events.ScheduleEvent(EVENT_SMASH, 8000);
events.ScheduleEvent(EVENT_SWEEP, 17000);
events.ScheduleEvent(EVENT_GRIP, 15000);
events.ScheduleEvent(EVENT_FOCUSED_EYEBEAM, 10000);
events.ScheduleEvent(EVENT_PREPARE_BREATH, 3000);
events.ScheduleEvent(EVENT_SMASH, 8s);
events.ScheduleEvent(EVENT_SWEEP, 17s);
events.ScheduleEvent(EVENT_GRIP, 15s);
events.ScheduleEvent(EVENT_FOCUSED_EYEBEAM, 10s);
events.ScheduleEvent(EVENT_PREPARE_BREATH, 3s);
//events.ScheduleEvent(EVENT_ENRAGE, x); no info
Talk(SAY_AGGRO);
@@ -426,7 +426,7 @@ public:
}
me->CastSpell(me->GetVictim(), SPELL_STONE_SHOUT, false);
events.ScheduleEvent(EVENT_STONE_SHOUT, 2000);
events.ScheduleEvent(EVENT_STONE_SHOUT, 2s);
break;
case EVENT_SMASH:
if (_left && _right)
@@ -434,8 +434,8 @@ public:
else if (_left || _right)
me->CastSpell(me->GetVictim(), SPELL_ONEARMED_OVERHEAD_SMASH, false);
events.DelayEvents(1000);
events.ScheduleEvent(EVENT_SMASH, 14000);
events.DelayEvents(1s);
events.ScheduleEvent(EVENT_SMASH, 14s);
return;
case EVENT_SWEEP:
if (_left)
@@ -447,11 +447,11 @@ public:
Talk(SAY_SHOCKWAVE);
}
events.DelayEvents(1000);
events.ScheduleEvent(EVENT_SWEEP, 17000);
events.DelayEvents(1s);
events.ScheduleEvent(EVENT_SWEEP, 17s);
return;
case EVENT_GRIP:
events.ScheduleEvent(EVENT_GRIP, 25000);
events.ScheduleEvent(EVENT_GRIP, 25s);
if (!_right)
break;
@@ -461,7 +461,7 @@ public:
return;
case EVENT_FOCUSED_EYEBEAM:
{
events.ScheduleEvent(EVENT_FOCUSED_EYEBEAM, 20000);
events.ScheduleEvent(EVENT_FOCUSED_EYEBEAM, 20s);
if ((eyebeamTarget = SelectTarget(SelectTargetMethod::MinDistance, 0, 0, true)))
{

View File

@@ -361,16 +361,16 @@ public:
if (!hardmode)
{
Talk(SAY_MKII_ACTIVATE);
events.ScheduleEvent(EVENT_SIT_LMK2, 6000);
events.ScheduleEvent(EVENT_BERSERK, 900000);
events.ScheduleEvent(EVENT_SIT_LMK2, 6s);
events.ScheduleEvent(EVENT_BERSERK, 15min);
}
else
{
events.ScheduleEvent(EVENT_MIMIRON_SAY_HARDMODE, 7000);
events.ScheduleEvent(EVENT_BERSERK, Is25ManRaid() ? 10 * MINUTE* IN_MILLISECONDS : 8 * MINUTE * IN_MILLISECONDS);
events.ScheduleEvent(EVENT_MIMIRON_SAY_HARDMODE, 7s);
events.ScheduleEvent(EVENT_BERSERK, Is25ManRaid() ? 10min : 8min);
events.ScheduleEvent(EVENT_COMPUTER_SAY_INITIATED, 0);
events.ScheduleEvent(EVENT_COMPUTER_SAY_MINUTES, 3000);
events.ScheduleEvent(EVENT_COMPUTER_SAY_INITIATED, 0ms);
events.ScheduleEvent(EVENT_COMPUTER_SAY_MINUTES, 3s);
minutesTalkNum = Is25ManRaid() ? TALK_COMPUTER_TEN : TALK_COMPUTER_EIGHT;
for (uint32 i = 0; i < uint32(TALK_COMPUTER_ZERO - minutesTalkNum - 1); ++i)
events.ScheduleEvent(EVENT_COMPUTER_SAY_MINUTES, (i + 1)*MINUTE * IN_MILLISECONDS);
@@ -426,8 +426,8 @@ public:
break;
case EVENT_MIMIRON_SAY_HARDMODE:
Talk(SAY_HARDMODE_ON);
events.ScheduleEvent(EVENT_SPAWN_FLAMES_INITIAL, 0);
events.ScheduleEvent(EVENT_SIT_LMK2, 4000);
events.ScheduleEvent(EVENT_SPAWN_FLAMES_INITIAL, 0ms);
events.ScheduleEvent(EVENT_SIT_LMK2, 4s);
break;
case EVENT_SPAWN_FLAMES_INITIAL:
{
@@ -456,7 +456,7 @@ public:
pg.erase(pg.begin() + index);
}
events.RepeatEvent(30000);
events.Repeat(30s);
}
break;
case EVENT_BERSERK:
@@ -464,7 +464,7 @@ public:
Talk(SAY_BERSERK);
if( hardmode )
me->SummonCreature(33576, 2744.78f, 2569.47f, 364.32f, 0.0f, TEMPSUMMON_TIMED_DESPAWN, 120000);
events.ScheduleEvent(EVENT_BERSERK_2, 0);
events.ScheduleEvent(EVENT_BERSERK_2, 0ms);
break;
case EVENT_BERSERK_2:
{
@@ -477,14 +477,14 @@ public:
LMK2->CastSpell(LMK2, SPELL_BERSERK, true);
if ((ACU = GetACU()))
ACU->CastSpell(ACU, SPELL_BERSERK, true);
events.RepeatEvent(30000);
events.Repeat(30s);
}
break;
case EVENT_SIT_LMK2:
if(Creature* LMK2 = GetLMK2())
{
me->EnterVehicle(LMK2, 6);
events.ScheduleEvent(EVENT_SIT_LMK2_INTERVAL, 2000);
events.ScheduleEvent(EVENT_SIT_LMK2_INTERVAL, 2s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -510,7 +510,7 @@ public:
me->EnterVehicle(LMK2, 1);
Talk(SAY_MKII_DEATH);
LMK2->SetFacingTo(3.58f);
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_0, 6000);
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_0, 6s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -522,7 +522,7 @@ public:
elevator->UseDoorOrButton(0, false);
elevator->EnableCollision(false);
}
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_1, 6000);
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_1, 6s);
break;
case EVENT_ELEVATOR_INTERVAL_1:
if(me->SummonCreature(NPC_VX001, 2744.65f, 2569.46f, 364.40f, 3.14f, TEMPSUMMON_MANUAL_DESPAWN))
@@ -533,7 +533,7 @@ public:
elevator->UseDoorOrButton(0, true);
elevator->EnableCollision(false);
}
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_2, 18000);
events.ScheduleEvent(EVENT_ELEVATOR_INTERVAL_2, 18s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -542,20 +542,20 @@ public:
if (Creature* VX001 = GetVX001())
{
me->EnterVehicle(VX001, 0);
events.ScheduleEvent(EVENT_SITTING_ON_VX001, 4000);
events.ScheduleEvent(EVENT_SITTING_ON_VX001, 4s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
break;
case EVENT_SITTING_ON_VX001:
Talk(SAY_VX001_ACTIVATE);
events.ScheduleEvent(EVENT_ENTER_VX001, 5000);
events.ScheduleEvent(EVENT_ENTER_VX001, 5s);
break;
case EVENT_ENTER_VX001:
if( Creature* VX001 = GetVX001() )
{
me->EnterVehicle(VX001, 1);
events.ScheduleEvent(EVENT_EMOTE_VX001, 2000);
events.ScheduleEvent(EVENT_EMOTE_VX001, 2s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -564,7 +564,7 @@ public:
if( Creature* VX001 = GetVX001() )
{
VX001->HandleEmoteCommand(EMOTE_ONESHOT_EMERGE);
events.ScheduleEvent(EVENT_VX001_START_FIGHT, 1750);
events.ScheduleEvent(EVENT_VX001_START_FIGHT, 1750ms);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -585,7 +585,7 @@ public:
{
VX001->HandleEmoteCommand(EMOTE_STATE_DROWNED);
VX001->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DROWNED);
events.ScheduleEvent(EVENT_GET_OUT_VX001, 2500);
events.ScheduleEvent(EVENT_GET_OUT_VX001, 2500ms);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -598,7 +598,7 @@ public:
float speed = ACU->GetDistance(2737.75f, 2574.22f, 381.34f) / 2.0f;
ACU->MonsterMoveWithSpeed(2737.75f, 2574.22f, 381.34f, speed);
ACU->SetPosition(2737.75f, 2574.22f, 381.34f, M_PI);
events.ScheduleEvent(EVENT_SAY_VX001_DEAD, 2000);
events.ScheduleEvent(EVENT_SAY_VX001_DEAD, 2s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -606,20 +606,20 @@ public:
case EVENT_SAY_VX001_DEAD:
changeAllowedFlameSpreadTime = true;
Talk(SAY_VX001_DEATH);
events.ScheduleEvent(EVENT_ENTER_ACU, 7000);
events.ScheduleEvent(EVENT_ENTER_ACU, 7s);
break;
case EVENT_ENTER_ACU:
if( Creature* ACU = GetACU() )
{
me->EnterVehicle(ACU, 0);
events.ScheduleEvent(EVENT_SAY_ACU_ACTIVATE, 6000);
events.ScheduleEvent(EVENT_SAY_ACU_ACTIVATE, 6s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
break;
case EVENT_SAY_ACU_ACTIVATE:
Talk(SAY_AERIAL_ACTIVATE);
events.ScheduleEvent(EVENT_ACU_START_ATTACK, 4000);
events.ScheduleEvent(EVENT_ACU_START_ATTACK, 4s);
break;
case EVENT_ACU_START_ATTACK:
if( Creature* ACU = GetACU() )
@@ -634,13 +634,13 @@ public:
break;
case EVENT_SAY_ACU_DEAD:
Talk(SAY_AERIAL_DEATH);
events.ScheduleEvent(EVENT_LEVIATHAN_COME_CLOSER, 5000);
events.ScheduleEvent(EVENT_LEVIATHAN_COME_CLOSER, 5s);
break;
case EVENT_LEVIATHAN_COME_CLOSER:
if (Creature* LMK2 = GetLMK2())
{
LMK2->GetMotionMaster()->MoveCharge(2755.77f, 2574.95f, 364.31f, 21.0f);
events.ScheduleEvent(EVENT_VX001_EMOTE_JUMP, 4000);
events.ScheduleEvent(EVENT_VX001_EMOTE_JUMP, 4s);
break;
}
EnterEvadeMode(EVADE_REASON_OTHER);
@@ -658,7 +658,7 @@ public:
VX001->SendMeleeAttackStop();
VX001->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_CUSTOM_SPELL_02);
VX001->HandleEmoteCommand(EMOTE_ONESHOT_CUSTOM_SPELL_02);
events.ScheduleEvent(EVENT_LEVIATHAN_RIDE_MIDDLE, 4800);
events.ScheduleEvent(EVENT_LEVIATHAN_RIDE_MIDDLE, 4800ms);
}
break;
case EVENT_LEVIATHAN_RIDE_MIDDLE:
@@ -675,7 +675,7 @@ public:
VX001->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_CUSTOM_SPELL_01);
VX001->HandleEmoteCommand(EMOTE_STATE_CUSTOM_SPELL_01);
VX001->EnterVehicle(LMK2, 3);
events.ScheduleEvent(EVENT_JOIN_TOGETHER, 3000);
events.ScheduleEvent(EVENT_JOIN_TOGETHER, 3s);
}
break;
case EVENT_JOIN_TOGETHER:
@@ -692,7 +692,7 @@ public:
ACU->EnterVehicle(VX001, 3);
me->EnterVehicle(VX001, 1);
Talk(SAY_V07TRON_ACTIVATE);
events.ScheduleEvent(EVENT_START_PHASE4, 10000);
events.ScheduleEvent(EVENT_START_PHASE4, 10s);
}
break;
case EVENT_START_PHASE4:
@@ -780,7 +780,7 @@ public:
computer->AI()->Talk(TALK_COMPUTER_TERMINATED);
events.Reset();
events.ScheduleEvent(EVENT_SAY_VOLTRON_DEAD, 6000);
events.ScheduleEvent(EVENT_SAY_VOLTRON_DEAD, 6s);
}
break;
case EVENT_SAY_VOLTRON_DEAD:
@@ -794,7 +794,7 @@ public:
go->SetLootRecipient(me->GetMap());
}
}
events.ScheduleEvent(EVENT_DISAPPEAR, 15000);
events.ScheduleEvent(EVENT_DISAPPEAR, 15s);
break;
case EVENT_DISAPPEAR:
if( pInstance )
@@ -903,13 +903,13 @@ public:
switch (value) // end of phase 1-3, 4-6 for voltron
{
case 1:
events.ScheduleEvent(EVENT_LMK2_RETREAT_INTERVAL, 5000);
events.ScheduleEvent(EVENT_LMK2_RETREAT_INTERVAL, 5s);
break;
case 2:
events.ScheduleEvent(EVENT_VX001_EMOTESTATE_DEATH, 2500);
events.ScheduleEvent(EVENT_VX001_EMOTESTATE_DEATH, 2500ms);
break;
case 3:
events.ScheduleEvent(EVENT_SAY_ACU_DEAD, 5000);
events.ScheduleEvent(EVENT_SAY_ACU_DEAD, 5s);
break;
case 4:
case 5:
@@ -928,7 +928,7 @@ public:
Spell* s2 = VX001->GetCurrentSpell(CURRENT_GENERIC_SPELL);
Spell* s3 = ACU->GetCurrentSpell(CURRENT_GENERIC_SPELL);
if (s1 && s2 && s3 && s1->GetSpellInfo()->Id == SPELL_SELF_REPAIR && s2->GetSpellInfo()->Id == SPELL_SELF_REPAIR && s3->GetSpellInfo()->Id == SPELL_SELF_REPAIR)
events.ScheduleEvent(EVENT_FINISH, 0);
events.ScheduleEvent(EVENT_FINISH, 0ms);
}
break;
case 7:
@@ -1023,13 +1023,13 @@ public:
AttackStart(target);
DoZoneInCombat();
events.Reset();
events.ScheduleEvent(EVENT_SPELL_NAPALM_SHELL, 3000);
events.ScheduleEvent(EVENT_SPELL_PLASMA_BLAST, 10000);
events.ScheduleEvent(EVENT_SPELL_SHOCK_BLAST, 20000);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 6000);
events.ScheduleEvent(EVENT_SPELL_NAPALM_SHELL, 3s);
events.ScheduleEvent(EVENT_SPELL_PLASMA_BLAST, 10s);
events.ScheduleEvent(EVENT_SPELL_SHOCK_BLAST, 20s);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 6s);
if (Creature* c = GetMimiron())
if (c->AI()->GetData(1))
events.ScheduleEvent(EVENT_FLAME_SUPPRESSION_50000, 60000);
events.ScheduleEvent(EVENT_FLAME_SUPPRESSION_50000, 60s);
break;
case 4:
me->SetReactState(REACT_AGGRESSIVE);
@@ -1040,8 +1040,8 @@ public:
AttackStart(target);
DoZoneInCombat();
events.Reset();
events.ScheduleEvent(EVENT_SPELL_SHOCK_BLAST, 20000);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 6000);
events.ScheduleEvent(EVENT_SPELL_SHOCK_BLAST, 20s);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 6s);
break;
}
}
@@ -1130,7 +1130,7 @@ public:
if( pTarget )
cannon->CastSpell(pTarget, SPELL_NAPALM_SHELL, false);
events.RepeatEvent(14000);
events.Repeat(14s);
}
break;
case EVENT_SPELL_PLASMA_BLAST:
@@ -1139,12 +1139,12 @@ public:
Talk(EMOTE_PLASMA_BLAST);
cannon->CastSpell(victim, SPELL_PLASMA_BLAST, false);
}
events.RepeatEvent(22000);
events.Repeat(22s);
break;
case EVENT_SPELL_SHOCK_BLAST:
me->CastSpell(me->GetVictim(), SPELL_SHOCK_BLAST, false);
events.RepeatEvent(30000);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 8000);
events.Repeat(30s);
events.ScheduleEvent(EVENT_PROXIMITY_MINES_1, 8s);
break;
case EVENT_PROXIMITY_MINES_1:
for (uint8 i = 0; i < 10; ++i)
@@ -1278,16 +1278,16 @@ public:
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_SPELL_CAST_OMNI);
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
events.Reset();
events.ScheduleEvent(EVENT_SPELL_HEAT_WAVE, 10000);
events.ScheduleEvent(EVENT_SPELL_ROCKET_STRIKE, 16000);
events.ScheduleEvent(EVENT_SPELL_RAPID_BURST, 0);
events.ScheduleEvent(EVENT_SPELL_SPINNING_UP, 30000);
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 3000);
events.ScheduleEvent(EVENT_SPELL_HEAT_WAVE, 10s);
events.ScheduleEvent(EVENT_SPELL_ROCKET_STRIKE, 16s);
events.ScheduleEvent(EVENT_SPELL_RAPID_BURST, 0ms);
events.ScheduleEvent(EVENT_SPELL_SPINNING_UP, 30s);
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 3s);
if (Creature* c = GetMimiron())
if (c->AI()->GetData(1))
{
events.ScheduleEvent(EVENT_FLAME_SUPPRESSION_10, 7000);
events.ScheduleEvent(EVENT_FROST_BOMB, 1000);
events.ScheduleEvent(EVENT_FLAME_SUPPRESSION_10, 7s);
events.ScheduleEvent(EVENT_FROST_BOMB, 1s);
}
break;
case 4:
@@ -1295,13 +1295,13 @@ public:
fighting = true;
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
events.Reset();
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 3000);
events.ScheduleEvent(EVENT_SPELL_ROCKET_STRIKE, 16000);
events.ScheduleEvent(EVENT_HAND_PULSE, 1);
events.ScheduleEvent(EVENT_SPELL_SPINNING_UP, 30000);
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 3s);
events.ScheduleEvent(EVENT_SPELL_ROCKET_STRIKE, 16s);
events.ScheduleEvent(EVENT_HAND_PULSE, 1ms);
events.ScheduleEvent(EVENT_SPELL_SPINNING_UP, 30s);
if (Creature* c = GetMimiron())
if (c->AI()->GetData(1))
events.ScheduleEvent(EVENT_FROST_BOMB, 1000);
events.ScheduleEvent(EVENT_FROST_BOMB, 1s);
break;
}
}
@@ -1395,7 +1395,7 @@ public:
break;
case EVENT_SPELL_HEAT_WAVE:
me->CastSpell(me, SPELL_HEAT_WAVE, true);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_SPELL_ROCKET_STRIKE:
if( Vehicle* vk = me->GetVehicleKit() )
@@ -1418,8 +1418,8 @@ public:
r->ToCreature()->AI()->SetData(0, 0);
}
}
events.RepeatEvent(20000);
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 10000);
events.Repeat(20s);
events.ScheduleEvent(EVENT_REINSTALL_ROCKETS, 10s);
}
break;
case EVENT_REINSTALL_ROCKETS:
@@ -1438,7 +1438,7 @@ public:
me->CastSpell(p, SPELL_RAPID_BURST, true);
me->SetFacingToObject(p);
}
events.RepeatEvent(3200);
events.Repeat(3200ms);
break;
case EVENT_HAND_PULSE:
if (Player* p = SelectTargetFromPlayerList(80.0f))
@@ -1463,10 +1463,10 @@ public:
leftarm = !leftarm;
}
events.RepeatEvent(1750);
events.Repeat(1750ms);
break;
case EVENT_SPELL_SPINNING_UP:
events.RepeatEvent(45000);
events.Repeat(45s);
if (Player* p = SelectTargetFromPlayerList(80.0f))
{
float angle = me->GetAngle(p);
@@ -1480,16 +1480,16 @@ public:
vehicle->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_CUSTOM_SPELL_01);
vehicle->HandleEmoteCommand(EMOTE_STATE_CUSTOM_SPELL_01);
}
events.RescheduleEvent((Phase == 2 ? EVENT_SPELL_RAPID_BURST : EVENT_HAND_PULSE), 14500);
events.RescheduleEvent((Phase == 2 ? EVENT_SPELL_RAPID_BURST : EVENT_HAND_PULSE), 14s + 500ms);
}
break;
case EVENT_FLAME_SUPPRESSION_10:
me->CastSpell(me, SPELL_FLAME_SUPPRESSANT_10yd, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_FROST_BOMB:
me->CastCustomSpell(SPELL_VX001_FROST_BOMB, SPELLVALUE_MAX_TARGETS, 1, (Unit*)nullptr, false);
events.RepeatEvent(45000);
events.Repeat(45s);
break;
}
}
@@ -1603,13 +1603,13 @@ public:
AttackStart(target);
DoZoneInCombat();
events.Reset();
events.ScheduleEvent(EVENT_SPELL_PLASMA_BALL, 0);
events.ScheduleEvent(EVENT_SUMMON_BOMB_BOT, 15000);
events.ScheduleEvent(EVENT_SUMMON_ASSAULT_BOT, 1000);
events.ScheduleEvent(EVENT_SUMMON_JUNK_BOT, 10000);
events.ScheduleEvent(EVENT_SPELL_PLASMA_BALL, 0ms);
events.ScheduleEvent(EVENT_SUMMON_BOMB_BOT, 15s);
events.ScheduleEvent(EVENT_SUMMON_ASSAULT_BOT, 1s);
events.ScheduleEvent(EVENT_SUMMON_JUNK_BOT, 10s);
if (Creature* c = GetMimiron())
if (c->AI()->GetData(1))
events.ScheduleEvent(EVENT_SUMMON_EMERGENCY_FIRE_BOTS, 0);
events.ScheduleEvent(EVENT_SUMMON_EMERGENCY_FIRE_BOTS, 0ms);
break;
case 4:
me->SetReactState(REACT_AGGRESSIVE);
@@ -1620,13 +1620,13 @@ public:
AttackStart(target);
DoZoneInCombat();
events.Reset();
events.ScheduleEvent(EVENT_SPELL_PLASMA_BALL, 0);
events.ScheduleEvent(EVENT_SPELL_PLASMA_BALL, 0ms);
}
}
else if (id == 2 && !immobilized && Phase == 3) // magnetic core
{
immobilized = true;
events.ScheduleEvent(EVENT_MAGNETIC_CORE_PULL_DOWN, 2000);
events.ScheduleEvent(EVENT_MAGNETIC_CORE_PULL_DOWN, 2s);
}
}
@@ -1751,24 +1751,24 @@ public:
}
}
}
events.RepeatEvent(3000);
events.Repeat(3s);
break;
case EVENT_SUMMON_BOMB_BOT:
if( !immobilized )
me->CastSpell(me, SPELL_SUMMON_BOMB_BOT, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
case EVENT_SUMMON_ASSAULT_BOT:
if( GameObject* pad = me->FindNearestGameObject(RAND(194742, 194746, 194745), 200.0f) )
if (Creature* trigger = me->SummonCreature(NPC_BOT_SUMMON_TRIGGER, *pad, TEMPSUMMON_TIMED_DESPAWN, 15000))
trigger->AI()->DoAction(2);
events.RepeatEvent(30000);
events.Repeat(30s);
break;
case EVENT_SUMMON_JUNK_BOT:
if( GameObject* pad = me->FindNearestGameObject(RAND(194741, 194744, 194747), 200.0f) )
if (Creature* trigger = me->SummonCreature(NPC_BOT_SUMMON_TRIGGER, *pad, TEMPSUMMON_TIMED_DESPAWN, 15000))
trigger->AI()->DoAction(1);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_SUMMON_EMERGENCY_FIRE_BOTS:
{
@@ -1777,7 +1777,7 @@ public:
if( GameObject* pad = me->FindNearestGameObject(ids[i], 200.0f) )
if (Creature* trigger = me->SummonCreature(NPC_BOT_SUMMON_TRIGGER, *pad, TEMPSUMMON_MANUAL_DESPAWN))
trigger->AI()->DoAction(3);
events.RepeatEvent(45000);
events.Repeat(45s);
}
break;
case EVENT_MAGNETIC_CORE_PULL_DOWN:
@@ -1785,13 +1785,13 @@ public:
me->CastSpell(me, SPELL_SPINNING, true);
me->MonsterMoveWithSpeed(me->GetPositionX(), me->GetPositionY(), 365.34f, me->GetExactDist(me->GetPositionX(), me->GetPositionY(), 365.34f));
me->UpdatePosition(me->GetPositionX(), me->GetPositionY(), 365.34f, me->GetOrientation(), false);
events.ScheduleEvent(EVENT_MAGNETIC_CORE_FREE, 20000);
events.ScheduleEvent(EVENT_MAGNETIC_CORE_FREE, 20s);
break;
case EVENT_MAGNETIC_CORE_FREE:
me->RemoveAura(SPELL_SPINNING);
me->MonsterMoveWithSpeed(me->GetPositionX(), me->GetPositionY(), 381.34f, me->GetDistance(me->GetPositionX(), me->GetPositionY(), 381.34f));
me->UpdatePosition(me->GetPositionX(), me->GetPositionY(), 381.34f, me->GetOrientation(), false);
events.ScheduleEvent(EVENT_MAGNETIC_CORE_REMOVE_IMMOBILIZE, 1000);
events.ScheduleEvent(EVENT_MAGNETIC_CORE_REMOVE_IMMOBILIZE, 1s);
break;
case EVENT_MAGNETIC_CORE_REMOVE_IMMOBILIZE:
immobilized = false;
@@ -2205,7 +2205,7 @@ public:
{
CreateTime = GameTime::GetGameTime().count();
events.Reset();
events.ScheduleEvent(EVENT_FLAMES_SPREAD, 5750);
events.ScheduleEvent(EVENT_FLAMES_SPREAD, 5750ms);
if( Creature* flame = me->SummonCreature(NPC_FLAMES_SPREAD, me->GetPositionX(), me->GetPositionY(), 364.32f, 0.0f) )
{
FlameList.push_back(flame->GetGUID());
@@ -2301,7 +2301,7 @@ public:
}
}
events.RepeatEvent(5750);
events.Repeat(5750ms);
}
break;
}
@@ -2366,7 +2366,7 @@ public:
npc_ulduar_emergency_fire_botAI(Creature* pCreature) : ScriptedAI(pCreature)
{
events.Reset();
events.ScheduleEvent(EVENT_EMERGENCY_BOT_CHECK, 1000);
events.ScheduleEvent(EVENT_EMERGENCY_BOT_CHECK, 1s);
}
EventMap events;
@@ -2377,7 +2377,7 @@ public:
void MovementInform(uint32 type, uint32 id) override
{
if (type == POINT_MOTION_TYPE && id == 1)
events.ScheduleEvent(EVENT_EMERGENCY_BOT_ATTACK, 0);
events.ScheduleEvent(EVENT_EMERGENCY_BOT_ATTACK, 0ms);
}
void UpdateAI(uint32 diff) override
@@ -2388,20 +2388,20 @@ public:
case 0:
break;
case EVENT_EMERGENCY_BOT_CHECK:
events.RepeatEvent(15000); // just in case, will be rescheduled
events.Repeat(15s);
if (Creature* flame = me->FindNearestCreature(NPC_FLAMES_SPREAD, 150.0f, true))
{
me->SetOrientation(me->GetAngle(flame->GetPositionX(), flame->GetPositionY()));
float dist = me->GetExactDist2d(flame);
if (dist <= 5.0f)
events.ScheduleEvent(EVENT_EMERGENCY_BOT_ATTACK, 0);
events.ScheduleEvent(EVENT_EMERGENCY_BOT_ATTACK, 0ms);
else
me->GetMotionMaster()->MovePoint(1, me->GetPositionX() + (dist - 5.0f)*cos(me->GetOrientation()), me->GetPositionY() + (dist - 5.0f)*sin(me->GetOrientation()), 364.32f);
}
break;
case EVENT_EMERGENCY_BOT_ATTACK:
me->CastSpell((Unit*)nullptr, SPELL_WATER_SPRAY, false);
events.RescheduleEvent(EVENT_EMERGENCY_BOT_CHECK, 5000);
events.RescheduleEvent(EVENT_EMERGENCY_BOT_CHECK, 5s);
break;
}
}

View File

@@ -209,12 +209,12 @@ public:
{
me->SetInCombatWithZone();
events.Reset();
events.ScheduleEvent(EVENT_COMMANDER_SAY_AGGRO, 5000);
events.ScheduleEvent(EVENT_EE_SAY_MOVE_OUT, 10000);
events.ScheduleEvent(EVENT_ENRAGE, 600000);
events.ScheduleEvent(EVENT_SPELL_FIREBALL, 6000);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME, 13000);
events.ScheduleEvent(EVENT_SUMMON_MOLE_MACHINES, 11000);
events.ScheduleEvent(EVENT_COMMANDER_SAY_AGGRO, 5s);
events.ScheduleEvent(EVENT_EE_SAY_MOVE_OUT, 10s);
events.ScheduleEvent(EVENT_ENRAGE, 10min);
events.ScheduleEvent(EVENT_SPELL_FIREBALL, 6s);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME, 13s);
events.ScheduleEvent(EVENT_SUMMON_MOLE_MACHINES, 11s);
std::list<Creature*> eeList;
me->GetCreaturesWithEntryInRange(eeList, 300.0f, NPC_EXPEDITION_ENGINEER);
@@ -310,7 +310,7 @@ public:
if (me->GetPositionZ() > 440.0f) // protection, razorscale is attackable (so harpoons can hit him, etc.), but should not receive dmg while in air
damage = 0;
else if (!bGroundPhase && ((me->GetHealth() * 100) / me->GetMaxHealth() < 50) && me->HasAura(62794)) // already below 50%, but still in chains and stunned
events.RescheduleEvent(EVENT_WARN_DEEP_BREATH, 0);
events.RescheduleEvent(EVENT_WARN_DEEP_BREATH, 0ms);
}
void MovementInform(uint32 type, uint32 id) override
@@ -336,13 +336,13 @@ public:
me->SetFacingTo(M_PI / 2);
me->SetDisableGravity(false);
me->CastSpell(me, 62794, true);
events.ScheduleEvent(EVENT_WARN_DEEP_BREATH, 30000);
events.ScheduleEvent(EVENT_WARN_DEEP_BREATH, 30s);
}
else if (id == 1) // flied up
{
events.ScheduleEvent(EVENT_SPELL_FIREBALL, 2000);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME, 4000);
events.ScheduleEvent(EVENT_SUMMON_MOLE_MACHINES, 5000);
events.ScheduleEvent(EVENT_SPELL_FIREBALL, 2s);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME, 4s);
events.ScheduleEvent(EVENT_SUMMON_MOLE_MACHINES, 5s);
}
}
@@ -397,12 +397,12 @@ public:
case EVENT_SPELL_FIREBALL:
if( Unit* pTarget = SelectTarget(SelectTargetMethod::Random, 0, 200.0f, true) )
me->CastSpell(pTarget, SPELL_FIREBALL, false);
events.RepeatEvent(4000);
events.Repeat(4s);
break;
case EVENT_SPELL_DEVOURING_FLAME:
if( Unit* pTarget = SelectTarget(SelectTargetMethod::Random, 0, 200.0f, true) )
me->CastSpell(pTarget, SPELL_DEVOURINGFLAME, false);
events.RepeatEvent(13000);
events.Repeat(13s);
break;
case EVENT_SUMMON_MOLE_MACHINES:
{
@@ -423,8 +423,8 @@ public:
drill->SetGoAnimProgress(0);
}
}
events.RepeatEvent(45000);
events.RescheduleEvent(EVENT_SUMMON_ADDS, 4000);
events.Repeat(45s);
events.RescheduleEvent(EVENT_SUMMON_ADDS, 4s);
}
break;
case EVENT_SUMMON_ADDS:
@@ -486,11 +486,11 @@ public:
case EVENT_WARN_DEEP_BREATH:
Talk(EMOTE_BREATH);
me->RemoveAura(62794);
events.ScheduleEvent(EVENT_PHASE2_FLAME_BREATH, 2500);
events.ScheduleEvent(EVENT_PHASE2_FLAME_BREATH, 2500ms);
break;
case EVENT_PHASE2_FLAME_BREATH:
me->CastSpell(me, SPELL_FLAMEBREATH, true);
events.ScheduleEvent(EVENT_FLY_UP, 2000);
events.ScheduleEvent(EVENT_FLY_UP, 2s);
break;
case EVENT_FLY_UP:
me->SetInCombatWithZone(); // just in case
@@ -532,10 +532,10 @@ public:
events.CancelEvent(EVENT_SPELL_DEVOURING_FLAME);
events.CancelEvent(EVENT_SUMMON_MOLE_MACHINES);
events.ScheduleEvent(EVENT_SPELL_FLAME_BREATH, 20000);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME_GROUND, 5000);
events.ScheduleEvent(EVENT_SPELL_FUSE_ARMOR, 10000);
events.ScheduleEvent(EVENT_SPELL_FLAME_BUFFET, 3000);
events.ScheduleEvent(EVENT_SPELL_FLAME_BREATH, 20s);
events.ScheduleEvent(EVENT_SPELL_DEVOURING_FLAME_GROUND, 5s);
events.ScheduleEvent(EVENT_SPELL_FUSE_ARMOR, 10s);
events.ScheduleEvent(EVENT_SPELL_FLAME_BUFFET, 3s);
break;
}
@@ -549,7 +549,7 @@ public:
me->StopMoving();
me->SetDisableGravity(true);
me->GetMotionMaster()->MoveTakeoff(1, CORDS_AIR, 25.0f);
events.ScheduleEvent(EVENT_RESUME_FIXING, 22000);
events.ScheduleEvent(EVENT_RESUME_FIXING, 22s);
}
break;
@@ -564,11 +564,11 @@ public:
break;
case EVENT_SPELL_FLAME_BREATH:
me->CastSpell(me->GetVictim(), SPELL_FLAMEBREATH, false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_SPELL_DEVOURING_FLAME_GROUND:
me->CastSpell(me->GetVictim(), SPELL_DEVOURINGFLAME, false);
events.RepeatEvent(13000);
events.Repeat(13s);
break;
case EVENT_SPELL_FUSE_ARMOR:
if (Unit* victim = me->GetVictim())
@@ -578,14 +578,14 @@ public:
if (Aura* aur = victim->GetAura(SPELL_FUSEARMOR))
if (aur->GetStackAmount() == 5)
victim->CastSpell(victim, SPELL_FUSED_ARMOR, true);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
events.RepeatEvent(2000);
events.Repeat(2s);
break;
case EVENT_SPELL_FLAME_BUFFET:
me->CastSpell(me->GetVictim(), SPELL_FLAMEBUFFET, false);
events.RepeatEvent(7000);
events.Repeat(7s);
break;
}

View File

@@ -494,9 +494,9 @@ public:
if (GameObject* go = GetThorimObject(DATA_THORIM_LEVER))
go->RemoveGameObjectFlag((GameObjectFlags)48);
events.ScheduleEvent(EVENT_THORIM_AGGRO, 0);
events.ScheduleEvent(EVENT_THORIM_AGGRO, 0ms);
events.SetPhase(EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_START_PHASE1, 20000);
events.ScheduleEvent(EVENT_THORIM_START_PHASE1, 20s);
_trashCounter = 0;
}
}
@@ -530,10 +530,10 @@ public:
DisableThorim(false);
events.SetPhase(EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_UNBALANCING_STRIKE, 8000, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_LIGHTNING_CHARGE, 12500, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_CHAIN_LIGHTNING, 13000, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_BERSERK, 300000, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_UNBALANCING_STRIKE, 8s, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_LIGHTNING_CHARGE, 12s + 500ms, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_CHAIN_LIGHTNING, 13s, 0, EVENT_PHASE_RING);
events.ScheduleEvent(EVENT_THORIM_BERSERK, 5min, 0, EVENT_PHASE_RING);
me->GetMotionMaster()->MoveChase(me->GetVictim());
me->GetMotionMaster()->MoveJump(Middle.GetPositionX(), Middle.GetPositionY(), Middle.GetPositionZ(), 20, 20);
@@ -574,7 +574,7 @@ public:
Talk(SAY_DEATH);
events.SetPhase(EVENT_PHASE_OUTRO);
events.ScheduleEvent(EVENT_THORIM_OUTRO1, 2000, 0, EVENT_PHASE_OUTRO);
events.ScheduleEvent(EVENT_THORIM_OUTRO1, 2s, 0, EVENT_PHASE_OUTRO);
GameObject* go = nullptr;
if ((go = GetThorimObject(DATA_THORIM_FENCE)))
@@ -625,7 +625,7 @@ public:
me->SetOrientation(me->GetAngle(caster));
me->CastSpell(caster, SPELL_LIGHTNING_CHARGE_DAMAGE, true);
me->CastSpell(me, SPELL_LIGHTNING_CHARGE_BUFF, true);
events.RescheduleEvent(EVENT_THORIM_LIGHTNING_CHARGE, 10000, 0, EVENT_PHASE_RING);
events.RescheduleEvent(EVENT_THORIM_LIGHTNING_CHARGE, 10s, 0, EVENT_PHASE_RING);
}
}
@@ -658,7 +658,7 @@ public:
{
case EVENT_THORIM_AGGRO:
Talk(SAY_AGGRO_1);
events.ScheduleEvent(EVENT_THORIM_AGGRO2, 9000);
events.ScheduleEvent(EVENT_THORIM_AGGRO2, 9s);
if (GameObject* go = GetThorimObject(DATA_THORIM_FENCE))
go->SetGoState(GO_STATE_READY);
@@ -674,11 +674,11 @@ public:
}
case EVENT_THORIM_START_PHASE1:
{
events.ScheduleEvent(EVENT_THORIM_STORMHAMMER, 8000, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_CHARGE_ORB, 14000, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_FILL_ARENA, 0, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_LIGHTNING_ORB, 5000, 0, EVENT_PHASE_START); // checked every 5 secs if there are players on arena
events.ScheduleEvent(EVENT_THORIM_NOT_REACH_IN_TIME, 300000, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_STORMHAMMER, 8s, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_CHARGE_ORB, 14s, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_FILL_ARENA, 0ms, 0, EVENT_PHASE_START);
events.ScheduleEvent(EVENT_THORIM_LIGHTNING_ORB, 5s, 0, EVENT_PHASE_START); // checked every 5 secs if there are players on arena
events.ScheduleEvent(EVENT_THORIM_NOT_REACH_IN_TIME, 5min, 0, EVENT_PHASE_START);
EntryCheckPredicate pred(NPC_SIF);
summons.DoAction(ACTION_SIF_START_DOMINION, pred);
@@ -686,18 +686,18 @@ public:
}
case EVENT_THORIM_STORMHAMMER:
me->CastCustomSpell(SPELL_STORMHAMMER, SPELLVALUE_MAX_TARGETS, 1, me->GetVictim(), false);
events.RepeatEvent(16000);
events.Repeat(16s);
break;
case EVENT_THORIM_CHARGE_ORB:
me->CastCustomSpell(SPELL_CHARGE_ORB, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(16000);
events.Repeat(16s);
break;
case EVENT_THORIM_LIGHTNING_ORB:
{
if (GetArenaPlayer())
{
// Player found, repeat and return
events.RepeatEvent(5000);
events.Repeat(5s);
return;
}
@@ -717,11 +717,11 @@ public:
break;
case EVENT_THORIM_FILL_ARENA:
SpawnArenaNPCs();
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_THORIM_UNBALANCING_STRIKE:
me->CastSpell(me->GetVictim(), SPELL_UNBALANCING_STRIKE, false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_THORIM_LIGHTNING_CHARGE:
me->CastSpell(me, SPELL_LIGHTNING_PILLAR_P2, true);
@@ -729,7 +729,7 @@ public:
case EVENT_THORIM_CHAIN_LIGHTNING:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_CHAIN_LIGHTNING, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
case EVENT_THORIM_BERSERK:
me->CastSpell(me, SPELL_BERSERK, true);
@@ -739,26 +739,26 @@ public:
if (_hardMode)
{
Talk(SAY_END_HARD_1);
events.ScheduleEvent(EVENT_THORIM_OUTRO2, 5000, 0, 3);
events.ScheduleEvent(EVENT_THORIM_OUTRO2, 5s, 0, 3);
EntryCheckPredicate pred(NPC_SIF);
summons.DoAction(ACTION_SIF_TRANSFORM, pred);
}
else
{
Talk(SAY_END_NORMAL_1);
events.ScheduleEvent(EVENT_THORIM_OUTRO2, 9000, 0, 3);
events.ScheduleEvent(EVENT_THORIM_OUTRO2, 9s, 0, 3);
}
break;
case EVENT_THORIM_OUTRO2:
if (_hardMode)
{
Talk(SAY_END_HARD_2);
events.ScheduleEvent(EVENT_THORIM_OUTRO3, 12000, 0, 3);
events.ScheduleEvent(EVENT_THORIM_OUTRO3, 12s, 0, 3);
}
else
{
Talk(SAY_END_NORMAL_2);
events.ScheduleEvent(EVENT_THORIM_OUTRO3, 10000, 0, 3);
events.ScheduleEvent(EVENT_THORIM_OUTRO3, 10s, 0, 3);
}
break;
case EVENT_THORIM_OUTRO3:
@@ -815,19 +815,19 @@ public:
void DoAction(int32 param) override
{
if (param == ACTION_SIF_START_TALK)
events.ScheduleEvent(EVENT_SIF_START_TALK, 9000);
events.ScheduleEvent(EVENT_SIF_START_TALK, 9s);
else if (param == ACTION_SIF_START_DOMINION)
{
if (me->GetInstanceScript())
if (Creature* cr = ObjectAccessor::GetCreature(*me, me->GetInstanceScript()->GetGuidData(TYPE_THORIM)))
me->CastSpell(cr, SPELL_TOUCH_OF_DOMINION, false);
events.ScheduleEvent(EVENT_SIF_FINISH_DOMINION, 150000);
events.ScheduleEvent(EVENT_SIF_FINISH_DOMINION, 150s);
}
else if (param == ACTION_SIF_JOIN_FIGHT)
{
me->InterruptNonMeleeSpells(false);
events.ScheduleEvent(EVENT_SIF_JOIN_TALK, 9000);
events.ScheduleEvent(EVENT_SIF_JOIN_TALK, 9s);
events.CancelEvent(EVENT_SIF_START_TALK);
events.CancelEvent(EVENT_SIF_FINISH_DOMINION);
}
@@ -857,23 +857,23 @@ public:
break;
case EVENT_SIF_JOIN_TALK:
Talk(SAY_SIF_HM_REACHED);
events.ScheduleEvent(EVENT_SIF_FROST_NOVA_START, 1000);
events.ScheduleEvent(EVENT_SIF_FROSTBOLT_VALLEY, 11000);
events.ScheduleEvent(EVENT_SIF_BLIZZARD, 15000);
events.ScheduleEvent(EVENT_SIF_FROST_NOVA_START, 1s);
events.ScheduleEvent(EVENT_SIF_FROSTBOLT_VALLEY, 11s);
events.ScheduleEvent(EVENT_SIF_BLIZZARD, 15s);
break;
case EVENT_SIF_FROSTBOLT_VALLEY:
me->CastSpell(me, SPELL_FROSTBOLT_VALLEY, false);
events.RepeatEvent(13000);
events.Repeat(13s);
return;
case EVENT_SIF_BLIZZARD:
me->SummonCreature(NPC_SIF_BLIZZARD, 2108.7f, -280.04f, 419.42f, 0, TEMPSUMMON_TIMED_DESPAWN, 30000);
events.RepeatEvent(30000);
events.Repeat(30s);
return;
case EVENT_SIF_FROST_NOVA_START:
me->NearTeleportTo(2108 + urand(0, 42), -238 - irand(0, 46), 420.02f, me->GetAngle(&Middle));
events.RepeatEvent(20000);
events.DelayEvents(5001);
events.ScheduleEvent(EVENT_SIF_FROST_NOVA_CAST, 2500);
events.Repeat(20s);
events.DelayEvents(5s);
events.ScheduleEvent(EVENT_SIF_FROST_NOVA_CAST, 2500ms);
_allowCast = false;
return;
case EVENT_SIF_FROST_NOVA_CAST:
@@ -1133,25 +1133,25 @@ public:
{
if (me->GetEntry() == NPC_DARK_RUNE_ACOLYTE_I)
{
events.ScheduleEvent(EVENT_DR_ACOLYTE_GH, 10000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_HS, 5000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_R, 7000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_GH, 10s);
events.ScheduleEvent(EVENT_DR_ACOLYTE_HS, 5s);
events.ScheduleEvent(EVENT_DR_ACOLYTE_R, 7s);
}
else if (me->GetEntry() == NPC_CAPTURED_MERCENARY_SOLDIER_ALLY || me->GetEntry() == NPC_CAPTURED_MERCENARY_SOLDIER_HORDE)
{
events.ScheduleEvent(EVENT_CM_SOLDIER_BS, 9000);
events.ScheduleEvent(EVENT_CM_SOLDIER_WC, 5000);
events.ScheduleEvent(EVENT_CM_SOLDIER_S, 0);
events.ScheduleEvent(EVENT_CM_SOLDIER_BS, 9s);
events.ScheduleEvent(EVENT_CM_SOLDIER_WC, 5s);
events.ScheduleEvent(EVENT_CM_SOLDIER_S, 0ms);
}
else if (me->GetEntry() == NPC_CAPTURED_MERCENARY_CAPTAIN_ALLY || me->GetEntry() == NPC_CAPTURED_MERCENARY_CAPTAIN_HORDE)
{
events.ScheduleEvent(EVENT_CM_CAPTAIN_D, 9000);
events.ScheduleEvent(EVENT_CM_CAPTAIN_HC, 5000);
events.ScheduleEvent(EVENT_CM_CAPTAIN_D, 9s);
events.ScheduleEvent(EVENT_CM_CAPTAIN_HC, 5s);
}
else if (me->GetEntry() == NPC_JORMUNGAR_BEHEMOT)
{
events.ScheduleEvent(EVENT_JB_ACID_BREATH, 12000);
events.ScheduleEvent(EVENT_JB_SWEEP, 5000);
events.ScheduleEvent(EVENT_JB_ACID_BREATH, 12s);
events.ScheduleEvent(EVENT_JB_SWEEP, 5s);
}
me->CallForHelp(10);
@@ -1173,49 +1173,49 @@ public:
me->CastSpell(me, SPELL_GREATER_HEAL, false);
else if (Unit* target = DoSelectLowestHpFriendly(60.0f, 20))
me->CastSpell(target, SPELL_GREATER_HEAL, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_DR_ACOLYTE_HS:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_HOLY_SMITE, false);
events.RepeatEvent(1600);
events.Repeat(1600ms);
break;
case EVENT_DR_ACOLYTE_R:
if (HealthBelowPct(75) && !me->HasAura(SPELL_RENEW))
me->CastSpell(me, SPELL_GREATER_HEAL, false);
else if (Unit* target = DoSelectLowestHpFriendly(60.0f, 10))
me->CastSpell(target, SPELL_RENEW, false);
events.RepeatEvent(7000);
events.Repeat(7s);
break;
case EVENT_CM_SOLDIER_BS:
me->CastSpell(me->GetVictim(), SPELL_BARBED_SHOT, false);
events.RepeatEvent(9000);
events.Repeat(9s);
break;
case EVENT_CM_SOLDIER_WC:
me->CastSpell(me->GetVictim(), SPELL_WING_CLIP, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
case EVENT_CM_SOLDIER_S:
if (me->GetDistance(me->GetVictim()) > 8)
me->CastSpell(me->GetVictim(), SPELL_SHOOT, false);
events.RepeatEvent(1500);
events.Repeat(1500ms);
break;
case EVENT_CM_CAPTAIN_D:
me->CastSpell(me->GetVictim(), SPELL_DEVASTATE, false);
events.RepeatEvent(9000);
events.Repeat(9s);
break;
case EVENT_CM_CAPTAIN_HC:
me->CastSpell(me->GetVictim(), SPELL_HEROIC_STRIKE, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
case EVENT_JB_ACID_BREATH:
me->CastSpell(me->GetVictim(), SPELL_ACID_BREATH, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_JB_SWEEP:
me->CastSpell(me->GetVictim(), SPELL_SWEEP, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
@@ -1252,20 +1252,20 @@ public:
{
if (me->GetEntry() == NPC_IRON_RING_GUARD)
{
events.ScheduleEvent(EVENT_IR_GUARD_IMPALE, 12000);
events.ScheduleEvent(EVENT_IR_GUARD_WHIRL, 5000);
events.ScheduleEvent(EVENT_IR_GUARD_IMPALE, 12s);
events.ScheduleEvent(EVENT_IR_GUARD_WHIRL, 5s);
}
else if (me->GetEntry() == NPC_DARK_RUNE_ACOLYTE_I)
{
events.ScheduleEvent(EVENT_DR_ACOLYTE_GH, 10000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_HS, 5000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_R, 7000);
events.ScheduleEvent(EVENT_DR_ACOLYTE_GH, 10s);
events.ScheduleEvent(EVENT_DR_ACOLYTE_HS, 5s);
events.ScheduleEvent(EVENT_DR_ACOLYTE_R, 7s);
}
else if (me->GetEntry() == NPC_IRON_HONOR_GUARD)
{
events.ScheduleEvent(EVENT_IH_GUARD_CLEAVE, 6000);
events.ScheduleEvent(EVENT_IH_GUARD_HAMSTRING, 9000);
events.ScheduleEvent(EVENT_IH_GUARD_SHIELD_SMASH, 15000);
events.ScheduleEvent(EVENT_IH_GUARD_CLEAVE, 6s);
events.ScheduleEvent(EVENT_IH_GUARD_HAMSTRING, 9s);
events.ScheduleEvent(EVENT_IH_GUARD_SHIELD_SMASH, 15s);
if (Creature* runeGiant = me->FindNearestCreature(NPC_ANCIENT_RUNE_GIANT, 200.0f))
runeGiant->AI()->DoAction(ACTION_IRON_HONOR_DIED);
@@ -1287,42 +1287,42 @@ public:
{
case EVENT_IR_GUARD_IMPALE:
me->CastSpell(me->GetVictim(), SPELL_IMPALE, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_IR_GUARD_WHIRL:
me->CastSpell(me->GetVictim(), SPELL_WHIRLING_TRIP, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
case EVENT_DR_ACOLYTE_GH:
if (HealthBelowPct(60))
me->CastSpell(me, SPELL_GREATER_HEAL, false);
else if (Unit* target = DoSelectLowestHpFriendly(60.0f, 20))
me->CastSpell(target, SPELL_GREATER_HEAL, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_DR_ACOLYTE_HS:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_HOLY_SMITE, false);
events.RepeatEvent(1600);
events.Repeat(1600ms);
break;
case EVENT_DR_ACOLYTE_R:
if (HealthBelowPct(75) && !me->HasAura(SPELL_RENEW))
me->CastSpell(me, SPELL_GREATER_HEAL, false);
else if (Unit* target = DoSelectLowestHpFriendly(60.0f, 10))
me->CastSpell(target, SPELL_RENEW, false);
events.RepeatEvent(7000);
events.Repeat(7s);
break;
case EVENT_IH_GUARD_CLEAVE:
me->CastSpell(me->GetVictim(), SPELL_CLEAVE, false);
events.RepeatEvent(6000);
events.Repeat(6s);
break;
case EVENT_IH_GUARD_HAMSTRING:
me->CastSpell(me->GetVictim(), SPELL_HAMSTRING, false);
events.RepeatEvent(9000);
events.Repeat(9s);
break;
case EVENT_IH_GUARD_SHIELD_SMASH:
me->CastSpell(me->GetVictim(), SPELL_SHIELD_SMASH, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
@@ -1358,7 +1358,7 @@ public:
_leftHand = false;
_checkTarget = false;
events.Reset();
events.ScheduleEvent(EVENT_RC_RUNIC_SMASH, 0);
events.ScheduleEvent(EVENT_RC_RUNIC_SMASH, 0ms);
Creature* c;
if ((c = me->SummonCreature(33140, 2221, -385, me->GetPositionZ())))
@@ -1387,9 +1387,9 @@ public:
void JustEngagedWith(Unit*) override
{
events.CancelEvent(EVENT_RC_RUNIC_SMASH);
events.ScheduleEvent(EVENT_RC_RUNIC_BARRIER, 10000);
events.ScheduleEvent(EVENT_RC_SMASH, 18000);
events.ScheduleEvent(EVENT_RC_CHARGE, 15000);
events.ScheduleEvent(EVENT_RC_RUNIC_BARRIER, 10s);
events.ScheduleEvent(EVENT_RC_SMASH, 18s);
events.ScheduleEvent(EVENT_RC_CHARGE, 15s);
me->InterruptNonMeleeSpells(false);
_checkTarget = true;
@@ -1400,7 +1400,7 @@ public:
if (spellInfo->Id == SPELL_RUNIC_SMASH_LEFT || spellInfo->Id == SPELL_RUNIC_SMASH_RIGHT)
{
_leftHand = spellInfo->Id == SPELL_RUNIC_SMASH_LEFT;
events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 1000);
events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 1s);
}
}
@@ -1437,7 +1437,7 @@ public:
_nextTriggerPos += 16.0f;
if (_nextTriggerPos <= -260.0f)
{
events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 500);
events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 500ms);
}
RunRunicSmash(true);
@@ -1450,21 +1450,21 @@ public:
_nextTriggerPos = -385.0f;
RunRunicSmash(false);
events.RepeatEvent(11000);
events.Repeat(11s);
break;
case EVENT_RC_RUNIC_BARRIER:
me->CastSpell(me, SPELL_RUNIC_BARRIER, false);
Talk(SAY_COLOSSUS_RUNIC_BARRIER);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_RC_SMASH:
me->CastSpell(me->GetVictim(), SPELL_SMASH, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_RC_CHARGE:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_CHARGE, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
@@ -1500,8 +1500,8 @@ public:
{
_isInCombat = true;
events.CancelEvent(EVENT_ARG_SPAWN);
events.ScheduleEvent(EVENT_ARG_RD, 12000);
events.ScheduleEvent(EVENT_ARG_STOMP, 8000);
events.ScheduleEvent(EVENT_ARG_RD, 12s);
events.ScheduleEvent(EVENT_ARG_STOMP, 8s);
me->CastSpell(me, SPELL_RUNIC_FORTIFICATION, false);
Talk(SAY_GIANT_RUNIC_MIGHT);
@@ -1522,7 +1522,7 @@ public:
void DoAction(int32 param) override
{
if (param == ACTION_IRON_HONOR_DIED)
events.RescheduleEvent(EVENT_ARG_SPAWN, 20000);
events.RescheduleEvent(EVENT_ARG_SPAWN, 20s);
}
void UpdateAI(uint32 diff) override
@@ -1539,17 +1539,17 @@ public:
case EVENT_ARG_RD:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_RUNE_DETONATION, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_ARG_STOMP:
me->CastSpell(me->GetVictim(), SPELL_STOMP, false);
events.RepeatEvent(8000);
events.Repeat(8s);
break;
case EVENT_ARG_SPAWN:
if (Creature* cr = me->SummonCreature(NPC_IRON_HONOR_GUARD, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 20000))
if (Unit* target = SelectTargetFromPlayerList(150.0f))
cr->AI()->AttackStart(target);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
@@ -1587,24 +1587,24 @@ public:
{
if (me->GetEntry() == NPC_DARK_RUNE_WARBRINGER)
{
events.ScheduleEvent(EVENT_DR_WARBRINGER_RS, 8000);
events.ScheduleEvent(EVENT_DR_WARBRINGER_RS, 8s);
}
else if (me->GetEntry() == NPC_DARK_RUNE_EVOKER)
{
events.ScheduleEvent(EVENT_DR_EVOKER_RL, 2500);
events.ScheduleEvent(EVENT_DR_EVOKER_RM, 4000);
events.ScheduleEvent(EVENT_DR_EVOKER_RS, 10000);
events.ScheduleEvent(EVENT_DR_EVOKER_RL, 2500ms);
events.ScheduleEvent(EVENT_DR_EVOKER_RM, 4s);
events.ScheduleEvent(EVENT_DR_EVOKER_RS, 10s);
}
else if (me->GetEntry() == NPC_DARK_RUNE_CHAMPION)
{
events.ScheduleEvent(EVENT_DR_CHAMPION_WH, 6000);
events.ScheduleEvent(EVENT_DR_CHAMPION_CH, 12000);
events.ScheduleEvent(EVENT_DR_CHAMPION_MS, 8000);
events.ScheduleEvent(EVENT_DR_CHAMPION_WH, 6s);
events.ScheduleEvent(EVENT_DR_CHAMPION_CH, 12s);
events.ScheduleEvent(EVENT_DR_CHAMPION_MS, 8s);
}
else if (me->GetEntry() == NPC_DARK_RUNE_COMMONER)
{
events.ScheduleEvent(EVENT_DR_COMMONER_LB, 5000);
events.ScheduleEvent(EVENT_DR_COMMONER_PM, 6000);
events.ScheduleEvent(EVENT_DR_COMMONER_LB, 5s);
events.ScheduleEvent(EVENT_DR_COMMONER_PM, 6s);
}
}
@@ -1656,45 +1656,45 @@ public:
{
case EVENT_DR_WARBRINGER_RS:
me->CastSpell(me->GetVictim(), SPELL_RUNIC_STRIKE, false);
events.RepeatEvent(8000);
events.Repeat(8s);
break;
case EVENT_DR_EVOKER_RL:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_RUNIC_LIGHTNING, false);
events.RepeatEvent(2500);
events.Repeat(2500ms);
break;
case EVENT_DR_EVOKER_RM:
if (Unit* target = DoSelectLowestHpFriendly(40.0f, 15))
me->CastSpell(target, SPELL_RUNIC_MENDING, false);
else
me->CastSpell(me, SPELL_RUNIC_MENDING, false);
events.RepeatEvent(4000);
events.Repeat(4s);
break;
case EVENT_DR_EVOKER_RS:
me->CastSpell(me, SPELL_RUNIC_SHIELD, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
case EVENT_DR_CHAMPION_CH:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(target, SPELL_CHARGE, false);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_DR_CHAMPION_WH:
if (!me->HasUnitFlag(UNIT_FLAG_DISARMED))
me->CastSpell(me, SPELL_WHIRLWIND, false);
events.RepeatEvent(6000);
events.Repeat(6s);
break;
case EVENT_DR_CHAMPION_MS:
me->CastSpell(me->GetVictim(), SPELL_MORTAL_STRIKE, false);
events.RepeatEvent(8000);
events.Repeat(8s);
break;
case EVENT_DR_COMMONER_LB:
me->CastSpell(me->GetVictim(), SPELL_LOW_BLOW, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
case EVENT_DR_COMMONER_PM:
me->CastSpell(me->GetVictim(), SPELL_PUMMEL, false);
events.RepeatEvent(6000);
events.Repeat(6s);
break;
}

View File

@@ -148,10 +148,10 @@ public:
void RescheduleEvents()
{
events.RescheduleEvent(EVENT_GRAVITY_BOMB, 1000, 1);
events.RescheduleEvent(EVENT_TYMPANIC_TANTARUM, 60000, 1);
events.RescheduleEvent(EVENT_GRAVITY_BOMB, 1s, 1);
events.RescheduleEvent(EVENT_TYMPANIC_TANTARUM, 1min, 1);
if (!_hardMode)
events.RescheduleEvent(EVENT_HEALTH_CHECK, 2000, 1);
events.RescheduleEvent(EVENT_HEALTH_CHECK, 2s, 1);
}
void Reset() override
@@ -201,8 +201,8 @@ public:
void JustEngagedWith(Unit*) override
{
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE);
events.ScheduleEvent(EVENT_ENRAGE, 600000, 0, 0);
events.ScheduleEvent(EVENT_CHECK_ROOM, 5000, 0, 0);
events.ScheduleEvent(EVENT_ENRAGE, 10min, 0, 0);
events.ScheduleEvent(EVENT_CHECK_ROOM, 5s, 0, 0);
RescheduleEvents(); // Other events are scheduled here
me->setActive(true);
@@ -272,7 +272,7 @@ public:
me->CastSpell(me, SPELL_HEARTBREAK, true);
Talk(EMOTE_HEART_CLOSED);
events.ScheduleEvent(EVENT_REMOVE_EMOTE, 4000);
events.ScheduleEvent(EVENT_REMOVE_EMOTE, 4s);
return;
}
@@ -324,13 +324,13 @@ public:
Talk(SAY_HEART_OPENED);
events.CancelEventGroup(1);
events.ScheduleEvent(EVENT_START_SECOND_PHASE, 5000);
events.ScheduleEvent(EVENT_START_SECOND_PHASE, 5s);
return;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
case EVENT_CHECK_ROOM:
events.RepeatEvent(5000);
events.Repeat(5s);
if (me->GetPositionX() < 722 || me->GetPositionX() > 987 || me->GetPositionY() < -139 || me->GetPositionY() > 124)
EnterEvadeMode();
@@ -339,17 +339,17 @@ public:
// Abilities events
case EVENT_GRAVITY_BOMB:
me->CastCustomSpell(SPELL_GRAVITY_BOMB, SPELLVALUE_MAX_TARGETS, 1, me, true);
events.ScheduleEvent(EVENT_SEARING_LIGHT, 10000, 1);
events.ScheduleEvent(EVENT_SEARING_LIGHT, 10s, 1);
break;
case EVENT_SEARING_LIGHT:
me->CastCustomSpell(SPELL_SEARING_LIGHT, SPELLVALUE_MAX_TARGETS, 1, me, true);
events.ScheduleEvent(EVENT_GRAVITY_BOMB, 10000, 1);
events.ScheduleEvent(EVENT_GRAVITY_BOMB, 10s, 1);
break;
case EVENT_TYMPANIC_TANTARUM:
Talk(EMOTE_TYMPANIC_TANTRUM);
Talk(SAY_TYMPANIC_TANTRUM);
me->CastSpell(me, SPELL_TYMPANIC_TANTARUM, true);
events.RepeatEvent(60000);
events.Repeat(1min);
return;
case EVENT_ENRAGE:
Talk(SAY_BERSERK);
@@ -363,7 +363,7 @@ public:
if (Unit* heart = me->GetVehicleKit() ? me->GetVehicleKit()->GetPassenger(HEART_VEHICLE_SEAT) : nullptr)
heart->GetAI()->DoAction(ACTION_AWAKEN_HEART);
events.ScheduleEvent(EVENT_RESTORE, 30000);
events.ScheduleEvent(EVENT_RESTORE, 30s);
return;
// Restore from heartbreak
case EVENT_RESTORE:
@@ -379,7 +379,7 @@ public:
if (Unit* heart = me->GetVehicleKit() ? me->GetVehicleKit()->GetPassenger(HEART_VEHICLE_SEAT) : nullptr)
heart->GetAI()->DoAction(ACTION_HIDE_HEART);
events.ScheduleEvent(EVENT_REMOVE_EMOTE, 4000);
events.ScheduleEvent(EVENT_REMOVE_EMOTE, 4s);
return;
case EVENT_REMOVE_EMOTE:
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);

View File

@@ -479,9 +479,9 @@ public:
SaveKeepers();
events.ScheduleEvent(EVENT_SARA_P1_DOORS_CLOSE, 15000, 0, EVENT_PHASE_ONE);
events.ScheduleEvent(EVENT_SARA_P1_BERSERK, 900000, 0, 0);
events.ScheduleEvent(EVENT_SARA_P1_SUMMON, 0, 0, EVENT_PHASE_ONE);
events.ScheduleEvent(EVENT_SARA_P1_DOORS_CLOSE, 15s, 0, EVENT_PHASE_ONE);
events.ScheduleEvent(EVENT_SARA_P1_BERSERK, 15min, 0, 0);
events.ScheduleEvent(EVENT_SARA_P1_SUMMON, 0ms, 0, EVENT_PHASE_ONE);
events.SetPhase(EVENT_PHASE_ONE);
me->Yell("The time to strike at the head of the beast will soon be upon us! Focus your anger and hatred on his minions!", LANG_UNIVERSAL);
@@ -766,7 +766,7 @@ public:
EntryCheckPredicate pred(NPC_YOGG_SARON);
summons.DoAction(ACTION_YOGG_SARON_START_YELL, pred);
_p2TalkTimer = 0;
events.ScheduleEvent(EVENT_SARA_P2_START, 500, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_START, 500ms, 0, EVENT_PHASE_TWO);
}
return;
}
@@ -785,7 +785,7 @@ public:
if (GameObject* go = ObjectAccessor::GetGameObject(*me, m_pInstance->GetGuidData(GO_YOGG_SARON_DOORS)))
go->SetGoState(GO_STATE_READY);
events.ScheduleEvent(EVENT_SARA_P1_SPELLS, 0, 1, EVENT_PHASE_ONE);
events.ScheduleEvent(EVENT_SARA_P1_SPELLS, 0ms, 1, EVENT_PHASE_ONE);
break;
case EVENT_SARA_P1_SUMMON:
events.RepeatEvent(20000 - (std::min(_summonedGuardiansCount, (uint8)5) * 2000));
@@ -812,16 +812,16 @@ public:
}
case EVENT_SARA_P2_MALADY:
me->CastCustomSpell(SPELL_MALADY_OF_THE_MIND, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_SARA_P2_PSYCHOSIS:
SpellSounds();
me->CastCustomSpell(SPELL_PSYCHOSIS, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(3500);
events.Repeat(3500ms);
break;
case EVENT_SARA_P2_DEATH_RAY:
SummonDeathOrbs();
events.RepeatEvent(20000);
events.Repeat(20s);
break;
case EVENT_SARA_P2_SUMMON_T1: // CRUSHER
SpawnTentacle(NPC_CRUSHER_TENTACLE);
@@ -837,14 +837,14 @@ public:
break;
case EVENT_SARA_P2_BRAIN_LINK:
me->CastCustomSpell(SPELL_BRAIN_LINK, SPELLVALUE_MAX_TARGETS, 1, me, false);
events.RepeatEvent(30000);
events.Repeat(30s);
break;
case EVENT_SARA_P2_OPEN_PORTALS:
{
AddPortals();
EntryCheckPredicate pred(NPC_YOGG_SARON);
summons.DoAction(ACTION_YOGG_SARON_OPEN_PORTAL_YELL, pred);
events.RepeatEvent(80000);
events.Repeat(80s);
break;
}
case EVENT_SARA_P2_REMOVE_STUN:
@@ -865,18 +865,18 @@ public:
SpawnTentacle(NPC_CORRUPTOR_TENTACLE);
SpawnTentacle(NPC_CORRUPTOR_TENTACLE);
events.ScheduleEvent(EVENT_SARA_P2_MALADY, 7000, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_PSYCHOSIS, 3000, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_DEATH_RAY, 15000, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_SUMMON_T1, 50000 + urand(0, 10000), 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_SUMMON_T2, 15000 + urand(0, 5000), 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_MALADY, 7s, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_PSYCHOSIS, 3s, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_DEATH_RAY, 15s, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_SUMMON_T1, 50s, 60s, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_SUMMON_T2, 15s, 20s, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_SUMMON_T3, 30000 + urand(0, 10000), 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_BRAIN_LINK, 0, 0, EVENT_PHASE_TWO);
events.ScheduleEvent(EVENT_SARA_P2_OPEN_PORTALS, 60000, 0, EVENT_PHASE_TWO);
break;
case EVENT_SARA_P1_BERSERK:
me->CastSpell(me, SPELL_EXTINGUISH_ALL_LIFE, true);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
}
@@ -1184,22 +1184,22 @@ public:
me->Yell("Hoohehehahahaha... AHAHAHAHAHAHA!", LANG_UNIVERSAL);
me->PlayDirectSound(YS_P3_LUNATIC_GAZE);
me->CastSpell(me, SPELL_LUNATIC_GAZE_YS, true);
events.RepeatEvent(12000);
events.Repeat(12s);
break;
case EVENT_YS_DEAFENING_ROAR:
me->TextEmote("Yogg-Saron opens his mouth wide!", nullptr, true);
me->Yell("Eternal suffering awaits!", LANG_UNIVERSAL);
me->PlayDirectSound(YS_P3_DEAFENING_ROAR);
me->CastSpell(me, SPELL_DEAFENING_ROAR, false);
events.RepeatEvent(50000);
events.Repeat(50s);
break;
case EVENT_YS_SHADOW_BEACON:
events.RepeatEvent(5000);
events.Repeat(5s);
me->CastCustomSpell(SPELL_SHADOW_BEACON, SPELLVALUE_MAX_TARGETS, RAID_MODE(1, 3), me, false);
break;
case EVENT_YS_SUMMON_GUARDIAN:
SummonImmortalGuardian();
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
}

View File

@@ -180,7 +180,7 @@ public:
if (m_algalonTimer <= 60)
{
_events.RescheduleEvent(EVENT_UPDATE_ALGALON_TIMER, 60000);
_events.RescheduleEvent(EVENT_UPDATE_ALGALON_TIMER, 1min);
algalon->AI()->DoAction(ACTION_INIT_ALGALON);
}
else // if (m_algalonTimer = TIMER_ALGALON_TO_SUMMON)
@@ -750,7 +750,7 @@ public:
DoUpdateWorldState(WORLD_STATE_ALGALON_TIMER_ENABLED, 1);
DoUpdateWorldState(WORLD_STATE_ALGALON_DESPAWN_TIMER, 60);
m_algalonTimer = 60;
_events.RescheduleEvent(EVENT_UPDATE_ALGALON_TIMER, 60000);
_events.RescheduleEvent(EVENT_UPDATE_ALGALON_TIMER, 1min);
SaveToDB();
return;
case DATA_ALGALON_SUMMON_STATE:
@@ -1126,7 +1126,7 @@ public:
DoUpdateWorldState(WORLD_STATE_ALGALON_DESPAWN_TIMER, --m_algalonTimer);
if (m_algalonTimer)
{
_events.RepeatEvent(60000);
_events.Repeat(1min);
return;
}

View File

@@ -233,9 +233,9 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.Reset();
events.ScheduleEvent(1, 2000); // checking Separation Anxiety, Charged Sphere
events.ScheduleEvent(2, urand(5000, 8000)); // Forked Lightning
events.ScheduleEvent(3, (me->GetEntry() == 33722 ? 20000 : 50000)); // Summon Charged Sphere
events.ScheduleEvent(1, 2s); // checking Separation Anxiety, Charged Sphere
events.ScheduleEvent(2, 5s, 8s); // Forked Lightning
events.ScheduleEvent(3, (me->GetEntry() == 33722 ? 20s : 50s)); // Summon Charged Sphere
if (Creature* c = me->FindNearestCreature((me->GetEntry() == 33722 ? 33699 : 33722), 30.0f, true))
otherGUID = c->GetGUID();
else
@@ -276,16 +276,16 @@ public:
if (c->IsSummon())
if (c->ToTempSummon()->GetSummonerGUID() != me->GetGUID())
me->CastSpell(me, 63528, true);
events.RepeatEvent(2000);
events.Repeat(2s);
break;
case 2:
me->CastSpell(me->GetVictim(), 63541, false);
events.RepeatEvent(urand(10000, 14000));
events.Repeat(10s, 14s);
break;
case 3:
if (!me->HasAura(63630))
me->CastSpell(me, 63527, false);
events.RepeatEvent(60000);
events.Repeat(1min);
break;
}
@@ -318,9 +318,9 @@ public:
void Reset() override
{
events.Reset();
events.ScheduleEvent(1, urand(5000, 8000)); // Flame Spray
events.ScheduleEvent(2, urand(3000, 6000)); // Machine Gun
events.ScheduleEvent(3, 1000); // Charged Leap
events.ScheduleEvent(1, 5s, 8s); // Flame Spray
events.ScheduleEvent(2, 3s, 6s); // Machine Gun
events.ScheduleEvent(3, 1s); // Charged Leap
}
void PassengerBoarded(Unit* p, int8 /*seat*/, bool /*apply*/) override
@@ -383,11 +383,11 @@ public:
break;
case 1:
me->CastSpell(me->GetVictim(), RAID_MODE(64717, 65241), false);
events.RepeatEvent(urand(15000, 25000));
events.Repeat(15s, 25s);
break;
case 2:
me->CastSpell(me->GetVictim(), RAID_MODE(64776, 65240), false);
events.RepeatEvent(urand(10000, 15000));
events.Repeat(10s, 15s);
break;
case 3:
{
@@ -395,10 +395,10 @@ public:
if (dist > 10.0f && dist < 40.0f)
{
me->CastSpell(me->GetVictim(), 64779, false);
events.RepeatEvent(25000);
events.Repeat(25s);
}
else
events.RepeatEvent(3000);
events.Repeat(3s);
}
break;
}