Duda con obtener IP
#1

Tengo este comando para obtener las IP de los jugadores:

pawn Код:
dcmd_verip( playerid, params[ ] )
{
    if(strlen(params[0])==0) return SendClientMessage(playerid,-1,"Error: /verip (id)");
    new id = strval(params[0]);
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-1,"Ese jugador no esta online.");
    new msg[100],name[MAX_PLAYER_NAME];
    new
        Query[ 256 ];
    GetPlayerIp( id, Query, 16 );
    GetPlayerName(id,name,sizeof(name));
    format(msg,100,"Nombre: %s IP: %s",name,Query);
    SendClientMessage(playerid,coloramarillo,msg);
    return 1;
}
Y quiero saber como hacer para que cuando el jugador sea de mayor nivel o logueado en RCON mande un mensaje de "no puedes ver la ip"

Ejemplo: admin es nivel 5, si el jugador es nivel 6 no podran ver su ip los de nivel 5, si el jugador es nivel 0 pero logueado en RCON tampoco podran verla. he intentado de algunas formas pero no me sale, necesito ayuda por favor.

PD: Mi variable de admin con nivel es:
pawn Код:
if ( IsPlayerAdmin( playerid ) || pData[ playerid ][ P_LEVEL ] <= _:P_LEVEL_ADMIN )
Reply
#2

Код:
if(nivel[playerid] < nivel[id] || IsPlayerAdmin(id)) return SendClientMessage(playerid,-1,"no puedes ver la ip");
Reply
#3

pawn Код:
//______Supongamos que tu variable de admin es йsta:
Variable_adminGM[playerid] //ponle la var de tu gm.


dcmd_verip( playerid, params[ ] )
{
    if(strlen(params[0])==0) return SendClientMessage(playerid,-1,"Error: /verip (id)");
    new id = strval(params[0]);
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-1,"Ese jugador no esta online.");
    if(Variable_adminGM[playerid] > Variable_adminGM[id] || !IsPlayerAdmin(id))// si el que puso el comando es un nivel menor al que quiere ver la ip se aprueba la condicional
    {
        new msg[100],name[MAX_PLAYER_NAME];
        new
            Query[ 256 ];
        GetPlayerIp( id, Query, 16 );
        GetPlayerName(id,name,sizeof(name));
        format(msg,100,"Nombre: %s IP: %s",name,Query);
        SendClientMessage(playerid,coloramarillo,msg);
    }else SendClientMessage(playerid,-1,"No puedes ver la ip de un usuario de mayor nivel que el tuyo.");
    return 1;
}
Reply
#4

Se que lo estoy haciendo mal, me da errores esta linea:
pawn Код:
if( pData[ playerid ][ P_LEVEL ] _:P_LEVEL_ADMIN[playerid] > pData[ playerid ][ P_LEVEL ] _:P_LEVEL_ADMIN[id] || !IsPlayerAdmin(id))
No se como acomodarlo ahн
Reply
#5

Quote:
Originally Posted by FlavioCesar
Посмотреть сообщение
Se que lo estoy haciendo mal, me da errores esta linea:
pawn Код:
if( pData[ playerid ][ P_LEVEL ] _:P_LEVEL_ADMIN[playerid] > pData[ playerid ][ P_LEVEL ] _:P_LEVEL_ADMIN[id] || !IsPlayerAdmin(id))
No se como acomodarlo ahн
pawn Код:
dcmd_verip( playerid, params[ ] )
{
    if(strlen(params[0])==0) return SendClientMessage(playerid,-1,"Error: /verip (id)");
    new id = strval(params[0]);
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-1,"Ese jugador no esta online.");
    if(pData[playerid][P_LEVEL] > pData[playerid][P_LEVEL] || !IsPlayerAdmin(id))// si el que puso el comando es un nivel menor al que quiere ver la ip se aprueba la condicional
    {
        new msg[100],name[MAX_PLAYER_NAME];
        new
            Query[ 256 ];
        GetPlayerIp( id, Query, 16 );
        GetPlayerName(id,name,sizeof(name));
        format(msg,100,"Nombre: %s IP: %s",name,Query);
        SendClientMessage(playerid,coloramarillo,msg);
    }else SendClientMessage(playerid,-1,"No puedes ver la ip de un usuario de mayor nivel que el tuyo.");
    return 1;
}
Reply
#6

Gracias jotajeda
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)