diff --git a/src/servers/sapphire_zone/Network/Handlers/PacketHandlers.cpp b/src/servers/sapphire_zone/Network/Handlers/PacketHandlers.cpp index 31495441..bd08e64a 100644 --- a/src/servers/sapphire_zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/sapphire_zone/Network/Handlers/PacketHandlers.cpp @@ -516,7 +516,7 @@ void Core::Network::GameConnection::chatHandler( const Packets::GamePacket& inPa } case ChatType::Shout: { - player.getCurrentZone()->queueOutPacketForRange( player, 6000, chatPacket ); + player.getCurrentZone()->queueOutPacket( chatPacket ); break; } default: diff --git a/src/servers/sapphire_zone/Zone/Zone.cpp b/src/servers/sapphire_zone/Zone/Zone.cpp index 1b8cb402..9bda0d64 100644 --- a/src/servers/sapphire_zone/Zone/Zone.cpp +++ b/src/servers/sapphire_zone/Zone/Zone.cpp @@ -362,6 +362,19 @@ void Zone::queueOutPacketForRange( Entity::Player& sourcePlayer, uint32_t range, } } +void Zone::queueOutPacket( Network::Packets::GamePacketPtr pPacketEntry ) +{ + for( auto it = m_playerMap.begin(); it != m_playerMap.end(); ++it ) + { + auto pSession = g_serverZone.getSession( ( *it ).second->getId() ); + if( pSession ) + { + pPacketEntry->setValAt< uint32_t >( 0x08, ( *it ).second->getId() ); + pSession->getZoneConnection()->queueOutPacket( pPacketEntry ); + } + } +} + uint32_t Zone::getTerritoryId() { return m_territoryId; diff --git a/src/servers/sapphire_zone/Zone/Zone.h b/src/servers/sapphire_zone/Zone/Zone.h index c2caa2e3..2837b6ca 100644 --- a/src/servers/sapphire_zone/Zone/Zone.h +++ b/src/servers/sapphire_zone/Zone/Zone.h @@ -86,6 +86,8 @@ public: void queueOutPacketForRange( Entity::Player& sourcePlayer, uint32_t range, Network::Packets::GamePacketPtr pPacketEntry ); + void queueOutPacket( Network::Packets::GamePacketPtr pPacketEntry ); + virtual uint32_t getTerritoryId(); Common::RegionType getType() const;