aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Server/Packets/MiscPackets.cpp8
-rw-r--r--src/server/game/Server/Packets/MiscPackets.h10
-rw-r--r--src/server/game/Server/WorldSession.cpp8
3 files changed, 22 insertions, 4 deletions
diff --git a/src/server/game/Server/Packets/MiscPackets.cpp b/src/server/game/Server/Packets/MiscPackets.cpp
index 601aad71807..d223b73e310 100644
--- a/src/server/game/Server/Packets/MiscPackets.cpp
+++ b/src/server/game/Server/Packets/MiscPackets.cpp
@@ -41,3 +41,11 @@ WorldPacket const* WorldPackets::Misc::UITime::Write()
return &_worldPacket;
}
+
+WorldPacket const* WorldPackets::Misc::TutorialFlags::Write()
+{
+ for (uint8 i = 0; i < MAX_ACCOUNT_TUTORIAL_VALUES; ++i)
+ _worldPacket << TutorialData[i];
+
+ return &_worldPacket;
+}
diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h
index 0681b7d26c6..520b9acafc1 100644
--- a/src/server/game/Server/Packets/MiscPackets.h
+++ b/src/server/game/Server/Packets/MiscPackets.h
@@ -64,6 +64,16 @@ namespace WorldPackets
uint32 Time = 0;
};
+
+ class TutorialFlags : public ServerPacket
+ {
+ public:
+ TutorialFlags() : ServerPacket(SMSG_WORLD_STATE_UI_TIMER_UPDATE, 32) { }
+
+ WorldPacket const* Write() override;
+
+ uint32 TutorialData[8];
+ };
}
}
diff --git a/src/server/game/Server/WorldSession.cpp b/src/server/game/Server/WorldSession.cpp
index 4dcd2430642..18fe28344b0 100644
--- a/src/server/game/Server/WorldSession.cpp
+++ b/src/server/game/Server/WorldSession.cpp
@@ -50,6 +50,7 @@
#include "BattlenetServerManager.h"
#include "CharacterPackets.h"
#include "ClientConfigPackets.h"
+#include "MiscPackets.h"
namespace {
@@ -767,10 +768,9 @@ void WorldSession::LoadTutorialsData()
void WorldSession::SendTutorialsData()
{
- WorldPacket data(SMSG_TUTORIAL_FLAGS, 4 * MAX_ACCOUNT_TUTORIAL_VALUES);
- for (uint8 i = 0; i < MAX_ACCOUNT_TUTORIAL_VALUES; ++i)
- data << m_Tutorials[i];
- SendPacket(&data);
+ WorldPackets::Misc::TutorialFlags packet;
+ memcpy(packet.TutorialData, m_Tutorials, sizeof(packet.TutorialData));
+ SendPacket(packet.Write());
}
void WorldSession::SaveTutorialsData(SQLTransaction &trans)