aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Keresztes Schmidt <carbenium@outlook.com>2020-07-14 21:06:40 +0200
committerShauren <shauren.trinity@gmail.com>2022-01-23 16:02:25 +0100
commitce8c0da4fef7557ac5721e685f6e9565ba855000 (patch)
treee4954726536b1042d17f1e15e158c87d4c13cf1c /src
parent0195ec8945af75d9f0fd79b309818de7d39d90f8 (diff)
Scripts/Icecrown Citadel: Use std::chrono::duration overloads of EventMap (Part 2) (#25041)
Part 2: gunship battle and Sindragosa Contributes to https://github.com/TrinityCore/TrinityCore/issues/25012 (cherry picked from commit 6968e7a1a1d638cc43409e7ab5e96f2e4854fe69)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp60
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp16
2 files changed, 38 insertions, 38 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
index 181c5724448..6017fc7c126 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
@@ -848,7 +848,7 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
_controller.SetTransport(creature->GetTransport());
me->SetRegenerateHealth(false);
me->m_CombatDistance = 70.0f;
- _firstMageCooldown = GameTime::GetGameTime() + 60;
+ _firstMageCooldown = GameTime::GetGameTimeSteadyPoint() + 60s;
_axethrowersYellCooldown = time_t(0);
_rocketeersYellCooldown = time_t(0);
}
@@ -858,7 +858,7 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
ScriptedAI::InitializeAI();
_events.Reset();
- _firstMageCooldown = GameTime::GetGameTime() + 60;
+ _firstMageCooldown = GameTime::GetGameTimeSteadyPoint() + 60s;
_axethrowersYellCooldown = time_t(0);
_rocketeersYellCooldown = time_t(0);
}
@@ -891,9 +891,9 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
muradin->AI()->DoAction(ACTION_SPAWN_ALL_ADDS);
Talk(SAY_SAURFANG_INTRO_5);
- _events.ScheduleEvent(EVENT_INTRO_H_5, 4000);
- _events.ScheduleEvent(EVENT_INTRO_H_6, 11000);
- _events.ScheduleEvent(EVENT_KEEP_PLAYER_IN_COMBAT, 1);
+ _events.ScheduleEvent(EVENT_INTRO_H_5, 4s);
+ _events.ScheduleEvent(EVENT_INTRO_H_6, 11s);
+ _events.ScheduleEvent(EVENT_KEEP_PLAYER_IN_COMBAT, 1ms);
_instance->SetBossState(DATA_ICECROWN_GUNSHIP_BATTLE, IN_PROGRESS);
// Combat starts now
@@ -910,11 +910,11 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
}
else if (action == ACTION_SPAWN_MAGE)
{
- time_t now = GameTime::GetGameTime();
+ std::chrono::steady_clock::time_point now = GameTime::GetGameTimeSteadyPoint();
if (_firstMageCooldown > now)
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, (_firstMageCooldown - now) * IN_MILLISECONDS);
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, std::chrono::duration_cast<Milliseconds>(_firstMageCooldown - now));
else
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, 1);
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, 1ms);
}
else if (action == ACTION_SPAWN_ALL_ADDS)
{
@@ -948,7 +948,7 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
{
_controller.ClearSlot(PassengerSlots(data));
if (data == SLOT_FREEZE_MAGE)
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, urand(30000, 33500));
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, 30s, 33500ms);
}
}
@@ -957,11 +957,11 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
me->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
me->GetTransport()->EnableMovement(true);
_events.SetPhase(PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_H_1, 5000, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_H_2, 16000, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_SUMMON_SKYBREAKER, 24600, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_H_3, 29600, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_H_4, 39200, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_H_1, 5s, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_H_2, 16s, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_SUMMON_SKYBREAKER, 24600ms, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_H_3, 29600ms, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_H_4, 39200ms, 0, PHASE_INTRO);
return false;
}
@@ -1087,7 +1087,7 @@ class npc_high_overlord_saurfang_igb : public CreatureScript
EventMap _events;
PassengerController _controller;
InstanceScript* _instance;
- time_t _firstMageCooldown;
+ std::chrono::steady_clock::time_point _firstMageCooldown;
time_t _axethrowersYellCooldown;
time_t _rocketeersYellCooldown;
};
@@ -1112,7 +1112,7 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
_controller.SetTransport(creature->GetTransport());
me->SetRegenerateHealth(false);
me->m_CombatDistance = 70.0f;
- _firstMageCooldown = GameTime::GetGameTime() + 60;
+ _firstMageCooldown = GameTime::GetGameTimeSteadyPoint() + 60s;
_riflemanYellCooldown = time_t(0);
_mortarYellCooldown = time_t(0);
}
@@ -1122,7 +1122,7 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
ScriptedAI::InitializeAI();
_events.Reset();
- _firstMageCooldown = GameTime::GetGameTime() + 60;
+ _firstMageCooldown = GameTime::GetGameTimeSteadyPoint() + 60s;
_riflemanYellCooldown = time_t(0);
_mortarYellCooldown = time_t(0);
}
@@ -1155,9 +1155,9 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
muradin->AI()->DoAction(ACTION_SPAWN_ALL_ADDS);
Talk(SAY_MURADIN_INTRO_6);
- _events.ScheduleEvent(EVENT_INTRO_A_6, 5000);
- _events.ScheduleEvent(EVENT_INTRO_A_7, 11000);
- _events.ScheduleEvent(EVENT_KEEP_PLAYER_IN_COMBAT, 1);
+ _events.ScheduleEvent(EVENT_INTRO_A_6, 5s);
+ _events.ScheduleEvent(EVENT_INTRO_A_7, 11s);
+ _events.ScheduleEvent(EVENT_KEEP_PLAYER_IN_COMBAT, 1ms);
_instance->SetBossState(DATA_ICECROWN_GUNSHIP_BATTLE, IN_PROGRESS);
// Combat starts now
@@ -1174,11 +1174,11 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
}
else if (action == ACTION_SPAWN_MAGE)
{
- time_t now = GameTime::GetGameTime();
+ std::chrono::steady_clock::time_point now = GameTime::GetGameTimeSteadyPoint();
if (_firstMageCooldown > now)
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, (_firstMageCooldown - now) * IN_MILLISECONDS);
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, std::chrono::duration_cast<Milliseconds>(_firstMageCooldown - now));
else
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, 1);
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, 1ms);
}
else if (action == ACTION_SPAWN_ALL_ADDS)
{
@@ -1212,7 +1212,7 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
{
_controller.ClearSlot(PassengerSlots(data));
if (data == SLOT_FREEZE_MAGE)
- _events.ScheduleEvent(EVENT_SUMMON_MAGE, urand(30000, 33500));
+ _events.ScheduleEvent(EVENT_SUMMON_MAGE, 30s, 33500ms);
}
}
@@ -1221,12 +1221,12 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
me->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
me->GetTransport()->EnableMovement(true);
_events.SetPhase(PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_A_1, 5000);
- _events.ScheduleEvent(EVENT_INTRO_A_2, 10000, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_A_1, 5s);
+ _events.ScheduleEvent(EVENT_INTRO_A_2, 10s, 0, PHASE_INTRO);
_events.ScheduleEvent(EVENT_INTRO_SUMMON_ORGRIMS_HAMMER, 28s, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_A_3, 33000, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_A_4, 39000, 0, PHASE_INTRO);
- _events.ScheduleEvent(EVENT_INTRO_A_5, 45000, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_A_3, 33s, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_A_4, 39s, 0, PHASE_INTRO);
+ _events.ScheduleEvent(EVENT_INTRO_A_5, 45s, 0, PHASE_INTRO);
return false;
}
@@ -1355,7 +1355,7 @@ class npc_muradin_bronzebeard_igb : public CreatureScript
EventMap _events;
PassengerController _controller;
InstanceScript* _instance;
- time_t _firstMageCooldown;
+ std::chrono::steady_clock::time_point _firstMageCooldown;
time_t _riflemanYellCooldown;
time_t _mortarYellCooldown;
};
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
index fa6c9067f4d..0c423696e98 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
@@ -251,7 +251,7 @@ class boss_sindragosa : public CreatureScript
events.ScheduleEvent(EVENT_TAIL_SMASH, 20s, EVENT_GROUP_LAND_PHASE);
events.ScheduleEvent(EVENT_FROST_BREATH, 8s, 12s, EVENT_GROUP_LAND_PHASE);
events.ScheduleEvent(EVENT_UNCHAINED_MAGIC, 9s, 14s, EVENT_GROUP_LAND_PHASE);
- events.ScheduleEvent(EVENT_ICY_GRIP, 33500, EVENT_GROUP_LAND_PHASE);
+ events.ScheduleEvent(EVENT_ICY_GRIP, 33500ms, EVENT_GROUP_LAND_PHASE);
events.ScheduleEvent(EVENT_AIR_PHASE, 50s);
Initialize();
@@ -374,7 +374,7 @@ class boss_sindragosa : public CreatureScript
DoZoneInCombat();
break;
case POINT_TAKEOFF:
- events.ScheduleEvent(EVENT_AIR_MOVEMENT, 1);
+ events.ScheduleEvent(EVENT_AIR_MOVEMENT, 1ms);
break;
case POINT_AIR_PHASE:
{
@@ -382,7 +382,7 @@ class boss_sindragosa : public CreatureScript
args.AddSpellMod(SPELLVALUE_MAX_TARGETS, RAID_MODE<int32>(2, 5, 2, 6));
me->CastSpell(nullptr, SPELL_ICE_TOMB_TARGET, args);
me->SetFacingTo(float(M_PI), true);
- events.ScheduleEvent(EVENT_AIR_MOVEMENT_FAR, 1);
+ events.ScheduleEvent(EVENT_AIR_MOVEMENT_FAR, 1ms);
events.ScheduleEvent(EVENT_FROST_BOMB, 9s);
break;
}
@@ -391,7 +391,7 @@ class boss_sindragosa : public CreatureScript
events.ScheduleEvent(EVENT_LAND, 30s);
break;
case POINT_LAND:
- events.ScheduleEvent(EVENT_LAND_GROUND, 1);
+ events.ScheduleEvent(EVENT_LAND_GROUND, 1ms);
break;
case POINT_LAND_GROUND:
{
@@ -512,7 +512,7 @@ class boss_sindragosa : public CreatureScript
pos.m_positionZ += 17.0f;
me->GetMotionMaster()->MoveTakeoff(POINT_TAKEOFF, pos);
events.CancelEventGroup(EVENT_GROUP_LAND_PHASE);
- events.ScheduleEvent(EVENT_AIR_PHASE, 110000);
+ events.ScheduleEvent(EVENT_AIR_PHASE, 110s);
break;
}
case EVENT_AIR_MOVEMENT:
@@ -925,9 +925,9 @@ class npc_rimefang : public CreatureScript
me->AttackStop();
me->SetCanFly(true);
me->GetMotionMaster()->MovePoint(POINT_FROSTWYRM_FLY_IN, RimefangFlyPos);
- float moveTime = me->GetExactDist(&RimefangFlyPos)/(me->GetSpeed(MOVE_FLIGHT)*0.001f);
- _events.ScheduleEvent(EVENT_ICY_BLAST, uint64(moveTime) + urand(60000, 70000));
- _events.ScheduleEvent(EVENT_ICY_BLAST_CAST, uint64(moveTime) + 250);
+ Milliseconds moveTime = Milliseconds(uint64(me->GetExactDist(&RimefangFlyPos)/(me->GetSpeed(MOVE_FLIGHT)*0.001f)));
+ _events.ScheduleEvent(EVENT_ICY_BLAST, moveTime + 60s, moveTime + 70s);
+ _events.ScheduleEvent(EVENT_ICY_BLAST_CAST, moveTime + 250ms);
break;
}
case EVENT_ICY_BLAST_CAST: