Your sort logic is bad, I would use SortCustom2D(). Untested and might need some tweaks.
PHP Code:
public displayasdls(id)
{
enum _:RankData
{
RankID,
RankValue
}
const MaxToRank = 5;
new steals[ 1025 ] , len;
new rdData[ MAX_PLAYERS + 1] [ RankData ];
new iPlayers[ 32 ] , iNum , iPlayer , i , szName[ 32 ] , iNumRanked;
get_players( iPlayers , iNum , "ch" );
for ( i = 0 ; i < iNum ; i++ )
{
iPlayer = iPlayers[ i ];
rdData[ i ][ RankID ] = iPlayer;
rdData[ i ][ RankValue ] = MadeRecord[ iPlayer ][ STEAL ];
}
SortCustom2D( _:rdData , iNum , "SortCompare" );
iNumRanked = min( iNum , MaxToRank );
len = copy(steals, charsmax( steals ) , "TOP STEAL^n^n")
for ( i = 0 ; i < iNumRanked ; i++ )
{
get_user_name( rdData[ i ][ RankID ] , szName , charsmax( szName ) );
len += formatex( steals[ len ] , charsmax( steals )-len, "%s - %i^n" , szName , rdData[ i ][ RankValue ] )
}
set_dhudmessage(0, 255, 0, 0.38, 0.0, 0, 0.2, 3.0, 0.2, 0.1)
show_dhudmessage(id, steals)
}
public SortCompare( elem1[] , elem2[] )
{
if ( elem1[ 1 ] > elem2[ 1 ] )
return -1;
else if(elem1[ 1 ] < elem2[ 1 ] )
return 1;
else
return 0;
}
__________________