06.05.2012, 20:49
Boa tarde gostaria de um Script Senha para tipo camuflar as senhas das contas do serve. agradeзo
forward Encrypt(string[]);
public Encrypt(string[])
{
for(new x=0; x < strlen(string); x++)
{
string[x] += (3^x) * (x % 15);
if(string[x] > (0xff))
{
string[x] -= 256;
}
}
return 1;
}
if (strcmp("/enc", cmdtext, true, 4) == 0)
{
new str[126], str2[126]; // cria as vars..
format(str2,sizeof str2,"%s",cmdtext[5]); // captura o q foi digitado antes de encriptar.
Encrypt(cmdtext[5]); // encripta a string digitada, pode ser numeros tbm..
format(str,sizeof str, "VocК digitou: %s, e depois de Encriptar: %s", str2,cmdtext[5]), SendClientMessage(playerid, -1, str); // envia a msg contendo o q foi digitado, sem encriptar e encriptado
return 1;
}
CMD:registrar(playerid, params[])
{
new senha[30],file[70],str[30];
format(file,sizeof(file),"%s.ini", PlayerName(playerid));
if(DOF2_FileExists(file)) return SendClientMessage(playerid,-1,"Conta jб registrada!");
if(sscanf(params,"s", senha)) return SendClientMessage(playerid,-1,"Use: /registrar [Senha]");
format(str, 30,"%s", senha);
DOF2_CreateFile(file);
Encrypt(senha);
DOF2_SetString(file,"Senha", senha);
DOF2_SaveFile();
new string[100];
format(string, sizeof string,"Conta registrada com sucesso! Senha normal: %s. Senha encryptada: %s", str, senha);
SendClientMessage(playerid,-1, string);
return 1;
}
CMD:logar(playerid, params[])
{
new senha[30],file[70];
format(file,sizeof file,"%s.ini", PlayerName(playerid));
if(!DOF2_FileExists(file)) return SendClientMessage(playerid,-1,"Vocк ainda nгo й registrado, use: /registrar.");
if(sscanf(params,"s", senha)) return SendClientMessage(playerid,-1,"Use: /logar [senha]");
Encrypt(senha);
if(strcmp(DOF2_GetString(file, "Senha"), senha, true) == 0)
{
SendClientMessage(playerid,-1,"Logado com sucesso!");
}
else return SendClientMessage(playerid,-1,"Senha incorreta, tente novamente!");
return 1;
}
forward Encrypt(string[]);
public Encrypt(string[])
{
for(new x=0; x < strlen(string); x++)
{
string[x] += (3^x) * (x % 15);
if(string[x] > (0xff))
{
string[x] -= 256;
}
}
return 1;
}
pawn Code:
|
if (strcmp(cmd, "/logar", true) ==0 )
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
new tmppass[64];
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vocк jб estб logado.");
return true;
}
Encrypt(password);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USE: /logar [Senha]");
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Fazendo Seu Login:", "{FFFFFF}Seja Bem Vindo(a)\n {00EE00}Bxxxx{FFD700}xxxx {00B2EE}xxxx{FFFFFF}.\n{FFFFFF}\nStatus da Conta: {00FF00}Registrada\n{FFFFFF}\nPor Favor Digite Sua Senha Para Logar !", "Logar", "Sair");
return true;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
//Encrypt(tmppass);
OnPlayerLogin(playerid,tmppass);
}
return true;
}
if (strcmp(cmd, "/registrar", true) ==0 )
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vocк jб estб logado.");
return true;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
Encrypt(password);
format(string, 64, "Contas/%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "O Nick que vocк estб usando jб existe, use outro por favor.");
fclose(hFile);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Fazendo Seu Login:", "{FFFFFF}Seja Bem Vindo(a)\n {00EE00}xxxx {FFD700}xxxx {00B2EE}xxxx{FFFFFF}.\n{FFFFFF}\nStatus da Conta: {00FF00}Registrada\n{FFFFFF}\nPor Favor Digite Sua Senha Para Logar !", "Logar", "Sair");
return true;
}
new tmppass[64];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Por favor, USE: /registrar [Senha]");
//SendClientMessage(playerid, COR_TRIADS, "{FF8C00}---<> Use Nome_Sobrenome ( Ex: {00FF00}xxxx{FF8C00} ) <>---");
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Fazendo Seu Registro:", "{FFFFFF}Seja Bem Vindo(a)\n{00EE00}xxxx {FFD700}xxxx{00B2EE}xxxx{FFFFFF}.\nStatus da Conta: {FF0000}Nгo Registrada\n{FFFFFF}Use: {00FF00}Nome_Sobrenome\n\n{FFFFFF}Exemplo: {ffff00}Diogo_Silva{FFFFFF}\n{FFFFFF}Digite Sua Senha Para Registrar !", "Registrar", "Cancelar");
return true;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
// Encrypt(tmppass);
OnPlayerRegister(playerid,tmppass);
}
return true;
}
stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n<length; n++)
{
s1 = (s1 + buf[n]) % 65521;
s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
}