aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Time/GameTime.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Time/GameTime.cpp')
-rw-r--r--src/server/game/Time/GameTime.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/server/game/Time/GameTime.cpp b/src/server/game/Time/GameTime.cpp
index 7742cabef20..733f381f796 100644
--- a/src/server/game/Time/GameTime.cpp
+++ b/src/server/game/Time/GameTime.cpp
@@ -17,6 +17,9 @@
#include "GameTime.h"
#include "Timer.h"
+#include "Timezone.h"
+#include "Util.h"
+#include "WowTime.h"
namespace GameTime
{
@@ -28,6 +31,9 @@ namespace GameTime
SystemTimePoint GameTimeSystemPoint = SystemTimePoint ::min();
TimePoint GameTimeSteadyPoint = TimePoint::min();
+ WowTime UtcWow;
+ WowTime Wow;
+
time_t GetStartTime()
{
return StartTime;
@@ -58,11 +64,23 @@ namespace GameTime
return uint32(GameTime - StartTime);
}
+ WowTime const* GetUtcWowTime()
+ {
+ return &UtcWow;
+ }
+
+ WowTime const* GetWowTime()
+ {
+ return &Wow;
+ }
+
void UpdateGameTimers()
{
GameTime = time(nullptr);
GameMSTime = getMSTime();
GameTimeSystemPoint = std::chrono::system_clock::now();
GameTimeSteadyPoint = std::chrono::steady_clock::now();
+ UtcWow.SetUtcTimeFromUnixTime(GameTime);
+ Wow = UtcWow + Trinity::Timezone::GetSystemZoneOffsetAt(GameTimeSystemPoint);
}
}