19.03.2012, 19:17
Gostaria de que alguem me desse uma luz '-'
Queria aprender a salvar informaзхes como:
Level
Level de Admin
Dinheiro '----'
Ja tentei e nгo consegui.
Este que fiz nгo funciona:
-
-
-
Alguem pode me dizer oque esta errado?
Sim o /gmx esta programado para salvar.
Queria aprender a salvar informaзхes como:
Level
Level de Admin
Dinheiro '----'
Ja tentei e nгo consegui.
Este que fiz nгo funciona:
pawn Код:
public RegistrarPlayer(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "Contas3/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
strmid(PlayerInfo[playerid][pSenha], password, 0, strlen(password), 255);
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pSenha]);fwrite(hFile, var);
PlayerInfo[playerid][pGrana] = GetPlayerMoney(playerid);
format(var, 32, "Administrador=0\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "Dinheiro=150000\n",PlayerInfo[playerid][pGrana]);fwrite(hFile, var);
format(var, 32, "Spawn=0\n",PlayerInfo[playerid][pSpawn]);fwrite(hFile, var);
format(var, 32, "Skin=23\n",PlayerInfo[playerid][pSkin]);fwrite(hFile, var);
format(var, 32, "Level=%s\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
fclose(hFile);
pawn Код:
public UpdatedasContas(playerid)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid])
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "Contas3/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pSenha]);fwrite(hFile, var);
PlayerInfo[playerid][pGrana] = GetPlayerMoney(playerid);
format(var, 32, "Administrador=%s\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "Dinheiro=%s\n",PlayerInfo[playerid][pGrana]);fwrite(hFile, var);
format(var, 32, "Spawn=%s\n",PlayerInfo[playerid][pSpawn]);fwrite(hFile, var);
format(var, 32, "Skin=%s\n",PlayerInfo[playerid][pSkin]);fwrite(hFile, var);
format(var, 32, "Level=%s\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
fclose(hFile);
}
}
}
return 1;
}
pawn Код:
public LogarPlayer(playerid,password[])
{
new string2[64];
new playername2[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername2, sizeof(playername2));
format(string2, sizeof(string2), "Contas3/%s.ini", playername2);
new File: UserFile = fopen(string2, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Key" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(PlayerInfo[playerid][pSenha], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(PlayerInfo[playerid][pSenha],password, true ) == 0 )
{
new key[ 256 ] , val[ 256 ];
new Data[ 256 ];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "Administrador" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
if( strcmp( key , "Dinheiro" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGrana] = strval( val ); }
if( strcmp( key , "Spawn" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSpawn] = strval( val ); }
if( strcmp( key , "Skin" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSkin] = strval( val ); }
if( strcmp( key , "Level" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLevel] = strval( val ); }
}
fclose(UserFile);
}
else
{
SendClientMessage(playerid, BRANCO, "Erro: Senha incorreta.");
SendClientMessage(playerid, RED, "use: /logar(senha)");
fclose(UserFile);
return 1;
}
SpawnPlayer(playerid);
SetSpawnInfo(playerid, PlayerInfo[playerid][pSpawn], PlayerInfo[playerid][pSkin],0.0,0.0,0.0,0,0,0,0,0,0,0);
}
return 1;
}
pawn Код:
public SalvarContas()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
UpdatedasContas(i);
}
}
}
Sim o /gmx esta programado para salvar.