diff options
Diffstat (limited to 'src/server/game/Time/GameTime.cpp')
-rw-r--r-- | src/server/game/Time/GameTime.cpp | 18 |
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); } } |