aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Server/Packets/SpellPackets.cpp10
-rw-r--r--src/server/game/Server/Packets/SpellPackets.h12
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp2
3 files changed, 23 insertions, 1 deletions
diff --git a/src/server/game/Server/Packets/SpellPackets.cpp b/src/server/game/Server/Packets/SpellPackets.cpp
index 75ce810982d..324efd9fca3 100644
--- a/src/server/game/Server/Packets/SpellPackets.cpp
+++ b/src/server/game/Server/Packets/SpellPackets.cpp
@@ -929,6 +929,16 @@ WorldPacket const* ResyncRunes::Write()
return &_worldPacket;
}
+WorldPacket const* ConvertRune::Write()
+{
+ _worldPacket << Runes;
+
+ _worldPacket << uint32(Index);
+ _worldPacket << uint32(Rune);
+
+ return nullptr;
+}
+
WorldPacket const* AddRunePower::Write()
{
_worldPacket << uint32(AddedRunesMask);
diff --git a/src/server/game/Server/Packets/SpellPackets.h b/src/server/game/Server/Packets/SpellPackets.h
index 357487f92e4..46b9943593d 100644
--- a/src/server/game/Server/Packets/SpellPackets.h
+++ b/src/server/game/Server/Packets/SpellPackets.h
@@ -921,6 +921,18 @@ namespace WorldPackets
RuneData Runes;
};
+ class ConvertRune final : public ServerPacket
+ {
+ public:
+ ConvertRune(size_t size) : ServerPacket(SMSG_CONVERT_RUNE, 1 + 1 + 4 + size + 4 + 4) { }
+
+ WorldPacket const* Write() override;
+
+ RuneData Runes;
+ uint32 Index = 0;
+ uint32 Rune = 0;
+ };
+
class AddRunePower final : public ServerPacket
{
public:
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index 3ab5fc0d14f..11825cec0f4 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -1237,7 +1237,7 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CONTRIBUTION_LAST_UPDATE_RESPONSE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CONTROL_UPDATE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CONVERT_ITEMS_TO_CURRENCY_VALUE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
- DEFINE_SERVER_OPCODE_HANDLER(SMSG_CONVERT_RUNE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_CONVERT_RUNE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_COOLDOWN_CHEAT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_COOLDOWN_EVENT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CORPSE_LOCATION, STATUS_NEVER, CONNECTION_TYPE_REALM);