SA-MP Forums Archive
[Ajuda] Problemas Salvamento - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Problemas Salvamento (/showthread.php?tid=635486)



Problemas Salvamento - MatheusFirmino - 07.06.2017

pessoal to com 2 problemas na minha gm, й o seguinte, 1° na parte de registro/login eu coloquei a funзгo de quando o player apertar no 2° botгo (Sair) e a funзгo de salvar,mas quando o player aperta e й kickado quando vou verificar a pasta conta tudo reseta ficando apenas senha e email.

2° problema tambйm й no registro, adicionei a funзгo de se o player errar a senha 5x ele й kickado, mas tambйm nгo salva mesmo colocando funзгo SavePlayer.

tambйm encontrei outro problema, quando o player erra senha e sai do server ele reseta a conta,se acertar a senha, spawnar e dps sai ele salva normal


Alguem ai sabe o motivo disso? e como resolver?


Re: Problemas Salvamento - MenestreL - 08.06.2017

Mostra os Cуdigos..


Re: Problemas Salvamento - MatheusFirmino - 08.06.2017

[...]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid) {
case Dialog_Registro: {
if(response){
if(!strlen(inputtext)) {
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | Digite Uma Senha Para Se Registrar");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Digite Uma Senha Para Se Registrar",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Registro, DIALOG_STYLE_INPUT, "{FFFFFF}Registrar", string, "{FFFFFF}Registrar","{FFFFFF}Sair");
} else {
DOF2_CreateFile(OnPlayerAccount(playerid));
DOF2_SetInt(OnPlayerAccount(playerid), "Dinheiro", 15000);
DOF2_SetInt(OnPlayerAccount(playerid), "Level", 0);
DOF2_SetInt(OnPlayerAccount(playerid), "Admin", 0);
DOF2_SetInt(OnPlayerAccount(playerid), "Matou", 0);
DOF2_SetInt(OnPlayerAccount(playerid), "Morreu", 0);
DOF2_SetString(OnPlayerAccount(playerid), "Senha", inputtext);
DOF2_SaveFile();
SendClientMessage(playerid, COR_BRANCO, "| INFO | Insira Um E-Mail Vбlido");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Email, DIALOG_STYLE_INPUT, "{FFFFFF}Email", string, "{FFFFFF}Cadastrar","{FFFFFF}Sair");
}
} else {
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | Digite Uma Senha Para Se Registrar");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Digite Uma Senha Para Se Registrar",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Registro, DIALOG_STYLE_INPUT, "{FFFFFF}Registrar", string, "{FFFFFF}Registrar","{FFFFFF}Sair");
}
}
case Dialog_Login: {
if(response){
if(!strlen(inputtext)) {
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | Digite Sua Senha Para Logar");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", string, "{FFFFFF}Login","{FFFFFF}Sair");
}
else {
if(!strcmp(inputtext, DOF2_GetString(OnPlayerAccount(playerid), "Senha"))) {
SendClientMessage(playerid, -1, "| INFO | Escolha Sua Skin Para Poder Jogar");
//SpawnPlayer(playerid);
LoadPlayer(playerid);
FezLogin[playerid] = 1;
} else {
Erro[playerid]++;
if(Erro[playerid] == 5) {
Kick(playerid);
}
SendClientMessage(playerid, COR_VERMELHO, "| INFO | Senha Incorreta");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", string, "{FFFFFF}Login","{FFFFFF}Sair");
}
}
}
else {
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", string, "{FFFFFF}Login","{FFFFFF}Sair");
}
}
case Dialog_Email: {
if(response) {
if(!strlen(inputtext)) {
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | Insira Um E-Mail Vбlido");
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Email, DIALOG_STYLE_INPUT, "{FFFFFF}Email", string, "{FFFFFF}Cadastrar","Sair{FFFFFF}");
} else {
DOF2_SetString(OnPlayerAccount(playerid), "Email", inputtext);
DOF2_SaveFile();
}
} else {
new string[150];
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
ShowPlayerDialog(playerid, Dialog_Email, DIALOG_STYLE_INPUT, "{FFFFFF}Email", string, "{FFFFFF}Cadastrar","{FFFFFF}Sair");
}
}
}
return 1;
}


Re: Problemas Salvamento - MenestreL - 08.06.2017

PHP код:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch(
dialogid)
    {
        case 
Dialog_Registro:
        {
            if(
response)
            {
                if(!
strlen(inputtext))
                {
                    
SendClientMessage(playeridCOR_VERMELHO"| ERRO | Digite Uma Senha Para Se Registrar");
                    new 
string[150];
                    
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Digite Uma Senha Para Se Registrar",PlayerName(playerid));
                    
ShowPlayerDialog(playeridDialog_RegistroDIALOG_STYLE_INPUT"{FFFFFF}Registrar"string"{FFFFFF}Registrar","{FFFFFF}Sair");
                }
                else
                {
                    
DOF2_CreateFile(OnPlayerAccount(playerid));
                    
DOF2_SetInt(OnPlayerAccount(playerid), "Dinheiro"15000);
                    
DOF2_SetInt(OnPlayerAccount(playerid), "Level"0);
                    
DOF2_SetInt(OnPlayerAccount(playerid), "Admin"0);
                    
DOF2_SetInt(OnPlayerAccount(playerid), "Matou"0);
                    
DOF2_SetInt(OnPlayerAccount(playerid), "Morreu"0);
                    
DOF2_SetString(OnPlayerAccount(playerid), "Senha"inputtext);
                    
DOF2_SaveFile();
                    
SendClientMessage(playeridCOR_BRANCO"| INFO | Insira Um E-Mail Vбlido");
                    new 
string[150];
                    
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
                    
ShowPlayerDialog(playeridDialog_EmailDIALOG_STYLE_INPUT"{FFFFFF}Email"string"{FFFFFF}Cadastrar","{FFFFFF}Sair");
                }
            }
            else
            {
                
SendClientMessage(playeridCOR_VERMELHO"| ERRO | Digite Uma Senha Para Se Registrar");
                new 
string[150];
                
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Digite Uma Senha Para Se Registrar",PlayerName(playerid));
                
ShowPlayerDialog(playeridDialog_RegistroDIALOG_STYLE_INPUT"{FFFFFF}Registrar"string"{FFFFFF}Registrar","{FFFFFF}Sair");
            }
        }
        case 
Dialog_Login:
        {
            if(
response)
            {
                if(!
strlen(inputtext))
                {
                    
SendClientMessage(playeridCOR_VERMELHO"| ERRO | Digite Sua Senha Para Logar");
                    new 
string[150];
                    
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
                    
ShowPlayerDialog(playeridDialog_LoginDIALOG_STYLE_PASSWORD"{FFFFFF}Login"string"{FFFFFF}Login","{FFFFFF}Sair");
                }
                else if(!
strcmp(inputtextDOF2_GetString(OnPlayerAccount(playerid), "Senha")))
                {
                    
SendClientMessage(playerid, -1"| INFO | Escolha Sua Skin Para Poder Jogar");
                    
LoadPlayer(playerid);
                    
FezLogin[playerid] = 1;
                }
                else
                {
                    
SendClientMessage(playeridCOR_VERMELHO"| INFO | Senha Incorreta");
                    new 
string[150];
                    
Erro[playerid]++;
                    
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
                    
ShowPlayerDialog(playeridDialog_LoginDIALOG_STYLE_PASSWORD"{FFFFFF}Login"string"{FFFFFF}Login","{FFFFFF}Sair");
                }
                if(
Erro[playerid] >= 5)
                {
                    
Salvar(playerid);
                    
Kick(playerid);
                }
            }
            else
            {
                new 
string[150];
                
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {03FF35}Registrada\n\n{FFFFFF}Digite Sua Senha Para Logar",PlayerName(playerid));
                
ShowPlayerDialog(playeridDialog_LoginDIALOG_STYLE_PASSWORD"{FFFFFF}Login"string"{FFFFFF}Login","{FFFFFF}Sair");
            }
        }
    }
    case 
Dialog_Email:
    {
        if(
response)
        {
            if(!
strlen(inputtext))
            {
                
SendClientMessage(playeridCOR_VERMELHO"| ERRO | Insira Um E-Mail Vбlido");
                new 
string[150];
                
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
                
ShowPlayerDialog(playeridDialog_EmailDIALOG_STYLE_INPUT"{FFFFFF}Email"string"{FFFFFF}Cadastrar","Sair{FFFFFF}");
            }
            else
            {
                
DOF2_SetString(OnPlayerAccount(playerid), "Email"inputtext);
                
DOF2_SaveFile();
            }
        }
        else
        {
            new 
string[150];
            
format(string,sizeof(string),"{FFFFFF}Nick: {C40000}%s\n\n{FFFFFF}Status Da Conta: {C40000}Nгo Registrada\n\n{FFFFFF}Insira um E-Mail Vбlido",PlayerName(playerid));
            
ShowPlayerDialog(playeridDialog_EmailDIALOG_STYLE_INPUT"{FFFFFF}Email"string"{FFFFFF}Cadastrar","{FFFFFF}Sair");
        }
    }
}
return 
1;

@Edit


Re: Problemas Salvamento - MatheusFirmino - 08.06.2017

Vбrios Erros..


Re: Problemas Salvamento - MatheusFirmino - 08.06.2017

Ainda continua resetando a conta


Re: Problemas Salvamento - MenestreL - 08.06.2017

Quote:
Originally Posted by MatheusFirmino
Посмотреть сообщение
Ainda continua resetando a conta
Mostra o OnPlayerDisconnect


Re: Problemas Salvamento - MatheusFirmino - 08.06.2017

public OnPlayerDisconnect(playerid, reason)
{
SavePlayer(playerid);
new szString[120];
new szDisconnectReason[3][] = {
"Conexгo/Crash",
"Saiu",
"Kickado/Banido"
};
format(szString, sizeof szString, "{FFFFFF}» {03FF35}%s {FFFFFF}Desconectou-Se Do Servidor ( %s )", PlayerName(playerid), szDisconnectReason[reason]);
SendClientMessageToAll(COR_BRANCO, szString);
return 1;
}


Re: Problemas Salvamento - DarkBr - 08.06.2017

no seu SavePlayer
tem DOF2_SaveFile();
?


Re: Problemas Salvamento - MatheusFirmino - 08.06.2017

tem sim