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

[svn] * Added some player info cache to the core. Thanx to Rognar for patch, visaglis for testing and bugging me to add it.

Original author: KingPin?
Date: 2008-10-21 12:43:24-05:00

Files:
1 modified

Legend:

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

    r44 r88  
    364364    else 
    365365    { 
     366                PCachePlayerInfo pInfo = objmgr.GetPlayerInfoFromCache(GUID_LOPART(guid)); 
     367        if(pInfo) 
     368        { 
     369            plName = pInfo->sPlayerName; 
     370            plClass = pInfo->unClass; 
     371            if(plClass<CLASS_WARRIOR||plClass>=MAX_CLASSES)     // can be at broken `class` field 
     372            { 
     373                sLog.outError("Player (GUID: %u) has a broken data in field `characters`.`class`.",GUID_LOPART(guid)); 
     374                return false; 
     375            } 
     376            plLevel = pInfo->unLevel; 
     377            plZone = Player::GetZoneIdFromDB(guid); 
     378        } 
     379        else 
     380        { 
    366381        if(!objmgr.GetPlayerNameByGUID(guid, plName))       // player doesn't exist 
    367382            return false; 
     
    387402        delete result; 
    388403    } 
     404        } 
    389405 
    390406    memslot->name = plName;