It's because all the names you retrieve are from the same id:
Code:
get_user_name(id, name[0], 31)
get_user_name(id, name[1], 31)
get_user_name(id, name[2], 31)
get_user_name(id, name[3], 31)
get_user_name(id, name[4], 31)
get_user_name(id, name[5], 31)
get_user_name(id, name[6], 31)
get_user_name(id, name[7], 31)
I'm not sure what "acg" is (please share), but here's my attempt at what you want:
Code:
#include <amxmodx>
#include <cstrike>
#include <acg>
#define g_MaxPlayers 32
public plugin_init() {
register_plugin("Test Plugin 8", "", "");
register_clcmd("say /sb", "score")
}
public score(id) {
new iPlayers[32], iPlayersnum, text[64], name[32];
get_players(iPlayers, iPlayersnum, "c");
SortCustom1D(iPlayers, iPlayersnum, "SortFunc");
for ( new i = 0 ; i < iPlayersnum ; i++ ) {
get_user_name(iPlayers[i], name, 31);
formatex(text, 63, "%s %i %i", name, get_user_frags(iPlayers[i]), get_user_deaths(iPlayers[i]));
acg_drawtext(id, 0.1, 0.1, text, 255, 255, 255, 255, 0.0, 0.0, 0.0, 1, TS_NONE, 0, 0, 1);
}
}
public SortFunc(elem1, elem2) {
if ( get_user_frags(elem1) > get_user_frags(elem2) )
return -1;
else if ( get_user_frags(elem1) < get_user_frags(elem2) )
return 1;
else if ( get_user_deaths(elem1) < get_user_deaths(elem2) )
return -1;
else if ( get_user_deaths(elem1) > get_user_deaths(elem2) )
return 1;
return 0;
}
__________________