09/10/2023 15:44
(Esta mensagem foi modificada pela última vez a: 09/10/2023 15:51 por pushline.)
Claro que vai retornar o último player da lista...
seu "Name(showcontract[playerid])" está sendo sempre substituido no loop do comando, e o último jogador sempre vai ser o último da lista, por causa do "showcontract[playerid] = i;".
Você deveria salvar isso numa outra variável que seja per-player, mas que possa ter vários valores.
Tipo:
é o que eu penso, pelo menos.
seu "Name(showcontract[playerid])" está sendo sempre substituido no loop do comando, e o último jogador sempre vai ser o último da lista, por causa do "showcontract[playerid] = i;".
Você deveria salvar isso numa outra variável que seja per-player, mas que possa ter vários valores.
Tipo:
Código PHP:
new showcontract[MAX_PLAYERS][MAX_PLAYERS];
CMD:teste(playerid)
{
new megastring[2000], string[256], cont;
format(string, sizeof(string), " \tOrganização:\n");
strcat(megastring, string);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pHeadValue] > 0)
{
showcontract[playerid][i] = i;
if(gTeam[i] == 0)
{
format(string, sizeof(string), "%s(%d) - $%d\n", Name(i), i, PlayerInfo[i][pHeadValue]);
}
else
{
format(string, sizeof(string), "%s(%d) - $%d\t(%s)\n", Name(i), i, PlayerInfo[i][pHeadValue], TeamName(gTeam[i]));
}
strcat(megastring, string);
}
}
FORMAT_SSTR "%s", TeamName(gTeam[playerid]);
return ShowPlayerDialog(playerid, DIALOG_ASSASSINOS_4, DIALOG_STYLE_TABLIST_HEADERS, sstring, megastring, "Fechar", "");
}
if(dialogid == DIALOG_ASSASSINOS_4 && response)
{
FORMAT_STR "debug %s.", Name(showcontract[playerid][listitem]);
SCM(playerid, -1, string);
}
é o que eu penso, pelo menos.