[Ajuda] Comando /setadmin
#1

Tinha outro tуpico mais como ninguйm resolveu vou criar outro.
- Quero saber qual o erro nesse comando, porquк quando copilo no gamemode fica normal, mais quando vou no jogo e digito o comando nгo funciona ou pelo menos manda a mensagem, mais nгo faz nenhum efeito.

Comando: /SetAdmin
pawn Код:
CMD:setadmin(playerid,params[])
{
    new id;
    new nivel;
    new name[MAX_PLAYER_NAME], string[128];
    PlayerInfo[playerid][pAdmin] = 3; return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
    if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Cor_Amarelo, "[NomeSV]: Uso do Comando Correto: /setadmin [ID]");
    PlayerInfo[id][pAdmin] = nivel;
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "[NomeSV]: O jogador %s й o novo adiministrador do servidor.", name);
    SendClientMessageToAll(Cor_Amarelo, string);
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Vocк foi setado de adiministrador, parabйns.");
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Adiministre bem o servidor, aproveite.");
    return 1;
}
Erro: Quando digito esse comando apуs ter logado na rcon dб essas mensagens normais como se eu tivesse setado de adiministrador mesmo.

pawn Код:
SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Vocк foi setado de adiministrador, parabйns.");
SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Adiministre bem o servidor, aproveite.");
Digito /Admins e aparece meu nick normalmente, mais quando vou digitar esse comando.
pawn Код:
CMD:setpm(playerid, params[])
{
    new id;
    new nivel;
    new name[MAX_PLAYER_NAME], string[250];
    if(PlayerInfo[playerid][pAdmin] == 3) return SendClientMessage(playerid, Cor_Erro, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
    if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Cor_Amarelo, "[NomeSV]: Uso do Comando Correto: /setpm [ID] [Nivel]");
    PlayerInfo[id][pPolicial] = nivel;
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "[NomeSV]: O adiministrador %s setou o jogador %s de policial.", namep(playerid), namep(id));
    SendClientMessageToAll(Cor_Amarelo, string);
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Vocк foi setado de policial, parabens.");
    SendClientMessage(playerid, -1, "[NomeSV]: Para se equipar digite '/equiparpm' e estarб trabalhando.");
    return 1;
}
Nгo funciona, diz a seguinte mensagem:
pawn Код:
ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.
E eu estava logado na rcon e setado de admin.
Se alguem puder mim ajuda, agradeзo!

Link do outro tуpico:
http://forum.sa-mp.com/showthread.ph...49#post2076349
Reply
#2

Vocк fuma neh?

pawn Код:
CMD:setadmin(playerid,params[])
{
    new id;
    new nivel;
    new name[MAX_PLAYER_NAME], string[128];
    if(PlayerInfo[playerid][pAdmin] < 3) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
    if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Cor_Amarelo, "[NomeSV]: Uso do Comando Correto: /setadmin [ID]");
    PlayerInfo[id][pAdmin] = nivel;
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "[NomeSV]: O jogador %s й o novo adiministrador do servidor.", name);
    SendClientMessageToAll(Cor_Amarelo, string);
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Vocк foi setado de adiministrador, parabйns.");
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Adiministre bem o servidor, aproveite.");
    return 1;
}
pawn Код:
CMD:setpm(playerid, params[])
{
    new id;
    new nivel;
    new name[MAX_PLAYER_NAME], string[250];
    if(PlayerInfo[playerid][pAdmin] < 3) return SendClientMessage(playerid, Cor_Erro, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
    if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Cor_Amarelo, "[NomeSV]: Uso do Comando Correto: /setpm [ID] [Nivel]");
    PlayerInfo[id][pPolicial] = nivel;
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "[NomeSV]: O adiministrador %s setou o jogador %s de policial.", namep(playerid), namep(id));
    SendClientMessageToAll(Cor_Amarelo, string);
    SendClientMessage(playerid, Cor_Setar, "[NomeSV]: Vocк foi setado de policial, parabens.");
    SendClientMessage(playerid, -1, "[NomeSV]: Para se equipar digite '/equiparpm' e estarб trabalhando.");
    return 1;
}
Reply
#3

Cara vocк nгo viu?
Eu postei lб, que nгo tб dando.


[E logo normal na rcon, quando digito /setadmin aparece isso]


E eu coloquei do jeito que vocк pediu.
Reply
#4

pawn Код:
if(PlayerInfo[playerid][pAdmin] < 3 && !IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
Reply
#5

Quote:
Originally Posted by @Riichard
Посмотреть сообщение
pawn Код:
if(PlayerInfo[playerid][pAdmin] < 3 && !IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");

Not !
Em vez de && use ||
Reply
#6

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение

Not !
Em vez de && use ||
"not"?

Meus cуdigos uso assim, e nem por isso da retorna a mensagem. :]
Reply
#7

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение

Not !
Em vez de && use ||
O dele estб certo.


pawn Код:
if(PlayerInfo[playerid][pAdmin] < 3 && !IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um administrador ou nem tem level para usar esse comando.");
O que o cуdigo quer dizer?

Se ele NГO for admin rcon e FOR admin nнvel MENOR que 3 ele irб retornar a mensagem.
Entгo caso ele seja nнvel 3+ ou admin Rcon a mensagem nгo serб enviada.

Se usasse ||:

Se ele FOSSE admin menor que 3 ou nгo fosse admin ele retornaria a mensagem, por tanto teria que ser admin nivel 3+ e admin rcon.
Reply
#8

Quote:
Originally Posted by @Riichard
Посмотреть сообщение
pawn Код:
if(PlayerInfo[playerid][pAdmin] < 3 && !IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um adiministrador ou nem tem level para usar esse comando.");
Se vc usar 'PlayerInfo[playerid][pAdmin] < 3'

Admin level 3 nгo poderб usar o comando e admin level 0 (Player normal) poderб usar <-- й isso nй? sempre confundo esses negocios atй na aula de matematica
Reply
#9

Quote:
Originally Posted by CaioMiglioli
Посмотреть сообщение
Se vc usar 'PlayerInfo[playerid][pAdmin] < 3'

Admin level 3 nгo poderб usar o comando e admin level 0 (Player normal) poderб usar
Fumo crack?

Ele pediu, so para menores de level 3 nгo poder usar.

< = menor
> = maior
! = diferente
== = igual

Vй o exemplo aqui:
pawn Код:
if(Variavel[playerid] < 1) return /*.........*/
Aqui vai verificar, se a "Variavel" й menor que 1, se for retorna, se nгo for manda o comando abaixo.

Agora se for:
pawn Код:
if(Variavel[playerid] <= 1) return /*.........*/
Aqui vai verificar, se a "Variavel" й igual ou menor que 1, se for retorna, se nгo for manda o comando abaixo.
Reply
#10

Quote:
Originally Posted by humildadeforever
Посмотреть сообщение
O dele estб certo.


pawn Код:
if(PlayerInfo[playerid][pAdmin] < 3 && !IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "ERRO: Vocк nгo й um administrador ou nem tem level para usar esse comando.");
O que o cуdigo quer dizer?

Se ele NГO for admin rcon e FOR admin nнvel MENOR que 3 ele irб retornar a mensagem.
Entгo caso ele seja nнvel 3+ ou admin Rcon a mensagem nгo serб enviada.

Se usasse ||:

Se ele FOSSE admin menor que 3 ou nгo fosse admin ele retornaria a mensagem, por tanto teria que ser admin nivel 3+ e admin rcon.
Hmm , sabia errado agora sei o correto !^^
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)