diff options
author | Peter Keresztes Schmidt <carbenium@outlook.com> | 2020-07-14 21:06:40 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-01-23 16:02:25 +0100 |
commit | ce8c0da4fef7557ac5721e685f6e9565ba855000 (patch) | |
tree | e4954726536b1042d17f1e15e158c87d4c13cf1c /src | |
parent | 0195ec8945af75d9f0fd79b309818de7d39d90f8 (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.cpp | 60 | ||||
-rw-r--r-- | src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp | 16 |
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: |