Show
Ignore:
Timestamp:
11/19/08 13:39:41 (17 years ago)
Author:
yumileroy
Message:

[svn] Spell target selection improvement. Remove most mangos hacks in spell target selection. (work almost done)
Merge mangos svn rev 6744.

Original author: megamage
Date: 2008-10-31 11:04:32-05:00

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/game/SocialMgr.cpp

    r102 r139  
    4242} 
    4343 
     44uint32 PlayerSocial::GetNumberOfSocialsWithFlag(SocialFlag flag) 
     45{ 
     46    uint32 counter = 0; 
     47    for(PlayerSocialMap::iterator itr = m_playerSocialMap.begin(); itr != m_playerSocialMap.end(); ++itr) 
     48    { 
     49        if(itr->second.Flags & flag) 
     50            counter++; 
     51    } 
     52    return counter; 
     53} 
     54 
    4455bool PlayerSocial::AddToSocialList(uint32 friend_guid, bool ignore) 
    4556{ 
    46     // client limit 
    47     if(m_playerSocialMap.size() >= 50) 
    48         return false; 
     57    // check client limits 
     58    if(ignore) 
     59    { 
     60        if(GetNumberOfSocialsWithFlag(SOCIAL_FLAG_IGNORED) >= SOCIALMGR_IGNORE_LIMIT) 
     61            return false; 
     62    } 
     63    else 
     64    { 
     65        if(GetNumberOfSocialsWithFlag(SOCIAL_FLAG_FRIEND) >= SOCIALMGR_FRIEND_LIMIT) 
     66            return false; 
     67    } 
    4968 
    5069    uint32 flag = SOCIAL_FLAG_FRIEND;