[DUV] Registro com DINI
#1

Salve galera, se estiver na area errada por favor me avisem que eu troco, й que sou novo no forum agora.

Seguinte, a muito que venho mechendo com pawno, e buscar sempre aprender.

Hoje estou tentando montar um sistema de registro com dini, diante do tutorial que temos aqui no forum.

O Code й o seguinte:

Код:
	if(dialogid == 1)
	{
		if(response)
		{
		    if(!strlen(inputtext))
		    {
				new Nome[MAX_PLAYER_NAME], string[256];
				GetPlayerName(playerid, Nome, sizeof(Nome));
				format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
				ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Bem Vindo ao Servidor", String, "Registrar", "Cancelar");
				return 1;
			}
			new Nome[MAX_PLAYER_NAME], File[256];
			GetPlayerName(playerid, Nome, sizeof(Nome));
			format(File, sizeof(File), CONTAS, Nome);
			dini_Create(File);
			dini_Set(File,"Senha",(strval)inputtext);
			dini_IntSet(File,"Dinheiro",PlayerInfo[pStatus][pDinheiro]);
			dini_IntSet(File,"Nome",PlayerInfo[pStatus][pNome]);
			LogarPlayer[playerid] = 1;
			return 1;
			}
O que acontece й seguinte, quando eu insiro uma senha apenas nъmerica, ela salva no arquivo .txt como exemplo

Senha = (numero).

Porйm quando acrescento uma letra ele salva como

Senha = 0

E depois q eu tento entrar de novo preciso por 0 para entrar e nгo as letras.

Queria saber, se tem um outro modo para inserir "textos" e nгo apenas nъmeros.

Se estiver em бrea errada avisa ae ok?

Muito obrigado desde jб
Reply
#2

Bem Vindo


Usamos strval para transformar em valores Inteiros, por exemplo:

Se:

pawn Код:
inputtext = "Muito Loko"

strval(inputtext) = Muito Loko   //Sem as aspas
Isso й muito usado para definir o valor do dinheiro por exemplo, onde nгo se usam as aspas (presentes sу em textos)


Seu comando ficaria assim:

pawn Код:
if(dialogid == 1)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                new Nome[MAX_PLAYER_NAME], string[256];
                GetPlayerName(playerid, Nome, sizeof(Nome));
                format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
                ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Bem Vindo ao Servidor", String, "Registrar", "Cancelar");
                return 1;
            }
            new Nome[MAX_PLAYER_NAME], File[256];
            GetPlayerName(playerid, Nome, sizeof(Nome));
            format(File, sizeof(File), CONTAS, Nome);
            dini_Create(File);
            dini_Set(File,"Senha", inputtext); //Aqui estava o strval
            dini_IntSet(File,"Dinheiro",PlayerInfo[pStatus][pDinheiro]);
            dini_IntSet(File,"Nome",PlayerInfo[pStatus][pNome]);
                    ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_MSGBOX, "Login", "Registro completado com sucesso", "Logar", "Cancelar");
            LogarPlayer[playerid] = 1;
            return 1;
            }

Sugiro que vocк pegue o tutorial sobre KcmD na minha assinatura, nele eu explico bem sobre strval


E use [ pawn] e [/ pawn] para postar cуdigos no fуrum.


Espero ter ajudado
Reply
#3

veja se assim funciona:
pawn Код:
//
if(dialogid == 1)
    {
        if(response)
        {
            if(strlen(inputtext))
            {
                new Nome[MAX_PLAYER_NAME], File[256];
                GetPlayerName(playerid, Nome, sizeof(Nome));
                format(File, sizeof(File), CONTAS, Nome);
                dini_Create(File);//Vai crar a conta
                dini_Set(File,"Senha",(strval)inputtext);//salva a senha
                dini_IntSet(File,"Dinheiro",PlayerInfo[pStatus][pDinheiro]);//
                dini_IntSet(File,"Nome",PlayerInfo[pStatus][pNome]);
                LogarPlayer[playerid] = 1;
            }
        }
        else
        {
            //funзгo usada se ele cancelar
        }
    }
Reply
#4

/\ dini_Set(File,"Senha",strval(inputtext));
Reply
#5

pawn Код:
format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
WTF mano... Bem vindo %s Ao servidor ( nome ).?
Reply
#6

Quote:
Originally Posted by rjjj
Посмотреть сообщение
Bem Vindo


Usamos strval para transformar em valores Inteiros, por exemplo:

Se:

pawn Код:
inputtext = "Muito Loko"

strval(inputtext) = Muito Loko   //Sem as aspas
Isso й muito usado para definir o valor do dinheiro por exemplo, onde nгo se usam as aspas (presentes sу em textos)


Seu comando ficaria assim:

pawn Код:
if(dialogid == 1)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                new Nome[MAX_PLAYER_NAME], string[256];
                GetPlayerName(playerid, Nome, sizeof(Nome));
                format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
                ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Bem Vindo ao Servidor", String, "Registrar", "Cancelar");
                return 1;
            }
            new Nome[MAX_PLAYER_NAME], File[256];
            GetPlayerName(playerid, Nome, sizeof(Nome));
            format(File, sizeof(File), CONTAS, Nome);
            dini_Create(File);
            dini_Set(File,"Senha", inputtext); //Aqui estava o strval
            dini_IntSet(File,"Dinheiro",PlayerInfo[pStatus][pDinheiro]);
            dini_IntSet(File,"Nome",PlayerInfo[pStatus][pNome]);
                    ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_MSGBOX, "Login", "Registro completado com sucesso", "Logar", "Cancelar");
            LogarPlayer[playerid] = 1;
            return 1;
            }

Sugiro que vocк pegue o tutorial sobre KcmD na minha assinatura, nele eu explico bem sobre strval


E use [ pawn] e [/ pawn] para postar cуdigos no fуrum.


Espero ter ajudado
Quote:
Originally Posted by Fabricio_Rios
Посмотреть сообщение
pawn Код:
format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
WTF mano... Bem vindo %s Ao servidor ( nome ).?

rjjj Muito Obrigado, consegui fazer do jeito que precisava lendo tambйm o seu tutorial consegui entender sobre o KcmD, o que vai me facilitar um pouco... Agradeзo a ajuda desde jб...

E Fabricio, peзo que leia a string completa. (nome) й o nome do servidor que ainda eu nгo o coloquei, por isso em todo lugar que irб aparecer o nome do servidor estou colocando (nome)

E agradeзo tambйm aos demais que tentaram ajudar, mas achei a resposta do rjjj mais completa. Obrigado
Reply
#7

Quote:
Originally Posted by Fabricio_Rios
Посмотреть сообщение
pawn Код:
format(String, sizeof(String), "Bem vindo %s Ao servidor ( nome ). Vocк ainda nгo estб registrado.Por favor insira uma senha para comeзarmos o registro", Nome);
WTF mano... Bem vindo %s Ao servidor ( nome ).?
(nome) e onde ficarб o nome do servidor dele, ele ainda nгo escolheu o mesmo ou esta escondendo ele
Reply
#8

aaah ta agora intendi rsrs =)
Reply
#9

como que eu faco pra criar registro por email em formato dini e o que eu uso no momento se alguem me ajudar agradeзo,meu registro inicial esta assim quero tipo fazer a funcao de registro por email antes de colocar a senha

if(PlayerInfo[playerid][Logado] == 0)
{
if(!dini_Exists(file))
{
format(STRX, sizeof(STRX), "{66A7BB}Usuбrio{FFFFFF}: %s \n\nConta:{C30F0F}Nao Registrado{FFFFFF} \n\nInsira uma senha:", aname);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_PASSWORD, "REGISTRAR", STRX, "Registrar", "Sair");
SetPlayerSkin(playerid, 154);///////////////////// skin de intro
}
if(dini_Exists(file))
{
format(STRX, sizeof(STRX), "{66A7BB}Usuбrio{FFFFFF}: %s \n\nConta:{48A63E} Registrada{FFFFFF} \n\nInsira sua senha:", aname);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{C30F0F}Conta{FFFFFF}", STRX, "Logar", "Sair");
}
}
else {
SendClientMessage(playerid, Vermelho, "| KICK | Vocк foi kickado(a) por nгo se registrar / logar");
Kick(playerid);
}
return 1;
}
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)