27.01.2015, 13:38
Olб, primeiramente eu queria dizer que ainda estou aprendendo a linguagem pawn e aн se o erro for muito уbvio eu quero que avisem, queria tambйm que se acharem a soluзгo me explicassem como funciona a mesma, Obrigado.
Estou desenvolvendo um GameMode do 0, atй agora deu tudo certo, mas eis que me deparo com o seguinte erro no sistema de Registro/Login (O Sistema й em DOF2)
O Sistema tem criptografia de senhas com Whirpool, atй a parte de criar o arquivo e aplicar o Hash tб tudo bem, mas na hora de logar, ele nгo consegue ler o Hash! eu jб tentei inъmeras opзхes, em uma loga com qualquer coisa, e em outra nгo loga de jeito nenhum. vou postar o cуdigo.
Parte de comparar a senha Digitada com a Senha do arquivo:
Parte de Hash no arquivo na parte de Registro:
Estou desenvolvendo um GameMode do 0, atй agora deu tudo certo, mas eis que me deparo com o seguinte erro no sistema de Registro/Login (O Sistema й em DOF2)
O Sistema tem criptografia de senhas com Whirpool, atй a parte de criar o arquivo e aplicar o Hash tб tudo bem, mas na hora de logar, ele nгo consegue ler o Hash! eu jб tentei inъmeras opзхes, em uma loga com qualquer coisa, e em outra nгo loga de jeito nenhum. vou postar o cуdigo.
Parte de comparar a senha Digitada com a Senha do arquivo:
Код:
new passhash[129]; WP_Hash(passhash, sizeof(passhash), inputtext); if(!strcmp((inputtext), (DOF2_GetString(file, "Senha")), true) == 0) { PInfo[playerid][Skin] = DOF2_GetInt(file, "Skin"); SetPlayerSkin(playerid, PInfo[playerid][Skin]); PInfo[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro"); GivePlayerMoney(playerid, PInfo[playerid][Dinheiro]); return 1; } else { ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Senha Incorreta, Tente Novamente!", "Logar", "Sair"); ErroSenha[playerid]++; if(ErroSenha[playerid] == 5) { SendClientMessage(playerid, -1, "Vocк foi Kickado por errar sua senha mais de 4 vezes."); Kick(playerid); return 1;
Код:
new passhash[129]; WP_Hash(passhash, sizeof(passhash), inputtext); DOF2_CreateFile(file); PInfo[playerid][Senha] = DOF2_SetString(file, "Senha", passhash); PInfo[playerid][Skin] = DOF2_SetInt(file, "Skin", SKIN_NOVATO); PInfo[playerid][Dinheiro] = DOF2_SetInt(file, "Dinheiro", DINHEIRO_INICIAL); DOF2_SaveFile();