enum pInfo
{
pSkin,
pSenha[MAX_SENHA+1],
pDinheiro
};
new PlayerInfo[MAX_PLAYERS][pInfo];
new Erro[MAX_PLAYERS]
PlayerPlaySound(playerid, 1097, 0.0, 0.0, 10.0);
new str[128];
new name[MAX_PLAYER_NAME];
new file[40];
GetPlayerName(playerid, name, 32);
format(str,sizeof(str), "»{FFFFFF} Olб %s, seja bem vindo ao GTA Brasil Vida Virtual, aguarde enquanto o servidor estб sendo carregado...", name);
SendClientMessage(playerid, Vermelho, str);
format(file, 40, PASTA_CONTAS, name);
if(DOF2_FileExists(file))
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Registro", "\n» Informe uma senha para se registrar:", "Registrar", "Cancelar");
}
StuntSuperSpeed[playerid] = false;
return 1;
}
new file[40], name[MAX_PLAYER_NAME]; // cria a variavel name com 40 celulas e a variavel Name
GetPlayerName(playerid, name, 32); // Pega o nome do player
format(file, 40, PASTA_CONTAS, name); // Formata o file que existe na pasta Jogadores
if(DOF2_FileExists(file)) // se o file existir
{
DOF2_SetInt(file, "Senha", PlayerInfo[playerid][pSenha]); // seta a senha do player para o que ele digitou
DOF2_SetInt(file, "Skin", PlayerInfo[playerid][pSkin]); // seta a skin para o id da skin atual
DOF2_SetInt(file,"Dinheiro",PlayerInfo[playerid][pDinheiro]);
DOF2_SaveFile(); // finalmente salvando o file
}
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]); // Seta a skin do player quando ele spawnar para a skin salva
GivePlayerMoney(playerid, PlayerInfo[playerid][pDinheiro]);
new file[40], name[MAX_PLAYER_NAME], str[128]; // criando a string file com 40 celulas e criando a variavel name
GetPlayerName(playerid, name, 32); // pegando o nome do player
format(file, 40, PASTA_CONTAS, name); // formatando o file para a pasta Jogadores
if(dialogid == DIALOG_REGISTRO) // Dialog registro
{
if(strlen(inputtext) < MIN_SENHA || strlen(inputtext) > MAX_SENHA)
{
format(str, sizeof(str), "| ERRO | A senha deve ter entre %d e %d caracteres!", MIN_SENHA, MAX_SENHA);
SendClientMessage(playerid, Vermelho, str);
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Registro", "/n» Informe uma senha para se registrar:", "Registrar", "Cancelar");
return 1;
}
if(!strval(inputtext)) // se ele nao digitar numeros da erro e volta no dialog de registro
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Registro", "/n» Informe uma senha para se registrar:", "Registrar", "Cancelar");
SendClientMessage(playerid, -1, "{FF7F24}| ERRO | Digite apenas nъmeros para se registrar");
return 1;
}
if(!response) //se ele apertar o botao Cancelar, kicka ele !
{
Kick(playerid);
return 1;
}
else // se ele colocar a senha certa cria os files
{
PlayerInfo[playerid][pSenha] = strval(inputtext); // pega a senha que ele digitou no campo do dialog
DOF2_CreateFile(file); // cria o file na pasta Jogadores
DOF2_SetInt(file, "Senha", PlayerInfo[playerid][pSenha]); // seta a senha para a que ele digitou no dialog
DOF2_SetInt(file, "Skin",38); // seta a skin dele para 38, podendo mudar para qualquer numero.
DOF2_SetInt(file, "Dinheiro",PlayerInfo[playerid][pDinheiro]);
DOF2_SaveFile(); // salva o file
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, "{B9D3EE}| INFO | Conta registrada com sucesso");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
}
}
if(dialogid == DIALOG_LOGAR)
{
if(!strval(inputtext)) // se ele nao digitar apenas numeros volta o dialog de login
{
SendClientMessage(playerid, -1, "{FF7F24}| ERRO | Digite apenas nъmeros para se logar.");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
return 1;
}
if(!response) // se ele clickar em Cancelar kicka ele !
{
Kick(playerid);
return 1;
}
else // Se ele colocar a senha certa
{
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha"); // pega a senha salva dele
if(strval(inputtext) == PlayerInfo[playerid][pSenha]) // pega a senha que ele digitou
{
PlayerInfo[playerid][pSkin] = DOF2_GetInt(file, "Skin"); // pega a skin do player
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]); // seta a skin do player para a skin salva
PlayerInfo[playerid][pDinheiro] = DOF2_GetInt(file,"Dinheiro");
GivePlayerMoney(playerid, PlayerInfo[playerid][pDinheiro]);
SpawnPlayer(playerid); // em seguida, spawna o player
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, closed, "| INFO | Logado com sucesso");
}
else // se ele errar a senha mostra o dialog denovo
{
SendClientMessage(playerid, Vermelho, "| ERRO | Vocк errou a senha, tente novamente. ( Se errar 3 vezes й kickado )");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
Erro[playerid]++;
if(Erro[playerid] == 3) // se ele errar 3 vezes ele serб kickado !
{
SendClientMessage(playerid, Vermelho, "| INFO | Vocк foi kickado por errar a senha 3 vezes");
Kick(playerid);
return 1;
}
}
}
}
new file[40], name[MAX_PLAYER_NAME], str[128]; // criando a string file com 40 celulas e criando a variavel name
GetPlayerName(playerid, name, 32); // pegando o nome do player
format(file, 40, PASTA_CONTAS, name); // formatando o file para a pasta Jogadores
if(dialogid == DIALOG_REGISTRO) // Dialog registro
{
if(strlen(inputtext) < MIN_SENHA || strlen(inputtext) > MAX_SENHA)
{
format(str, sizeof(str), "| ERRO | A senha deve ter entre %d e %d caracteres!", MIN_SENHA, MAX_SENHA);
SendClientMessage(playerid, Vermelho, str);
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Registro", "/n» Informe uma senha para se registrar:", "Registrar", "Cancelar");
return 1;
}
if(!strval(inputtext)) // se ele nao digitar numeros da erro e volta no dialog de registro
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "Registro", "/n» Informe uma senha para se registrar:", "Registrar", "Cancelar");
SendClientMessage(playerid, -1, "{FF7F24}| ERRO | Digite apenas nъmeros para se registrar");
return 1;
}
if(!response) //se ele apertar o botao Cancelar, kicka ele !
{
Kick(playerid);
return 1;
}
else // se ele colocar a senha certa cria os files
{
PlayerInfo[playerid][pSenha] = strval(inputtext); // pega a senha que ele digitou no campo do dialog
DOF2_CreateFile(file); // cria o file na pasta Jogadores
DOF2_SetInt(file, "Senha", PlayerInfo[playerid][pSenha]); // seta a senha para a que ele digitou no dialog
DOF2_SetInt(file, "Skin",38); // seta a skin dele para 38, podendo mudar para qualquer numero.
DOF2_SetInt(file,"Dinheiro",0);
DOF2_SaveFile(); // salva o file
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, "{B9D3EE}| INFO | Conta registrada com sucesso");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
}
}
if(dialogid == DIALOG_LOGAR)
{
if(!strval(inputtext)) // se ele nao digitar apenas numeros volta o dialog de login
{
SendClientMessage(playerid, -1, "{FF7F24}| ERRO | Digite apenas nъmeros para se logar.");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
return 1;
}
if(!response) // se ele clickar em Cancelar kicka ele !
{
Kick(playerid);
return 1;
}
else // Se ele colocar a senha certa
{
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha"); // pega a senha salva dele
if(strval(inputtext) == PlayerInfo[playerid][pSenha]) // pega a senha que ele digitou
{
PlayerInfo[playerid][pSkin] = DOF2_GetInt(file, "Skin"); // pega a skin do player
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]); // seta a skin do player para a skin salva
GivePlayerMoney(playerid, DOF2_GetInt(file,"Dinheiro"));
SpawnPlayer(playerid); // em seguida, spawna o player
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, -1, " ");
SendClientMessage(playerid, closed, "| INFO | Logado com sucesso");
}
else // se ele errar a senha mostra o dialog denovo
{
SendClientMessage(playerid, Vermelho, "| ERRO | Vocк errou a senha, tente novamente. ( Se errar 3 vezes й kickado )");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Login", "\n» Informe sua senha para logar:", "Logar", "Cancelar");
Erro[playerid]++;
if(Erro[playerid] == 3) // se ele errar 3 vezes ele serб kickado !
{
SendClientMessage(playerid, Vermelho, "| INFO | Vocк foi kickado por errar a senha 3 vezes");
Kick(playerid);
return 1;
}
}
}
}
CMD:skin(playerid, params[]) {
new id;
new skin;
new pName[128];
new file[40], name[MAX_PLAYER_NAME];
new str[128];
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,Laranja,"| ERRO | Vocк nгo й administrador(a)");
if(sscanf(params, "dd", id, skin)) return SendClientMessage(playerid, Vermelho,"| ERRO |{FFFFFF} Digite: /skin [id] [id da skin]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, Laranja, "| ERRO | ID Invбlido!");
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
SetPlayerSkin(id, skin);
format(str,sizeof(str),"* O(A) administrador(a) %s lhe deu a skin %d", pName, skin);
SendClientMessage(id, azuladm, str);
GetPlayerName(playerid, name, 32);
format(file, 40, PASTA_CONTAS, name);
if(DOF2_FileExists(file)) {
DOF2_SetInt(file, "Skin", PlayerInfo[playerid][pSkin]);
format(file, 40, PASTA_CONTAS, name);
DOF2_SaveFile();
}
return 1;
}
PlayerInfo[playerid][pSkin] = DOF2_GetBool(file, "Skin");
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
Bote na public que o player spawn..
pawn Код:
|