Comando nгo funciona -
LeonardoMD - 13.11.2018
Galera, criei o comando /logaradm para o admin apenas ter acesso aos seus comandos administrativos caso logue na administraзгo atravйs do comando acima, com uma senha definida na GM. Porйm ao digitar /logaradm, colocar a senha e clicar em logar, nгo acontece nada.
Comando:
pawn Код:
if(strcmp("/logaradm", cmdtext, true, 6) == 0)
{
if(pAdmin[playerid] >= 1)
{
ShowPlayerDialog(playerid, 15151515, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:", "Logar", "Sair");
}
return 0x01;
}
Dialog:
pawn Код:
if(dialogid == 15151515)
{
if(response)
{
new senhaadm[256];
senhaadm = "bcvirtual2018";
if(strcmp(inputtext, senhaadm, true) == 0) {
logadoadm[playerid] = 1;
SendClientMessage(playerid, 0x058AFFFF, "| BCV-Admin | Bem vindo(a) %s seus comandos de %s foram carregados com sucesso!", PlayerName(playerid), CargoAdmin(playerid));
}
return true;
}
return false;
}
Alguйm sabe resolver?
Re: Comando nгo funciona -
Electrifying - 13.11.2018
Quote:
Originally Posted by LeonardoMD
Galera, criei o comando /logaradm para o admin apenas ter acesso aos seus comandos administrativos caso logue na administraзгo atravйs do comando acima, com uma senha definida na GM. Porйm ao digitar /logaradm, colocar a senha e clicar em logar, nгo acontece nada.
Comando:
pawn Код:
if(strcmp("/logaradm", cmdtext, true, 6) == 0) { if(pAdmin[playerid] >= 1) { ShowPlayerDialog(playerid, 15151515, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:", "Logar", "Sair"); } return 0x01; }
Dialog:
pawn Код:
if(dialogid == 15151515) { if(response) { new senhaadm[256]; senhaadm = "bcvirtual2018"; if(strcmp(inputtext, senhaadm, true) == 0) { logadoadm[playerid] = 1; SendClientMessage(playerid, 0x058AFFFF, "| BCV-Admin | Bem vindo(a) %s seus comandos de %s foram carregados com sucesso!", PlayerName(playerid), CargoAdmin(playerid)); } return true; } return false; }
Alguйm sabe resolver?
|
Troca esse return false por return 1; e tire return true if(response)
Re: Comando nгo funciona -
LeonardoMD - 13.11.2018
Quote:
Originally Posted by Electrifying
Troca esse return false por return 1; e tire return true if(response)
|
Nгo resolveu, continuou do mesmo jeito...
Re: Comando nгo funciona -
LeonardoMD - 13.11.2018
UP..
Re: Comando nгo funciona -
rjjj - 13.11.2018
O mбximo valor de ID que a callback
OnDialogResponse aceita й 32767, sendo que vocк estб usando 15151515. Reduza esse nъmero
.
Espero ter ajudado
.
Re: Comando nгo funciona -
LeonardoMD - 13.11.2018
Quote:
Originally Posted by rjjj
O mбximo valor de ID que a callback OnDialogResponse aceita й 32767, sendo que vocк estб usando 15151515. Reduza esse nъmero .
Espero ter ajudado .
|
Nгo resolveu...
Re: Comando nгo funciona -
vitinhosamp - 13.11.2018
Leonardo Recomendo Usar switch que e tipo iF mas vai lhe ajudar a ter mais organizaзгo!
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case 15151515:
{
// resto da dialog!
return true;
}
}
return 1;
}
pelo o resto do comando nao reconheзo o erro, mas vou continuar tentando ate lhe ajudar!
Re: Comando nгo funciona -
LeonardoMD - 13.11.2018
Quote:
Originally Posted by vitinhosamp
Leonardo Recomendo Usar switch que e tipo iF mas vai lhe ajudar a ter mais organizaзгo!
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case 15151515:
{
// resto da dialog!
return true;
}
}
return 1;
}
pelo o resto do comando nao reconheзo o erro, mas vou continuar tentando ate lhe ajudar!
|
Vlw por tentar ajudar mano, tmj! Nгo sei porque, mas esse dialog nгo funciona de jeito nenhum! Quando coloca a senha da administraзгo e clica em logar, nгo acontece nada!
Re: Comando nгo funciona -
rjjj - 14.11.2018
Quote:
Originally Posted by LeonardoMD
Nгo resolveu...
|
Nгo sei se ficou claro, mas vocк tem que mudar o ID no
ShowPlayerDialog, alйm de no
OnDialogResponse .
Verifique tambйm o
SendClientMessage, que estб aplicando mбscaras
%s aparentemente sem uma chamada anterior de
format.
Com isso, jб deverб haver uma resposta em mensagem quando a senha for correta. Й interessante tambйm colocar uma mensagem em
else para senhas erradas, sу para fins de depuraзгo do cуdigo.
Espero ter ajudado
.
Re: Comando nгo funciona -
zF3lKy3 - 14.11.2018
PHP код:
if(strcmp(cmdtext, "/logaradm", true) == 0)
{
if(pAdmin[playerid] >= 1)
{
ShowPlayerDialog(playerid, 1533, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:", "Logar", "Sair");
}
return 0x01;
}
switch(dialogid)
{
case 1533:
{
if(response)
{
new senhaadm[256], string[128];
senhaadm = "bcvirtual2018";
if(strcmp(inputtext, senhaadm, true) == 0)
{
logadoadm[playerid] = 1;
format(string, sizeof(string), "| BCV-Admin | Bem vindo(a) %s seus comandos de %s foram carregados com sucesso!", PlayerName(playerid), CargoAdmin(playerid));
SendClientMessage(playerid, 0x058AFFFF, , string);
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Vocк errou a senha para logar como administrador!");
}
}
}
return 1;
}
Nгo cheguei a testar. Teste!
Re: Comando nгo funciona -
bruxo00 - 14.11.2018
Coloque uns prints para ver se o cуdigo estб a ser executado ou nгo.
Re: Comando nгo funciona -
LeonardoMD - 14.11.2018
Quote:
Originally Posted by zF3lKy3
PHP код:
if(strcmp(cmdtext, "/logaradm", true) == 0)
{
if(pAdmin[playerid] >= 1)
{
ShowPlayerDialog(playerid, 1533, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:", "Logar", "Sair");
}
return 0x01;
}
switch(dialogid)
{
case 1533:
{
if(response)
{
new senhaadm[256], string[128];
senhaadm = "bcvirtual2018";
if(strcmp(inputtext, senhaadm, true) == 0)
{
logadoadm[playerid] = 1;
format(string, sizeof(string), "| BCV-Admin | Bem vindo(a) %s seus comandos de %s foram carregados com sucesso!", PlayerName(playerid), CargoAdmin(playerid));
SendClientMessage(playerid, 0x058AFFFF, , string);
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Vocк errou a senha para logar como administrador!");
}
}
}
return 1;
}
Nгo cheguei a testar. Teste!
|
Deu certo manoo!! Vlw, tmj!
Re: Comando nгo funciona -
zF3lKy3 - 14.11.2018
Quote:
Originally Posted by LeonardoMD
Deu certo manoo!! Vlw, tmj!
|
Й nуs
Re: Comando nгo funciona -
LeonardoMD - 15.11.2018
Encontrei um problema, ao dar /logaradm e clicar em logar mesmo sem colocar a senha, a pessoa loga como adm. Se colocar a senha errada, nгo loga, e aparece a mensagem de senha incorreta, mas se clicar em logar sem digitar nenhuma senha, loga normalmente...
Re: Comando nгo funciona -
Electrifying - 15.11.2018
Quote:
Originally Posted by LeonardoMD
Encontrei um problema, ao dar /logaradm e clicar em logar mesmo sem colocar a senha, a pessoa loga como adm. Se colocar a senha errada, nгo loga, e aparece a mensagem de senha incorreta, mas se clicar em logar sem digitar nenhuma senha, loga normalmente...
|
Adicione isso no bloco da dialog
PHP код:
if(strlen(inputtext) == 0) return SendClientMessage(playerid, -1, "Senha em branco.");
Ou simplesmente vocк pode retornar a dialog trocando SendClientMessage por
PHP код:
ShowPlayerDialog(playerid, 955, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:\n","Logar", "Sair");
https://sampwiki.blast.hk/wiki/Strlen
Re: Comando nгo funciona -
LeonardoMD - 15.11.2018
Quote:
Originally Posted by Electrifying
Adicione isso no bloco da dialog
PHP код:
if(strlen(inputtext) == 0) return SendClientMessage(playerid, -1, "Senha em branco.");
Ou simplesmente vocк pode retornar a dialog trocando SendClientMessage por
PHP код:
ShowPlayerDialog(playerid, 955, DIALOG_STYLE_PASSWORD, "Login Administrativo", "Insira a senha da administraзгo:\n","Logar", "Sair");
https://sampwiki.blast.hk/wiki/Strlen
|
Sim, eu tinha tentado isso, mas nгo tinha resolvido. Agora resolveu, valeu!