Sistema de registro e login por lists

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Qualidade Sistema de registro e login por lists

Mensagem por PedroX em Ter 28 Set 2010, 16:40

Sistema de registro e login

Hoje eu vou mostrar como fazer um simples banco de dados, mais ou menos, uma tabela. Nao vamos desenhala, mas vamos usa-la em um sistema de Registro e Login.

Versao do GM: Game Maker 8 Pro (pode funcionar em outras versoes)
Dificuldade: Medio
Apoio do Kabeção em uma parte da engine.

-Vamos lá, abra o Game Maker.
-Crie duas sprites, desenhe um botao Registrar em um e Entrar no outro.

-Crie um script chamado 'add_coluna'.
-Adicione o codigo a seguir nele:

Código:
//A coluna sera como uma lista, e nela sera adicionado os dados, as linhas.
return ds_list_create() //cria uma lista e retorna seu ID.

-Crie um script chamado 'add_linha' e copie o codigo para ele:
Código:

//adicionar na lista (argument0), na linha (argument1), o valor (argument2)
ds_list_insert(argument0,argument1,argument2)

-Adicione um script chamado 'procurar' e nele o codigo:
Código:

//procura na lista (argument0), a linha onde se encontra o valor (argument1)
return ds_list_find_index(argument0,argument1);

- Script procurar_senha:
Spoiler:

if ds_list_empty(argument0) return 0;

var d,ii,n,count;
d = ds_list_create(); // criar nova
ds_list_copy(d,argument0); // copiar
ii = ds_list_size(d); // tamanho da lista
n = 0; // número do index da array
pos[n] = -1; // array que guardará as posições

for ( i = 0; i < ii; i += 1 )
{
// achar posição
pos[n] = ds_list_find_index(d,argument1);

// se posição existe deletar na copia
// e mudar index da próxima array
if pos[n] != -1
{
ds_list_delete(d,pos[n]);
pos[n] += n;
n += 1;
}
}

// deletar copia
ds_list_destroy(d);

for(bb=0;bb<=n-1;bb+=1)
if pos[bb]=argument2
return 1;
return 0;


-Agora crie um objeto chamado 'controle'.
- Crie tambem um objeto chamado 'registrar' e outro 'entrar'.
- Nos ultimos dois, coloque seus respectivos sprites.

- Entre no objeto registrar e adicione o event mouse>>left pressed.
Coloque o codigo a seguir nesse evento:
Código:
with(controle) event_user(0)

- Entre no objeto entrar e adicione o mesmo evento (mouse),
mas coloque outro codigo:
Código:
with(controle) event_user(1)

Entre no objeto controle.
Adicione o evento CREATE e nele o codigo:
Código:

nome=add_coluna() //criar uma coluna para os nomes
idade=add_coluna() // mesma coisa para as idades
pass=add_coluna() // mesma coisa para as senhas
user=0 //define a linha que sera adicionada os valores.

Adicione um evento User Defined 0 no objeto controle. Cole o codigo:
Código:

var name, senha,age;
name=get_string("Nome:",'') //pega o nome da pessoa
senha=get_string('Senha:','') //pega a senha
age=get_string('Idade:','') //pega a idade
if procurar(nome,name)>-1 //se o nome ja existir
{show_message("Esse usuario ja existe.") exit} // notificar e sair

add_linha(nome,user,name) //adicionar na linha (user), na coluna (nome), o nome (name)
add_linha(pass,user,senha)// ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑, ↑↑↑↑↑↑↑↑ (pass), a senha (senha)
add_linha(idade,user,age) // mesma coisa dos de cima, mas muda a coluna e o valor
user+=1; //na proxima vez que alguem registrar, salvar na proxima linha das colunas

show_message('Bem-vindo '+name+'!') //se der tudo certo, notificar o usuario

Adicione um evento User Defined 1 no objeto controle. Cole o codigo:
Código:

var name,senha; //criar as variaveis usadas
name=get_string('Nome:','') //pegar nome
senha=get_string('Senha:','')//pegar senha

if procurar(nome,name)!=-1
{
pos_name=procurar(nome,name) //procurar a linha do nome na coluna
if procurar_senha(pass,senha)  //se a linha for a mesma que a senha certa
show_message(name+', voce esta logado.') //logou
else
show_message('Senha incorreta.') //se nao, a senha nao ta na linha, nao ta certa
}
else
show_message('Usuario inexistente!') // se nao achar o nome na coluna, notificar o user

Pronto! O sistema esta feito! Agora teste!
Há algumas desvantagens, pois ele nao salva os nomes, entao toda vez voce tem
que se registra. Mas é um teste. Estou estudando listas, por isso fiz isso.
Quando eu achar um jeito facil de salvar a lista eu coloco aqui.

Duvidas, criticas e sugestoes?
Poste aqui!


Última edição por Pedro Henrique em Sab 22 Jan 2011, 22:48, editado 3 vez(es)

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por Mr. Kaleb em Ter 28 Set 2010, 16:45

muito bom cara tava precisando disso bem ai pra da prum amigo meu VLW

Mr. Kaleb

Ranking : Nota C
Número de Mensagens : 1400
Idade : 19
Data de inscrição : 07/09/2010
Notas recebidas : C
Reputação : 21
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por rafinha12 em Dom 24 Out 2010, 18:14

Crie um arquivo chamado Contas.ini
e escreva o seguinte

[CONTAS]

agora abra o objeto controle e no User Defined 0 adicione



ini_open('Contas.ini')

var login, senha;
login=ini_write_string('CONTAS','Login',get_string("Login:",''))
senha=ini_write_string('CONTAS','Senha',get_string("Senha:",''))
if procurar(login,login)>-1
{
show_message("Este login já existe.") exit
}

add_linha(login,login,login)
add_linha(senha,login,senha)

show_message('Conta cadastrada com sucesso!')



agora tenta conectar o User Defined 1 no arquivo Contas.ini e carregar os dados

rafinha12

Número de Mensagens : 28
Idade : 20
Data de inscrição : 23/10/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por PedroX em Sab 22 Jan 2011, 22:50

Alguns usuarios disseram que o link do script estava inativo, ai eu coloquei ele no topico. Esta no spoiler.
Boa aprendizagem! Valeu!

Edit: Vou atualizar o tuto com funcoes mais rapidas e por criptografia.
Aguardem...

FLW

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por Lauro em Sab 22 Jan 2011, 23:06

deu erros dpois eu posto muito bão flw!

Lauro

Ranking : Nota D
Número de Mensagens : 854
Idade : 19
Data de inscrição : 09/11/2010
Notas recebidas : C+D
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://www.google.com

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por PedroX em Dom 23 Jan 2011, 12:02

Que tipo de erros?
Eu ainda nao coloquei para salvar conforme o jogo, pq ate seria mais complicado com ds_lists. O tutorial é direcionado as listas, mas posso dar um jeito. Se for isso, ja esta explicado. Mas se nao for, pode falar que eu vejo.

Eu vou dar um jeito de salvar listas quando o jogo fechar...

FLW

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por willam2 em Sex 10 Jun 2011, 20:16

Poderia colocar para salvar os usuarios, por favor?
Obrigado!

willam2

Número de Mensagens : 55
Data de inscrição : 31/05/2011
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por ricaun em Sex 10 Jun 2011, 22:45

Cara um modo bom de salva e carregar é usando o code da propria lista.

Código:
ds_list_write(id) //Cria um texto com os dados da lista id
ds_list_read(id,texto) //Carrega o texto para a lista id

Vc pode salvar o texto da lista em um arquivo .txt ou outro qualquer, depois vc pode carregar os dados para a lista. Acho bem bom de usar!

Té.

ricaun

Número de Mensagens : 169
Idade : 27
Data de inscrição : 23/09/2008
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por sonic luan em Sab 11 Jun 2011, 11:24

nossa muito bom!
talves eu ate use ese sitema em alguns jogos ;)

sonic luan

Ranking : Nota C
Número de Mensagens : 1003
Idade : 17
Data de inscrição : 28/01/2011
Notas recebidas : C-D-A-C
Reputação : 18
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://sonicmaker.forumeiros.com/memberlist

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por Lupptyr em Sab 21 Mar 2015, 18:24

Cada uma dessas etapas é feito em qual das engine Client/Server? sou novato.

Lupptyr

Número de Mensagens : 28
Idade : 21
Data de inscrição : 06/03/2015
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de registro e login por lists

Mensagem por Conteúdo patrocinado Hoje à(s) 18:05


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum