Senha = test Level = 0 Idade = 0 Origem = 0 Admin = 0 Skin = 0 Sexo = 0 Dinheiro = 0 Matou = 0 Morreu = 0
Entгo, o sistema de salvamento em si ta ok...Mas, quando alguem aperta ''cancelar'' no login ele й kickado(atй aki tudo certo), quando olha o arquivo salvado, esta tudo zero!
Olhe um Exemplo: Код:
Senha = test Level = 0 Idade = 0 Origem = 0 Admin = 0 Skin = 0 Sexo = 0 Dinheiro = 0 Matou = 0 Morreu = 0 Lembrando, isso sу acontece quando da cancelar no login... |
й sу vocк nгo salvar quando ele sair, apenas salve o arquivo apos o jogador fazer login.
oque esta acontecendo й isto: o jogador entra no servidor com as coisas tudo zeradas, apos o login й setada suas coisas, quando ele cancela й salvo tudo com oque ele entrou que й zero, apenas crie uma var que check se ele logou ou nгo para salvar quando ele sair. |
if(dialogid == DIALOG_REGISTRO)
{
if (response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "{FFFFFF}Registrando...","{F81414}Vocк digitou uma senha invбlida.\n{FFFFFF}Digite sua senha abaixo para registrar uma nova conta.","Registrar","Sair");
}
if(INI_Open(ObterINI(playerid)))
{
INI_WriteString("Senha",inputtext);
INI_WriteInt("Score",1);
SetPlayerScore( playerid, INI_ReadInt( "Score" ) );
INI_WriteInt("Dinheiro",1000);
INI_WriteInt("Admin",0);
INI_WriteInt("Skin", 23);
SetPlayerSkin(playerid, INI_ReadInt("Skin"));
SpawnPlayer(playerid);
INI_Save();
INI_Close();
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,"{FFFFFF}Logar","{FFFFFF}Digite sua senha abaixo para efetuar login.","Logar","Sair");
}
}
else
{
KickWithMessage(playerid, LARANJA, "Vocк foi kikado por nгo querer fazer o registro/login.");
return 1;
}
}
if(dialogid == DIALOG_LOGAR)
{
if( response )
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFFFF}Logar","{F81414}Vocк digitou uma senha invбlida.\n{FFFFFF}Digite sua senha abaixo para efetuar login.","Logar","Sair");
}
if(INI_Open(ObterINI(playerid)))
{
INI_ReadString(PlayerInfo[playerid][pSenha],"Senha",20);
if(strcmp(inputtext,PlayerInfo[playerid][pSenha],false))
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{FFFFFF}Logar","{F81414}Vocк digitou uma senha incorreta.\n{FFFFFF}Digite sua senha abaixo para acessar.","Logar","Sair");
}
ResetPlayerMoney( playerid );
SpawnPlayer(playerid);
INI_ReadInt("Skin");
INI_ReadInt("Admin");
INI_Close();
}
}
else
{
KickWithMessage(playerid, LARANJA, "Vocк foi kikado por nгo querer fazer o registro/login.");
return 1;
}
}
return 1;
}