[Ajuda] Problemas Salvamento
#1

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?
Reply
#2

Mostra os Cуdigos..
Reply
#3

[...]
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;
}
Reply
#4

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

Vбrios Erros..
Reply
#6

Ainda continua resetando a conta
Reply
#7

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

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;
}
Reply
#9

no seu SavePlayer
tem DOF2_SaveFile();
?
Reply
#10

tem sim
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)