07/10/2023 21:27
(Esta mensagem foi modificada pela última vez a: 07/10/2023 21:33 por L10motos.)
(07/10/2023 20:58)xbruno1000x Escreveu: Partindo do pressuposto que as condições do seu código estão certas:
Código:new MEGAString[3000];
forward SearchingKiller(playerid);
public SearchingKiller(playerid)
{
new searchhit = 0, f = gTeam[playerid], string[256];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && searchhit == 0)
{
if(PlayerInfo[i][pHeadValue] > 0)
{
new ContinueKiller = 1;
//if(PlayerInfo[i][pAdmin] > 0 && adminstatus[i] == 0) ContinueKiller = 0;
//if(MissingPlayer[i] != 0) ContinueKiller = 0;
//for(new z = 0; z < MAX_PLAYERS; ++z) { if(IsPlayerConnected(z)) { if(gTeam[z] == f) { if(GoChase[z] == i) ContinueKiller = 0; } } }
if(ContinueKiller)
{
if(f != gTeam[i] && TeamKiller(f))
{
searchhit = 1; hitfound[f] = 1; hitnumber[f] = i;
format(string, sizeof(string), "%s(%d) - $%d", Name(i), i, PlayerInfo[i][pHeadValue]); //Aqui tah mostrando apenas 1 contrato online, se tem 5 contranto online
strcat(MEGAString, string);
}
}
}
}
}
ShowPlayerDialog(playerid, DIALOG_MULTI_USO, DIALOG_STYLE_LIST, "Contratos online", MEGAString, "Fechar", "");
if(searchhit == 0) SendClientMessage(playerid, COLOR_GREY, "Não foi possível encontrar nenhum contrato na agência.");
return 0;
}
Acredito que o erro estivesse no fato de você mostrar a dialog antes de concatenar todos os players com recompensa na cabeça disponível.
Desculpe, mais eu queria que tivesse funcionando para eu reputar você, não está funcionando, abaixo deixei a imagem de como está o dialogo.
https://ibb.co/yNj3668
O que pode ser?
@edit
Peguei desse codigo abaixo e adptei...
Código:
RPF::ProcurandoHit(playerid)
{
new searchhit = 0;
foreach(new i: Player)
{
if(IsPlayerConnected(i))
{
if(searchhit == 0)
{
if(PlayerInfo[i][pHeadValue] > 0 && GotHit[i] == 0 && PlayerInfo[i][pMembro] != 8)
{
searchhit = 1;
hitfound = 1;
hitmanid = i;
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMembro] == 8 || PlayerInfo[playerid][pLider] == 8)
{
SendClientMessage(playerid, COR_VERDE, "Contratos Online:");
format(gstring, sizeof(gstring), "[%s] %s[%d] - R$[%d]", NomeORG(i), PlayerName(i), i, PlayerInfo[i][pHeadValue]);
//SendClientMessage(playerid, GetPlayerColor(i), gstring);
ShowPlayerDialog(playerid, 999, DIALOG_STYLE_LIST, "Contratos Online:", gstring, "SAIR", "");
}
}
}
}
}
}
if(searchhit == 0)
{
SendClientMessage(playerid, COR_VERDE, "Contratos Online:");
}
return 0;
}