diff options
author | Vincent-Michael <Vincent_Michael@gmx.de> | 2015-04-15 19:34:08 +0200 |
---|---|---|
committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2015-04-15 19:34:44 +0200 |
commit | 909a5ebf14de950bb644c5b88a14182a613dd12c (patch) | |
tree | dce6894834c3e0778e3b4cad83d20896ddacda21 /src | |
parent | f48b86fd8ad734855744e766109a543208fce454 (diff) |
Core/PacketIO: Fix SMSG_QUERY_NPC_TEXT_RESPONSE structure
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Server/Packets/MiscPackets.h | 2 | ||||
-rw-r--r-- | src/server/game/Server/Packets/QueryPackets.cpp | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h index 8745ac588e7..d4c197a7b38 100644 --- a/src/server/game/Server/Packets/MiscPackets.h +++ b/src/server/game/Server/Packets/MiscPackets.h @@ -421,7 +421,7 @@ namespace WorldPackets { public: StandStateUpdate() : ServerPacket(SMSG_STAND_STATE_UPDATE, 4 + 1) { } - StandStateUpdate(UnitStandStateType state) : ServerPacket(SMSG_STAND_STATE_UPDATE, 1), State(state) { } + StandStateUpdate(UnitStandStateType state) : ServerPacket(SMSG_STAND_STATE_UPDATE, 4 + 1), State(state) { } WorldPacket const* Write() override; diff --git a/src/server/game/Server/Packets/QueryPackets.cpp b/src/server/game/Server/Packets/QueryPackets.cpp index 59988cbc92e..9ac9d79a41f 100644 --- a/src/server/game/Server/Packets/QueryPackets.cpp +++ b/src/server/game/Server/Packets/QueryPackets.cpp @@ -227,17 +227,18 @@ WorldPacket const* WorldPackets::Query::QueryNPCTextResponse::Write() _worldPacket << TextID; _worldPacket.WriteBit(Allow); + _worldPacket.FlushBits(); + + _worldPacket << int32(Allow ? (MAX_NPC_TEXT_OPTIONS * (sizeof(float) + sizeof(uint32))) : 0); + if (Allow) { - _worldPacket << int32(MAX_NPC_TEXT_OPTIONS * (4 + 4)); for (uint32 i = 0; i < MAX_NPC_TEXT_OPTIONS; ++i) _worldPacket << Probabilities[i]; for (uint32 i = 0; i < MAX_NPC_TEXT_OPTIONS; ++i) _worldPacket << BroadcastTextID[i]; } - _worldPacket.FlushBits(); - return &_worldPacket; } |