Portal SAMP
[Ajuda] Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? (/showthread.php?tid=1677)



Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - WILK3R - 03/10/2021

Eu gostaria de saber como verificar com DOF2 ou de alguma outra maneira a pasta onde fica as contas dos players e colocar em uma lista de uma dialog, eu queria saber só qual função usar pra isso o resto eu sei fazer. agradece desde já, Obg!


RE: Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - Carlos Victor - 03/10/2021

Acredito que seja impossível fazer oque você quer usando DOF2, além de ser uma include antiga não possui documentação e nunca foi atualizada... Se você dar mais exemplos do que seja, posso te ajudar, envia fotos, situações de tal sistema etc...


RE: Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - Vel - 03/10/2021

Eu acredito que não pode ser feito nativamente, mas com o plugin FileManager:

Código:
#define PATH "./scriptfiles/contas"
#define FILE_EXTENSION ".ini"

new dir: dir = dir_open(PATH),
  file[40],
  type,
  list[2048];

while (dir_list(dir, file, type)) {
  if (type == FM_FILE) {
    format(list, sizeof(list), "%s\n%s", list, (strdel(file, strlen(file) - strlen(FILE_EXTENSION), strlen(file)), file));
  }
}

dir_close(dir);

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Contas", list, "OK", "");



RE: Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - ipsLuan - 03/10/2021

Com DOF2 em si não é possível. Você pode tentar até com bibliotecas externas auxiliares, mas se seu servidor houver um número considerável alto de contas registradas, será um tiro no pé para executar tudo sem comprometer a velocidade de processamento de seu servidor.


RE: Como fazer pra fazer uma lista de todos os Usuarios registrados com DOF? - xbruno1000x - 03/10/2021

É possível? Sim!
É aconselhável? Não!

Colocar tudo numa dialog vai exigir um processamento desnecessário para algo tão fútil.

Você pode criar um sistema de pesquisa por contas. Use um parâmetro no comando e DOF2_FileExists para verificar se a conta existe. Para remover a conta pode usar DOF2_RemoveFile por exemplo. Tem uma função para renomear arquivos também e consequentemente mudar o nick do jogador.