[7578] Replace generic [7577] implememtaion by more explicit code.

This must restore build at Unix/Linux.
This commit is contained in:
VladimirMangos 2009-03-29 14:00:30 +04:00
parent 24f1cf4b83
commit 8c23d3cd50
3 changed files with 8 additions and 18 deletions

View file

@ -389,22 +389,6 @@ class MANGOS_DLL_SPEC Map : public GridRefManager<NGridType>, public MaNGOS::Obj
void SendToPlayers(WorldPacket const* data) const;
template<class Do>
void BroadcastWorker(Do& _do) const
{
for(MapRefManager::const_iterator itr = m_mapRefManager.begin(); itr != m_mapRefManager.end(); ++itr)
_do(itr->getSource());
}
template<class Do>
void BroadcastWorker(Do& _do, uint32 zoneid) const
{
for(MapRefManager::const_iterator itr = m_mapRefManager.begin(); itr != m_mapRefManager.end(); ++itr)
if(itr->getSource()->GetZoneId()==zoneid)
_do(itr->getSource());
}
typedef MapRefManager PlayerList;
PlayerList const& GetPlayers() const { return m_mapRefManager; }

View file

@ -1313,7 +1313,13 @@ void WorldObject::MonsterYellToZone(int32 textId, uint32 language, uint64 Target
{
MaNGOS::MonsterChatBuilder say_build(*this, CHAT_MSG_MONSTER_YELL, textId,language,TargetGuid);
MaNGOS::LocalizedPacketDo<MaNGOS::MonsterChatBuilder> say_do(say_build);
GetMap()->BroadcastWorker(say_do,GetZoneId());
uint32 zoneid = GetZoneId();
Map::PlayerList const& pList = GetMap()->GetPlayers();
for(Map::PlayerList::const_iterator itr = pList.begin(); itr != pList.end(); ++itr)
if(itr->getSource()->GetZoneId()==zoneid)
say_do(itr->getSource());
}
void WorldObject::MonsterTextEmote(int32 textId, uint64 TargetGuid, bool IsBossEmote)

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "7577"
#define REVISION_NR "7578"
#endif // __REVISION_NR_H__