[Ajuda] Salvamento Bugado
#1

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
Oq eu posso fazer para q isso n aconteзa?
Lembrando, isso sу acontece quando da cancelar no login...
Reply
#2

Mostra o comando o dialog seilб de login...
Reply
#3

Quote:
Originally Posted by Matheus_KirTz
Посмотреть сообщение
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
Oq eu posso fazer para q isso n aconteзa?
Lembrando, isso sу acontece quando da cancelar no login...
Estou com este mesmo problema!
Ta salvando se ele apertar cancelar, o certo seria ele nгo salvar :S
Reply
#4

й 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.
Reply
#5

Quote:
Originally Posted by Exco
Посмотреть сообщение
й 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.
pawn Код:
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;
}
essas ai sгo as linhas do Dialog Registro e Login da uma olhada ai!
Nгo tem nada salvando quando aperta cancelar EXCO
Reply
#6

Mas salva quando ele sai do servidor amigo, pode ver no OnPlayerDisconnect
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)