new vString[128];
foreach(Player, i)
{
if(ProxDetectorS(5.0, playerid, i))
{
MEGAString[0] = EOS;
format(vString, sizeof(vString), "%s (ID: %d)", PlayerName(i), i);
strcat(MEGAString, vString);
}
return 1;
}
if(playerProx == 0) return SendClientMessage(playerid, COLOR_GRAD1, " Ninguйm estб prуximo de vocк.");
ShowPlayerDialog(playerid, DIALOG_SELLITEM, DIALOG_STYLE_LIST, "Vender item", MEGAString, "Selecionar", "Voltar");
// This is a comment
// uncomment the line below if you want to write a filterscript
#define FILTERSCRIPT
#include <a_samp>
#include <foreach>
#include <zcmd>
#define MAX_SLOT (5) // atй cinco jogadores armazenados
#define DIALOG_SELLITEM (1)
new vString[128], MEGAString[512];
new PegarID[MAX_PLAYERS][MAX_SLOT],
PegarLista[MAX_PLAYERS][MAX_SLOT]
;
stock PlayerName(playerid)
{
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
return pName;
}
stock ResetPlayerVars(playerid)
{
for(new slot; slot < MAX_SLOT; slot++)
{
PegarID[playerid][slot] = -1;
PegarLista[playerid][slot] = -1;
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_SELLITEM)
{
if(response)
{
if(listitem == PegarLista[playerid][listitem])
{
new i = PegarID[playerid][listitem];
format(vString, 128, "Vocк clicou em: %s[%d]", PlayerName(i), i);
SendClientMessage(playerid,-1, vString);
return 1;
}
}
// reset caso click em cancelar
ResetPlayerVars(playerid);
}
return 1;
}
CMD:teste(playerid, params[])
{
new Float:x, Float:y, Float:z, playerProx;
GetPlayerPos(playerid, x, y, z);
ResetPlayerVars(playerid)
foreach(Player, i)
{
if(IsPlayerInRangeOfPoint(i, 5.0, x, y, z))
{
MEGAString[0] = EOS;
format(vString, sizeof(vString), "%s (ID: %d)", PlayerName(i), i);
strcat(MEGAString, vString);
playerProx++;
for(new slot = 0; slot < MAX_SLOT; ++slot)
{
if(PegarLista[playerid][slot] != -1)
{
PegarLista[playerid][slot] = slot;// Aqui ele pegara a listitem
PegarID[playerid][slot] = i;// aqui pegara o ID
break;
}
}
}
if(playerProx == 0) return SendClientMessage(playerid, -1, " Ninguйm estб prуximo de vocк.");
ShowPlayerDialog(i, DIALOG_SELLITEM, DIALOG_STYLE_LIST, "Vender item", MEGAString, "Selecionar", "Voltar");
return 1;
}
return 1;
}
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
foreach(Player, i)
{
if(ProxDetectorS(8.0, playerid, i))
{
format(vString, sizeof(vString), "%s (ID: %d)\n", PlayerName(i), i);
strcat(MEGAString, vString);
if(vListitem[playerid][i] != -1)
{
PegarLista[playerid][i] = i;
PegarID[playerid][i] = i;
}
}
}
Precisa nгo. Eu jб resolvi o seu cуdigo, deu certo aqui. Nгo necessitava mais um loop para pegar o id do cara, apenas um bastava. Ficou assim:
PHP код:
|
PegarLista[playerid][i] = i;
PegarID[playerid][i] = i;
if(listitem == PegarLista[playerid][i]) ???