[AJUDA]Login box e admin
#1

Estou com problemas no login box eu coloquei ele no pwn ai eu logo tudo bem ai quando relogo nao ta salvando pq?
se alguem tiver um codigo pwn ai que salve passe pf.
E nao consigo um Fs bom de admin alguem tem um pf?
Agradeзo desde ja
Reply
#2

Posta o Cуdigo.

https://sampforum.blast.hk/showthread.php?tid=218353
Reply
#3

Код:
#include <a_samp>
#include <dudb>
#include <dini>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#pragma unused ret_memcpy

#define Registro 0
#define Login 1

new arquivo[128];
new nome[MAX_PLAYER_NAME];

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print("[FeK] - Login Box  ...:::  Iniciado  :::...");
	print("          Por:  Falcon_Sixe             ");
	print("--------------------------------------\n");
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}
#endif

public OnPlayerConnect(playerid)
{
	new string[128];

    GetPlayerName(playerid, nome, sizeof(nome));
	format(arquivo,sizeof(arquivo),"/Arquivos/Contas/%s.ini",nome);
	if(!fexist(arquivo))
	{
	    format(string, sizeof string, "Vocк Nгo Possui Registro\n\nNome: %s\n\nInsira uma Senha para se Registrar", nome);
	    ShowPlayerDialog(playerid, Registro, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Registrar", "Sair");
	}
	if(fexist(arquivo))
	{
	    format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
	    ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
	}
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    GetPlayerName(playerid, nome, sizeof(nome));
	format(arquivo,sizeof(arquivo),"/Arquivos/Contas/%s.ini",nome);
	if(fexist(arquivo))
	{
	    dini_IntSet(arquivo,"Dinheiro",GetPlayerMoney(playerid));
	    dini_IntSet(arquivo,"Level", GetPlayerScore(playerid));
	    dini_IntSet(arquivo,"Skin", GetPlayerSkin(playerid));
	    dini_IntSet(arquivo,"LevelProcurado", GetPlayerWantedLevel(playerid));
	}
	return 1;
}

public OnPlayerSpawn(playerid)
{
    SetPlayerSkin(playerid, dini_Int(arquivo,"Skin"));
	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	new string[128];

	if(dialogid == Registro)
	{
	    if(response)
	    {
	        GetPlayerName(playerid, nome, sizeof(nome));
	        if(strlen(inputtext) == 0)
			{
				format(string, sizeof string, "Vocк Nгo Possui Registro\n\nNome: %s\n\nInsira uma Senha para se Registrar", nome);
	    		ShowPlayerDialog(playerid, Registro, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Registrar", "Sair");
				return 0;
			}
			format(arquivo,sizeof(arquivo),"/Arquivos/Contas/%s.ini",nome);
			if(!fexist(arquivo))
			{
			    dini_Create(arquivo);
			    dini_IntSet(arquivo,"Password", udb_hash(inputtext));
			    format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
	    		ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
	    		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
				GetPlayerName(playerid, nome, sizeof(nome));
				printf("[Registro] %s se Registrou-se", nome);
			}
	    }
	    else
	    {   
	        SendClientMessage(playerid, 0xFF0000FF, "Vocк saiu do Servidor sem Se Registrar !!");
	        SendClientMessage(playerid, 0x80FF00AA, "Volte Sempre...");
            Kick(playerid);
		}
	}
	if(dialogid == Login)
	{
	    if(response)
	    {
	        if(strlen(inputtext) == 0)
			{
			    GetPlayerName(playerid, nome, sizeof(nome));
			    format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
	    		ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
				return 0;
			}
			GetPlayerName(playerid, nome, sizeof(nome));
			format(arquivo,sizeof(arquivo),"/Arquivos/Contas/%s.ini",nome);
			if(fexist(arquivo))
			{
			    new password = dini_Int(arquivo, "Password");
		       	if(udb_hash(inputtext) != password)
				{
				    GetPlayerName(playerid, nome, sizeof(nome));
				    format(string, sizeof string, "Vocк jб Possui Registro\n\nNome: %s\n\nInsira sua senha para que possa logar:", nome);
 				    ShowPlayerDialog(playerid, Login, DIALOG_STYLE_INPUT, "-(Servidor)-", string, "Logar", "Sair");
                    SendClientMessage(playerid, 0xFF0000FF, "-(Servidor)-  Senha Incorreta. Tente Novamente");
					return 1;
				}
				if(udb_hash(inputtext) == password)
				{
				    SpawnPlayer(playerid);
				    SetPlayerScore(playerid, dini_Int(arquivo,"Level"));
				    SetPlayerMoney(playerid, dini_Int(arquivo,"Dinheiro"));
				    SetPlayerWantedLevel(playerid, dini_Int(arquivo,"LevelProcurado"));
				    GetPlayerName(playerid, nome, sizeof(nome));
					printf("[Login] %s Logou no Servidor", nome);
					return 1;
				}
			}
	    }
	    else
	    {
	        SendClientMessage(playerid, 0xFF0000FF, "Vocк saiu do Servidor sem Se Logar !!");
	        SendClientMessage(playerid, 0x80FF00AA, "Volte Sempre...");
            Kick(playerid);
		}
	}
	return 1;
}
Reply
#4

Moskito crйditos que й bom nada nй?

Poste o cуdigo para que possa ser ajudado.
Reply
#5

Certifique-se de ter, na sua pasta scriptfiles, criado a pasta Arquivos e dentro dela a subpasta Contas.


Fora esse, nгo hб nada no cуdigo que possa causar bugs .


Espero ter ajudado .
Reply
#6

Cara eu fiz isso que vc falo mas do mesmo jeito nao quer ir :S, por que sera agora ? :S
Mesmo criando as pastas que vc falo nao salvo
Reply
#7

Cria uma variavel e salve-a quando ele for registrado, quando sair e get-a quando ele logar
Reply
#8

Como faзo essa variavel ?
Reply
#9

pawn Код:
new gato
Isso se chama variбvel, porque tem uma variaзгo.


pawn Код:
new Logged[MAX_PLAYERS];
Isso й outra variбvel, sу que indexada com a constante MAX_PLAYERS (500).



PPara resolver.

Crie no ScriptFiles estas pastas:
pawn Код:
Arquivos/Contas/
Reply
#10

Desculpem estar postando dnv mas eu criei essa variavel e tbm continua mesmo sendo esse fs criei as pastas baixei outro FS de login box e continua, ai um cara aki no ts que eu fico me falo que podia ser um problema no dini, sera que pode ser mesmo ? Se for alguem sabe onde posso baixar um que de certo?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)