Sobre los 'IDs' es algo que tiene que estar comprobando cuantas cuentas hay cada vez que una cuenta se registra
ej:
pawn Код:
new FileName[24];
for(new i; i<MAX_CUENTAS; i++)
{
format(FileName,24,"Cuenta_%d",i);
if(!fexits(FileName))
{
// No existe el id almacenado en "ID", entonces tomaremos este ID para esta cuenta
dini_Create(FileName);
break;
}
}
Otra cosa, si lo haces de esta forma tendrбs que decirle al usuario que id de cuenta le toco para no tener que revisar archivo x archivo para saber cual tiene los datos de este player, para hacer el login tendrнas que pedirle al usuario su id para acceder rбpidamente a su archivo de "cuenta", EJ:
pawn Код:
#define dia_login 188
public OnPlayerConnect(playerid)
{
ShowPlayerDialog(playerid,dia_login,DIALOG_STYLE_INPUT,"Escribe tu ID de usuario","Escribe el ID que se te otorgo al registrarse","Aceptar","Cancelar");
}
public OnDialogResponse(playerid, dialogid, response, listitem ,inputtext[])
{
if(dialogid == dia_login)
{
if(!response) return Kick(playerid);
new cuentaname[24];
format(cuentaname,24,"Cuenta_%d",strval(inputtext));
if(!fexist(cuentaname)) return ShowPlayerDialog(playerid,dia_login,DIALOG_STYLE_INPUT,"Escribe tu ID de usuario","Este ID de usuario no existe\nEscribe el ID que se te otorgo al registrarse","Aceptar","Cancelar");
// Resto del login...
return 1;
}
}
Pero como te digo, es algo mбs complejo, yo te recomiendo migrar a MySQL o a SQLite donde es muuucho mejor y mбs rбpido y tambiйn puedes otorgarle ids a los usuarios de una forma bastante fбcil, usando un campo tipo autoincrement y poniendo este campo como primarikey, funciona tanto en MySQL y SQLite