mirror of
https://github.com/araxiaonline/TrinityCore2.git
synced 2026-06-21 07:11:59 -04:00
Change container type for guilds to Map.
Use const_iterator in case nothing is modified in loop. author: bladex. --HG-- branch : trunk
This commit is contained in:
+27
-16
@@ -172,8 +172,10 @@ ObjectMgr::~ObjectMgr()
|
||||
// free group and guild objects
|
||||
for (GroupSet::iterator itr = mGroupSet.begin(); itr != mGroupSet.end(); ++itr)
|
||||
delete (*itr);
|
||||
for (GuildSet::iterator itr = mGuildSet.begin(); itr != mGuildSet.end(); ++itr)
|
||||
delete (*itr);
|
||||
|
||||
for (GuildMap::iterator itr = mGuildMap.begin(); itr != mGuildMap.end(); ++itr)
|
||||
delete itr->second;
|
||||
mGuildMap.clear();
|
||||
|
||||
for (CachePlayerInfoMap::iterator itr = m_mPlayerInfoMap.begin(); itr != m_mPlayerInfoMap.end(); ++itr)
|
||||
delete itr->second;
|
||||
@@ -251,40 +253,49 @@ Group * ObjectMgr::GetGroupByLeader(const uint64 &guid) const
|
||||
|
||||
Guild * ObjectMgr::GetGuildById(const uint32 GuildId) const
|
||||
{
|
||||
for(GuildSet::const_iterator itr = mGuildSet.begin(); itr != mGuildSet.end(); ++itr)
|
||||
if ((*itr)->GetId() == GuildId)
|
||||
return *itr;
|
||||
GuildMap::const_iterator itr = mGuildMap.find(GuildId);
|
||||
if (itr != mGuildMap.end())
|
||||
return itr->second;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Guild * ObjectMgr::GetGuildByName(const std::string& guildname) const
|
||||
{
|
||||
for(GuildSet::const_iterator itr = mGuildSet.begin(); itr != mGuildSet.end(); ++itr)
|
||||
if ((*itr)->GetName() == guildname)
|
||||
return *itr;
|
||||
for(GuildMap::const_iterator itr = mGuildMap.begin(); itr != mGuildMap.end(); ++itr)
|
||||
if (itr->second->GetName() == guildname)
|
||||
return itr->second;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
std::string ObjectMgr::GetGuildNameById(const uint32 GuildId) const
|
||||
{
|
||||
for(GuildSet::const_iterator itr = mGuildSet.begin(); itr != mGuildSet.end(); ++itr)
|
||||
if ((*itr)->GetId() == GuildId)
|
||||
return (*itr)->GetName();
|
||||
GuildMap::const_iterator itr = mGuildMap.find(GuildId);
|
||||
if (itr != mGuildMap.end())
|
||||
return itr->second->GetName();
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
Guild* ObjectMgr::GetGuildByLeader(const uint64 &guid) const
|
||||
{
|
||||
for(GuildSet::const_iterator itr = mGuildSet.begin(); itr != mGuildSet.end(); ++itr)
|
||||
if( (*itr)->GetLeader() == guid)
|
||||
return *itr;
|
||||
for(GuildMap::const_iterator itr = mGuildMap.begin(); itr != mGuildMap.end(); ++itr)
|
||||
if (itr->second->GetLeader() == guid)
|
||||
return itr->second;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void ObjectMgr::AddGuild(Guild* guild)
|
||||
{
|
||||
mGuildMap[guild->GetId()] = guild;
|
||||
}
|
||||
|
||||
void ObjectMgr::RemoveGuild(uint32 Id)
|
||||
{
|
||||
mGuildMap.erase(Id);
|
||||
}
|
||||
ArenaTeam* ObjectMgr::GetArenaTeamById(const uint32 arenateamid) const
|
||||
{
|
||||
ArenaTeamMap::const_iterator itr = mArenaTeamMap.find(arenateamid);
|
||||
@@ -317,9 +328,9 @@ void ObjectMgr::AddArenaTeam(ArenaTeam* arenaTeam)
|
||||
mArenaTeamMap[arenaTeam->GetId()] = arenaTeam;
|
||||
}
|
||||
|
||||
void ObjectMgr::RemoveArenaTeam(ArenaTeam* arenaTeam)
|
||||
void ObjectMgr::RemoveArenaTeam(uint32 Id)
|
||||
{
|
||||
mArenaTeamMap.erase( arenaTeam->GetId() );
|
||||
mArenaTeamMap.erase(Id);
|
||||
}
|
||||
|
||||
CreatureInfo const* ObjectMgr::GetCreatureTemplate(uint32 id)
|
||||
|
||||
Reference in New Issue
Block a user