13/04/2023 14:15
(13/04/2023 12:33)KruCz Escreveu:(13/04/2023 12:25)White_Blue Escreveu: Se entendi bem seu problema, os arquivos estão sendo criados com o mesmo nome correto?
Para resolver isso é relativamente simples, crie um loop que percorra o número máximo de membros e coloque coloque o número correspodnente na frente.
Código PHP:#define MAX_CLAN_MEMBROS 30 // Se já tiver um número definido, ignore essa linha.
static string[60];
for(new i = 0; i < MAX_CLAN_MEMBROS; i++) {
format(string, sizeof(string, "/Gangs/Membros/Ninguem%d.ini", i));
if(!DOF2_FileExists(string)) continue; // Para evitar que os arquivos sejam criados sem necessidade e acabe causando problemas
DOF2_CreateFile(string);
}
Oi White_Blue, tudo bem?
O problema em si é somente quando a gangue está sem um proprietário, ou seja, quando elas estão "livres". Quando eu crio uma gangue com status "livre", o arquivo do dono na pasta 'membros' "Ninguem.ini", é criado.
Se eu criar 2 gangues, por exemplo, só terá 1 arquivo "Ninguem.ini" (o que causará um conflito).
Quando um jogador adquire essa propriedade, esse arquivo é renomeado no comando.
Código PHP:format(strG, sizeof(strG), "/Gangs/Membros/%s.ini", InfoGang[Gang][NomeLider]);
format(strG, sizeof(strG), "/Gangs/Membros/%s.ini", NomeP(playerid));
DOF2_RenameFile(formato, strG);
Creio que entendi, mas a questão é que seu sistema de gangs então teria que mudar praticamente toda a infraestrutura, pois pelo que vi você está armazenando as informações de maneira errônea, nesse caso você teria que criar o arquivo da gang com seu respectivo ID e guardar as informações lá dentro.
No caso o que eu estou propondo é criar uma pasta "/Gangs" e guardar lá dentro um único arquivo para cada gang "Gang/gang5.ini" e assim respectivamente, e guarda lá dentro as informações(Líder, membros e etc) em forma de string dentro do arquivo, assim fica mil vezes mais fácil de manipular e também você não terá mais problemas com "diretório duplicado".
Não estou disponível para realizar serviços relacionados ao SA-MP e não costumo responder a mensagens privadas, a menos que estejam relacionadas à moderação do fórum.