This will show the players own data while alive, or spectated player info when dead. You will need to add PLAYERNAME to your language file. You also need to include fakemeta if you do not use it already.
PHP Code:
public Info()
{
new iPlayers[ 32 ] , iNum , len , id , iPlayerToShow , szName[ 33 ];
static buffer[ 192 ];
//Get all players who are connected and are not bots or HLTV
get_players( iPlayers , iNum , "ch" );
//Loop through these players
for( new i = 0 ; i < iNum ; i++ )
{
id = iPlayers[ i ];
//If self is alive then use self player id. If not alive, use spectated player id (pev_iuser2)
iPlayerToShow = is_user_alive( id ) ? id : pev( id , pev_iuser2 );
//If iPlayerToShow is self OR iPlayerToShow is not self and iPlayerToShow is alive
if ( ( id == iPlayerToShow ) || is_user_alive( iPlayerToShow ) )
{
//iPlayerToShow is not self, so get players name to we know who is being spectated.
//If iPlayerToShow is self then name is not retrieved.
if ( iPlayerToShow != id )
{
get_user_name( iPlayerToShow , szName , charsmax( szName ) );
len = formatex( buffer , charsmax( buffer ) , "%L %s^n" , LANG_PLAYER , "PLAYERNAME" , szName );
}
len += formatex( buffer[ len ], charsmax( buffer ), "%L" , LANG_PLAYER ,"RANK" );
if ( PlayerLevel[ iPlayerToShow ] <= 18 )
{
needXP[ id ] = LEVELS[ PlayerLevel[ iPlayerToShow ] ] - PlayerXP[ iPlayerToShow ];
len += formatex( buffer[ len ] , charsmax( buffer ) - len , " %L" , LANG_PLAYER , RANKS[ PlayerLevel[ iPlayerToShow ] ] );
len += formatex( buffer[ len ] , charsmax( buffer ) - len , "^n%L %d" , LANG_PLAYER , "PL_XP" , PlayerXP[ iPlayerToShow ] );
len += formatex( buffer[ len ] , charsmax( buffer ) - len , "^n%L %d" , LANG_PLAYER , "NEXT_LVL" , needXP[ iPlayerToShow ] );
len += formatex( buffer[ len ] , charsmax( buffer ) - len , "^n%L" , LANG_PLAYER , "FRAGS" );
}
else
{
len += formatex( buffer[ len ] , charsmax( buffer ) - len , " %L" , LANG_PLAYER , RANKS[ PlayerLevel[ iPlayerToShow ] ] );
len += formatex( buffer[ len ] , charsmax( buffer ) - len , "^n%L" , LANG_PLAYER , "PL_MAX" );
}
set_hudmessage( 255 , 255 , 255 , 0.01 , 0.13 , 0 , 0.0 , 1.0 , _, _, -1 );
ShowSyncHudMsg( id , g_MsgHud , buffer );
}
}
}