[Ajuda] Enviar adm/mod
#1

Seguinte, tenho o comando de reporte, e quando o adm recebe o reporte, aparece as infos que vem daqui:
Код:
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
	if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) SendClientMessage(i, 0xFFFFFFFF, string);
	if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) PlayerPlaySound(i, 5206, 0, 0, 0);
	if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) GameTextForPlayer(i, "~n~Novo Report", 4000, 5);
Mas quero que envie para os adm e o moderadores, entгo fiz assim:
Код:
if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) if (Conta[i][Mod] >= 1) SendClientMessage(i, 0xFFFFFFFF, string);
if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) if (Conta[i][Mod] >= 1) PlayerPlaySound(i, 5206, 0, 0, 0);
if(IsPlayerConnected(i) == 1) if (Conta[i][Level] >= 1) if (Conta[i][Mod] >= 1) GameTextForPlayer(i, "~n~Novo Report ~w~]", 4000, 5);
Mas quando coloco assim, ele nгo envia й nada, nem pro adm nem pro moderador.
Reply
#2

Por que assim a pessoa tem que ser ADMIN e MODERADOR ao mesmo tempo.

Use o operador lуgico OR que funciona para um ou outro ou ambos. Melhore tambйm esta indentaзгo e sintaxe.

PHP код:
if(IsPlayerConnected(i) && (Conta[i][level] || Conta[i][Mod]))
{
    
// Estб conectado E й admin e/ou mod

Esta expressгo em eletrфnica digital pode ser descrita desta forma:

Код:
S = A . (B + C)

Sу admin: S = 1 . (1 + 0); S = 1
Sу mod: S = 1 . (0 + 1); S = 1
Ambos: S = 1 . (1 + 1); S = 2 (2 й considerado true em uma operaзгo booleana :D)

Nunca conectado: S = 0 . (X + X) (X significa nгo importa)
Nгo vou me aprofundar em simplificaзгo de expressхes booleanas pois й um assunto mais complexo. Espero ter ajudado
Reply
#3

Deu certo.
-
Poderia me ajudar em outra coisa tambйm!?
Porque quando uso assim
Код:
if(Conta[playerid][Level] < 1 || (Conta[playerid][Mod] < 1)) 
            return SendClientMessage(playerid, -1, "Vocк nгo tem nivel administrativo");
ele bloqueia pra ambos, mesmo tendo as variavel level/mod maior que 1.
Reply
#4

neste caso vocк utilize '&&' com isso se nenhuma das var for maior que um vai retornar a mensagem.
Код:
if(Conta[playerid][Level] < 1 && Conta[playerid][Mod] < 1)
       return SendClientMessage(playerid, -1, "Vocк nгo tem nivel administrativo");
Код:
se(Conta[playerid][Level] < 1 e Conta[playerid][Mod] < 1)
Reply
#5

Thks, arakuta e Whoo. nгo dб pra mim adicionar reputaзгo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)