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

@@ -154,8 +154,8 @@ public:
me->StopMoving();
FeignDeath(true);
events.Reset();
events.RescheduleEvent(EVENT_START_RESURRECTION, 1000);
events.RescheduleEvent(EVENT_YELL_DEAD_1, 0);
events.RescheduleEvent(EVENT_START_RESURRECTION, 1s);
events.RescheduleEvent(EVENT_YELL_DEAD_1, 0ms);
}
}
@@ -163,10 +163,10 @@ public:
{
events.Reset();
// schedule Phase 1 abilities
events.RescheduleEvent(EVENT_SPELL_ROAR, 15000);
events.RescheduleEvent(EVENT_SPELL_CLEAVE_OR_WOE_STRIKE, 2000);
events.RescheduleEvent(EVENT_SPELL_SMASH, 5000);
events.RescheduleEvent(EVENT_SPELL_ENRAGE_OR_SHADOW_AXE, 10000);
events.RescheduleEvent(EVENT_SPELL_ROAR, 15s);
events.RescheduleEvent(EVENT_SPELL_CLEAVE_OR_WOE_STRIKE, 2s);
events.RescheduleEvent(EVENT_SPELL_SMASH, 5s);
events.RescheduleEvent(EVENT_SPELL_ENRAGE_OR_SHADOW_AXE, 10s);
Talk(YELL_AGGRO_1);
me->LowerPlayerDamageReq(me->GetMaxHealth());
@@ -258,9 +258,9 @@ public:
break;
case EVENT_START_RESURRECTION:
me->CastSpell(me, SPELL_SUMMON_VALKYR, true);
events.RescheduleEvent(EVENT_VALKYR_BEAM, 7000);
events.RescheduleEvent(EVENT_VALKYR_MOVE, 1);
events.RescheduleEvent(EVENT_ANNHYLDE_YELL, 3000);
events.RescheduleEvent(EVENT_VALKYR_BEAM, 7s);
events.RescheduleEvent(EVENT_VALKYR_MOVE, 1ms);
events.RescheduleEvent(EVENT_ANNHYLDE_YELL, 3s);
break;
case EVENT_VALKYR_MOVE:
if( Creature* s = ObjectAccessor::GetCreature(*me, ValkyrGUID) )
@@ -274,21 +274,21 @@ public:
me->RemoveAura(SPELL_SUMMON_VALKYR);
if( Creature* c = ObjectAccessor::GetCreature(*me, ValkyrGUID) )
c->CastSpell(me, SPELL_RESURRECTION_BEAM, false);
events.RescheduleEvent(EVENT_RESURRECTION_BALL, 4000);
events.RescheduleEvent(EVENT_RESURRECTION_BALL, 4s);
break;
case EVENT_RESURRECTION_BALL:
me->CastSpell(me, SPELL_RESURRECTION_BALL, true);
events.RescheduleEvent(EVENT_RESURRECTION_HEAL, 4000);
events.RescheduleEvent(EVENT_RESURRECTION_HEAL, 4s);
break;
case EVENT_RESURRECTION_HEAL:
me->RemoveAura(SPELL_RESURRECTION_BALL);
me->CastSpell(me, SPELL_RESURRECTION_HEAL, true);
FeignDeath(false);
events.RescheduleEvent(EVENT_MORPH_TO_UNDEAD, 3000);
events.RescheduleEvent(EVENT_MORPH_TO_UNDEAD, 3s);
break;
case EVENT_MORPH_TO_UNDEAD:
me->CastSpell(me, SPELL_INGVAR_TRANSFORM, true);
events.RescheduleEvent(EVENT_START_PHASE_2, 1000);
events.RescheduleEvent(EVENT_START_PHASE_2, 1s);
break;
case EVENT_START_PHASE_2:
if( Creature* c = ObjectAccessor::GetCreature(*me, ValkyrGUID) )
@@ -302,10 +302,10 @@ public:
Talk(YELL_AGGRO_2);
// schedule Phase 2 abilities
events.RescheduleEvent(EVENT_SPELL_ROAR, 15000);
events.RescheduleEvent(EVENT_SPELL_CLEAVE_OR_WOE_STRIKE, 2000);
events.RescheduleEvent(EVENT_SPELL_SMASH, 5000);
events.RescheduleEvent(EVENT_SPELL_ENRAGE_OR_SHADOW_AXE, 10000);
events.RescheduleEvent(EVENT_SPELL_ROAR, 15s);
events.RescheduleEvent(EVENT_SPELL_CLEAVE_OR_WOE_STRIKE, 2s);
events.RescheduleEvent(EVENT_SPELL_SMASH, 5s);
events.RescheduleEvent(EVENT_SPELL_ENRAGE_OR_SHADOW_AXE, 10s);
break;
@@ -324,24 +324,24 @@ public:
me->CastSpell((Unit*)nullptr, SPELL_STAGGERING_ROAR, false);
else
me->CastSpell((Unit*)nullptr, SPELL_DREADFUL_ROAR, false);
events.RepeatEvent(urand(15000, 20000));
events.Repeat(15s, 20s);
break;
case EVENT_SPELL_CLEAVE_OR_WOE_STRIKE:
if( me->GetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID) == 0 )
{
events.RepeatEvent(3000);
events.Repeat(3s);
break;
}
if (me->GetDisplayId() == DISPLAYID_DEFAULT)
me->CastSpell(me->GetVictim(), SPELL_CLEAVE, false);
else
me->CastSpell(me->GetVictim(), SPELL_WOE_STRIKE, false);
events.RepeatEvent(urand(0, 4000) + 3000);
events.Repeat(3s, 7s);
break;
case EVENT_SPELL_SMASH:
if( me->GetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID) == 0 )
{
events.RepeatEvent(3000);
events.Repeat(3s);
break;
}
me->SetControlled(true, UNIT_STATE_ROOT);
@@ -351,27 +351,27 @@ public:
me->CastSpell((Unit*)nullptr, SPELL_SMASH, false);
else
me->CastSpell((Unit*)nullptr, SPELL_DARK_SMASH, false);
events.RepeatEvent(urand(9000, 11000));
events.RescheduleEvent(EVENT_UNROOT, 3750);
events.Repeat(9s, 11s);
events.RescheduleEvent(EVENT_UNROOT, 3750ms);
break;
case EVENT_SPELL_ENRAGE_OR_SHADOW_AXE:
if (me->GetDisplayId() == DISPLAYID_DEFAULT)
{
me->CastSpell(me, SPELL_ENRAGE, false);
events.RepeatEvent(10000);
events.Repeat(10s);
}
else
{
me->CastSpell((Unit*)nullptr, SPELL_SHADOW_AXE, true);
SetEquipmentSlots(false, EQUIP_UNEQUIP, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE);
events.RepeatEvent(35000);
events.RescheduleEvent(EVENT_AXE_RETURN, 10000);
events.Repeat(35s);
events.RescheduleEvent(EVENT_AXE_RETURN, 10s);
}
break;
case EVENT_AXE_RETURN:
if (Creature* c = ObjectAccessor::GetCreature(*me, ThrowGUID))
c->GetMotionMaster()->MoveCharge(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ());
events.RescheduleEvent(EVENT_AXE_PICKUP, 1500);
events.RescheduleEvent(EVENT_AXE_PICKUP, 1500ms);
break;
case EVENT_AXE_PICKUP:
if (Creature* c = ObjectAccessor::GetCreature(*me, ThrowGUID))

View File

@@ -159,9 +159,9 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.Reset();
events.RescheduleEvent(EVENT_SPELL_SHADOWBOLT, 0);
events.RescheduleEvent(EVENT_FROST_TOMB, 28000);
events.RescheduleEvent(EVENT_SUMMON_SKELETONS, 4000);
events.RescheduleEvent(EVENT_SPELL_SHADOWBOLT, 0ms);
events.RescheduleEvent(EVENT_FROST_TOMB, 28s);
events.RescheduleEvent(EVENT_SUMMON_SKELETONS, 4s);
Talk(SAY_START_COMBAT);
DoZoneInCombat();
@@ -194,7 +194,7 @@ public:
break;
case EVENT_SPELL_SHADOWBOLT:
me->CastSpell(me->GetVictim(), SPELL_SHADOWBOLT, false);
events.RepeatEvent(urand(4000, 5000));
events.Repeat(4s, 5s);
break;
case EVENT_FROST_TOMB:
if( Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 0.0f, true, true) )
@@ -203,10 +203,10 @@ public:
Talk(SAY_FROST_TOMB_EMOTE, target);
Talk(SAY_FROST_TOMB);
me->CastSpell(target, SPELL_FROST_TOMB, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
case EVENT_SUMMON_SKELETONS:
Talk(SAY_SUMMON_SKELETONS);
@@ -264,9 +264,9 @@ public:
void Reset() override
{
events.Reset();
events.RescheduleEvent(EVENT_SPELL_DECREPIFY, urand(10000, 20000));
events.RescheduleEvent(EVENT_SPELL_DECREPIFY, 10s, 20s);
if( IsHeroic() )
events.RescheduleEvent(EVENT_SPELL_BONE_ARMOR, urand(25000, 120000));
events.RescheduleEvent(EVENT_SPELL_BONE_ARMOR, 25s, 120s);
}
void DamageTaken(Unit*, uint32& damage, DamageEffectType, SpellSchoolMask) override
@@ -285,7 +285,7 @@ public:
me->SetUnitFlag(UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
me->SetUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
me->SetDynamicFlag(UNIT_DYNFLAG_DEAD);
events.RescheduleEvent(EVENT_RESURRECT, 12000);
events.RescheduleEvent(EVENT_RESURRECT, 12s);
}
}
@@ -313,21 +313,21 @@ public:
case EVENT_SPELL_DECREPIFY:
if( !me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE) )
me->CastSpell(me->GetVictim(), SPELL_DECREPIFY, false);
events.RepeatEvent(urand(15000, 25000));
events.Repeat(15s, 25s);
break;
case EVENT_SPELL_BONE_ARMOR:
if( !me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE) )
me->CastSpell((Unit*)nullptr, SPELL_BONE_ARMOR, false);
events.RepeatEvent(urand(40000, 120000));
events.Repeat(40s, 120s);
break;
case EVENT_RESURRECT:
events.DelayEvents(3500);
events.DelayEvents(3500ms);
DoCast(me, SPELL_SCOURGE_RESURRECTION, true);
me->SetStandState(UNIT_STAND_STATE_STAND);
me->RemoveUnitFlag(UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
me->RemoveUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
me->RemoveDynamicFlag(UNIT_DYNFLAG_DEAD);
events.RescheduleEvent(EVENT_RESURRECT_2, 3000);
events.RescheduleEvent(EVENT_RESURRECT_2, 3s);
break;
case EVENT_RESURRECT_2:
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);

View File

@@ -112,7 +112,7 @@ public:
switch (param)
{
case 1:
events.RescheduleEvent(EVENT_MATE_DIED, 3500);
events.RescheduleEvent(EVENT_MATE_DIED, 3500ms);
break;
}
}
@@ -120,14 +120,14 @@ public:
void JustEngagedWith(Unit* who) override
{
events.Reset();
events.RescheduleEvent(EVENT_SHARVALD_CHARGE, 5000);
events.RescheduleEvent(EVENT_STONE_STRIKE, 10000);
events.RescheduleEvent(EVENT_SHARVALD_CHARGE, 5s);
events.RescheduleEvent(EVENT_STONE_STRIKE, 10s);
if (me->GetEntry() == NPC_SKARVALD)
{
Talk(YELL_SKARVALD_AGGRO);
if (IsHeroic())
{
events.ScheduleEvent(EVENT_ENRAGE, 1000);
events.ScheduleEvent(EVENT_ENRAGE, 1s);
}
}
if (pInstance)
@@ -202,17 +202,17 @@ public:
me->AddThreat(target, 10000.0f);
me->CastSpell(target, SPELL_CHARGE, false);
}
events.RepeatEvent(urand(5000, 10000));
events.Repeat(5s, 10s);
break;
case EVENT_STONE_STRIKE:
if (me->GetVictim() && me->IsWithinMeleeRange(me->GetVictim()))
{
me->CastSpell(me->GetVictim(), SPELL_STONE_STRIKE, false);
events.RepeatEvent(urand(5000, 10000));
events.Repeat(5s, 10s);
}
else
{
events.RepeatEvent(3000);
events.Repeat(3s);
}
break;
case EVENT_ENRAGE:
@@ -221,7 +221,7 @@ public:
me->CastSpell(me, SPELL_ENRAGE, true);
break;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
}
DoMeleeAttackIfReady();
@@ -280,7 +280,7 @@ public:
summons.DespawnAll();
break;
case 1:
events.RescheduleEvent(EVENT_MATE_DIED, 3500);
events.RescheduleEvent(EVENT_MATE_DIED, 3500ms);
break;
}
}
@@ -288,15 +288,15 @@ public:
void JustEngagedWith(Unit* who) override
{
events.Reset();
events.RescheduleEvent(EVENT_SHADOW_BOLT, 1000);
events.RescheduleEvent(EVENT_DEBILITATE, 5000);
events.RescheduleEvent(EVENT_SHADOW_BOLT, 1s);
events.RescheduleEvent(EVENT_DEBILITATE, 5s);
if (IsHeroic())
{
events.RescheduleEvent(EVENT_SUMMON_SKELETONS, 10000);
events.RescheduleEvent(EVENT_SUMMON_SKELETONS, 10s);
}
if (me->GetEntry() == NPC_DALRONN)
{
events.RescheduleEvent(EVENT_YELL_DALRONN_AGGRO, 4999);
events.RescheduleEvent(EVENT_YELL_DALRONN_AGGRO, 5s);
}
if (pInstance)
{
@@ -376,22 +376,22 @@ public:
{
me->CastSpell(target, DUNGEON_MODE(SPELL_SHADOW_BOLT_N, SPELL_SHADOW_BOLT_H), false);
}
events.RepeatEvent(2050);
events.Repeat(2s);
break;
case EVENT_DEBILITATE:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 45.0f, true))
{
me->CastSpell(target, SPELL_DEBILITATE, false);
events.RepeatEvent(urand(5000, 10000));
events.Repeat(5s, 10s);
}
else
{
events.RepeatEvent(3000);
events.Repeat(3s);
}
break;
case EVENT_SUMMON_SKELETONS:
me->CastSpell((Unit*)nullptr, SPELL_SUMMON_SKELETONS, false);
events.RepeatEvent(urand(20000, 30000));
events.Repeat(20s, 30s);
break;
}
DoMeleeAttackIfReady();

View File

@@ -124,9 +124,9 @@ public:
void Reset() override
{
_events.Reset();
_events.ScheduleEvent(EVENT_REND, urand(2000, 3000));
_events.ScheduleEvent(EVENT_FLAME_BREATH, urand(5500, 7000));
_events.ScheduleEvent(EVENT_KNOCKAWAY, urand(3500, 6000));
_events.ScheduleEvent(EVENT_REND, 2s, 3s);
_events.ScheduleEvent(EVENT_FLAME_BREATH, 5500ms, 7000ms);
_events.ScheduleEvent(EVENT_KNOCKAWAY, 3500ms, 6000ms);
}
void MovementInform(uint32 type, uint32 id) override
@@ -173,15 +173,15 @@ public:
{
case EVENT_REND:
DoCast(SPELL_REND);
_events.ScheduleEvent(EVENT_REND, urand(15000, 20000));
_events.ScheduleEvent(EVENT_REND, 15s, 20s);
break;
case EVENT_FLAME_BREATH:
DoCast(SPELL_FLAME_BREATH);
_events.ScheduleEvent(EVENT_FLAME_BREATH, urand(11000, 12000));
_events.ScheduleEvent(EVENT_FLAME_BREATH, 11s, 12s);
break;
case EVENT_KNOCKAWAY:
DoCast(SPELL_KNOCK_AWAY);
_events.ScheduleEvent(EVENT_KNOCKAWAY, urand(7000, 8500));
_events.ScheduleEvent(EVENT_KNOCKAWAY, 7000ms, 8500ms);
break;
default:
break;

View File

@@ -197,7 +197,7 @@ public:
summons.Summon(cr);
cr->SetDisableGravity(true);
cr->GetMotionMaster()->MovePoint(0, 275.4f, -453, 110); // ROOM CENTER
events.RescheduleEvent(EVENT_UNFREEZE_MONSTER, 10000);
events.RescheduleEvent(EVENT_UNFREEZE_MONSTER, 10s);
me->SetInCombatWithZone();
me->SetControlled(true, UNIT_STATE_STUNNED);
}
@@ -205,9 +205,9 @@ public:
else if (param == ACTION_MINIBOSS_DIED)
{
if (Counter > (IsHeroic() ? 3 : 1))
events.RescheduleEvent(EVENT_PALEHOOF_START, 3000);
events.RescheduleEvent(EVENT_PALEHOOF_START, 3s);
else
events.RescheduleEvent(EVENT_UNFREEZE_MONSTER, 3000);
events.RescheduleEvent(EVENT_UNFREEZE_MONSTER, 3s);
}
}
void JustEngagedWith(Unit* /*pWho*/) override
@@ -246,7 +246,7 @@ public:
Counter++;
miniBoss->AI()->DoAction(ACTION_UNFREEZE);
orb->CastSpell(miniBoss, SPELL_AWAKEN_SUBBOSS, true);
events.ScheduleEvent(EVENT_UNFREEZE_MONSTER2, 6000);
events.ScheduleEvent(EVENT_UNFREEZE_MONSTER2, 6s);
}
else
EnterEvadeMode();
@@ -272,7 +272,7 @@ public:
if (Creature* orb = ObjectAccessor::GetCreature(*me, OrbGUID))
{
orb->CastSpell(me, SPELL_AWAKEN_SUBBOSS, true);
events.ScheduleEvent(EVENT_PALEHOOF_START2, 6000);
events.ScheduleEvent(EVENT_PALEHOOF_START2, 6s);
}
break;
}
@@ -288,15 +288,15 @@ public:
// SETINCOMBATWITHZONE
// schedule combat events
events.ScheduleEvent(EVENT_PALEHOOF_WITHERING_ROAR, 10000);
events.ScheduleEvent(EVENT_PALEHOOF_IMPALE, 12000);
events.ScheduleEvent(EVENT_PALEHOOF_ARCING_SMASH, 15000);
events.ScheduleEvent(EVENT_PALEHOOF_WITHERING_ROAR, 10s);
events.ScheduleEvent(EVENT_PALEHOOF_IMPALE, 12s);
events.ScheduleEvent(EVENT_PALEHOOF_ARCING_SMASH, 15s);
break;
}
case EVENT_PALEHOOF_WITHERING_ROAR:
{
me->CastSpell(me, IsHeroic() ? SPELL_WITHERING_ROAR_H : SPELL_WITHERING_ROAR_N, false);
events.RepeatEvent(8000 + rand() % 4000);
events.Repeat(8s, 12s);
break;
}
case EVENT_PALEHOOF_IMPALE:
@@ -304,13 +304,13 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, IsHeroic() ? SPELL_IMPALE_H : SPELL_IMPALE_N, false);
events.RepeatEvent(8000 + rand() % 4000);
events.Repeat(8s, 12s);
break;
}
case EVENT_PALEHOOF_ARCING_SMASH:
{
me->CastSpell(me->GetVictim(), SPELL_ARCING_SMASH, false);
events.RepeatEvent(13000 + rand() % 4000);
events.Repeat(13s, 17s);
break;
}
}
@@ -381,9 +381,9 @@ public:
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_JORMUNGAR_ACID_SPIT, 3000);
events.ScheduleEvent(EVENT_JORMUNGAR_ACID_SPLATTER, 12000);
events.ScheduleEvent(EVENT_JORMUNGAR_POISON_BREATH, 10000);
events.ScheduleEvent(EVENT_JORMUNGAR_ACID_SPIT, 3s);
events.ScheduleEvent(EVENT_JORMUNGAR_ACID_SPLATTER, 12s);
events.ScheduleEvent(EVENT_JORMUNGAR_POISON_BREATH, 10s);
}
else if (param == ACTION_DESPAWN_ADDS)
summons.DespawnAll();
@@ -418,7 +418,7 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, SPELL_ACID_SPIT, false);
events.RepeatEvent(2000 + rand() % 2000);
events.Repeat(2s, 4s);
break;
}
case EVENT_JORMUNGAR_ACID_SPLATTER:
@@ -436,7 +436,7 @@ public:
pJormungarWorm->SetInCombatWithZone();
}
}
events.RepeatEvent(10000 + rand() % 4000);
events.Repeat(10s, 15s);
break;
}
case EVENT_JORMUNGAR_POISON_BREATH:
@@ -444,7 +444,7 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, IsHeroic() ? SPELL_POISON_BREATH_H : SPELL_POISON_BREATH_N, false);
events.RepeatEvent(8000 + rand() % 4000);
events.Repeat(8s, 12s);
break;
}
}
@@ -507,9 +507,9 @@ public:
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_RHINO_STOMP, 3000);
events.ScheduleEvent(EVENT_RHINO_GORE, 12000);
events.ScheduleEvent(EVENT_RHINO_WOUND, 10000);
events.ScheduleEvent(EVENT_RHINO_STOMP, 3s);
events.ScheduleEvent(EVENT_RHINO_GORE, 12s);
events.ScheduleEvent(EVENT_RHINO_WOUND, 10s);
}
}
@@ -540,13 +540,13 @@ public:
case EVENT_RHINO_STOMP:
{
me->CastSpell(me->GetVictim(), SPELL_STOMP, false);
events.RepeatEvent(8000 + rand() % 4000);
events.Repeat(8s, 12s);
break;
}
case EVENT_RHINO_GORE:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_GORE_H : SPELL_GORE_N, false);
events.RepeatEvent(13000 + rand() % 4000);
events.Repeat(13s, 17s);
break;
}
case EVENT_RHINO_WOUND:
@@ -554,7 +554,7 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, IsHeroic() ? SPELL_GRIEVOUS_WOUND_H : SPELL_GRIEVOUS_WOUND_N, false);
events.RepeatEvent(18000 + rand() % 4000);
events.Repeat(18s, 22s);
break;
}
}
@@ -617,9 +617,9 @@ public:
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_FURBOLG_CHAIN, 3000);
events.ScheduleEvent(EVENT_FURBOLG_CRAZED, 12000);
events.ScheduleEvent(EVENT_FURBOLG_ROAR, 10000);
events.ScheduleEvent(EVENT_FURBOLG_CHAIN, 3s);
events.ScheduleEvent(EVENT_FURBOLG_CRAZED, 12s);
events.ScheduleEvent(EVENT_FURBOLG_ROAR, 10s);
}
}
@@ -650,19 +650,19 @@ public:
case EVENT_FURBOLG_CHAIN:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_CHAIN_LIGHTING_H : SPELL_CHAIN_LIGHTING_N, false);
events.RepeatEvent(4000 + rand() % 3000);
events.Repeat(4s, 7s);
break;
}
case EVENT_FURBOLG_CRAZED:
{
me->CastSpell(me, SPELL_CRAZED, false);
events.RepeatEvent(8000 + rand() % 4000);
events.Repeat(8s, 12s);
break;
}
case EVENT_FURBOLG_ROAR:
{
me->CastSpell(me, SPELL_TERRIFYING_ROAR, false);
events.RepeatEvent(10000 + rand() % 5000);
events.Repeat(10s, 15s);
break;
}
}
@@ -725,9 +725,9 @@ public:
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->SetInCombatWithZone();
events.ScheduleEvent(EVENT_WORGEN_MORTAL, 3000);
events.ScheduleEvent(EVENT_WORGEN_ENRAGE1, 12000);
events.ScheduleEvent(EVENT_WORGEN_ENRAGE2, 10000);
events.ScheduleEvent(EVENT_WORGEN_MORTAL, 3s);
events.ScheduleEvent(EVENT_WORGEN_ENRAGE1, 12s);
events.ScheduleEvent(EVENT_WORGEN_ENRAGE2, 10s);
}
}
@@ -758,19 +758,19 @@ public:
case EVENT_WORGEN_MORTAL:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_MORTAL_WOUND_H : SPELL_MORTAL_WOUND_N, false);
events.RepeatEvent(4000 + rand() % 3000);
events.Repeat(4s, 7s);
break;
}
case EVENT_WORGEN_ENRAGE1:
{
me->CastSpell(me, SPELL_ENRAGE_1, false);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
case EVENT_WORGEN_ENRAGE2:
{
me->CastSpell(me, SPELL_ENRAGE_2, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
}

View File

@@ -175,7 +175,7 @@ public:
me->SetControlled(true, UNIT_STATE_ROOT);
me->SetInCombatWithZone();
events.RescheduleEvent(EVENT_SKADI_START, 2000);
events.RescheduleEvent(EVENT_SKADI_START, 2s);
}
}
@@ -184,9 +184,9 @@ public:
if (param == ACTION_PHASE2)
{
SecondPhase = true;
events.ScheduleEvent(EVENT_SKADI_CRUSH, 8000);
events.ScheduleEvent(EVENT_SKADI_SPEAR, 10000);
events.ScheduleEvent(EVENT_SKADI_WHIRLWIND, 15000);
events.ScheduleEvent(EVENT_SKADI_CRUSH, 8s);
events.ScheduleEvent(EVENT_SKADI_SPEAR, 10s);
events.ScheduleEvent(EVENT_SKADI_WHIRLWIND, 15s);
if (me->GetVictim())
me->GetMotionMaster()->MoveChase(me->GetVictim());
@@ -222,7 +222,7 @@ public:
case EVENT_SKADI_CRUSH:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_CRUSH_H : SPELL_CRUSH_N, false);
events.RepeatEvent(8000);
events.Repeat(8s);
break;
}
case EVENT_SKADI_SPEAR:
@@ -230,14 +230,14 @@ public:
if (Unit* tgt = SelectTarget(SelectTargetMethod::Random, 0))
me->CastSpell(tgt, IsHeroic() ? SPELL_POISONED_SPEAR_H : SPELL_POISONED_SPEAR_N, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
case EVENT_SKADI_WHIRLWIND:
{
me->CastSpell(me, IsHeroic() ? SPELL_WHIRLWIND_H : SPELL_WHIRLWIND_N, false);
events.RepeatEvent(15000 + rand() % 5000);
events.DelayEvents(10000);
events.Repeat(15s, 20s);
events.DelayEvents(10s);
break;
}
}
@@ -303,8 +303,8 @@ public:
{
if (param == ACTION_START_EVENT)
{
events.RescheduleEvent(EVENT_GRAUF_CHECK, 5000);
events.RescheduleEvent(EVENT_GRAUF_START, 2000);
events.RescheduleEvent(EVENT_GRAUF_CHECK, 5s);
events.RescheduleEvent(EVENT_GRAUF_START, 2s);
}
else if (param == ACTION_REMOVE_SKADI)
{
@@ -312,7 +312,7 @@ public:
if (Creature* skadi = passenger->ToCreature())
skadi->AI()->Talk(SAY_DRAKE_DEATH);
me->GetMotionMaster()->MovePoint(10, 480.0f, -513.0f, 108.0f);
events.ScheduleEvent(EVENT_GRAUF_REMOVE_SKADI, 2000);
events.ScheduleEvent(EVENT_GRAUF_REMOVE_SKADI, 2s);
}
else if (param == ACTION_MYGIRL_ACHIEVEMENT)
{
@@ -445,7 +445,7 @@ public:
case EVENT_GRAUF_CHECK:
{
CheckPlayers();
events.RepeatEvent(2000);
events.Repeat(2s);
break;
}
case EVENT_GRAUF_START:
@@ -455,8 +455,8 @@ public:
SpawnHelpers(0);
SpawnHelpers(0);
events.ScheduleEvent(EVENT_GRAUF_MOVE, 15000);
events.ScheduleEvent(EVENT_GRAUF_SUMMON_HELPERS, 20000);
events.ScheduleEvent(EVENT_GRAUF_MOVE, 15s);
events.ScheduleEvent(EVENT_GRAUF_SUMMON_HELPERS, 20s);
break;
}
case EVENT_GRAUF_MOVE:
@@ -475,13 +475,13 @@ public:
m_pInstance->SetData(SKADI_IN_RANGE, 0);
currentPos = targetPoint;
events.RepeatEvent(25000);
events.Repeat(25s);
break;
}
case EVENT_GRAUF_SUMMON_HELPERS:
{
SpawnHelpers(1);
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
case EVENT_GRAUF_REMOVE_SKADI:

View File

@@ -180,9 +180,9 @@ public:
me->SetInCombatWithZone();
Talk(SAY_AGGRO);
events.ScheduleEvent(EVENT_SORROWGRAVE_SS, 3000);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES, 11000);
events.ScheduleEvent(EVENT_SORROWGRAVE_RITUAL, 25000);
events.ScheduleEvent(EVENT_SORROWGRAVE_SS, 3s);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES, 11s);
events.ScheduleEvent(EVENT_SORROWGRAVE_RITUAL, 25s);
if (instance)
instance->SetData(DATA_SVALA_SORROWGRAVE, IN_PROGRESS);
@@ -215,25 +215,25 @@ public:
{
case EVENT_SVALA_START:
Talk(TALK_INTRO_S1);
events2.ScheduleEvent(EVENT_SVALA_TALK1, 8000);
events2.ScheduleEvent(EVENT_SVALA_TALK1, 8s);
break;
case EVENT_SVALA_TALK1:
if (Creature* Arthas = ObjectAccessor::GetCreature(*me, ArthasGUID))
Arthas->AI()->Talk(TALK_INTRO_A1);
events2.ScheduleEvent(EVENT_SVALA_TALK2, 9000);
events2.ScheduleEvent(EVENT_SVALA_TALK2, 9s);
break;
case EVENT_SVALA_TALK2:
if (Creature* Arthas = ObjectAccessor::GetCreature(*me, ArthasGUID))
Arthas->CastSpell(me, SPELL_ARTHAS_TRANSFORMING_SVALA, false);
me->CastSpell(me, SPELL_SVALA_TRANSFORMING2, true);
events2.ScheduleEvent(EVENT_SVALA_TALK3, 3000);
events2.ScheduleEvent(EVENT_SVALA_TALK3, 3s);
break;
case EVENT_SVALA_TALK3:
me->SetFloatValue(UNIT_FIELD_HOVERHEIGHT, 6.0f);
me->SetHover(true);
me->AddUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD);
events2.ScheduleEvent(30, 1000);
events2.ScheduleEvent(EVENT_SVALA_TALK4, 9000);
events2.ScheduleEvent(30, 1s);
events2.ScheduleEvent(EVENT_SVALA_TALK4, 9s);
break;
case 30:
{
@@ -253,7 +253,7 @@ public:
Arthas->InterruptNonMeleeSpells(false);
me->RemoveAllAuras();
me->SetWalk(false);
events2.ScheduleEvent(EVENT_SVALA_TALK5, 2000);
events2.ScheduleEvent(EVENT_SVALA_TALK5, 2s);
std::list<Creature*> creatureList;
me->GetCreaturesWithEntryInRange(creatureList, 100.0f, NPC_DRAGONFLAYER_SPECTATOR);
@@ -264,23 +264,23 @@ public:
}
case EVENT_SVALA_TALK5:
Talk(TALK_INTRO_S2);
events2.ScheduleEvent(EVENT_SVALA_TALK6, 12000);
events2.ScheduleEvent(EVENT_SVALA_TALK6, 12s);
break;
case EVENT_SVALA_TALK6:
if (Creature* Arthas = ObjectAccessor::GetCreature(*me, ArthasGUID))
Arthas->AI()->Talk(TALK_INTRO_A2);
events2.ScheduleEvent(EVENT_SVALA_TALK7, 9000);
events2.ScheduleEvent(EVENT_SVALA_TALK7, 9s);
break;
case EVENT_SVALA_TALK7:
me->SetFacingTo(M_PI / 2.0f);
Talk(TALK_INTRO_S3);
if (GameObject* mirror = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(GO_SVALA_MIRROR)))
mirror->SetGoState(GO_STATE_ACTIVE);
events2.ScheduleEvent(EVENT_SVALA_TALK8, 13000);
events2.ScheduleEvent(EVENT_SVALA_TALK8, 13s);
break;
case EVENT_SVALA_TALK8:
me->GetMotionMaster()->MoveFall(0, true);
events2.ScheduleEvent(EVENT_SVALA_TALK9, 2000);
events2.ScheduleEvent(EVENT_SVALA_TALK9, 2s);
break;
case EVENT_SVALA_TALK9:
me->SetFloatValue(UNIT_FIELD_HOVERHEIGHT, 3.0f);
@@ -303,14 +303,14 @@ public:
{
case EVENT_SORROWGRAVE_SS:
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_SINSTER_STRIKE_H : SPELL_SINSTER_STRIKE_N, false);
events.ScheduleEvent(EVENT_SORROWGRAVE_SS, urand(3000, 5000));
events.ScheduleEvent(EVENT_SORROWGRAVE_SS, 3s, 5s);
break;
case EVENT_SORROWGRAVE_FLAMES:
summons.DespawnAll();
me->CastSpell(me, SPELL_CALL_FLAMES, false);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES2, 500);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES2, 1000);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES, urand(8000, 12000));
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES2, 500ms);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES2, 1s);
events.ScheduleEvent(EVENT_SORROWGRAVE_FLAMES, 8s, 12s);
break;
case EVENT_SORROWGRAVE_FLAMES2:
{
@@ -342,8 +342,8 @@ public:
}
events.DelayEvents(25001); // +1 just to be sure
events.ScheduleEvent(EVENT_SORROWGRAVE_RITUAL_SPELLS, 0);
events.ScheduleEvent(EVENT_SORROWGRAVE_FINISH_RITUAL, 25000);
events.ScheduleEvent(EVENT_SORROWGRAVE_RITUAL_SPELLS, 0ms);
events.ScheduleEvent(EVENT_SORROWGRAVE_FINISH_RITUAL, 25s);
return;
case EVENT_SORROWGRAVE_RITUAL_SPELLS:
//me->CastSpell(me, SPELL_RITUAL_OF_THE_SWORD, false);

View File

@@ -175,10 +175,10 @@ public:
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
}
events.RescheduleEvent(EVENT_YMIRON_BANE, 18000);
events.RescheduleEvent(EVENT_YMIRON_FETID_ROT, 8000);
events.RescheduleEvent(EVENT_YMIRON_DARK_SLASH, 28000);
events.RescheduleEvent(EVENT_YMIRON_HEALTH_CHECK, 1000);
events.RescheduleEvent(EVENT_YMIRON_BANE, 18s);
events.RescheduleEvent(EVENT_YMIRON_FETID_ROT, 8s);
events.RescheduleEvent(EVENT_YMIRON_DARK_SLASH, 28s);
events.RescheduleEvent(EVENT_YMIRON_HEALTH_CHECK, 1s);
}
void MovementInform(uint32 uiType, uint32 point) override
@@ -192,7 +192,7 @@ public:
if (Creature* cr = me->FindNearestCreature(BoatStructure[BoatOrder[BoatNum - 1]].trigger, 50.0f))
me->CastSpell(cr, SPELL_CHANNEL_YMIRON_TO_SPIRIT, true);
events.ScheduleEvent(EVENT_YMIRON_ACTIVATE_BOAT, 6000);
events.ScheduleEvent(EVENT_YMIRON_ACTIVATE_BOAT, 6s);
}
}
@@ -237,26 +237,26 @@ public:
BoatNum++;
}
events.RepeatEvent(1000);
events.Repeat(1s);
break;
}
case EVENT_YMIRON_BANE:
{
me->CastSpell(me, IsHeroic() ? SPELL_BANE_H : SPELL_BANE_N, false);
events.RepeatEvent(20000 + rand() % 5000);
events.Repeat(20s, 25s);
break;
}
case EVENT_YMIRON_FETID_ROT:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_FETID_ROT_H : SPELL_FETID_ROT_N, false);
events.RepeatEvent(10000 + rand() % 3000);
events.Repeat(10s, 13s);
break;
}
case EVENT_YMIRON_DARK_SLASH:
{
int32 dmg = me->GetVictim()->GetHealth() / 2;
me->CastCustomSpell(me->GetVictim(), SPELL_DARK_SLASH, &dmg, 0, 0, false);
events.RepeatEvent(30000 + rand() % 5000);
events.Repeat(30s, 35s);
break;
}
case EVENT_YMIRON_ACTIVATE_BOAT:
@@ -274,16 +274,16 @@ public:
switch(BoatOrder[BoatNum - 1])
{
case 0:
events.ScheduleEvent(EVENT_YMIRON_RANULF_ABILITY, 3000, 1);
events.ScheduleEvent(EVENT_YMIRON_RANULF_ABILITY, 3s, 1);
break;
case 1:
events.ScheduleEvent(EVENT_YMIRON_TORGYN_ABILITY, 3000, 1);
events.ScheduleEvent(EVENT_YMIRON_TORGYN_ABILITY, 3s, 1);
break;
case 2:
events.ScheduleEvent(EVENT_YMIRON_BJORN_ABILITY, 3000, 1);
events.ScheduleEvent(EVENT_YMIRON_BJORN_ABILITY, 3s, 1);
break;
case 3:
events.ScheduleEvent(EVENT_YMIRON_HALDOR_ABILITY, 3000, 1);
events.ScheduleEvent(EVENT_YMIRON_HALDOR_ABILITY, 3s, 1);
break;
}
}
@@ -305,13 +305,13 @@ public:
case EVENT_YMIRON_HALDOR_ABILITY:
{
me->CastSpell(me->GetVictim(), IsHeroic() ? SPELL_SPIRIT_STRIKE_H : SPELL_SPIRIT_STRIKE_N, false);
events.RepeatEvent(5000);
events.Repeat(5s);
break;
}
case EVENT_YMIRON_RANULF_ABILITY:
{
me->CastSpell(me, IsHeroic() ? SPELL_SPIRIT_BURST_H : SPELL_SPIRIT_BURST_N, false);
events.RepeatEvent(10000);
events.Repeat(10s);
break;
}
case EVENT_YMIRON_TORGYN_ABILITY:
@@ -324,7 +324,7 @@ public:
as->SetInCombatWithZone();
}
}
events.RepeatEvent(15000);
events.Repeat(15s);
break;
}
}