Asн como hace otacon, pero para que se te guarde haslo asн.
Код:
enum pInfo
{
pPass,
pAdmin,
pSkin
}
new PlayerInfo[MAX_PLAYERS][pInfo];
#define USERFILE "Cuentas/%s.ini" // directorio
Код:
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Password",PlayerInfo[playerid][pPass]);
INI_Int("AdminNivel",PlayerInfo[playerid][pAdmin]);
INI_Int("Ropa",PlayerInfo[playerid][pSkin]);
return 1;
}
Код:
switch( dialogid )
{
case DIALOG_REGISTER:
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registro","No has escrito nada!","Registrar","Salir");
new INI:File = INI_Open(UserPath(playerid));
//------------- INI -----------/
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File,"AdminNivel",0);
INI_WriteInt(File,"Ropa",0);
INI_Close(File);
//------------- INI -----------/
SpawnPlayer(playerid);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,"Registro","Felicidades por tu registro!","Gracias","");
}
}
Код:
public OnPlayerDisconnect(playerid, reason)
{
//------------- INI -----------/
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid);
INI_WriteInt(File,"AdminNivel",PlayerInfo[playerid][pAdmin]);
INI_WriteInt(File,"Ropa",PlayerInfo[playerid][pSkin]);
INI_Close(File);
//------------- INI -----------/
return 1;
}
Код:
public OnPlayerSpawn(playerid)
{
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);//esto seteara el skin al jugador.
return 1;
}
Код:
stock UserPath(playerid){
new string[128],playername[MAX_PLAYER_NAME];
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),USERFILE,playername);
return string;
}
Al final crea en Scriptfiles una carpeta con nombre "Cuentas"