mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-30 00:53:46 +00:00
refactor(Scripts): Update vanilla scripts to std::chrono (#14876)
Co-authored-by: Maelthyrr <AmanThul-Project@proton.me> Co-authored-by: Skjalf <47818697+Nyeriah@users.noreply.github.com>
This commit is contained in:
@@ -101,8 +101,8 @@ public:
|
||||
Talk(SAY_WATCH_OUT, who);
|
||||
else
|
||||
{
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 1000);
|
||||
events.ScheduleEvent(EVENT_FROST_NOVA, urand(8000, 12000));
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 1s);
|
||||
events.ScheduleEvent(EVENT_FROST_NOVA, 8s, 12s);
|
||||
if (urand(0, 100) > 40)
|
||||
Talk(SAY_AGGRO, who);
|
||||
}
|
||||
@@ -130,7 +130,7 @@ public:
|
||||
if (type == WAYPOINT_MOTION_TYPE && id == POINT_REACH_IDOL)
|
||||
{
|
||||
channeling = true;
|
||||
events.ScheduleEvent(EVENT_CHANNEL, 2000);
|
||||
events.ScheduleEvent(EVENT_CHANNEL, 2s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,15 +148,15 @@ public:
|
||||
case EVENT_CHANNEL:
|
||||
Talk(SAY_EVENT_START);
|
||||
DoCast(me, SPELL_IDOL_SHUTDOWN_VISUAL);
|
||||
events.ScheduleEvent(EVENT_IDOL_ROOM_SPAWNER, 100);
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 120000);
|
||||
events.ScheduleEvent(EVENT_IDOL_ROOM_SPAWNER, 100ms);
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 120s);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
break;
|
||||
case EVENT_IDOL_ROOM_SPAWNER:
|
||||
if (Creature* creature = me->SummonCreature(NPC_IDOL_ROOM_SPAWNER, PosSummonSpawner[urand(0, 2)], TEMPSUMMON_TIMED_DESPAWN, 4000))
|
||||
creature->AI()->SetData(0, spawnerCount);
|
||||
if (++spawnerCount < 8)
|
||||
events.ScheduleEvent(EVENT_IDOL_ROOM_SPAWNER, 35000);
|
||||
events.ScheduleEvent(EVENT_IDOL_ROOM_SPAWNER, 35s);
|
||||
break;
|
||||
case EVENT_PROGRESS:
|
||||
{
|
||||
@@ -165,23 +165,23 @@ public:
|
||||
case 0:
|
||||
Talk(SAY_EVENT_THREE_MIN_LEFT);
|
||||
++eventProgress;
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 60000);
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 1min);
|
||||
break;
|
||||
case 1:
|
||||
Talk(SAY_EVENT_TWO_MIN_LEFT);
|
||||
++eventProgress;
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 60000);
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 1min);
|
||||
break;
|
||||
case 2:
|
||||
Talk(SAY_EVENT_ONE_MIN_LEFT);
|
||||
++eventProgress;
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 60000);
|
||||
events.ScheduleEvent(EVENT_PROGRESS, 1min);
|
||||
break;
|
||||
case 3:
|
||||
events.CancelEvent(EVENT_IDOL_ROOM_SPAWNER);
|
||||
me->InterruptSpell(CURRENT_CHANNELED_SPELL);
|
||||
Talk(SAY_EVENT_END);
|
||||
events.ScheduleEvent(EVENT_COMPLETE, 3000);
|
||||
events.ScheduleEvent(EVENT_COMPLETE, 3s);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -215,13 +215,13 @@ public:
|
||||
if (me->HasUnitState(UNIT_STATE_CASTING) || !UpdateVictim())
|
||||
return;
|
||||
DoCastVictim(SPELL_FIREBALL);
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 8000);
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 8s);
|
||||
break;
|
||||
case EVENT_FROST_NOVA:
|
||||
if (me->HasUnitState(UNIT_STATE_CASTING) || !UpdateVictim())
|
||||
return;
|
||||
DoCast(me, SPELL_FROST_NOVA);
|
||||
events.ScheduleEvent(EVENT_FROST_NOVA, 15000);
|
||||
events.ScheduleEvent(EVENT_FROST_NOVA, 15s);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -221,9 +221,9 @@ struct npc_general_andorov : public npc_escortAI
|
||||
|
||||
void EnterCombat(Unit* /*who*/) override
|
||||
{
|
||||
events.ScheduleEvent(EVENT_BASH, urand(8, 11) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_COMMAND_AURA, urand(1, 3) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_STRIKE, urand(2, 5) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_BASH, 8s, 11s);
|
||||
events.ScheduleEvent(EVENT_COMMAND_AURA, 1s, 3s);
|
||||
events.ScheduleEvent(EVENT_STRIKE, 2s, 5s);
|
||||
}
|
||||
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
@@ -348,15 +348,15 @@ struct npc_general_andorov : public npc_escortAI
|
||||
{
|
||||
case EVENT_BASH:
|
||||
DoCastVictim(SPELL_BASH);
|
||||
events.ScheduleEvent(EVENT_BASH, urand(25, 38) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_BASH, 25s, 38s);
|
||||
break;
|
||||
case EVENT_COMMAND_AURA:
|
||||
DoCastSelf(SPELL_AURA_OF_COMMAND, true);
|
||||
events.ScheduleEvent(EVENT_COMMAND_AURA, urand(10, 20) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_COMMAND_AURA, 10s, 20s);
|
||||
break;
|
||||
case EVENT_STRIKE:
|
||||
DoCastVictim(SPELL_STRIKE);
|
||||
events.ScheduleEvent(EVENT_STRIKE, urand(4, 6) * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_STRIKE, 4s, 6s);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -255,7 +255,7 @@ public:
|
||||
if (quest->GetQuestId() == QUEST_A_CRY_FOR_HELP)
|
||||
{
|
||||
_player = player->GetGUID();
|
||||
_events.ScheduleEvent(EVENT_ACCEPT_QUEST, 2000);
|
||||
_events.ScheduleEvent(EVENT_ACCEPT_QUEST, 2s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -270,7 +270,7 @@ public:
|
||||
break;
|
||||
case 28:
|
||||
player->GroupEventHappens(QUEST_A_CRY_FOR_HELP, me);
|
||||
_events.ScheduleEvent(EVENT_TALK_END, 2000);
|
||||
_events.ScheduleEvent(EVENT_TALK_END, 2s);
|
||||
SetRun(true);
|
||||
break;
|
||||
case 29:
|
||||
@@ -297,14 +297,14 @@ public:
|
||||
Talk(SAY_START, player);
|
||||
}
|
||||
me->SetFaction(FACTION_ESCORTEE_N_NEUTRAL_PASSIVE);
|
||||
_events.ScheduleEvent(EVENT_START_ESCORT, 1000);
|
||||
_events.ScheduleEvent(EVENT_START_ESCORT, 1s);
|
||||
break;
|
||||
case EVENT_START_ESCORT:
|
||||
if (Player* player = ObjectAccessor::GetPlayer(*me, _player))
|
||||
{
|
||||
npc_escortAI::Start(true, false, player->GetGUID());
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_STAND, 2000);
|
||||
_events.ScheduleEvent(EVENT_STAND, 2s);
|
||||
break;
|
||||
case EVENT_STAND: // Remove kneel standstate. Using a separate delayed event because it causes unwanted delay before starting waypoint movement.
|
||||
me->SetByteValue(UNIT_FIELD_BYTES_1, UNIT_BYTES_1_OFFSET_STAND_STATE, UNIT_STAND_STATE_STAND);
|
||||
@@ -314,7 +314,7 @@ public:
|
||||
{
|
||||
Talk(SAY_END1, player);
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_COWLEN_TALK, 2000);
|
||||
_events.ScheduleEvent(EVENT_COWLEN_TALK, 2s);
|
||||
break;
|
||||
case EVENT_COWLEN_TALK:
|
||||
if (Creature* cowlen = me->FindNearestCreature(NPC_COWLEN, 50.0f, true))
|
||||
@@ -475,7 +475,7 @@ public:
|
||||
player->KilledMonsterCredit(me->GetEntry(), me->GetGUID());
|
||||
|
||||
_movementComplete = true;
|
||||
_events.ScheduleEvent(EVENT_DESPAWN, 3500);
|
||||
_events.ScheduleEvent(EVENT_DESPAWN, 3500ms);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -78,8 +78,8 @@ public:
|
||||
void EnterCombat(Unit*) override
|
||||
{
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_SPELL_SUNDER_ARMOR, 5000);
|
||||
events.ScheduleEvent(EVENT_SPELL_NET, 10000);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUNDER_ARMOR, 5s);
|
||||
events.ScheduleEvent(EVENT_SPELL_NET, 10s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -146,11 +146,11 @@ public:
|
||||
{
|
||||
case EVENT_SPELL_SUNDER_ARMOR:
|
||||
me->CastSpell(me->GetVictim(), SPELL_SUNDER_ARMOR, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUNDER_ARMOR, 15000);
|
||||
events.ScheduleEvent(EVENT_SPELL_SUNDER_ARMOR, 15s);
|
||||
break;
|
||||
case EVENT_SPELL_NET:
|
||||
me->CastSpell(me->GetVictim(), SPELL_NET, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_NET, 25000);
|
||||
events.ScheduleEvent(EVENT_SPELL_NET, 25s);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -469,7 +469,7 @@ public:
|
||||
me->SetFaction(FACTION_FRIENDLY);
|
||||
me->GetMotionMaster()->MoveFollow(player, 1.0f, PET_FOLLOW_ANGLE - (PET_FOLLOW_ANGLE / 4));
|
||||
_events.Reset();
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWING, 1000);
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWING, 1s);
|
||||
player->KilledMonsterCredit(NPC_CAPTURED_RABID_THISTLE_BEAR);
|
||||
me->DespawnOrUnsummon(240000);
|
||||
}
|
||||
@@ -496,7 +496,7 @@ public:
|
||||
{
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWING, 1000);
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWING, 1s);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -568,7 +568,7 @@ public:
|
||||
{
|
||||
_bearGUID = bear->GetGUID();
|
||||
_scriptRunning = true;
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_ONE, 1000);
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_ONE, 1s);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -586,14 +586,14 @@ public:
|
||||
Talk(SAY_BE_CLEANSED);
|
||||
me->CastSpell(bear, SPELL_THARNARIUMS_HEAL);
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_TWO, 4000);
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_TWO, 4s);
|
||||
break;
|
||||
case EVENT_POST_QUEST_TWO:
|
||||
if (Creature* bear = ObjectAccessor::GetCreature(*me, _bearGUID))
|
||||
{
|
||||
bear->SetUInt32Value(UNIT_FIELD_BYTES_1, 7);
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_THREE, 1000);
|
||||
_events.ScheduleEvent(EVENT_POST_QUEST_THREE, 1s);
|
||||
break;
|
||||
case EVENT_POST_QUEST_THREE:
|
||||
if (Creature* bear = ObjectAccessor::GetCreature(*me, _bearGUID))
|
||||
|
||||
@@ -101,7 +101,7 @@ public:
|
||||
_faction = 35;
|
||||
headNorth = true;
|
||||
me->setActive(true);
|
||||
events.ScheduleEvent(EVENT_RESTART_ESCORT, 0);
|
||||
events.ScheduleEvent(EVENT_RESTART_ESCORT, 0ms);
|
||||
}
|
||||
|
||||
void JustRespawned() override
|
||||
@@ -383,7 +383,7 @@ public:
|
||||
break;
|
||||
}
|
||||
case 282:
|
||||
events.ScheduleEvent(EVENT_RESTART_ESCORT, 1000);
|
||||
events.ScheduleEvent(EVENT_RESTART_ESCORT, 1s);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -99,7 +99,7 @@ public:
|
||||
npc_tiger_matriarch_creditAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
SetCombatMovement(false);
|
||||
events.ScheduleEvent(EVENT_CHECK_SUMMON_AURA, 2000);
|
||||
events.ScheduleEvent(EVENT_CHECK_SUMMON_AURA, 2s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -129,7 +129,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
events.ScheduleEvent(EVENT_CHECK_SUMMON_AURA, 5000);
|
||||
events.ScheduleEvent(EVENT_CHECK_SUMMON_AURA, 5s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -157,8 +157,8 @@ public:
|
||||
void EnterCombat(Unit* /*target*/) override
|
||||
{
|
||||
_events.Reset();
|
||||
_events.ScheduleEvent(EVENT_POUNCE, 100);
|
||||
_events.ScheduleEvent(EVENT_NOSUMMON, 50000);
|
||||
_events.ScheduleEvent(EVENT_POUNCE, 100ms);
|
||||
_events.ScheduleEvent(EVENT_NOSUMMON, 50s);
|
||||
}
|
||||
|
||||
void IsSummonedBy(WorldObject* summoner) override
|
||||
@@ -232,7 +232,7 @@ public:
|
||||
{
|
||||
case EVENT_POUNCE:
|
||||
DoCastVictim(SPELL_POUNCE);
|
||||
_events.ScheduleEvent(EVENT_POUNCE, 30000);
|
||||
_events.ScheduleEvent(EVENT_POUNCE, 30s);
|
||||
break;
|
||||
case EVENT_NOSUMMON: // Reapply SPELL_NO_SUMMON_AURA
|
||||
if (Unit* tiger = ObjectAccessor::GetUnit(*me, _tigerGuid))
|
||||
@@ -241,7 +241,7 @@ public:
|
||||
if (Unit* vehSummoner = tiger->ToTempSummon()->GetSummonerUnit())
|
||||
me->AddAura(SPELL_NO_SUMMON_AURA, vehSummoner);
|
||||
}
|
||||
_events.ScheduleEvent(EVENT_NOSUMMON, 50000);
|
||||
_events.ScheduleEvent(EVENT_NOSUMMON, 50s);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -146,7 +146,7 @@ public:
|
||||
}
|
||||
|
||||
_events.CancelEvent(EVENT_WANDERING_START);
|
||||
_events.ScheduleEvent(EVENT_FINAL_TALK, 5 * IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_FINAL_TALK, 5s);
|
||||
}
|
||||
|
||||
void EnterEvadeMode(EvadeReason why) override
|
||||
@@ -207,8 +207,8 @@ public:
|
||||
me->SetFaction(FACTION_ESCORT_N_NEUTRAL_ACTIVE);
|
||||
me->GetMotionMaster()->MoveFollow(player, 3.f, M_PI);
|
||||
|
||||
_events.ScheduleEvent(EVENT_WANDERING_START, urand(40 * IN_MILLISECONDS, 70 * IN_MILLISECONDS));
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWER, 30 * IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_START, 40s, 70s);
|
||||
_events.ScheduleEvent(EVENT_CHECK_FOLLOWER, 30s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -243,9 +243,9 @@ public:
|
||||
Position pos = me->GetFirstCollisionPosition(15.f, rand_norm() * static_cast<float>(2 * M_PI));
|
||||
me->GetMotionMaster()->MovePoint(0, pos);
|
||||
Talk(TALK_2);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_START, urand(60 * IN_MILLISECONDS, 70 * IN_MILLISECONDS));
|
||||
_events.ScheduleEvent(EVENT_WANDERING_TALK, 3 * IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_RANDOM, 8 * IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_START, 60s, 70s);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_TALK, 3s);
|
||||
_events.ScheduleEvent(EVENT_WANDERING_RANDOM, 8s);
|
||||
break;
|
||||
}
|
||||
case EVENT_WANDERING_TALK:
|
||||
|
||||
@@ -607,8 +607,8 @@ public:
|
||||
void EnterCombat(Unit* /*attacker*/) override
|
||||
{
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_CAST_CLEAVE, urand(3000, 5000));
|
||||
events.ScheduleEvent(EVENT_CAST_STARFALL, urand(8000, 10000));
|
||||
events.ScheduleEvent(EVENT_CAST_CLEAVE, 3s, 5s);
|
||||
events.ScheduleEvent(EVENT_CAST_STARFALL, 8s, 10s);
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/) override
|
||||
@@ -623,7 +623,7 @@ public:
|
||||
if (me->HasAura(SPELL_OMEN_STARFALL))
|
||||
me->RemoveAurasDueToSpell(SPELL_OMEN_STARFALL);
|
||||
|
||||
events.RescheduleEvent(EVENT_CAST_STARFALL, urand(14000, 16000));
|
||||
events.RescheduleEvent(EVENT_CAST_STARFALL, 14s, 16s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -638,12 +638,12 @@ public:
|
||||
{
|
||||
case EVENT_CAST_CLEAVE:
|
||||
DoCastVictim(SPELL_OMEN_CLEAVE);
|
||||
events.ScheduleEvent(EVENT_CAST_CLEAVE, urand(8000, 10000));
|
||||
events.ScheduleEvent(EVENT_CAST_CLEAVE, 8s, 10s);
|
||||
break;
|
||||
case EVENT_CAST_STARFALL:
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
DoCast(target, SPELL_OMEN_STARFALL);
|
||||
events.ScheduleEvent(EVENT_CAST_STARFALL, urand(14000, 16000));
|
||||
events.ScheduleEvent(EVENT_CAST_STARFALL, 14s, 16s);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -671,7 +671,7 @@ public:
|
||||
void Reset() override
|
||||
{
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_DESPAWN, 5 * MINUTE * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_DESPAWN, 5min);
|
||||
me->SetUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
|
||||
|
||||
@@ -435,7 +435,7 @@ public:
|
||||
SetEscortPaused(true);
|
||||
DoSummonPriestess();
|
||||
Talk(SAY_RANSHALLA_ALTAR_2);
|
||||
events.ScheduleEvent(EVENT_RESUME, 2000);
|
||||
events.ScheduleEvent(EVENT_RESUME, 2s);
|
||||
break;
|
||||
case 44:
|
||||
// Stop the escort and turn towards the altar
|
||||
|
||||
Reference in New Issue
Block a user