refactor(Core/EventMap): Refactor EventMap and related scripts (#23121)

Co-authored-by: Kelno <3866946+kelno@users.noreply.github.com>
Co-authored-by: Peter Keresztes Schmidt <carbenium@outlook.com>
This commit is contained in:
天鹭
2025-10-13 09:19:24 +08:00
committed by GitHub
parent 8e1426c06a
commit 9c49349e1e
168 changed files with 1468 additions and 1593 deletions

View File

@@ -125,8 +125,8 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.Reset();
events.ScheduleEvent(EVENT_SPELL_RADIANCE, 16000);
events.ScheduleEvent(EVENT_SPELL_HAMMER_RIGHTEOUS, 25000);
events.ScheduleEvent(EVENT_SPELL_RADIANCE, 16s);
events.ScheduleEvent(EVENT_SPELL_HAMMER_RIGHTEOUS, 25s);
Talk(SAY_EADRIC_AGGRO);
me->CastSpell(me, SPELL_VENGEANCE, false);
if (pInstance)

View File

@@ -182,7 +182,7 @@ public:
events.Reset();
events.ScheduleEvent(EVENT_ANNOUNCER_SAY_ZOMBIE, 2500ms);
events.ScheduleEvent(EVENT_SPELL_PLAGUE_STRIKE, 7s, 9s);
events.ScheduleEvent(EVENT_SPELL_ICY_TOUCH, 3500ms, 7000ms);
events.ScheduleEvent(EVENT_SPELL_ICY_TOUCH, 3500ms, 7s);
events.ScheduleEvent(EVENT_SPELL_DEATH_RESPITE, 13s, 15s);
events.ScheduleEvent(EVENT_SPELL_OBLITERATE, 11s, 19s);
}
@@ -214,7 +214,7 @@ public:
events.Reset();
events.ScheduleEvent(EVENT_SPELL_PLAGUE_STRIKE, 7s, 9s);
events.ScheduleEvent(EVENT_SPELL_ICY_TOUCH, 3500ms, 7000ms);
events.ScheduleEvent(EVENT_SPELL_ICY_TOUCH, 3500ms, 7s);
events.ScheduleEvent(EVENT_SPELL_OBLITERATE, 11s, 19s);
events.ScheduleEvent(EVENT_SPELL_DESECRATION, 2s, 3s);
break;

View File

@@ -255,7 +255,7 @@ public:
void JustEngagedWith(Unit* /*who*/) override
{
events.Reset();
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4000ms);
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4s);
events.ScheduleEvent(EVENT_SHIELD_BREAKER, 5s, 8s);
events.ScheduleEvent(EVENT_THRUST, 3s, 5s);
me->CastSpell(me, SPELL_TRAMPLE_AURA, true);
@@ -311,7 +311,7 @@ public:
me->CastSpell(target, SPELL_MINIONS_CHARGE, false);
}
}
events.Repeat(4500ms, 6000ms);
events.Repeat(4500ms, 6s);
}
break;
case EVENT_SHIELD_BREAKER:
@@ -372,7 +372,7 @@ public:
me->CastSpell(me, SPELL_BOSS_DEFEND_PERIODIC, true);
events.Reset();
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4000ms);
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4s);
events.ScheduleEvent(EVENT_SHIELD_BREAKER, 5s, 8s);
events.ScheduleEvent(EVENT_THRUST, 3s, 5s);
@@ -640,7 +640,7 @@ public:
me->CastSpell(me, SPELL_BOSS_DEFEND_PERIODIC, true);
me->SetRegeneratingHealth(true);
events.Reset();
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4000ms);
events.ScheduleEvent(EVENT_MOUNT_CHARGE, 2500ms, 4s);
events.ScheduleEvent(EVENT_SHIELD_BREAKER, 5s, 8s);
events.ScheduleEvent(EVENT_THRUST, 3s, 5s);
me->SetReactState(REACT_AGGRESSIVE);
@@ -766,7 +766,7 @@ public:
me->CastSpell(target, SPELL_MINIONS_CHARGE, false);
}
}
events.Repeat(4500ms, 6000ms);
events.Repeat(4500ms, 6s);
}
break;
case EVENT_SHIELD_BREAKER:

View File

@@ -23,7 +23,6 @@
#include "trial_of_the_champion.h"
const Position SpawnPosition = {746.67f, 684.08f, 412.5f, 4.65f};
#define CLEANUP_CHECK_INTERVAL 5000
/**
* @todo: Missing dialog/RP (already populated in DB) && spawns (can use ToC25 locations?) for:
@@ -88,7 +87,7 @@ public:
VehicleList.clear();
CLEANED = false;
events.Reset();
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 0);
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 0ms);
Counter = 0;
temp1 = 0;
temp2 = 0;
@@ -268,7 +267,7 @@ public:
if (DoNeedCleanup(player))
InstanceCleanup();
events.RescheduleEvent(EVENT_CHECK_PLAYERS, CLEANUP_CHECK_INTERVAL);
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 5s);
}
bool DoNeedCleanup(Player* ignoredPlayer = nullptr)
@@ -443,7 +442,7 @@ public:
Counter = 0;
SaveToDB();
events.Reset();
events.RescheduleEvent(EVENT_CHECK_PLAYERS, CLEANUP_CHECK_INTERVAL);
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 5s);
CLEANED = true;
}
@@ -785,7 +784,7 @@ public:
{
InstanceCleanup();
}
events.RepeatEvent(CLEANUP_CHECK_INTERVAL);
events.Repeat(5s);
}
break;
case EVENT_SUMMON_GRAND_CHAMPION_1:
@@ -812,7 +811,7 @@ public:
while( number == temp1 || number == temp2 );
DoSummonGrandChampion(number, 2);
HandleGameObject(GO_MainGateGUID, true);
events.ScheduleEvent(EVENT_CLOSE_GATE, 6000);
events.ScheduleEvent(EVENT_CLOSE_GATE, 6s);
}
break;
case EVENT_CLOSE_GATE:

View File

@@ -655,7 +655,7 @@ public:
me->NearTeleportTo(target->GetPositionX() + cos(o) * 5.0f, target->GetPositionY() + std::sin(o) * 5.0f, target->GetPositionZ() + 0.6f, target->GetOrientation());
AttackStart(target);
me->GetMotionMaster()->MoveChase(target);
events.DelayEvents(3000);
events.DelayEvents(3s);
}
}

View File

@@ -119,7 +119,7 @@ struct boss_faction_championsAI : public ScriptedAI
}
/// @todo - Convert to std::chrono
void EventMapGCD(EventMap& e, uint32 delay, uint32 gcd = 0)
void EventMapGCD(EventMap& e, Milliseconds delay, uint32 gcd = 0)
{
e.DelayEventsToMax(delay, gcd);
}
@@ -316,43 +316,43 @@ public:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_LIFEBLOOM, 40.0f))
me->CastSpell(target, SPELL_LIFEBLOOM, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_NOURISH:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_NOURISH, 40.0f))
me->CastSpell(target, SPELL_NOURISH, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_REGROWTH:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_REGROWTH, 40.0f))
me->CastSpell(target, SPELL_REGROWTH, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_REJUVENATION:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_REJUVENATION, 40.0f))
me->CastSpell(target, SPELL_REJUVENATION, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_THORNS:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_THORNS, 30.0f))
me->CastSpell(target, SPELL_THORNS, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_TRANQUILITY:
me->CastSpell(me, SPELL_TRANQUILITY, false);
events.Repeat(2min, 3min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_BARKSKIN:
if (HealthBelowPct(50))
{
me->CastSpell(me, SPELL_BARKSKIN, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -360,7 +360,7 @@ public:
case EVENT_SPELL_NATURE_GRASP:
me->CastSpell(me, SPELL_NATURE_GRASP, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -445,19 +445,19 @@ public:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_HEALING_WAVE, 40.0f))
me->CastSpell(target, SPELL_HEALING_WAVE, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_RIPTIDE:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_RIPTIDE, 40.0f))
me->CastSpell(target, SPELL_RIPTIDE, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SPIRIT_CLEANSE:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_SPIRIT_CLEANSE, 40.0f))
me->CastSpell(target, SPELL_SPIRIT_CLEANSE, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HEROISM_OR_BLOODLUST:
if (me->GetEntry() == NPC_ALLIANCE_SHAMAN_RESTORATION )
@@ -465,25 +465,25 @@ public:
else
me->CastSpell((Unit*)nullptr, SPELL_BLOODLUST, true);
events.Repeat(10min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HEX:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 20.0f, true))
me->CastSpell(target, SPELL_HEX, false);
events.Repeat(45s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_EARTH_SHIELD:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_EARTH_SHIELD, 40.0f))
me->CastSpell(target, SPELL_EARTH_SHIELD, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_EARTH_SHOCK:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_EARTH_SHOCK, false);
events.Repeat(5s, 10s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -568,14 +568,14 @@ public:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_HAND_OF_FREEDOM, 30.0f))
me->CastSpell(target, SPELL_HAND_OF_FREEDOM, false);
events.Repeat(25s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_BUBBLE:
if (HealthBelowPct(25))
{
me->CastSpell(me, SPELL_BUBBLE, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(10s);
@@ -584,32 +584,32 @@ public:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_CLEANSE, 40.0f))
me->CastSpell(target, SPELL_CLEANSE, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FLASH_OF_LIGHT:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_FLASH_OF_LIGHT, 40.0f))
me->CastSpell(target, SPELL_FLASH_OF_LIGHT, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HOLY_LIGHT:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_HOLY_LIGHT, 40.0f))
me->CastSpell(target, SPELL_HOLY_LIGHT, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HOLY_SHOCK:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_HOLY_SHOCK, 40.0f))
me->CastSpell(target, SPELL_HOLY_SHOCK, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HAND_OF_PROTECTION:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_HAND_OF_PROTECTION, 40.0f))
{
me->CastSpell(target, SPELL_HAND_OF_PROTECTION, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(10s);
@@ -619,7 +619,7 @@ public:
{
me->CastSpell(target, SPELL_HAMMER_OF_JUSTICE, false);
events.Repeat(40s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(10s);
@@ -701,32 +701,32 @@ public:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_RENEW, 40.0f))
me->CastSpell(target, SPELL_RENEW, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SHIELD:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_SHIELD, 40.0f))
me->CastSpell(target, SPELL_SHIELD, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FLASH_HEAL:
if (Creature* target = SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_FLASH_HEAL, 40.0f))
me->CastSpell(target, SPELL_FLASH_HEAL, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_DISPEL:
if (Unit* target = (urand(0, 1) ? SelectTarget(SelectTargetMethod::MaxThreat, 0, 30.0f, true) : SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_DISPEL, 40.0f)))
me->CastSpell(target, SPELL_DISPEL, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_MANA_BURN:
if (Unit* target = SelectEnemyCaster(false, 30.0f))
{
me->CastSpell(target, SPELL_MANA_BURN, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -736,7 +736,7 @@ public:
{
me->CastSpell((Unit*)nullptr, SPELL_PSYCHIC_SCREAM, false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -825,7 +825,7 @@ public:
{
me->CastSpell(target, SPELL_SILENCE, false);
events.Repeat(45s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
else
@@ -835,32 +835,32 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_VAMPIRIC_TOUCH, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SW_PAIN:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_SW_PAIN, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_MIND_FLAY:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_MIND_FLAY, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_MIND_BLAST:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_MIND_BLAST, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_HORROR:
if (me->GetVictim() && me->GetExactDist2d(me->GetVictim()) <= 30.0f )
{
me->CastSpell(me->GetVictim(), SPELL_HORROR, false);
events.Repeat(2min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(10s);
@@ -870,7 +870,7 @@ public:
{
me->CastSpell(me, SPELL_DISPERSION, false);
events.Repeat(3min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -879,14 +879,14 @@ public:
if (Unit* target = (urand(0, 1) ? SelectTarget(SelectTargetMethod::MaxThreat, 0, 30.0f, true) : SelectTarget_MostHPLostFriendlyMissingBuff(SPELL_DISPEL, 40.0f)))
me->CastSpell(target, SPELL_DISPEL, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_PSYCHIC_SCREAM:
if (EnemiesInRange(8.0f) >= 3 )
{
me->CastSpell((Unit*)nullptr, SPELL_PSYCHIC_SCREAM, false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -989,7 +989,7 @@ public:
{
me->CastSpell((Unit*)nullptr, SPELL_HELLFIRE, false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -998,43 +998,43 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_CORRUPTION, false);
events.Repeat(10s, 20s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_CURSE_OF_AGONY:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_CURSE_OF_AGONY, false);
events.Repeat(10s, 20s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_CURSE_OF_EXHAUSTION:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_CURSE_OF_EXHAUSTION, false);
events.Repeat(10s, 20s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FEAR:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 20.0f, true))
me->CastSpell(target, SPELL_FEAR, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SEARING_PAIN:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_SEARING_PAIN, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SHADOW_BOLT:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_SHADOW_BOLT, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_UNSTABLE_AFFLICTION:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_UNSTABLE_AFFLICTION, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -1121,20 +1121,20 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_ARCANE_BARRAGE, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_ARCANE_BLAST:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_ARCANE_BLAST, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_ARCANE_EXPLOSION:
if (EnemiesInRange(9.0f) >= 3 )
{
me->CastSpell((Unit*)nullptr, SPELL_ARCANE_EXPLOSION, false);
events.Repeat(6s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1144,7 +1144,7 @@ public:
{
me->CastSpell((Unit*)nullptr, SPELL_FROST_NOVA, false);
events.Repeat(15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
// blink disabled, movement not working
}
else
@@ -1155,7 +1155,7 @@ public:
{
me->CastSpell(target, SPELL_COUNTERSPELL, false);
events.Repeat(24s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1164,14 +1164,14 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_FROSTBOLT, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_ICE_BLOCK:
if (HealthBelowPct(25))
{
me->CastSpell(me, SPELL_ICE_BLOCK, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1180,7 +1180,7 @@ public:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f, true))
me->CastSpell(target, SPELL_POLYMORPH, false);
events.Repeat(15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -1279,14 +1279,14 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_AIMED_SHOT, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_DETERRENCE:
if (HealthBelowPct(25))
{
me->CastSpell(me, SPELL_DETERRENCE, false);
events.Repeat(90s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1296,7 +1296,7 @@ public:
{
me->CastSpell(me, SPELL_DISENGAGE, false);
events.Repeat(20s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1305,31 +1305,31 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_EXPLOSIVE_SHOT, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FROST_TRAP:
me->CastSpell(me, SPELL_FROST_TRAP, false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_STEADY_SHOT:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_STEADY_SHOT, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_WING_CLIP:
if (me->GetVictim() && me->GetDistance2d(me->GetVictim()) <= 5.0f )
me->CastSpell(me->GetVictim(), SPELL_WING_CLIP, false);
events.Repeat(8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_WYVERN_STING:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 35.0f, true))
{
me->CastSpell(target, SPELL_WYVERN_STING, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
events.Repeat(10s);
@@ -1429,7 +1429,7 @@ public:
{
me->CastSpell(me, SPELL_BARKSKIN, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1438,48 +1438,48 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_WRATH, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_MOONFIRE:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_MOONFIRE, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_STARFIRE:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_STARFIRE, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_INSECT_SWARM:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_INSECT_SWARM, false);
events.Repeat(5s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_ENTANGLING_ROOTS:
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f, true))
me->CastSpell(target, SPELL_ENTANGLING_ROOTS, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FAERIE_FIRE:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_FAERIE_FIRE, false);
events.Repeat(15s, 20s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_CYCLONE:
if (Unit* target = SelectTarget(SelectTargetMethod::MaxDistance, 0, 20.0f, true))
me->CastSpell(target, SPELL_CYCLONE, false);
events.Repeat(25s, 40s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_FORCE_OF_NATURE:
me->CastSpell((Unit*)nullptr, SPELL_FORCE_OF_NATURE, false);
events.Repeat(3min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -1583,7 +1583,7 @@ public:
{
me->CastSpell((Unit*)nullptr, SPELL_INTIMIDATING_SHOUT, false);
events.Repeat(2min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1597,14 +1597,14 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_MORTAL_STRIKE, false);
events.Repeat(6s, 8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_CHARGE:
if (me->GetVictim() && me->GetDistance2d(me->GetVictim()) > 8.0f && me->GetDistance2d(me->GetVictim()) < 25.0f )
{
me->CastSpell(me->GetVictim(), SPELL_CHARGE, false);
events.Repeat(10s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1614,7 +1614,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_DISARM, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1629,7 +1629,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_OVERPOWER, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1644,7 +1644,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_SUNDER_ARMOR, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1659,7 +1659,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_SHATTERING_THROW, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1674,7 +1674,7 @@ public:
{
me->CastSpell(me, SPELL_RETALIATION, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1760,7 +1760,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_CHAINS_OF_ICE, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1770,7 +1770,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_DEATH_COIL, false);
events.Repeat(5s, 8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1785,7 +1785,7 @@ public:
pos.Relocate(x, y, z);
me->GetVictim()->CastSpell(pos.GetPositionX(), pos.GetPositionY(), pos.GetPositionZ(), 49575, true);
events.Repeat(35s);
EventMapGCD(events, 2000);
EventMapGCD(events, 2s);
}
else
events.Repeat(5s);
@@ -1800,7 +1800,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_FROST_STRIKE, false);
events.Repeat(6s, 10s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1810,7 +1810,7 @@ public:
{
me->CastSpell(me, SPELL_ICEBOUND_FORTITUDE, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1820,7 +1820,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_ICY_TOUCH, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1830,7 +1830,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_STRANGULATE, false);
events.Repeat(2min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1922,7 +1922,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_FAN_OF_KNIVES, false);
events.Repeat(6s, 10s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1932,7 +1932,7 @@ public:
{
me->CastSpell(target, SPELL_BLIND, false);
events.Repeat(2min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1942,7 +1942,7 @@ public:
{
me->CastSpell(me, SPELL_CLOAK, false);
events.Repeat(90s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(6s);
@@ -1954,7 +1954,7 @@ public:
{
me->CastSpell(me, SPELL_BLADE_FLURRY, false);
events.Repeat(2min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
break;
case EVENT_SPELL_SHADOWSTEP:
@@ -1962,7 +1962,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_SHADOWSTEP, false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1977,7 +1977,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_HEMORRHAGE, false);
events.Repeat(5s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -1992,7 +1992,7 @@ public:
{
me->CastSpell(me->GetVictim(), SPELL_EVISCERATE, false);
events.Repeat(15s, 25s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2080,7 +2080,7 @@ public:
{
me->CastSpell(target, SPELL_EARTH_SHOCK_ENH, false);
events.Repeat(6s, 8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2095,7 +2095,7 @@ public:
{
me->CastSpell(target, SPELL_LAVA_LASH, false);
events.Repeat(6s, 8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2110,7 +2110,7 @@ public:
{
me->CastSpell(target, SPELL_STORMSTRIKE, false);
events.Repeat(8s, 9s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2121,12 +2121,12 @@ public:
else
me->CastSpell((Unit*)nullptr, SPELL_BLOODLUST, true);
events.Repeat(10min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SUMMON_TOTEM:
me->CastSpell((Unit*)nullptr, RAND(SPELL_GROUNDING_TOTEM, SPELL_WINDFURY_TOTEM, SPELL_TREMOR_TOTEM), false);
events.Repeat(30s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}
@@ -2211,7 +2211,7 @@ public:
case EVENT_SPELL_AVENGING_WRATH:
me->CastSpell(me, SPELL_AVENGING_WRATH, false);
events.Repeat(3min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_CRUSADER_STRIKE:
if (me->HasUnitFlag(UNIT_FLAG_DISARMED))
@@ -2223,7 +2223,7 @@ public:
{
me->CastSpell(target, SPELL_CRUSADER_STRIKE, false);
events.Repeat(6s, 8s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2233,7 +2233,7 @@ public:
{
me->CastSpell(me, SPELL_DIVINE_SHIELD, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2248,7 +2248,7 @@ public:
{
me->CastSpell((Unit*)nullptr, SPELL_DIVINE_STORM, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2258,7 +2258,7 @@ public:
{
me->CastSpell(target, SPELL_HAMMER_OF_JUSTICE_RET, false);
events.Repeat(40s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2268,7 +2268,7 @@ public:
{
me->CastSpell(target, SPELL_HAND_OF_PROTECTION_RET, false);
events.Repeat(5min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2278,7 +2278,7 @@ public:
{
me->CastSpell(target, SPELL_JUDGEMENT_OF_COMMAND, false);
events.Repeat(10s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2288,7 +2288,7 @@ public:
{
me->CastSpell(target, SPELL_REPENTANCE, false);
events.Repeat(1min);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
}
else
events.Repeat(5s);
@@ -2357,13 +2357,13 @@ public:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_DEVOUR_MAGIC, false);
events.Repeat(8s, 15s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
case EVENT_SPELL_SPELL_LOCK:
if (me->GetVictim())
me->CastSpell(me->GetVictim(), SPELL_SPELL_LOCK, false);
events.Repeat(24s);
EventMapGCD(events, 1500);
EventMapGCD(events, 1500ms);
break;
}

View File

@@ -848,7 +848,7 @@ public:
me->CastSpell(me, SPELL_STAGGERED_DAZE, true);
me->CastSpell((Unit*)nullptr, SPELL_TRAMPLE, true);
Talk(EMOTE_TRAMPLE_CRASH);
events.DelayEvents(15000);
events.DelayEvents(15s);
}
else
{

View File

@@ -384,7 +384,7 @@ struct boss_twin_valkyrAI : public ScriptedAI
/*
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 0.0f, true, essenceId))
me->CastSpell(target, me->GetEntry()==NPC_LIGHTBANE ? SPELL_LIGHT_TOUCH : SPELL_DARK_TOUCH, false);
events.RepeatEvent(urand(45000,50000));
events.Repeat(45s,50s);
*/
GuidVector tList;
@@ -458,7 +458,7 @@ struct boss_twin_valkyrAI : public ScriptedAI
if ((SpecialMask & 0xF) == 0xF )
SpecialMask = 0;
events.Repeat(45s);
events.DelayEventsToMax(15000, 1); // no touch of light/darkness during special abilities!
events.DelayEventsToMax(15s, 1); // no touch of light/darkness during special abilities!
}
break;
case EVENT_REMOVE_DUAL_WIELD:

View File

@@ -175,7 +175,7 @@ public:
bSwitcher = false;
bNooneDied = true;
events.Reset();
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 0);
events.RescheduleEvent(EVENT_CHECK_PLAYERS, 0ms);
NPC_ChampionGUIDs.clear();
}
@@ -295,22 +295,22 @@ public:
switch (InstanceProgress)
{
case INSTANCE_PROGRESS_INITIAL:
events.RescheduleEvent(EVENT_SCENE_001, 0);
events.RescheduleEvent(EVENT_SCENE_001, 0ms);
break;
case INSTANCE_PROGRESS_INTRO_DONE:
events.RescheduleEvent(EVENT_SCENE_004, 0);
events.RescheduleEvent(EVENT_SCENE_004, 0ms);
break;
case INSTANCE_PROGRESS_BEASTS_DEAD:
events.RescheduleEvent(EVENT_SCENE_101, 0);
events.RescheduleEvent(EVENT_SCENE_101, 0ms);
break;
case INSTANCE_PROGRESS_JARAXXUS_DEAD:
events.RescheduleEvent(EVENT_SCENE_201, 0);
events.RescheduleEvent(EVENT_SCENE_201, 0ms);
break;
case INSTANCE_PROGRESS_FACTION_CHAMPIONS_DEAD:
events.RescheduleEvent(EVENT_SCENE_301, 0);
events.RescheduleEvent(EVENT_SCENE_301, 0ms);
break;
case INSTANCE_PROGRESS_VALKYR_DEAD:
events.RescheduleEvent(EVENT_SCENE_401, 0);
events.RescheduleEvent(EVENT_SCENE_401, 0ms);
break;
}
break;
@@ -331,7 +331,7 @@ public:
if ((northrendBeastsMask & 7) == 7)
SetData(TYPE_NORTHREND_BEASTS_ALL, DONE);
else if ((northrendBeastsMask & 16) == 0)
events.RescheduleEvent(EVENT_SCENE_005, 2500);
events.RescheduleEvent(EVENT_SCENE_005, 2500ms);
}
break;
case TYPE_JORMUNGAR:
@@ -363,7 +363,7 @@ public:
else if ((northrendBeastsMask & 32) == 0)
{
Counter = 0;
events.RescheduleEvent(EVENT_SCENE_006, 2500);
events.RescheduleEvent(EVENT_SCENE_006, 2500ms);
}
}
else // first one died, start timer for achievement
@@ -390,7 +390,7 @@ public:
InstanceProgress = INSTANCE_PROGRESS_BEASTS_DEAD;
HandleGameObject(GO_EnterGateGUID, true);
events.CancelEvent(EVENT_NORTHREND_BEASTS_ENRAGE);
events.RescheduleEvent(EVENT_SCENE_BEASTS_DONE, 2500);
events.RescheduleEvent(EVENT_SCENE_BEASTS_DONE, 2500ms);
SaveToDB();
}
break;
@@ -402,7 +402,7 @@ public:
{
HandleGameObject(GO_EnterGateGUID, true);
InstanceProgress = INSTANCE_PROGRESS_JARAXXUS_DEAD;
events.RescheduleEvent(EVENT_SCENE_110, 2500);
events.RescheduleEvent(EVENT_SCENE_110, 2500ms);
SaveToDB();
}
break;
@@ -416,7 +416,7 @@ public:
Counter = 0;
EncounterStatus = NOT_STARTED;
InstanceProgress = INSTANCE_PROGRESS_FACTION_CHAMPIONS_DEAD;
events.RescheduleEvent(EVENT_SCENE_FACTION_CHAMPIONS_DEAD, 2500);
events.RescheduleEvent(EVENT_SCENE_FACTION_CHAMPIONS_DEAD, 2500ms);
for (ObjectGuid const& guid : NPC_ChampionGUIDs)
if (Creature* c = instance->GetCreature(guid))
@@ -491,7 +491,7 @@ public:
InstanceProgress = INSTANCE_PROGRESS_VALKYR_DEAD;
DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE, 34497, 1); // Lightbane
DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE, 34496, 1); // Darkbane
events.RescheduleEvent(EVENT_SCENE_VALKYR_DEAD, 2500);
events.RescheduleEvent(EVENT_SCENE_VALKYR_DEAD, 2500ms);
HandleGameObject(GO_EnterGateGUID, true);
SaveToDB();
}
@@ -516,7 +516,7 @@ public:
c->UpdatePosition(Locs[LOC_TIRION_FINAL], true);
c->StopMovingOnCurrentPos();
c->SetFacingTo(Locs[LOC_TIRION_FINAL].GetOrientation());
events.RescheduleEvent(EVENT_SCENE_501, 20000);
events.RescheduleEvent(EVENT_SCENE_501, 20s);
}
if (GameObject* floor = instance->GetGameObject(GO_FloorGUID))
floor->SetDestructibleState(GO_DESTRUCTIBLE_REBUILDING, nullptr, true);
@@ -591,7 +591,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_0_01);
events.RescheduleEvent(EVENT_SCENE_002, 22000);
events.RescheduleEvent(EVENT_SCENE_002, 22s);
}
break;
case EVENT_SCENE_002:
@@ -599,7 +599,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_VarianGUID))
c->AI()->Talk(SAY_STAGE_0_03a);
events.RescheduleEvent(EVENT_SCENE_003, 5000);
events.RescheduleEvent(EVENT_SCENE_003, 5s);
}
break;
case EVENT_SCENE_003:
@@ -607,7 +607,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_GarroshGUID))
c->AI()->Talk(SAY_STAGE_0_03h);
events.RescheduleEvent(EVENT_SCENE_004, 8000);
events.RescheduleEvent(EVENT_SCENE_004, 8s);
}
break;
case EVENT_SCENE_004:
@@ -620,12 +620,12 @@ public:
HandleGameObject(GO_MainGateGUID, true);
HandleGameObject(GO_EnterGateGUID, false);
events.RescheduleEvent(EVENT_SUMMON_GORMOK, 1000);
events.RescheduleEvent(EVENT_SUMMON_GORMOK, 1s);
if (instance->IsHeroic())
{
events.RescheduleEvent(EVENT_SCENE_005, 150000);
events.RescheduleEvent(EVENT_SCENE_006, 340000);
events.RescheduleEvent(EVENT_NORTHREND_BEASTS_ENRAGE, 520000);
events.RescheduleEvent(EVENT_SCENE_005, 150s);
events.RescheduleEvent(EVENT_SCENE_006, 340s);
events.RescheduleEvent(EVENT_NORTHREND_BEASTS_ENRAGE, 520s);
}
}
break;
@@ -650,8 +650,8 @@ public:
if (Creature* gormok = c->SummonCreature(NPC_GORMOK, Locs[LOC_BEHIND_GATE].GetPositionX(), Locs[LOC_BEHIND_GATE].GetPositionY(), Locs[LOC_BEHIND_GATE].GetPositionZ(), Locs[LOC_BEHIND_GATE].GetOrientation(), TEMPSUMMON_CORPSE_TIMED_DESPAWN, 30000))
gormok->GetMotionMaster()->MovePoint(0, Locs[LOC_GATE_FRONT].GetPositionX(), Locs[LOC_GATE_FRONT].GetPositionY(), Locs[LOC_GATE_FRONT].GetPositionZ());
events.RescheduleEvent(EVENT_GORMOK_ATTACK, 10000);
events.RescheduleEvent(EVENT_CLOSE_GATE, 6000);
events.RescheduleEvent(EVENT_GORMOK_ATTACK, 10s);
events.RescheduleEvent(EVENT_CLOSE_GATE, 6s);
}
break;
case EVENT_GORMOK_ATTACK:
@@ -676,8 +676,8 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_0_04);
events.RescheduleEvent(EVENT_OPEN_GATE, 3000);
events.RescheduleEvent(EVENT_SUMMON_ACIDMAW_AND_DREADSCALE, 4000);
events.RescheduleEvent(EVENT_OPEN_GATE, 3s);
events.RescheduleEvent(EVENT_SUMMON_ACIDMAW_AND_DREADSCALE, 4s);
break;
}
case EVENT_SUMMON_ACIDMAW_AND_DREADSCALE:
@@ -690,7 +690,7 @@ public:
acidmaw->AddAura(53421, acidmaw);
}
events.RescheduleEvent(EVENT_SCENE_005_2, 4000);
events.RescheduleEvent(EVENT_SCENE_005_2, 4s);
break;
}
@@ -699,7 +699,7 @@ public:
if (Creature* dreadscale = instance->GetCreature(NPC_DreadscaleGUID))
dreadscale->GetMotionMaster()->MovePoint(0, Locs[LOC_DREADSCALE].GetPositionX(), Locs[LOC_DREADSCALE].GetPositionY(), Locs[LOC_DREADSCALE].GetPositionZ());
events.RescheduleEvent(EVENT_ACIDMAW_AND_DREADSCALE_ATTACK, 7000);
events.RescheduleEvent(EVENT_ACIDMAW_AND_DREADSCALE_ATTACK, 7s);
break;
}
case EVENT_ACIDMAW_AND_DREADSCALE_ATTACK:
@@ -737,8 +737,8 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_0_05);
events.RescheduleEvent(EVENT_OPEN_GATE, 2000);
events.RescheduleEvent(EVENT_SUMMON_ICEHOWL, 3000);
events.RescheduleEvent(EVENT_OPEN_GATE, 2s);
events.RescheduleEvent(EVENT_SUMMON_ICEHOWL, 3s);
break;
}
case EVENT_SUMMON_ICEHOWL:
@@ -747,8 +747,8 @@ public:
if (Creature* icehowl = c->SummonCreature(NPC_ICEHOWL, Locs[LOC_BEHIND_GATE].GetPositionX(), Locs[LOC_BEHIND_GATE].GetPositionY(), Locs[LOC_BEHIND_GATE].GetPositionZ(), Locs[LOC_BEHIND_GATE].GetOrientation(), TEMPSUMMON_CORPSE_TIMED_DESPAWN, 630000000))
icehowl->GetMotionMaster()->MovePoint(0, Locs[LOC_GATE_FRONT].GetPositionX(), Locs[LOC_GATE_FRONT].GetPositionY(), Locs[LOC_GATE_FRONT].GetPositionZ());
events.RescheduleEvent(EVENT_ICEHOWL_ATTACK, 10000);
events.RescheduleEvent(EVENT_CLOSE_GATE, 6000);
events.RescheduleEvent(EVENT_ICEHOWL_ATTACK, 10s);
events.RescheduleEvent(EVENT_CLOSE_GATE, 6s);
break;
}
case EVENT_ICEHOWL_ATTACK:
@@ -785,7 +785,7 @@ public:
fizzlebang->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
fizzlebang->GetMotionMaster()->MovePoint(0, Locs[LOC_BEHIND_GATE].GetPositionX(), Locs[LOC_BEHIND_GATE].GetPositionY() - 65.0f, Locs[LOC_BEHIND_GATE].GetPositionZ() - 1.0f);
}
events.RescheduleEvent(EVENT_SCENE_102, 20000);
events.RescheduleEvent(EVENT_SCENE_102, 20s);
// move Icehowl to side, can't remove corpse because of loot!
if (Creature* icehowl = instance->GetCreature(NPC_IcehowlGUID))
@@ -803,7 +803,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_FizzlebangGUID))
c->AI()->Talk(SAY_STAGE_1_02);
events.RescheduleEvent(EVENT_SCENE_103, 11000);
events.RescheduleEvent(EVENT_SCENE_103, 11s);
break;
}
case EVENT_SCENE_103:
@@ -816,7 +816,7 @@ public:
NPC_PurpleGroundGUID = trigger->GetGUID();
}
events.RescheduleEvent(EVENT_SCENE_104, 5000);
events.RescheduleEvent(EVENT_SCENE_104, 5s);
break;
}
case EVENT_SCENE_104:
@@ -833,7 +833,7 @@ public:
c->HandleEmoteCommand(EMOTE_STATE_SPELL_PRECAST);
}
events.RescheduleEvent(EVENT_SUMMON_JARAXXUS, 5000);
events.RescheduleEvent(EVENT_SUMMON_JARAXXUS, 5s);
break;
}
case EVENT_SUMMON_JARAXXUS:
@@ -846,7 +846,7 @@ public:
c->AI()->Talk(SAY_STAGE_1_04);
}
events.RescheduleEvent(EVENT_SCENE_105, 3000);
events.RescheduleEvent(EVENT_SCENE_105, 3s);
break;
}
case EVENT_SCENE_105:
@@ -860,7 +860,7 @@ public:
c->DespawnOrUnsummon();
NPC_PortalGUID.Clear();
events.RescheduleEvent(EVENT_SCENE_106, 10000);
events.RescheduleEvent(EVENT_SCENE_106, 10s);
break;
}
case EVENT_SCENE_106:
@@ -868,7 +868,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_JaraxxusGUID))
c->AI()->Talk(SAY_STAGE_1_05);
events.RescheduleEvent(EVENT_SCENE_107, 5000);
events.RescheduleEvent(EVENT_SCENE_107, 5s);
break;
}
case EVENT_SCENE_107:
@@ -876,7 +876,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_FizzlebangGUID))
c->AI()->Talk(SAY_STAGE_1_06);
events.RescheduleEvent(EVENT_SCENE_108, 800);
events.RescheduleEvent(EVENT_SCENE_108, 800ms);
break;
}
case EVENT_SCENE_108:
@@ -891,7 +891,7 @@ public:
}
}
events.RescheduleEvent(EVENT_SCENE_109, 5000);
events.RescheduleEvent(EVENT_SCENE_109, 5s);
break;
}
case EVENT_SCENE_109:
@@ -901,7 +901,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_1_07);
events.RescheduleEvent(EVENT_JARAXXUS_ATTACK, 6000);
events.RescheduleEvent(EVENT_JARAXXUS_ATTACK, 6s);
break;
}
case EVENT_JARAXXUS_ATTACK:
@@ -925,7 +925,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_1_08);
events.RescheduleEvent(EVENT_SCENE_111, 18000);
events.RescheduleEvent(EVENT_SCENE_111, 18s);
break;
}
case EVENT_SCENE_111:
@@ -933,7 +933,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_GarroshGUID))
c->AI()->Talk(SAY_STAGE_1_09);
events.RescheduleEvent(EVENT_SCENE_112, 9000);
events.RescheduleEvent(EVENT_SCENE_112, 9s);
break;
}
case EVENT_SCENE_112:
@@ -941,7 +941,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_VarianGUID))
c->AI()->Talk(SAY_STAGE_1_10);
events.RescheduleEvent(EVENT_SCENE_113, 5000);
events.RescheduleEvent(EVENT_SCENE_113, 5s);
break;
}
case EVENT_SCENE_113:
@@ -965,7 +965,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_2_01);
events.RescheduleEvent(EVENT_SCENE_202, 9000);
events.RescheduleEvent(EVENT_SCENE_202, 9s);
break;
}
case EVENT_SCENE_202:
@@ -974,13 +974,13 @@ public:
{
if (Creature* c = instance->GetCreature(NPC_GarroshGUID))
c->AI()->Talk(SAY_STAGE_2_02h);
events.RescheduleEvent(EVENT_SCENE_203, 15000);
events.RescheduleEvent(EVENT_SCENE_203, 15s);
}
else
{
if (Creature* c = instance->GetCreature(NPC_VarianGUID))
c->AI()->Talk(SAY_STAGE_2_02a);
events.RescheduleEvent(EVENT_SCENE_203, 18000);
events.RescheduleEvent(EVENT_SCENE_203, 18s);
}
break;
}
@@ -989,7 +989,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_2_03);
events.RescheduleEvent(EVENT_SCENE_204, 5000);
events.RescheduleEvent(EVENT_SCENE_204, 5s);
break;
}
case EVENT_SCENE_204:
@@ -998,16 +998,16 @@ public:
{
if (Creature* c = instance->GetCreature(NPC_GarroshGUID))
c->AI()->Talk(SAY_STAGE_2_04h);
events.RescheduleEvent(EVENT_SCENE_205, 6000);
events.RescheduleEvent(EVENT_SCENE_205, 6s);
}
else
{
if (Creature* c = instance->GetCreature(NPC_VarianGUID))
c->AI()->Talk(SAY_STAGE_2_04a);
events.RescheduleEvent(EVENT_SCENE_205, 5000);
events.RescheduleEvent(EVENT_SCENE_205, 5s);
}
events.RescheduleEvent(EVENT_SUMMON_CHAMPIONS, 2500);
events.RescheduleEvent(EVENT_SUMMON_CHAMPIONS, 2500ms);
break;
}
case EVENT_SCENE_205:
@@ -1089,7 +1089,7 @@ public:
}
HandleGameObject(GO_EnterGateGUID, false);
events.RescheduleEvent(EVENT_CHAMPIONS_ATTACK, 4000);
events.RescheduleEvent(EVENT_CHAMPIONS_ATTACK, 4s);
break;
}
case EVENT_CHAMPIONS_ATTACK:
@@ -1122,7 +1122,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_3_01);
events.RescheduleEvent(EVENT_SCENE_302, 13000);
events.RescheduleEvent(EVENT_SCENE_302, 13s);
break;
}
case EVENT_SCENE_302:
@@ -1130,7 +1130,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_3_02);
events.RescheduleEvent(EVENT_SCENE_303, 3000);
events.RescheduleEvent(EVENT_SCENE_303, 3s);
break;
}
case EVENT_SCENE_303:
@@ -1145,7 +1145,7 @@ public:
t->GetMotionMaster()->MovePoint(0, Locs[LOC_VALKYR_DEST_LEFT].GetPositionX(), Locs[LOC_VALKYR_DEST_LEFT].GetPositionY(), Locs[LOC_VALKYR_DEST_LEFT].GetPositionZ());
}
events.RescheduleEvent(EVENT_SCENE_304, 6250);
events.RescheduleEvent(EVENT_SCENE_304, 6250ms);
break;
}
case EVENT_SCENE_304:
@@ -1157,7 +1157,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_DarkbaneGUID))
c->GetMotionMaster()->MovePoint(0, Locs[LOC_VALKYR_DEST_2_LEFT].GetPositionX(), Locs[LOC_VALKYR_DEST_2_LEFT].GetPositionY(), Locs[LOC_VALKYR_DEST_2_LEFT].GetPositionZ());
events.RescheduleEvent(EVENT_VALKYRIES_ATTACK, 3250);
events.RescheduleEvent(EVENT_VALKYRIES_ATTACK, 3250ms);
break;
}
case EVENT_VALKYRIES_ATTACK:
@@ -1189,7 +1189,7 @@ public:
if (Creature* c = instance->GetCreature(GetTeamIdInInstance() == TEAM_ALLIANCE ? NPC_VarianGUID : NPC_GarroshGUID))
c->AI()->Talk((GetTeamIdInInstance() == TEAM_ALLIANCE ? SAY_STAGE_3_03a : SAY_STAGE_3_03h));
events.RescheduleEvent(EVENT_SCENE_401, 60000);
events.RescheduleEvent(EVENT_SCENE_401, 60s);
break;
}
case EVENT_SCENE_401:
@@ -1197,7 +1197,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_4_01);
events.RescheduleEvent(EVENT_SCENE_402, 20000);
events.RescheduleEvent(EVENT_SCENE_402, 20s);
break;
}
case EVENT_SCENE_402:
@@ -1214,7 +1214,7 @@ public:
t->SetVisible(false);
}
events.RescheduleEvent(EVENT_SCENE_403, 2000);
events.RescheduleEvent(EVENT_SCENE_403, 2s);
break;
}
case EVENT_SCENE_403:
@@ -1226,7 +1226,7 @@ public:
t->CastSpell(t, 51807, true);
}
events.RescheduleEvent(EVENT_SCENE_404, 2000);
events.RescheduleEvent(EVENT_SCENE_404, 2s);
break;
}
case EVENT_SCENE_404:
@@ -1238,7 +1238,7 @@ public:
c->GetMotionMaster()->MovePoint(0, Locs[LOC_ARTHAS]);
}
events.RescheduleEvent(EVENT_SCENE_405, 3000);
events.RescheduleEvent(EVENT_SCENE_405, 3s);
break;
}
case EVENT_SCENE_405:
@@ -1246,7 +1246,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_TirionGUID))
c->AI()->Talk(SAY_STAGE_4_03);
events.RescheduleEvent(EVENT_SCENE_406, 7000);
events.RescheduleEvent(EVENT_SCENE_406, 7s);
break;
}
case EVENT_SCENE_406:
@@ -1257,8 +1257,8 @@ public:
c->HandleEmoteCommand(EMOTE_ONESHOT_LAUGH);
}
events.RescheduleEvent(EVENT_SCENE_406_2, 2500);
events.RescheduleEvent(EVENT_SCENE_407, 12000);
events.RescheduleEvent(EVENT_SCENE_406_2, 2500ms);
events.RescheduleEvent(EVENT_SCENE_407, 12s);
break;
}
case EVENT_SCENE_406_2:
@@ -1276,7 +1276,7 @@ public:
if (Creature* c = instance->GetCreature(NPC_LichKingGUID))
c->HandleEmoteCommand(EMOTE_ONESHOT_EXCLAMATION);
events.RescheduleEvent(EVENT_SCENE_408, 4000);
events.RescheduleEvent(EVENT_SCENE_408, 4s);
break;
}
case EVENT_SCENE_408:
@@ -1286,7 +1286,7 @@ public:
c->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL);
}
events.RescheduleEvent(EVENT_SCENE_409, 1500);
events.RescheduleEvent(EVENT_SCENE_409, 1500ms);
break;
}
case EVENT_SCENE_409:
@@ -1305,7 +1305,7 @@ public:
SpawnAnubArak();
}
events.RescheduleEvent(EVENT_SCENE_410, 2000);
events.RescheduleEvent(EVENT_SCENE_410, 2s);
break;
}
case EVENT_SCENE_410:
@@ -1328,7 +1328,7 @@ public:
c->SummonGameObject(195682, 668.15f, 134.57f, 142.12f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 630000000);
}
events.RescheduleEvent(EVENT_SCENE_502, 20000);
events.RescheduleEvent(EVENT_SCENE_502, 20s);
break;
}
case EVENT_SCENE_502: