09/10/2023 20:43
(Esta mensagem foi modificada pela última vez a: 09/10/2023 20:45 por L10motos.)
(09/10/2023 20:35)pushline Escreveu: Um adendo também, seu ShowPlayerDialog tá dentro do loop, retire-o.
Retirei. Abaixo é o código original sem edições mais não funciona no sistema atual que fiz, eu quero que o jogador que é a vitima(GoChase) não apareça no dialog,
Citar:if(GoChase[giveplayerid] < MAX_PLAYERS) return SendClientMessage(playerid, COLOR_GREY, "Você não pode continuar porque o jogador está ocupado.");
Código PHP:
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(searchhit == 0)
{
if(PlayerInfo[i][pHeadValue] > 0)
{
new continuar = 1;
if(PlayerInfo[i][pAdmin] > 0 && adminstatus[i] == 0)
{
continuar = 0;
}
if(JogadorAusente[i] != 0)
{
continuar = 0;
}
for(new z = 0; z < MAX_PLAYERS; ++z) { if(IsPlayerConnected(z)) { if(gTeam[z] == f) { if(GoChase[z] == i) { continuar = 0; } } } }
if(continuar)
{
if(f != gTeam[i] && TeamIsKiller(f))
{
GetPlayerName(i,giveplayer,sizeof(giveplayer)); searchhit = 1; hitfound[f] = 1; hitnumber[f] = i;
///////////////////////////////////////////////////////////////////////////////////////////////
SendRadioMessage(f, COLOR_BLACK, "==================================================");
SendRadioMessage(f, COLOR_GREY, " Mensagem recebida da agência: Há contratos disponíveis");
format(string,sizeof(string), " Vítima: %s(%d) Valor: R$%d",giveplayer,i,PlayerInfo[i][pHeadValue]);
SendRadioMessage(f, COLOR_GREY, string);
SendRadioMessage(f, COLOR_GREY, " Use 'pegarcont [id do Assassino]' para atribuir o contrato.");
SendRadioMessage(f, COLOR_BLACK, "==================================================");
}
}
}
}
}
Código PHP:
if(dialogid == DIALOG_ASSASSINOS_2)
{
if(response)
{
if(strval(inputtext))
{
new giveplayerid = strval(inputtext);
if(IsPlayerConnected(giveplayerid))
{
new f = gTeam[playerid];
if(gTeam[giveplayerid] == f)
{
if(GoChase[giveplayerid] < MAX_PLAYERS) return SendClientMessage(playerid, COLOR_GREY, "Você não pode continuar porque o jogador está ocupado.");
if(TeamKiller(f))
{
new targetid = ContractAssigned[playerid];
if(IsPlayerConnected(targetid))
{
FORMAT_STR "%s atribuiu para %s matar %s ($%d).", Name(playerid), Name(giveplayerid), Name(targetid), PlayerInfo[targetid][pHeadValue]);
SendRadioMessage(f, COLOR_YELLOW, string);
GoChase[giveplayerid] = targetid;
}
}
else SendClientMessage(playerid, COLOR_GREY, "Você não faz parte de nenhuma organização assassina.");
}
else SendClientMessage(playerid, COLOR_GREY, "Você só pode atribuir contrato a membros da organização.");
}
}
}
return 1;
}