aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/MiscHandler.cpp
diff options
context:
space:
mode:
authorJeremy <Golrag@users.noreply.github.com>2024-01-25 14:15:58 +0100
committerGitHub <noreply@github.com>2024-01-25 14:15:58 +0100
commit6ed8b5c9077aba788ff5bc51f2652109bfea6175 (patch)
tree50b7261909a6ea4504a429dbb0060181dd2ea755 /src/server/game/Handlers/MiscHandler.cpp
parent6a0de41fd2b2e7d2d9478b3d61ae0842013523ed (diff)
Core/PacketIO: Handle QueryCountdownTimer (#29539)
* Add it to battleground * Base implementation countdowns in Group * Fix timer sync between groups in battlegrounds
Diffstat (limited to 'src/server/game/Handlers/MiscHandler.cpp')
-rw-r--r--src/server/game/Handlers/MiscHandler.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp
index 48bd713ee0d..2416a635d1d 100644
--- a/src/server/game/Handlers/MiscHandler.cpp
+++ b/src/server/game/Handlers/MiscHandler.cpp
@@ -1181,3 +1181,21 @@ void WorldSession::HandleRequestLatestSplashScreen(WorldPackets::Misc::RequestLa
splashScreenShowLatest.UISplashScreenID = splashScreen ? splashScreen->ID : 0;
SendPacket(splashScreenShowLatest.Write());
}
+
+void WorldSession::HandleQueryCountdownTimer(WorldPackets::Misc::QueryCountdownTimer& queryCountdownTimer)
+{
+ Group const* group = _player->GetGroup();
+ if (!group)
+ return;
+
+ Group::CountdownInfo const* info = group->GetCountdownInfo(queryCountdownTimer.TimerType);
+ if (!info)
+ return;
+
+ WorldPackets::Misc::StartTimer startTimer;
+ startTimer.Type = queryCountdownTimer.TimerType;
+ startTimer.TimeLeft = info->GetTimeLeft();
+ startTimer.TotalTime = info->GetTotalTime();
+
+ _player->SendDirectMessage(startTimer.Write());
+}