27.08.2011, 19:02
Olб galera do forum.sa-mp, gostaria que me ajudassem a criar uma senha anti fake, vou explicar melhor.
Quando algum ADM fosse logar pedisse a senha dele, ai depois que ele colocar a senha correta pedisse um senha anti-fake para ele poder logar... estou sem нdeia para criar isto vou estб postando meu sistema de registro/login para melhorar.
Grato desde jб!
Quando algum ADM fosse logar pedisse a senha dele, ai depois que ele colocar a senha correta pedisse um senha anti-fake para ele poder logar... estou sem нdeia para criar isto vou estб postando meu sistema de registro/login para melhorar.
Код:
if (dialogid == 1) { new name[MAX_PLAYER_NAME], String[128]; GetPlayerName(playerid, name, sizeof(name)); format(String, sizeof(String), "%.ini", name); format(file, sizeof(file), "%s.ini", name); if(!response) return Kick(playerid); if(!strlen(inputtext)) return format(String, sizeof(String), "{00FF00}Nick: {1E90FF}%s -{FF0000} Nгo Registrado\n\n{FFFFFF} Digite Uma {FF0000}Senha {FFFFFF}Para Continuar", name); ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registro", String, "Registrar", "Sair"); dini_Create(file); dini_IntSet(file, "Password", udb_hash(inputtext)); dini_IntSet(file, "Level",PlayerInfo[playerid][Admin] = 0); dini_IntSet(file, "VIPLevel",PlayerInfo[playerid][VIP] = 0); dini_IntSet(file, "Score",PlayerInfo[playerid][Score] = 0); dini_IntSet(file, "BOPELevel",PlayerInfo[playerid][BOPE] = 0); dini_IntSet(file, "RRBLevel",PlayerInfo[playerid][RRB] = 0); dini_IntSet(file, "EXLevel",PlayerInfo[playerid][EX] = 0); dini_IntSet(file, "CHQLevel",PlayerInfo[playerid][CHQ] = 0); dini_IntSet(file, "MILLevel",PlayerInfo[playerid][MIL] = 0); dini_IntSet(file, "CVLevel",PlayerInfo[playerid][CV] = 0); dini_IntSet(file, "ADALevel",PlayerInfo[playerid][ADA] = 0); dini_IntSet(file, "TCPLevel",PlayerInfo[playerid][TCP] = 0); dini_IntSet(file, "PCCLevel",PlayerInfo[playerid][PCC] = 0); dini_IntSet(file, "Warns",PlayerInfo[playerid][Warns] = 0); dini_IntSet(file, "Preso",PlayerInfo[playerid][Preso] = 0); GivePlayerMoney(playerid, 50000); GivePlayerMoney(playerid, dini_Int(file,"Grana")); dini_IntSet(file,"Morreu", 0); dini_IntSet(file,"Matou", 0); dini_IntSet(file,"Logou", 0); dini_IntSet(file,"Cocaina", 0); dini_IntSet(file,"Maconha", 0); GameTextForPlayer(playerid, "~G~ REGISTRADO COM SUCESSO!",2000,1); TextDrawHideForPlayer(playerid, Textdraw08); TextDrawHideForPlayer(playerid, Textdraw09); ShowPlayerDialog(playerid,Org,DIALOG_STYLE_LIST,"Escolha uma Organizaзгo","Comando Vermelho\nAmigos dos Amigos\nTerceiro Comando Puro\nPrimeiro Comando da Capital\nSou de Outra Organizaзгo","Selecionar",""); SetPVarInt(playerid,"Escolha",1); logado[playerid] = 1; } if (dialogid == 2) { new name[MAX_PLAYER_NAME], String[128]; GetPlayerName(playerid, name, sizeof(name)); format(String, sizeof(String), "%.ini", name); format(file, sizeof(file), "%s.ini", name); if(!response) return Kick(playerid); if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Login", String, "Logar", "Sair"); new tmp = dini_Int(file, "Password"); if(udb_hash(inputtext) != tmp) { PlayerInfo[playerid][Warns] += 1; SendClientMessage(playerid, 0xFF0000FF, "** Vocк digitou a senha errada!"); format(String, sizeof(String), "{00FF00}Nick: {1E90FF}%s - {00FF00}Registrado\n\n{FFFFFF} Digite Sua {FF0000}Senha {FFFFFF}Para Logar", name); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Login", String, "Logar", "Sair"); } else { logado[playerid] = 1; SetarPlayer(playerid); PlayerInfo[playerid][Admin] = dini_Int(file, "Level"); PlayerInfo[playerid][VIP] = dini_Int(file, "VIPLevel"); PlayerInfo[playerid][BOPE] = dini_Int(file, "BOPELevel"); PlayerInfo[playerid][RRB] = dini_Int(file, "RRBLevel"); PlayerInfo[playerid][EX] = dini_Int(file, "EXLevel"); PlayerInfo[playerid][CHQ] = dini_Int(file, "CHQLevel"); PlayerInfo[playerid][MIL] = dini_Int(file, "MILLevel"); PlayerInfo[playerid][CV] = dini_Int(file, "CVLevel"); PlayerInfo[playerid][ADA] = dini_Int(file, "ADALevel"); PlayerInfo[playerid][TCP] = dini_Int(file, "TCPLevel"); PlayerInfo[playerid][PCC] = dini_Int(file, "PCCLevel"); PlayerInfo[playerid][Warns] = dini_Int(file, "Warns"); PlayerInfo[playerid][Preso] = dini_Int(file, "Preso"); Matou[playerid] = dini_Int(file, "Matou"); Morreu[playerid] = dini_Int(file, "Morreu"); Logou[playerid]++; GameTextForPlayer(playerid, "~G~ LOGADO COM SUCESSO!",2000,1); TextDrawHideForPlayer(playerid, Textdraw08); TextDrawHideForPlayer(playerid, Textdraw09); new Money = GetPlayerMoney(playerid); GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Logado como: %s", name); SendClientMessage(playerid, 0xFD4F3596, String); format(String, sizeof(String), "----------------------------------"); SendClientMessage(playerid, COLOR_WHITE, String); format(String, sizeof(String), "Tipo de conta:"); SendClientMessage(playerid, 0x33AAFFFF, String); format(String, sizeof(String), "Membro normal"); SendClientMessage(playerid, 0xE3E3E3FF, String); format(String, sizeof(String), "Informaзхes da conta:"); SendClientMessage(playerid, 0x33AAFFFF, String); format(String, sizeof(String), "Dinheiro [%d] Dinheiro no Banco [%d]", Money, Banco[playerid]); SendClientMessage(playerid, 0xE3E3E3FF, String); } if(PlayerInfo[playerid][Admin] == 1) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Administrador Level 1 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Adm Temp:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); } if(PlayerInfo[playerid][Admin] == 2) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Admin Level 2 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Adm Ajudante:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); } if(PlayerInfo[playerid][Admin] == 3) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Admin Level 3 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Adm Master:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); } if(PlayerInfo[playerid][Admin] == 4) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Admin Level 4 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Adm Hierarquia:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); } if(PlayerInfo[playerid][Admin] == 5) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Admin Level 5 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Adm Geral:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); } if(PlayerInfo[playerid][Admin] == 6) { GetPlayerName(playerid, name, 30); format(String, sizeof(String), "Admin Level 6 - /comandosadm"); SendClientMessage(playerid, 0xE3E3E3FF, String); IsPlayerAdmin(playerid); format(String, sizeof(String), "~h~~r~Game Master:~n~~h~~w~ %s ~g~on", name); GameTextForAll(String, 5000, 1); }