[Ajuda] Logar Por IP
#1

Ae pessoal, tava com uma ideiazinha na cabeзa e gostaria de saber se vocкs sabem como fazer, e se podem ma passar o cуdigo pra mim estudar-lo

й o seguinte, eu gostaria, que tipo, quando o player entrasse no meu server salva-se o ip dele em um "ini" com o nick na frente.. tipo assim

Код:
dini_IntSet("usuarios.ini",PlayerName(playerid),GetPlayerIp(playerid));
ai quando aquele nick entrar ele verificaria e ip, se estivesse diferente daria kick e falaria que esse nome pertence a outro usuбrio, e se desse certo, falaria.. sei la bem vindo novamente XD, bom... eu tenho o comesso alguem pode me ajudar?


Код:
OnGameModeInit:
if(!fexist("IPPlayers.ini")) dini_Create("IPPlayers");

OnPlayerDisconnect:
dini_IntSet("IPPlayers.ini",PlayerName(playerid),GetPlayerIp(playerid));
Reply
#2

quase todo mundo tem ip dinamico, nгo recomendo usar isso.
Reply
#3

Quote:
Originally Posted by Saw_BR
Посмотреть сообщение
quase todo mundo tem ip dinamico, nгo recomendo usar isso.
sei disso, mais usarei isso para outros meios pro meu admin, mais preciso da forma.. vocк sabe como?
Reply
#4

Tu usa Dini ainda ? Acre news 2002
Reply
#5

Quote:
Originally Posted by Menor
Посмотреть сообщение
Tu usa Dini ainda ? Acre news 2002
sem ofensas ta, mais acho que dini й o melhor que jб foi feito "NA MINHA OPINIГO" ele pelo menos NUNCA, NUNCA bugou ou ouve algum erro... preciso do cуdigo, alguйm vai me ajudar?
Reply
#6

Quote:
Originally Posted by Saw_BR
Посмотреть сообщение
quase todo mundo tem ip dinamico, nгo recomendo usar isso.
Dificilmente alguйm com o mesmo IP, que joga SA-MP, e entra no mesmo server que o player.

@OnTopic:
Posso te ajudar,mas agora estou ocupado, isto й possнvel fazer sem complicaзхes.

O uso da INC dini й para estudo?
Reply
#7

Quote:
Originally Posted by Schocc
Посмотреть сообщение
Dificilmente alguйm com o mesmo IP, que joga SA-MP, e entra no mesmo server que o player.

@OnTopic:
Posso te ajudar,mas agora estou ocupado, isto й possнvel fazer sem complicaзхes.

O uso da INC dini й para estudo?
Sim, estou estudando a forma de comportamento de arquivos preciso desse cуdigo para saber como ele й lido e talz, poh se ninguйm quer dar e cуdigo intгo deixa pra la, ja entrou +30 pessoas nesse post, eu duvido que +60% saiba como faze-lo
Reply
#8

Tente algo mais ou menos assim:

pawn Код:
new
    string[45]
;

dini_IntSet("usuarios.ini",(GetPlayerName(playerid, string, 24), string),   (GetPlayerIp(playerid, string, 16), string));
Nгo testei. mбs pela lуgica irб funcionar.
Reply
#9

Quote:
Originally Posted by zSuYaNw
Посмотреть сообщение
Tente algo mais ou menos assim:

pawn Код:
new
    string[45]
;

dini_IntSet("usuarios.ini",(GetPlayerName(playerid, string, 24), string),   (GetPlayerIp(playerid, string, 16), string));
Nгo testei. mбs pela lуgica irб funcionar.
E qual й a lуgica de setar uma string usando IntSet?


#OnTopic
pawn Код:
//Comeзo do Game Mode
new pNome[MAX_PLAYERS][25];
new pIP[MAX_PLAYERS][16];

//OnGameModeInit
if(!dini_Exists("IPPlayers.ini")) dini_Create("IPPlayers.ini");

//OnPlayerConnect
GetPlayerName(playerid,pNome[playerid],25);
GetPlayerIp(playerid,pIP[playerid],16);
new ip[DINI_MAX_STRING];
ip = dini_Get("IPPlayers.ini",pNome[playerid]);
if(!strcmp(ip,pIP[playerid],false))
{
    //O ip do player que entrou й o mesmo ip que ele usou anteriormente, logar ele aqui.
}

//OnPlayerDisconnect
dini_Set("IPPlayers.ini",pNome[playerid],pIP[playerid]);
strdel(pNome[playerid],0,24);
strdel(pIP[playerid],0,15);
PS: Sim, estou gastando cells, mas usando assim ganha mais velocidade na hora de ler (nгo prescisa chamar GetPlayerName denovo no script)
Reply
#10

Quote:
Originally Posted by andreasbleck
Посмотреть сообщение
E qual й a lуgica de setar uma string usando IntSet?


#OnTopic
pawn Код:
//Comeзo do Game Mode
new pNome[MAX_PLAYERS][25];
new pIP[MAX_PLAYERS][16];

//OnGameModeInit
if(!dini_Exists("IPPlayers.ini")) dini_Create("IPPlayers.ini");

//OnPlayerConnect
GetPlayerName(playerid,pNome[playerid],25);
GetPlayerIp(playerid,pIP[playerid],16);
new ip[DINI_MAX_STRING];
ip = dini_Get("IPPlayers.ini",pNome[playerid]);
if(!strcmp(ip,pIP[playerid],false))
{
    //O ip do player que entrou й o mesmo ip que ele usou anteriormente, logar ele aqui.
}

//OnPlayerDisconnect
dini_Set("IPPlayers.ini",pNome[playerid],pIP[playerid]);
strdel(pNome[playerid],0,24);
strdel(pIP[playerid],0,15);
PS: Sim, estou gastando cells, mas usando assim ganha mais velocidade na hora de ler (nгo prescisa chamar GetPlayerName denovo no script)
vllw + rep ai





@cloed Aqui Admin's
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)