Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Entrar

descriptionSistema de Registro EmptySistema de Registro

more_horiz
Bom galera como meu primeiro topico aqui no forum,irei deixar com voces um sistema de registro bem simples porem funcional ele esta salvando apenas o Level e logicamente a Senha.Ta ae para quem quiser estuda-lo

No topo de seu Game Mode adicione:

Código:

#include <a_samp>
#include <dini>

//DEFINES DE REGISTRO/LOGIN
#define DIALOG_REGISTRO 1
#define DIALOG_LOGIN 2


//CORES

#define Vermelho 0xFF0000
#define Azul 0x3366FF
#define Verde 0x238E23


Em OnPlayerConnect(playerid)

Código:

public OnPlayerConnect(playerid)
{
    new Dados[64];
   new nome[MAX_PLAYER_NAME];
   GetPlayerName(playerid,nome,sizeof(nome));
   format(Dados,sizeof(Dados),"/Contas/%s.txt",nome);
   if(dini_Exists(Dados))
   {
       ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"LOGIN - RPG 1.0","CONTA JA REGISTRADA. INSIRA A SENHA PARA LOGAR:","Logar","Sair");
   }
   else
   {
      ShowPlayerDialog(playerid,DIALOG_REGISTRO,DIALOG_STYLE_INPUT,"REGISTRO - RPG 1.0","DEFINA UMA SENHA PARA SUA CONTA:","Registrar","Sair");
   }
   return 1;
}


Em OnDialogResponse

Código:

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
//DIALOGO DE LOGIN
   if(dialogid==DIALOG_LOGIN)
   {
       if(response==0)
      {
          SendClientMessage(playerid,Vermelho,"Voce foi Kickado do servidor por nao aceitar o login");
          Kick(playerid);
          return 1;
      }
      if(response==1)
      {
          if(!strlen(inputtext))
          {
              SendClientMessage(playerid,Vermelho,"Senha incorreta!");
              ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"LOGIN - RPG 1.0","CONTA JA REGISTRADA. INSIRA A SENHA PARA LOGAR:","Logar","Sair");
              return 1;
          }
          else
          {
             Login(playerid,inputtext);
             return 1;
          }
      }
    }
//FIM DO DIALOGO DE LOGIN
//DIALOGO DE REGISTRO
    if(dialogid==DIALOG_REGISTRO)
   {
       if(response==0)
      {
          SendClientMessage(playerid,Vermelho,"Voce foi Kickado do servidor por nao aceitar o registro");
          Kick(playerid);
          return 1;
      }
      if(response==1)
      {
          if(!strlen(inputtext))
          {
              SendClientMessage(playerid,Vermelho,"Senha incorreta!");
              ShowPlayerDialog(playerid,DIALOG_REGISTRO,DIALOG_STYLE_INPUT,"REGISTRO - RPG 1.0","DEFINA UMA SENHA PARA SUA CONTA:","REGISTRAR","SAIR");
              return 1;
          }
          else
          {
             Registro(playerid,inputtext);
             return 1;
          }
      }
    }
 //FIM DO DIALOGO DE REGISTRO

   return 1;
}


No Fim de seu GameMode

Código:

stock Registro(playerid,key[])
{
   new Dados[64];
   new nome[MAX_PLAYER_NAME];
   GetPlayerName(playerid,nome,sizeof(nome));
   format(Dados,sizeof(Dados),"/Contas/%s.txt",nome);
   dini_Create(Dados);
   dini_Set(Dados,"Senha",key);
   dini_IntSet(Dados,"Level",0);
   return 1;
}

stock Login(playerid,key[])
{
    new Dados[64];
   new nome[MAX_PLAYER_NAME];
   GetPlayerName(playerid,nome,sizeof(nome));
   format(Dados,sizeof(Dados),"/Contas/%s.txt",nome);
   if(!strcmp(key,dini_Get(Dados,"Senha"),false))
   {
       SetPlayerScore(playerid,dini_Int(Dados,"Level"));
       SendClientMessage(playerid,Verde,"Logado...Bom Jogo!");
       return 1;
   }
   else
   {
       SendClientMessage(playerid,Vermelho,"Senha Incorreta!");
      Kick(playerid);
       return 1;
   }
}


Bom gostaria tambem de que voces deixassem criticas contrutivas de como posso melhorar o codigo
etc etc

descriptionSistema de Registro EmptyRe: Sistema de Registro

more_horiz
poem umas SS pra ilustrar o código, nem todos veem o código e enchergam o sistema em si

descriptionSistema de Registro EmptyRe: Sistema de Registro

more_horiz
verdade, tinha q ter ss '-'

descriptionSistema de Registro EmptyRe: Sistema de Registro

more_horiz
So por no pawn compilar e ver no samp

descriptionSistema de Registro EmptyRe: Sistema de Registro

more_horiz
Usa DOF2 ou Y_INI, mano. xD

descriptionSistema de Registro EmptyRe: Sistema de Registro

more_horiz
privacy_tip Permissões neste sub-fórum
Não podes responder a tópicos
power_settings_newInicie sessão para responder