feat(Core/Time): Implement saparated manager for game time (#8630)

This commit is contained in:
Kargatum
2022-01-24 17:55:00 +07:00
committed by GitHub
parent 12da792a90
commit 8b7df23f06
129 changed files with 1147 additions and 817 deletions

View File

@@ -15,6 +15,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "GameTime.h"
#include "Group.h"
#include "Player.h"
#include "ScriptMgr.h"
@@ -348,7 +349,7 @@ public:
c->DespawnOrUnsummon(10000);
if( Creature* c = instance->GetCreature(NPC_DreadscaleGUID) )
c->DespawnOrUnsummon(10000);
if( AchievementTimer + 10 >= time(nullptr) )
if( AchievementTimer + 10 >= GameTime::GetGameTime().count() )
DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_JORMUNGAR_ACHIEV);
AchievementTimer = 0;
@@ -365,7 +366,7 @@ public:
}
else // first one died, start timer for achievement
{
AchievementTimer = time(nullptr);
AchievementTimer = GameTime::GetGameTime().count();
}
}
else
@@ -447,14 +448,14 @@ public:
HandleGameObject(GO_EnterGateGUID, true);
if( AchievementTimer + 60 >= time(nullptr) )
if( AchievementTimer + 60 >= GameTime::GetGameTime().count() )
DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_RESILIENCE_WILL_FIX_IT_CREDIT);
AchievementTimer = 0;
SaveToDB();
}
else if( Counter == 1 )
AchievementTimer = time(nullptr);
AchievementTimer = GameTime::GetGameTime().count();
}
break;
case TYPE_FACTION_CHAMPIONS_START: