[AYUDA] Admin Inmune al Ban de Spam
#1

Hola e estado haciendo una funcion para que los admin de Sierto Nivel No puedan ser baneados pero me saltan errores aca les dejo el codigo que toy armando:

Код:
funcion banplayerspam(playerid)
{
if(!PlayerInfo[playerid][pAdmin] == 1338)
{
SendClientMessage(playerid, COLOR_GRAD2, "El AntiSpam No puede hacerte nada a vos!");
return 1;
}
new string[256];
format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid));
SendClientMessageToAll(0xff0000ff, string);
Ban(playerid);
return 1;
}
Yo no quiero que diga nada es decir si soy admin pueda scribir normalmente no que diga El AntiSpam No Puede Hacerte Nada A Vos. Solo que se pueda escribir normal pero si el sujeto no es el nivel de admin ese o es un player comun que se banee como abajo.

yo utilizo esto en los cmd:

Код:
if(BuscarIPs(result)) banplayerspam(playerid);
es para que aparesca ese mensaje si hacen spam con ese cmd.
Reply
#2

pawn Код:
funcion banplayerspam(playerid)
{
if(!PlayerInfo[playerid][pAdmin] == 1338)
{
       return 1;
}
new string[256];
format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid));
SendClientMessageToAll(0xff0000ff, string);
Ban(playerid);
return 1;
}
Prueba asi.
Reply
#3

Quote:
Originally Posted by Synyster
Посмотреть сообщение
pawn Код:
funcion banplayerspam(playerid)
{
if(!PlayerInfo[playerid][pAdmin] == 1338)
{
       return 1;
}
new string[256];
format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid));
SendClientMessageToAll(0xff0000ff, string);
Ban(playerid);
return 1;
}
Prueba asi.
estos errores me larga:

Код:
warning 213: tag mismatch
linea:

Код:
if(!PlayerInfo[playerid][pAdmin] == 1338)
Reply
#4

Prueba quitando el "!" al principio de la condicion del PlayerInfo, quedando asi:
Код:
if(PlayerInfo[playerid][pAdmin] == 1338)
{
Reply
#5

pawn Код:
if(PlayerInfo[playerid][pAdmin] != 1338)
Reply
#6

En verdad serнa:
pawn Код:
if(PlayerInfo[playerid][pAdmin] == 1338)
Ya que el ! contradice el if, tal como estб significa si el jugador no es Admin Nivel 1338, mandarнa el mensaje, seguido del return que cerrarб. Baneando asн, al admin 1338, y a los otros jugadores no les harнa nada.
Para que el Anti-Spam no banee a los admins (no importa el nivel) serнa:
pawn Код:
if(PlayerInfo[playerid][pAdmin] >= 1)
pawn Код:
funcion banplayerspam(playerid)
{
    if(PlayerInfo[playerid][pAdmin] == 1338) //O if(PlayerInfo[playerid][pAdmin] >= 1)
    {
        SendClientMessage(playerid, COLOR_GRAD2, "El AntiSpam No puede hacerte nada a vos!");
        return 1;
    }
    new string[256];
    format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid));
    SendClientMessageToAll(0xff0000ff, string);
    Ban(playerid);
    return 1;
}
Saludos...
Reply
#7

Pero con el cуdigo que dio йl es !=, porque el puso if(!Player... == XXX), y eso correctamente es con !=.
Reply
#8

A eso sн.
Pero lo tiene mal, tal como lo puso йl.
Reply
#9

Quote:
Originally Posted by irinel1996
Посмотреть сообщение
En verdad serнa:
pawn Код:
if(PlayerInfo[playerid][pAdmin] == 1338)
Ya que el ! contradice el if, tal como estб significa si el jugador no es Admin Nivel 1338, mandarнa el mensaje, seguido del return que cerrarб. Baneando asн, al admin 1338, y a los otros jugadores no les harнa nada.
Para que el Anti-Spam no banee a los admins (no importa el nivel) serнa:
pawn Код:
if(PlayerInfo[playerid][pAdmin] >= 1)
pawn Код:
funcion banplayerspam(playerid)
{
    if(PlayerInfo[playerid][pAdmin] == 1338) //O if(PlayerInfo[playerid][pAdmin] >= 1)
    {
        SendClientMessage(playerid, COLOR_GRAD2, "El AntiSpam No puede hacerte nada a vos!");
        return 1;
    }
    new string[256];
    format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid));
    SendClientMessageToAll(0xff0000ff, string);
    Ban(playerid);
    return 1;
}
Saludos...
Iriniel yo lo habia echo asi jaja yo pense que no funcionaba porque me olvide de agregarlo en el cmd /b jaja habia puesto en el /b para que baneara de una pero ya lo repare asi que . aca te muestro como lo puse al cmd:

Код:
	COMANDO: ("/b")
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_GREY, "   You havent logged in yet !");
	        //if(BuscarIPs(params)) return format(string, sizeof(string), "[AntiSpam] %s Ha sido Baneado por SPAM  DE IP!", NombreJugador(playerid)),SendClientMessageToAll(0xff0000ff, string),Ban(playerid);
	        if(BuscarIPs(params)) banplayerspam(playerid);
			if(!strlen(params)) return SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /b [local ooc chat]");
  	        if(PlayerInfo[playerid][pMaskuse] == 1)
			{
			    format(string, sizeof(string), "(( Enmascarado Dice:  %s ))", params);
			}
			else
			{
				format(string, sizeof(string), "([OOC][%i] %s Dice: %s )", playerid, NombreJugador(playerid), params);
			}
			ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
			printf("%s", string);
		}
		return 1;
	}
Reply
#10

El /b es informaciуn fuera del personaje, es decir, no afecta en nada al rol... їpor quй le pones para que puedan enmascararse? No tiene sentido xD
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)