01.05.2017, 19:02
(
Последний раз редактировалось rolex; 25.05.2017 в 18:36.
)
Solucionado.
CMD:login(playerid, params[])
{
new file[64], password[MAX_PLAYERS], inputtext[256];
format(file, sizeof(file), "Players/%s.ini", PlayerName[playerid]);
password[playerid] = dini_Get(file, "Senha");
if(sscanf(params, "i", inputtext)){
SendClientMessage(playerid, red, "Coloque sua senha somente com nъmeros!");}else{
if(strcmp(password[playerid], inputtext, false) == 0)
{
SendClientMessage(playerid, green, "SERVER: Vocк logou com sucesso!");
SpawnPlayer(playerid);
}else{SendClientMessage(playerid, -1, "{FF0000}[SERVER]: Senha errada!");}}
return 1
}
CMD:registrar(playerid, params[]) { new file[64], senha; format(file, sizeof(file), "Players/%s.ini", pegarnome(playerid)); if(sscanf(params, "i", senha)) return SendClientMessage(playerid, red, "SERVER: Use /registrar [SENHA/NЪMEROS]"); if(dini_Exists(file)) return SendClientMessage(playerid, red, "SERVER: Esta conta jб existe! Use /login [SENHA] para jogar!"); dini_Create(file); dini_IntSet(file, "Senha", senha); SendClientMessage(playerid, green, "SERVER: Registrado com sucesso! Digite /login [SENHA] para logar-se no servidor!"); return 1; } CMD:login(playerid, params[]) { new file[60],password[256], inputtext[256], password2[256]; format(file, sizeof(file), "Players/%s.ini", pegarnome(playerid)); if( sscanf(params, "i", inputtext)) return SendClientMessage(playerid, -1, "uso correto: /login <senha>"); format(password, sizeof(password), "%i", dini_Get(file, "senha")); if (!strcmp(password, inputtext, false)) { SpawnPlayer(playerid); SendClientMessage(playerid, -1, "logado com sucesso!"); } else return SendClientMessage(playerid,-1, "senha incorreta!"); } stock pegarnome(playerid) { new name[24]; GetPlayerName(playerid, name, 24); return name; }
if(!strcmp("Texto","Texto"))
{
print("Igual");
}
CMD:registrar(playerid, params[]) { new file[64], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), "Players/%s.ini", name); if(dini_Exists(file)) return SendClientMessage(playerid, red, "SERVER: Esta conta jб existe! Use /login [SENHA] para jogar!"); new senha[30]; if(sscanf(params, "s[30]", senha)) return SendClientMessage(playerid, red, "SERVER: Use /registrar [SENHA]"); if(strlen(senha) > 30 || strlen(senha) < 3) return SendClientMessage(playerid, red, "SERVER: Senha muito grande/pequena!"); dini_Create(file); dini_IntSet(file, "Senha", udb_hash(senha)); SendClientMessage(playerid, green, "SERVER: Registrado com sucesso! Digite /login [SENHA] para logar-se no servidor!"); return 1; } CMD:login(playerid, params[]) { new password[30], password2[30]; if(sscanf(params, "s[30]s[30]", password, password2)) return SendClientMessage(playerid, 0xFF0000FF, "Uso: /login [Senha] [Confirmar senha]"); new file[64], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), "Players/%s.ini", name); new hash, hash2; hash = udb_hash(password); hash2 = udb_hash(password2); if(hash != hash2) return SendClientMessage(playerid, red, "SERVER: As senhas sгo diferentes!"); if(hash != dini_Int(file, "Senha")) return SendClientMessage(playerid, red, "SERVER: Senha errada!"); SendClientMessage(playerid, green, "SERVER: Vocк logou com sucesso!"); TogglePlayerSpectating(playerid, false); SpawnPlayer(playerid); return 1; } 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; }