SA-MP Forums Archive
[DUV]Sistema de registro em dialog nгo funfa! - 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: [DUV]Sistema de registro em dialog nгo funfa! (/showthread.php?tid=198664)



[DUV][RESOLVIDO]Sistema de registro em dialog nгo funfa! - Katros - 12.12.2010

vlw Cynic
==========
Blz gente bonita!
Й o seguinte, estou criando um GM (ou tentando) e comecei pelo sistema de registro em dialog (the famous login box) com o Dini, porйm nгo saiu conforme o planejado!
Na hora de registrar ele registra normalmente, na hora de logar tambйm, mais sу que quando fui testa-lo quanto a sua seguranзa, mesmo se eu logar com a senha errada ele entra do mesmo jeito! (sendo que o fiz para kikar o jogador caso tenha errado a senha!)

Vou mandar o cod!
Obs: Sou novato em pawn, qualquer erro idiota pode ser reportado pois sгo erros que nos fazem crescer, e quando crescer quero ser adulto!
Obs2: O codigo nгo faz parte de nenhum tipo de GM (Roubado ou nгo!), criei-os com os meus prуpios pйs!


pawn Код:
#include <Dini>

new AutenticPlayer[MAX_PLAYERS];

public OnPlayerSpawn(playerid)// uso no spawn pois jб botei ele pra spawnar automaticamente no request (tambйm porque odeio aquele << Spawn >>)!
{
    ClearChatbox(playerid, 100);
    new string[256];
    new playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername, sizeof(playername));
    format(string,sizeof(string),"/Contas/%s.dll",playername);
    if(AutenticPlayer[playerid] == 0)
    {
       SetPlayerCameraPos(playerid,1348.1423,-1730.3269,75.5998);
       SetPlayerCameraLookAt(playerid,1348.1423,-1730.3269,75.5998);
       SetPlayerPos(playerid,1276.2075,-1131.3752,23.8281);
       if(!fexist(string))
       {
          ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registrar", "{FFFFFF}Seja bem vindo ao {00FF00}Brasil On!\n{FFFFFF}Vocк {FF0000}nгo possui {FFFFFF}uma conta no servidor!\nЙ necessбrio a {00FF00}criaзгo {FFFFFF}de uma para {00FF00}total acesso {FFFFFF}do servidor.\nDigite uma senha para efetuar o cadastramento.", "Confirmar", "Cancelar");
       }
       if(fexist(string))
       {
          ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Logar", "{FFFFFF}Seja bem vindo ao {00FF00}Brasil On!\n{FFFFFF}Vocк {00FF00}jб possui {FFFFFF}uma conta no servidor!\nAgora й sу se {00FF00}logar {FFFFFF}e pronto.\nDigite sua senha!", "Confirmar", "Cancelar");
       }
    }
    return 1;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == 1)
    {
       if(response == 1)
       {
          new string[256];
          new playername[MAX_PLAYER_NAME];
          GetPlayerName(playerid, playername, sizeof(playername));
          format(string,sizeof(string),"Contas/%s.dll",playername);
          if(!fexist(string))
          {
             dini_Create(string);
             dini_Set(string, "Senha", inputtext);
             SendClientMessage(playerid,0xFFFFFFAA, "Obrigado por se {00FF00}registrar{FFFFFF}, estamos muito feliz em ter vocк aqui!");
             SendClientMessage(playerid,0xFFFFFFAA, "Agora vocк poderб andar livremente nas ruas de {00FF00}Los Santos.");
             SendClientMessage(playerid,0xFFFFFFAA, "Dica: Para ver todos os comandos do jogo use {00FF00}/Comandos.");
             AutenticPlayer[playerid] = 1;
             SetCameraBehindPlayer(playerid);
             TextDrawHideForPlayer(playerid, WidecimaTD);
             TextDrawHideForPlayer(playerid, WidebaixoTD);
          }
       }
       else
       {
          SendClientMessage(playerid, 0xFFFFFFAA, "Vocк optou a nгo se {00FF00}registrar {FFFFFF}em nosso servidor e foi {FF0000}kikado!");
          SendClientMessage(playerid, 0xFFFFFFAA, "Й necessбrio o {00FF00}cadastramento {FFFFFF}para poder jogar aqui.");
          SendClientMessage(playerid, 0xFFFFFFAA, "Entre novamente e {00FF00}repita {FFFFFF}o processo!");
          Kick(playerid);
       }
    }
    if(dialogid == 2)
    {
       if(response == 1)
       {
          new playername[MAX_PLAYER_NAME];
          new string[256];
          GetPlayerName(playerid, playername, sizeof(playername));
          format(string, sizeof(string), "/Contas/%s.dll", playername);
          format(string, sizeof(string), "Bem vindo de volta {00FF00}%s.", playername);
          if(strcmp(string, inputtext))
          {
             SendClientMessage(playerid, 0xFFFFFFAA, string);
             SendClientMessage(playerid, 0xFFFFFFAA, "Todos os seu dados foram {00FF00}carregados com sucesso!");
             SendClientMessage(playerid, 0xFFFFFFAA, "Tenha um {00FF00}bom jogo ;)");
             AutenticPlayer[playerid] = 1;
             SetCameraBehindPlayer(playerid);
             TextDrawHideForPlayer(playerid, WidecimaTD);
             TextDrawHideForPlayer(playerid, WidebaixoTD);
          }
          else
          {
             SendClientMessage(playerid, 0xFFFFFFAA, "Opa! que feio, parece que vocк {FF0000}errou sua senha!");
             SendClientMessage(playerid, 0xFFFFFFAA, "Pela seguranзa desta conta vocк foi {00FF00}kikado");
             SendClientMessage(playerid, 0xFFFFFFAA, "Caso vocк esqueceu sua senha, reporte {00FF00}no forum!");
             SendClientMessage(playerid, 0xFFFFFFAA, FORUM_SERVER);
             Kick(playerid);
          }
       }
       else
       {
          SendClientMessage(playerid, 0xFFFFFFAA, "Opa! que feio, vocк optou a {FF0000}nгo se logar!");
          SendClientMessage(playerid, 0xFFFFFFAA, "Pela seguranзa desta conta vocк foi {00FF00}kikado");
          SendClientMessage(playerid, 0xFFFFFFAA, "Caso vocк esqueceu sua senha, reporte {00FF00}no forum!");
          SendClientMessage(playerid, 0xFFFFFFAA, FORUM_SERVER);
          Kick(playerid);
       }
    }
    return 1;
}
Espero de cabeзa pra baixo a humilde ajuda de vocкs! (Bjundas a todos!)


Re: [DUV]Sistema de registro em dialog nгo funfa! - CyNiC - 12.12.2010

pawn Код:
if(dialogid == 2)
    {
       if(response == 1)
       {
          new playername[MAX_PLAYER_NAME];
          new string[256];
          GetPlayerName(playerid, playername, sizeof(playername));          
          format(string, sizeof(string), "Bem vindo de volta {00FF00}%s.", playername); //Alterado
          SendClientMessage(playerid, 0xFFFFFFAA, string); //Alterado
          format(string, sizeof(string), "/Contas/%s.dll", playername); //Alterado
          if(strcmp(dini_Get(string, "Senha"), inputtext)) //Alterado
          {            
             SendClientMessage(playerid, 0xFFFFFFAA, "Todos os seu dados foram {00FF00}carregados com sucesso!");
             SendClientMessage(playerid, 0xFFFFFFAA, "Tenha um {00FF00}bom jogo ;)");
             AutenticPlayer[playerid] = 1;
             SetCameraBehindPlayer(playerid);
             TextDrawHideForPlayer(playerid, WidecimaTD);
             TextDrawHideForPlayer(playerid, WidebaixoTD);
          }
          else
          {
             SendClientMessage(playerid, 0xFFFFFFAA, "Opa! que feio, parece que vocк {FF0000}errou sua senha!");
             SendClientMessage(playerid, 0xFFFFFFAA, "Pela seguranзa desta conta vocк foi {00FF00}kikado");
             SendClientMessage(playerid, 0xFFFFFFAA, "Caso vocк esqueceu sua senha, reporte {00FF00}no forum!");
             SendClientMessage(playerid, 0xFFFFFFAA, FORUM_SERVER);
             Kick(playerid);
          }
       }
       else
       {
          SendClientMessage(playerid, 0xFFFFFFAA, "Opa! que feio, vocк optou a {FF0000}nгo se logar!");
          SendClientMessage(playerid, 0xFFFFFFAA, "Pela seguranзa desta conta vocк foi {00FF00}kikado");
          SendClientMessage(playerid, 0xFFFFFFAA, "Caso vocк esqueceu sua senha, reporte {00FF00}no forum!");
          SendClientMessage(playerid, 0xFFFFFFAA, FORUM_SERVER);
          Kick(playerid);
       }
    }



Re: [DUV]Sistema de registro em dialog nгo funfa! - Katros - 12.12.2010

nгo intendir!


Re: [DUV]Sistema de registro em dialog nгo funfa! - [BEP]AcerPilot - 12.12.2010

WTF .dll? Que eu saiba SAMP nгo lк .dll se nгo for um plugin. Use .txt .cfg ou .ini.


Re: [DUV]Sistema de registro em dialog nгo funfa! - [Ips]Guh - 12.12.2010

Mais eu ja acho que sim,exemplo o gamemode do Higor,O Play Adventure...


Re: [DUV]Sistema de registro em dialog nгo funfa! - [BEP]AcerPilot - 12.12.2010

Eu nгo devo estar sabendo, raramente baixo algo da Releases.. Enfim, prefiro .ini.


Re: [DUV]Sistema de registro em dialog nгo funfa! - Katros - 12.12.2010

lк sim, uso ele pra enganar noob! (um sujeito ver aqui e fala "Caralho, fudeo tudo!", sem ao menos abri-lo em Boco de notas XD)


Re: [DUV]Sistema de registro em dialog nгo funfa! - Katros - 12.12.2010

alguem me ajuda? jб tentei de tudo!!!


Re: [DUV]Sistema de registro em dialog nгo funfa! - CyNiC - 13.12.2010

Altere a parte do dialog 2 pra o que eu postei.


Re: [DUV]Sistema de registro em dialog nгo funfa! - Katros - 13.12.2010

foi mau cynic, mais nб hora que vocк postou o codigo nгo apareceu, por isso postei "nгo intendir", deve ter dado erro na pбgina!
Vou testar aqui, qualquer coisa eu aviso!