diff options
| author | Shauren <shauren.trinity@gmail.com> | 2015-06-15 00:25:18 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2015-06-15 00:25:18 +0200 |
| commit | 66d8ccde7f81675be418dfe49025260d9be24dae (patch) | |
| tree | 06958193a851a3d653d448daa0ce409fff98db14 /src/server/game/Grids | |
| parent | ee01fad0d2af0be7b66cb49d9e23867996792b00 (diff) | |
Core/PacketIO: Fixed chat packet building in CreatureTextMgr
Closes #14871
Diffstat (limited to 'src/server/game/Grids')
| -rw-r--r-- | src/server/game/Grids/Notifiers/GridNotifiers.h | 6 | ||||
| -rw-r--r-- | src/server/game/Grids/Notifiers/GridNotifiersImpl.h | 12 |
2 files changed, 9 insertions, 9 deletions
diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.h b/src/server/game/Grids/Notifiers/GridNotifiers.h index aea2d8ec383..e6a574efe74 100644 --- a/src/server/game/Grids/Notifiers/GridNotifiers.h +++ b/src/server/game/Grids/Notifiers/GridNotifiers.h @@ -33,7 +33,7 @@ #include "CreatureAI.h" #include "Spell.h" #include "WorldSession.h" -#include "Packets/ChatPackets.h" +#include "Packet.h" class Player; //class Map; @@ -1411,7 +1411,7 @@ namespace Trinity private: Builder& i_builder; - std::vector<WorldPacket*> i_data_cache; // 0 = default, i => i-1 locale index + std::vector<WorldPackets::Packet*> i_data_cache; // 0 = default, i => i-1 locale index }; // Prepare using Builder localized packets with caching and send to player @@ -1419,7 +1419,7 @@ namespace Trinity class LocalizedPacketListDo { public: - typedef std::vector<WorldPacket*> WorldPacketList; + typedef std::vector<WorldPackets::Packet*> WorldPacketList; explicit LocalizedPacketListDo(Builder& builder) : i_builder(builder) { } ~LocalizedPacketListDo() diff --git a/src/server/game/Grids/Notifiers/GridNotifiersImpl.h b/src/server/game/Grids/Notifiers/GridNotifiersImpl.h index 30c5e523f21..3e00cb4741a 100644 --- a/src/server/game/Grids/Notifiers/GridNotifiersImpl.h +++ b/src/server/game/Grids/Notifiers/GridNotifiersImpl.h @@ -563,7 +563,7 @@ void Trinity::LocalizedPacketDo<Builder>::operator()(Player* p) { LocaleConstant loc_idx = p->GetSession()->GetSessionDbLocaleIndex(); uint32 cache_idx = loc_idx+1; - WorldPacket* data; + WorldPackets::Packet* data; // create if not cached yet if (i_data_cache.size() < cache_idx + 1 || !i_data_cache[cache_idx]) @@ -571,18 +571,18 @@ void Trinity::LocalizedPacketDo<Builder>::operator()(Player* p) if (i_data_cache.size() < cache_idx + 1) i_data_cache.resize(cache_idx + 1); - data = new WorldPacket(); + data = i_builder(loc_idx); - i_builder(*data, loc_idx); + ASSERT(data->GetSize() == 0); - ASSERT(data->GetOpcode() != NULL_OPCODE); + data->Write(); i_data_cache[cache_idx] = data; } else data = i_data_cache[cache_idx]; - p->SendDirectMessage(data); + p->SendDirectMessage(data->GetRawPacket()); } template<class Builder> @@ -606,7 +606,7 @@ void Trinity::LocalizedPacketListDo<Builder>::operator()(Player* p) data_list = &i_data_cache[cache_idx]; for (size_t i = 0; i < data_list->size(); ++i) - p->SendDirectMessage((*data_list)[i]); + p->SendDirectMessage((*data_list)[i]->GetRawPacket()); } #endif // TRINITY_GRIDNOTIFIERSIMPL_H |
