alguem ae me ensina a bloquear um cmd porque tipo tem ums hackers que entrгrгo no meu servidor й estгo usando um hacker que digita mesmo estando na dialog de login, exemplo eu sou admin ai ele loga com meu nick й kicka geral ai tipo queria um bloquador de comandos, ai quando ele digitasse aparecia assim "Vocк nгo esta logado para digitar este comando."
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DIALOG_OPCOES:
{
if(!response) return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST,"Escolha uma opзгo","Logar\nEsqueci minha senha\nSair","Selecionar","");
if(listitem == 0)
{
new string[170];
format(string, sizeof(string),"{FFFFFF}Olб {7CFC00}%s{FFFFFF}, seja bem vindo ao servidor.\n{FFFFFF}Sua conta jб estб registrada.\n{FFFFFF}Digite sua senha para logar.", NomePlayer(playerid));
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"[NomeSv] - Login",string,"Logar","Cancelar");
}
else if(listitem == 1)
{
new text[] = "Para recuperar sua conta responda a pergunta a seguir:\nQual й o nome completo da sua mгe?";
ShowPlayerDialog(playerid, DIALOG_RECUPERAR_CONTA, DIALOG_STYLE_INPUT,"[NomeSv] - Recuperar conta",text,"Pronto","Voltar");
}
else if(listitem == 2)
{
SendClientMessage(playerid,-1,"Vocк escolheu a opзгo Sair e foi kickado.");
Kick(playerid);
}
return 1;
}
case DIALOG_RECUPERAR_CONTA:
{
if(!response) return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST,"Escolha uma opзгo","Logar\nEsqueci minha senha\nSair","Selecionar","");
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_RECUPERAR_CONTA, DIALOG_STYLE_INPUT,"[NomeSv] - Recuperar conta","Responda a pergunta:\n\nQual o nome completo da sua mгe?","Pronto","Voltar");
if(strcmp(DOF2_GetString(ContaPlayer(playerid),"Pergunta de Seguranзa"),inputtext, true) == 0)
{
ShowPlayerDialog(playerid, DIALOG_MUDAR_SENHA, DIALOG_STYLE_INPUT,"[NomeSv] - Trocar senha","Digite sua nova senha.","Trocar","Cancelar");
}
else return ShowPlayerDialog(playerid, DIALOG_RECUPERAR_CONTA,DIALOG_STYLE_INPUT,"[NomeSv] - Recuperar conta","Resposta errada, tente novamente.","Pronto","Cancelar");
return 1;
}
case DIALOG_MUDAR_SENHA:
{
if(!response) return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST,"Escolha uma opзгo","Logar\nEsqueci minha senha\nSair","Selecionar","");
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_MUDAR_SENHA, DIALOG_STYLE_INPUT,"[NomeSv] - Trocar senha","Digite sua nova senha.","Trocar","Cancelar");
DOF2_SetString(ContaPlayer(playerid),"Senha", inputtext);
DOF2_SaveFile();
new string[80];
format(string, sizeof(string),"Senha alterada com sucesso!Nova senha: {7CFC00}%s", inputtext);
SendClientMessage(playerid,-1,string);
CarregarPlayer(playerid);
SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
return 1;
}
case DIALOG_REGISTRO:
{
if(!response) return SendClientMessage(playerid,-1,"Vocк foi kickado por nгo se registrar."), Kick(playerid);
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DIALOG_REGISTRO, DIALOG_STYLE_INPUT,"[NomeSv] - Registro","Digite uma senha para se registrar.","Registrar","Cancelar");
DOF2_CreateFile(ContaPlayer(playerid));
DOF2_SetString(ContaPlayer(playerid),"Senha", inputtext);
DOF2_SaveFile();
new string[90];
format(string, sizeof(string),"Sua conta foi registrada. Senha: {7CFC00}%s", inputtext);
SendClientMessage(playerid,-1, string);
SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
SetPlayerScore(playerid, 1);
GivePlayerMoney(playerid, 300);
new text[] = "Responda a pergunta a seguir para que vocк possa recuperar sua conta caso um dia esqueзa a senha.\nPergunta: Qual o nome completo da sua mгe?";
ShowPlayerDialog(playerid, DIALOG_PERGUNTA_SEGURANCA, DIALOG_STYLE_INPUT,"[NomeSv] - Pergunta de Seguranзa", text, "Pronto","");
}
case DIALOG_PERGUNTA_SEGURANCA:
{
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_PERGUNTA_SEGURANCA, DIALOG_STYLE_INPUT,"[NomeSv] - Pergunta de Seguranзa","Por favor responda a pergunta:\nQual o nome completo da sua mгe?","Pronto","");
DOF2_SetString(ContaPlayer(playerid),"Pergunta de Seguranзa", inputtext);
DOF2_SaveFile();
new string[90];
format(string, sizeof(string),"Vocк respondeu: %s.", inputtext);
SendClientMessage(playerid,-1, string);
ShowPlayerDialog(playerid, DIALOG_SEXO, DIALOG_STYLE_MSGBOX,"[NomeSv] - Sexo","Qual й seu sexo?","Masculino","Feminino");
return 1;
}
else if(!response)
{
new text[] = "Responda a pergunta a seguir para que vocк possa recuperar sua conta caso um dia esqueзa a senha.\nPergunta: Qual o nome completo da sua mгe?";
ShowPlayerDialog(playerid, DIALOG_PERGUNTA_SEGURANCA, DIALOG_STYLE_INPUT,"[NomeSv] - Pergunta de Seguranзa", text, "Pronto","");
return 1;
}
return 1;
}
case DIALOG_SEXO:
{
if(response)
{
SendClientMessage(playerid,-1,"Vocк й homem.");
Jogador[playerid][Sexo] = HOMEM;
}
else if(!response)
{
SendClientMessage(playerid,-1,"Vocк й mulher.");
Jogador[playerid][Sexo] = MULHER;
}
ShowPlayerDialog(playerid, DIALOG_IDADE, DIALOG_STYLE_INPUT,"[NomeSv] - Idade","Quantos anos vocк tem?","Pronto","");
return 1;
}
case DIALOG_IDADE:
{
if(!response) return ShowPlayerDialog(playerid, DIALOG_IDADE, DIALOG_STYLE_INPUT,"[NomeSv] - Idade","Quantos anos vocк tem?","Pronto","");
if(!strval(inputtext)) return ShowPlayerDialog(playerid, DIALOG_IDADE, DIALOG_STYLE_INPUT,"[NomeSv] - Idade","Quantos anos vocк tem? (Use somente nъmeros)","Pronto","");
if(strval(inputtext) < 15 || strval(inputtext) > 80) return ShowPlayerDialog(playerid, DIALOG_IDADE, DIALOG_STYLE_INPUT,"[NomeSv] - Idade","Sua idade tem que ser de 15 a 80 anos","Pronto","");
Jogador[playerid][Idade] = strval(inputtext);
new string[40];
format(string, sizeof(string),"Ok, vocк tem %d anos.", strval(inputtext));
SendClientMessage(playerid,-1,string);
ShowPlayerDialog(playerid, DIALOG_CIDADE, DIALOG_STYLE_LIST,"[NomeSv] - Cidade","LS\nLV\nSF\nOutra","Pronto","");
return 1;
}
case DIALOG_CIDADE:
{
if(!response) return ShowPlayerDialog(playerid, DIALOG_CIDADE, DIALOG_STYLE_LIST,"[NomeSv] - Cidade","Los Santos\nLas Venturas\nSan Fierro\nOutra","Pronto","");
if(listitem == 0)
{
Jogador[playerid][Cidade] = LS;
SendClientMessage(playerid,-1,"Ok, sua cidade й Los Santos.");
}
else if(listitem == 1)
{
Jogador[playerid][Cidade] = LV;
SendClientMessage(playerid,-1,"Ok, sua cidade й Las Venturas.");
}
else if(listitem == 2)
{
Jogador[playerid][Cidade] = SF;
SendClientMessage(playerid,-1,"Ok, sua cidade й San Fierro.");
}
else if(listitem == 3)
{
Jogador[playerid][Cidade] = OUTRA;
SendClientMessage(playerid,-1,"Ok, sua cidade й outra.");
}
SalvarPlayer(playerid);
return 1;
}
case DIALOG_LOGIN:
{
if(!response) return SendClientMessage(playerid,-1,"Vocк escolheu cancelou o login e foi kickado."), Kick(playerid);
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"[NomeSv] - Login","Digite sua senha para logar","Logar","Cancelar");
if(strcmp(DOF2_GetString(ContaPlayer(playerid),"Senha"), inputtext, false) == 0)
{
SendClientMessage(playerid,-1,"Logado com sucesso!");
CarregarPlayer(playerid);
SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
}
else
{
Jogador[playerid][SenhaErrada] ++;
if(Jogador[playerid][SenhaErrada] >= 5)
{
SendClientMessage(playerid,-1,"Vocк foi banido por errar a senha 5 vezes.");
BanEx(playerid,"Errou a senha 5 vezes.");
}
else if(Jogador[playerid][SenhaErrada] < 5) return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"[NomeSv] - Login","Senha errada.Tente novamente\n\nSe errar a senha 5 vezes serб banido.","Logar","Cancelar");
}
return 1;
}
}
return 1;
}
stock CarregarPlayer(playerid)
{
if(DOF2_FileExists(ContaPlayer(playerid)))
{
Jogador[playerid][Idade] = DOF2_GetInt(ContaPlayer(playerid),"Idade");
Jogador[playerid][Cidade] = DOF2_GetInt(ContaPlayer(playerid),"Cidade");
Jogador[playerid][Sexo] = DOF2_GetInt(ContaPlayer(playerid),"Sexo");
SetPlayerScore(playerid, DOF2_GetInt(ContaPlayer(playerid), "Score"));
SetPlayerSkin(playerid, DOF2_GetInt(ContaPlayer(playerid),"Skin"));
}
return 1;
}
stock SalvarPlayer(playerid)
{
if(DOF2_FileExists(ContaPlayer(playerid)))
{
DOF2_SetInt(ContaPlayer(playerid),"Idade", Jogador[playerid][Idade]);
DOF2_SetInt(ContaPlayer(playerid),"Cidade", Jogador[playerid][Cidade]);
DOF2_SetInt(ContaPlayer(playerid),"Sexo", Jogador[playerid][Sexo]);
DOF2_SetInt(ContaPlayer(playerid),"Score", GetPlayerScore(playerid));
DOF2_SetInt(ContaPlayer(playerid),"Skin", GetPlayerSkin(playerid));
DOF2_SaveFile();
}
return 1;
}
Tudo que vocк precisa.
Agora basta saber onde colocar. : )