SA-MP Forums Archive
utilizar comando solo registrados - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: utilizar comando solo registrados (/showthread.php?tid=298782)



utilizar comando solo registrados - chucho - 22.11.2011

Hola alguien sabe que linea de codigo necesito para saber si un jugador esta registrado lo que quiero hacer es que cuando un jugador escriba un comando y si no esta registrado le mande un mensaje diciendole que necesita registrarse para usar ese comando.

me parece que es algo con esto pero no estoy seguro

mi sistema de admin es ladmin 4.2

pawn Код:
if(PlayerInfo[playerid][pAdmin] !< 1);



Respuesta: utilizar comando solo registrados - davidxxx - 22.11.2011

Mira usa esta funcion y colocala en OnPlayerCommandText

pawn Код:
if (PlayerInfo[playerid][LoggedIn] == 1) return
SendClientMessage(playerid, red,"Debes Estar Registrado Para Usar Los Comandos"); // con esto el jugador debe estar registrado para usar los comandos
o puedes colocarlo en el comando que quieres que se aplique la restriccion, como tu quieras; ahi te dejo la funcion espero que te sirva


Respuesta: utilizar comando solo registrados - chucho - 22.11.2011

hola me manda estos errores

pawn Код:
.pwn(139) : error 017: undefined symbol "PlayerInfo"
.pwn(139) : warning 215: expression has no effect
.pwn(139) : error 001: expected token: ";", but found "]"
.pwn(139) : error 029: invalid expression, assumed zero
.pwn(139) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.



Respuesta: utilizar comando solo registrados - davidxxx - 22.11.2011

eso debes colocarlo en el callback de OnPlayerCommandText En El fs De Ladmin arriba de todo el callback asi
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(register,8,cmdtext);// para que este comando no se bloquee tambien con la sentencia
   if (PlayerInfo[playerid][Registered] == 0) return
SendClientMessage(playerid, red,"Debes Estar Registrado Para Usar Los Comandos"); // con esto el jugador debe estar registrado para usar los comandos


// acas los demas comandos del fs
, no lo coloques en el gm porque te da errores, colocalo en el fs de ladmin

PD: recuerda que con esta sentencia los jugadores deben estar registrados para usar los comandos

Edit: tuve un error en el codigo usalo asi


Respuesta: utilizar comando solo registrados - chucho - 22.11.2011

gracias pero oye y si solo quiero bloquear unos comandos que tengo en mi gm como le hago?


Respuesta: utilizar comando solo registrados - davidxxx - 22.11.2011

debes tener la misma funcion del registro del fs en el gm pero eso seria muy complicado asi que te recomiendo que copies los comandos y los pegues en el callback del fs de ladmin ,debes colocar la funcion pero solo en el comando que quieres que se restrinja de este modo
pawn Код:
if(!strcmp(cmdtext, "/+velo", true))
    {
    if(PlayerInfo[playerid][Registered] < 1) return SendClientMessage(playerid,red,"debes estar registrado");// aqui los restringes
    {
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, red, "Debes Estar En Un Vehiculo");
    {
    new Float:vx, Float:vy, Float:vz;
    new vehicleid = GetPlayerVehicleID(playerid);
    GetVehicleVelocity(vehicleid, vx, vy, vz);
    SetVehicleVelocity(vehicleid, vx * 2, vy * 2, vz * 2);
    }
    }
    return 1;
    }
PD: recuerda que el comando debe estra en el fs de ladmin para poder restringirlo

Espero que te ayude