diff options
author | Carbenium <carbenium@outlook.com> | 2020-07-25 20:09:03 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-01-23 23:09:27 +0100 |
commit | 5f296fb7c78b6173a18c0811630dfb62f7a61e32 (patch) | |
tree | d6ad67aa3d0691eca9f61f048085796661086b2b | |
parent | 7c43afa471703dcfb638e44f6609821a715348e3 (diff) |
Core/InstanceScript: std::chrono-ify DoRespawnGameObject
(cherry picked from commit d7ff8c272ad016296e1eed5aae325e4e5058ddd8)
8 files changed, 10 insertions, 9 deletions
diff --git a/src/server/game/Instances/InstanceScript.cpp b/src/server/game/Instances/InstanceScript.cpp index acabe87cfb6..39f705dbd24 100644 --- a/src/server/game/Instances/InstanceScript.cpp +++ b/src/server/game/Instances/InstanceScript.cpp @@ -556,7 +556,7 @@ void InstanceScript::DoCloseDoorOrButton(ObjectGuid guid) TC_LOG_DEBUG("scripts", "InstanceScript: DoCloseDoorOrButton failed"); } -void InstanceScript::DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn /*= MINUTE*/) +void InstanceScript::DoRespawnGameObject(ObjectGuid guid, Seconds timeToDespawn /*= 1min */) { if (GameObject* go = instance->GetGameObject(guid)) { @@ -576,7 +576,7 @@ void InstanceScript::DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn / if (go->isSpawned()) return; - go->SetRespawnTime(timeToDespawn); + go->SetRespawnTime(timeToDespawn.count()); } else TC_LOG_DEBUG("scripts", "InstanceScript: DoRespawnGameObject failed"); diff --git a/src/server/game/Instances/InstanceScript.h b/src/server/game/Instances/InstanceScript.h index 129894847f2..b4a4de064cf 100644 --- a/src/server/game/Instances/InstanceScript.h +++ b/src/server/game/Instances/InstanceScript.h @@ -20,6 +20,7 @@ #include "ZoneScript.h" #include "Common.h" +#include "Duration.h" #include <iosfwd> #include <map> #include <memory> @@ -213,7 +214,7 @@ class TC_GAME_API InstanceScript : public ZoneScript void DoCloseDoorOrButton(ObjectGuid guid); // Respawns a GO having negative spawntimesecs in gameobject-table - void DoRespawnGameObject(ObjectGuid guid, uint32 timeToDespawn = MINUTE); + void DoRespawnGameObject(ObjectGuid guid, Seconds timeToDespawn = 1min); // Sends world state update to all players in instance void DoUpdateWorldState(uint32 worldstateId, uint32 worldstateValue); diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp index 245e0e6a527..3a4a192d4df 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp @@ -81,7 +81,7 @@ class boss_gloomrel : public CreatureScript case GOSSIP_ACTION_INFO_DEF + 22: CloseGossipMenuFor(player); //are 5 minutes expected? go template may have data to despawn when used at quest - instance->DoRespawnGameObject(instance->GetGuidData(DATA_GO_CHALICE), MINUTE * 5); + instance->DoRespawnGameObject(instance->GetGuidData(DATA_GO_CHALICE), 5min); break; } return true; diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/instance_blackrock_depths.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/instance_blackrock_depths.cpp index 2057c55a29b..8230603030a 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/instance_blackrock_depths.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/instance_blackrock_depths.cpp @@ -393,7 +393,7 @@ public: void TombOfSevenEnd() { - DoRespawnGameObject(GoChestGUID, DAY); + DoRespawnGameObject(GoChestGUID, 24h); HandleGameObject(GoTombExitGUID, true);//event done, open exit door HandleGameObject(GoTombEnterGUID, true);//event done, open entrance door TombEventStarterGUID.Clear(); diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp index c82abaa4035..c5492c7ef91 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp @@ -133,7 +133,7 @@ class instance_molten_core : public InstanceMapScript SummonMajordomoExecutus(); if (bossId == BOSS_MAJORDOMO_EXECUTUS && state == DONE) - DoRespawnGameObject(_cacheOfTheFirelordGUID, 7 * DAY); + DoRespawnGameObject(_cacheOfTheFirelordGUID, 7_days); return true; } diff --git a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp index ea5e73ab3ea..2753e009218 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp @@ -168,7 +168,7 @@ public: break; case DATA_CHESS: if (state == DONE) - DoRespawnGameObject(DustCoveredChest, DAY); + DoRespawnGameObject(DustCoveredChest, 24h); break; default: break; diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp index ecef187428c..ea5c9053228 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp @@ -217,7 +217,7 @@ public: for (GuidList::const_iterator itr = m_uiAncientGemGUID.begin(); itr != m_uiAncientGemGUID.end(); ++itr) { //don't know how long it expected - DoRespawnGameObject(*itr, DAY); + DoRespawnGameObject(*itr, 24h); } } } diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp index ca70d60f7e4..ed66d738423 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp @@ -208,7 +208,7 @@ class instance_trial_of_the_crusader : public InstanceMapScript DoUpdateCriteria(CriteriaType::BeSpellTarget, SPELL_DEFEAT_FACTION_CHAMPIONS); if (ResilienceWillFixItTimer > 0) DoUpdateCriteria(CriteriaType::BeSpellTarget, SPELL_CHAMPIONS_KILLED_IN_MINUTE); - DoRespawnGameObject(GetGuidData(DATA_CRUSADERS_CHEST), 7 * DAY); + DoRespawnGameObject(GetGuidData(DATA_CRUSADERS_CHEST), 7_days); if (GameObject* cache = GetGameObject(DATA_CRUSADERS_CHEST)) cache->RemoveFlag(GO_FLAG_NOT_SELECTABLE); if (Creature* fordring = GetCreature(DATA_FORDRING)) |