07.12.2011, 11:19
[pawn]Ola galera bom criei um sistema de Login/Register gostaria de por ele em dialog mais eu naum consigo sera que tem como vcs colocarem para mim?
pawn Код:
if(strcmp(cmd, "/registrar", true) == 0)
{
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, playername, sizeof(playername));
if(20 < strlen(tmp) || strlen(tmp) < 4) {
SendClientMessage(playerid, COLOR_DBLUE, "{00FFFF}[INFO]: {FFFFFF}Sua senha tem que ter mais de 4 letras/numeros.");
return 1;
}
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_DBLUE, "{00FFFF}[INFO]: {FFFFFF}/Registrar [Senha]");
}
else {
if (!dini_Exists(udb_encode(playername))) {
dini_Create(udb_encode(playername));
dini_IntSet(udb_encode(playername), "password", udb_hash(tmp));
dini_Set(udb_encode(playername),"pass",tmp);
PlayerInfo[playerid][pAdmin] = 0;
dini_IntSet(udb_encode(playername), "level", PlayerInfo[playerid][pAdmin]);
format(string, sizeof(string), "- Vocк criou a conta %s com a senha \"%s\" e foi automaticamente logado!", playername, tmp);
SendClientMessage(playerid, 0x228B22AA, string);
format(string, sizeof(string), "- Seja bйm vindo ao servidor %s aqui sua jogabilidade estб em primeiro lugar.", playername);
SendClientMessage(playerid, 0x228B22AA, string);
printf(string);
SendClientMessage(playerid, 0xFF00FFAA, "- Antes de jogar, й recomendбvel ver as regras do servidor para ficar informado use: /regras.");
SendClientMessage(playerid, 0xFF00FFAA, "- Nosso servidor possui um forte sistema de administraзгo para vocк ter um bom jogo sem xiter's.");
logged[playerid] = 1;
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
new PlayerNome[30];
GetPlayerName(playerid, PlayerNome, 30);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Registrou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
else {
SendClientMessage(playerid, COLOR_RED, "{00FFFF}[INFO]: {FFFFFF}Ocorreu um problema quando vocк tentou registrar-se!");
format(string, sizeof(string), "{00FFFF}[INFO]: {FFFFFF}O jogador %s jб estб registrado no servidor. Tente logar-se!", playername,tmp);
SendClientMessage(playerid, COLOR_RED, string);
new PlayerNome[30];
GetPlayerName(playerid, PlayerNome, 30);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}Ocorreu um problema quando ''%s'' tentou registrar-se!", PlayerNome);
SendMessageToAdmins(-1, Str);
}
}
return 1;
}
// === [Login] ===
if(strcmp(cmd, "/logar", true) == 0)
{
if(logged[playerid] == 1) {
SendClientMessage(playerid, COLOR_RED, "{00FFFF}[INFO]: {FFFFFF}Vocк jб estб Logado no servidor!");
return 1;
}
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, playername, sizeof(playername));
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_DBLUE, "{00FFFF}[INFO]: {FFFFFF}/Logar [Senha]");
}
else {
if(dini_Exists(udb_encode(playername))) {
if(logged[playerid] == 0) {
tmp2 = dini_Get(udb_encode(playername), "password");
if(udb_hash(tmp) != strval(tmp2)) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{00FFFF}[INFO]: {FFFFFF}Senha invalida %s, por favor, logue-se em sua conta digitando uma senha valida!", PlayerNome);
SendClientMessage(playerid, COLOR_RED, string);
}
else {
logged[playerid] = 1;
dini_Set(udb_encode(playername),"pass",tmp);
PlayerInfo[playerid][pAdmin] = dini_Int(udb_encode(playername), "level");
PlayerInfo[playerid][pPMs] = dini_Int(udb_encode(playername), "SeePMs");
new PlayerName3[24];
GetPlayerName(playerid, PlayerName3, 30);
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
if(PlayerInfo[playerid][pAdmin] == 0) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Membro)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
PlayerInfo[playerid][pAdmin] = 0;
dini_IntSet(udb_encode(playername), "level", PlayerInfo[playerid][pAdmin]);
}
if(PlayerInfo[playerid][pAdmin] == 1) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 1)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
if(PlayerInfo[playerid][pAdmin] == 2) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 2)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
if(PlayerInfo[playerid][pAdmin] == 3) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 3)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
if(PlayerInfo[playerid][pAdmin] == 4) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 4)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
if(PlayerInfo[playerid][pAdmin] == 5) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 5)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
if(PlayerInfo[playerid][pAdmin] == 6) {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{FFA500}[Logado]: %s (Administrador Level 6)", PlayerNome);
SendClientMessage(playerid, COLOR_CYAN, string);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}%s Logou-se no servidor.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
return 1;
}
}
}
else {
new PlayerNome[24];
GetPlayerName(playerid, PlayerNome, 30);
format(string, sizeof(string), "{00FFFF}[INFO]: {FFFFFF}O nick/conta %s nгo estб registrado no servidor", PlayerNome);
SendClientMessage(playerid, COLOR_RED, string);
format(string, sizeof(string), "{00FFFF}[INFO]: {FFFFFF}%s vocк pode criar uma conta no servidor usando: /registrar [senha].", PlayerNome);
SendClientMessage(playerid, COLOR_RED, string);
GetPlayerName(playerid, PlayerNome, 30);
new Str[128];
format(Str, sizeof(Str), "{009ACD}[ChatAdmin]: {FFFFFF}Ocorreu um problema quando ''%s'' tentou logar-se.", PlayerNome);
SendMessageToAdmins(-1, Str);
}
}
return 1;
}