aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server/Packets
diff options
context:
space:
mode:
authorccrs <ccrs@users.noreply.github.com>2019-07-13 18:58:04 +0200
committerccrs <ccrs@users.noreply.github.com>2019-07-13 18:58:04 +0200
commit3785a355117dcae24eb928255a608811efab1b91 (patch)
treec3bd87adf781b70e19a29ff3c3b452ed27ca30f3 /src/server/game/Server/Packets
parent7421ccaf7eb134f549ad3734a815397216d020ed (diff)
Server/Packets: implement SMSG_RESYNC_RUNES packet structure
Diffstat (limited to 'src/server/game/Server/Packets')
-rw-r--r--src/server/game/Server/Packets/SpellPackets.cpp11
-rw-r--r--src/server/game/Server/Packets/SpellPackets.h20
2 files changed, 27 insertions, 4 deletions
diff --git a/src/server/game/Server/Packets/SpellPackets.cpp b/src/server/game/Server/Packets/SpellPackets.cpp
index ccefb2d4622..e117f5e98e5 100644
--- a/src/server/game/Server/Packets/SpellPackets.cpp
+++ b/src/server/game/Server/Packets/SpellPackets.cpp
@@ -158,3 +158,14 @@ WorldPacket const* WorldPackets::Spells::SpellStart::Write()
_worldPacket << Cast;
return &_worldPacket;
}
+
+WorldPacket const* WorldPackets::Spells::ResyncRunes::Write()
+{
+ _worldPacket << Count;
+ for (auto itr = Cooldowns.begin(); itr != Cooldowns.end(); ++itr)
+ {
+ _worldPacket << itr->first;
+ _worldPacket << itr->second;
+ }
+ return &_worldPacket;
+}
diff --git a/src/server/game/Server/Packets/SpellPackets.h b/src/server/game/Server/Packets/SpellPackets.h
index 3fdbde4a610..816b2e1c528 100644
--- a/src/server/game/Server/Packets/SpellPackets.h
+++ b/src/server/game/Server/Packets/SpellPackets.h
@@ -22,6 +22,7 @@
#include "ObjectGuid.h"
#include "Optional.h"
#include "Position.h"
+#include "SharedDefines.h"
namespace WorldPackets
{
@@ -79,10 +80,10 @@ namespace WorldPackets
{
ObjectGuid CasterGUID;
ObjectGuid CasterUnit;
- uint8 CastID = 0;
- uint32 SpellID = 0;
- uint32 CastFlags = 0;
- uint32 CastTime = 0;
+ uint8 CastID = 0;
+ uint32 SpellID = 0;
+ uint32 CastFlags = 0;
+ uint32 CastTime = 0;
mutable Optional<std::vector<ObjectGuid>> HitTargets;
mutable Optional<std::vector<SpellMissStatus>> MissStatus;
SpellTargetData Target;
@@ -112,6 +113,17 @@ namespace WorldPackets
SpellCastData Cast;
};
+
+ class ResyncRunes final : public ServerPacket
+ {
+ public:
+ ResyncRunes() : ServerPacket(SMSG_RESYNC_RUNES, 4 + 2 * MAX_RUNES) { }
+
+ WorldPacket const* Write() override;
+
+ uint32 Count = 0;
+ std::vector<std::pair<uint8, uint8>> Cooldowns;
+ };
}
}