Crear Comando para FS admin
#1

Ola estoy creando un FS para admin
y quisiera qe me digan como poner el comando
/ban
y
/kick
solo tengo el
/admincmds
el
/admins
y solo eso
pero les digo qe kiera hacer
los comandos
/kick - ban- y /hacer admin
s`pero qe me ayuden adios
Reply
#2

podrias mirar el ladmin o FS de admin, todos tienen esos comandos.
Reply
#3

Quote:
Originally Posted by the_chaoz
podrias mirar el ladmin o FS de admin, todos tienen esos comandos.
si lo intente
tambien intente poner el del
ESadmin
pero me sale eror siempre sobre algo como

idx
mira

Код:
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(85) : error 021: symbol already defined: "idx"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(233) : error 017: undefined symbol "strrest"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(233) : error 033: array must be indexed (variable "razon")
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(244) : error 076: syntax error in the expression, or invalid function call
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(244) : error 029: invalid expression, assumed zero
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(244) : warning 215: expression has no effect
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(248) : error 001: expected token: ",", but found "-identifier-"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(248) : warning 215: expression has no effect
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(248) : error 001: expected token: ";", but found ")"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(248) : error 029: invalid expression, assumed zero
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(248) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


9 Errors.
Reply
#4

No te recomiendo fijarte de esos comandos.. Son DCMD y para personas nuevas son muy complicados.. Acб te dejo uno sencillo..

pawn Код:
// Comando de /Ban
    if (strcmp(cmd, "/ban", true) == 0)
    {
      if (InfoNick[playerid][Admin] >=2 || IsPlayerAdmin(playerid)) //Si Tienes Tu Propio Sistema Cambia "InfoNick[playerid][Admin] >=2
        {
            tmpp = strtok(cmdtext, idx);
            if  (!strlen(tmpp))
            {
                SendClientMessage(playerid, COLOR_VERDE, "USA: /Ban [Id] [Razуn]");
                return 1;
            }
            pid = strval(tmpp);
            if  (!(IsPlayerConnected(pid)))
            {
                SendClientMessage(playerid, COLOR_ROJO, "Jugador no conectado !");
                return 1;
            }
            GetPlayerName(pid, pidName, sizeof(pidName));
            GetPlayerName(playerid, AdminName, sizeof(AdminName));
            GetPlayerIp(playerid,AdminIP,20);
            GetPlayerIp(pid, PidIP, 20);
            gettime(hora, minuto, segundo);
            getdate(anio, mes, dia);
      format(string, sizeof(string), "%s (ID: %d) fue baneado !. Razуn: %s | Hora: %d:%d:%d | Dia: %d.%d.%d", pidName, pid, cmdtext[idx], hora, minuto, segundo, dia, mes, anio);
            SendClientMessageToAll(COLOR_ROJO, string);
            print(string);
            Ban(pid);
        }
        else
        {
        SendClientMessage(playerid,COLOR_ROJO,"No eres Admin !");
            return 1;
        }
        return 1;
    }
Espero que te sirva.. Saludos..
Reply
#5

Quote:
Originally Posted by elvago
No te recomiendo fijarte de esos comandos.. Son DCMD y para personas nuevas son muy complicados.. Acб te dejo uno sencillo..

pawn Код:
// Comando de /Ban
    if (strcmp(cmd, "/ban", true) == 0)
    {
      if (InfoNick[playerid][Admin] >=2 || IsPlayerAdmin(playerid)) //Si Tienes Tu Propio Sistema Cambia "InfoNick[playerid][Admin] >=2
        {
            tmpp = strtok(cmdtext, idx);
            if  (!strlen(tmpp))
            {
                SendClientMessage(playerid, COLOR_VERDE, "USA: /Ban [Id] [Razуn]");
                return 1;
            }
            pid = strval(tmpp);
            if  (!(IsPlayerConnected(pid)))
            {
                SendClientMessage(playerid, COLOR_ROJO, "Jugador no conectado !");
                return 1;
            }
            GetPlayerName(pid, pidName, sizeof(pidName));
            GetPlayerName(playerid, AdminName, sizeof(AdminName));
            GetPlayerIp(playerid,AdminIP,20);
            GetPlayerIp(pid, PidIP, 20);
            gettime(hora, minuto, segundo);
            getdate(anio, mes, dia);
      format(string, sizeof(string), "%s (ID: %d) fue baneado !. Razуn: %s | Hora: %d:%d:%d | Dia: %d.%d.%d", pidName, pid, cmdtext[idx], hora, minuto, segundo, dia, mes, anio);
            SendClientMessageToAll(COLOR_ROJO, string);
            print(string);
            Ban(pid);
        }
        else
        {
        SendClientMessage(playerid,COLOR_ROJO,"No eres Admin !");
            return 1;
        }
        return 1;
    }
Espero que te sirva.. Saludos..
Ola perdon por mi ignoracina es qe soy super mega nuevo en crear FS de admins pero mira

Код:
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(273) : error 017: undefined symbol "tmpp"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(274) : error 017: undefined symbol "tmpp"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(279) : error 017: undefined symbol "pid"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(279) : error 017: undefined symbol "tmpp"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(280) : error 017: undefined symbol "pid"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(285) : error 017: undefined symbol "pid"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(285) : error 017: undefined symbol "pidName"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(285) : error 029: invalid expression, assumed zero
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(285) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


9 Errors.
qe devo hacer?
Reply
#6

X lo q yo entiendo ahi faltan definir los newґs :/

bueno aver proba asi saca todo eso y pone esto:
pawn Код:
// Comando de /Ban
if (strcmp(cmd, "/ban", true) == 0)
{
  if (InfoNick[playerid][Admin] >=2 || IsPlayerAdmin(playerid)) //Si Tienes Tu Propio Sistema Cambia "InfoNick[playerid][Admin] >=2
{
new tmpp = strtok(cmdtext, idx);
if  (!strlen(tmpp))
{
SendClientMessage(playerid, COLOR_VERDE, "USA: /Ban [Id] [Razуn]");
return 1;
}
new pid = strval(tmpp);
if (!(IsPlayerConnected(pid)))
{
SendClientMessage(playerid, COLOR_ROJO, "Jugador no conectado !");
return 1;
}
new pidName[20];
GetPlayerName(pid, pidName, 20);
GetPlayerName(playerid, AdminName, sizeof(AdminName));
GetPlayerIp(playerid,AdminIP,20);
GetPlayerIp(pid, PidIP, 20);
gettime(hora, minuto, segundo);
getdate(anio, mes, dia);
      format(string, sizeof(string), "%s (ID: %d) fue baneado !. Razуn: %s | Hora: %d:%d:%d | Dia: %d.%d.%d", pidName, pid, cmdtext[idx], hora, minuto, segundo, dia, mes, anio);
SendClientMessageToAll(COLOR_ROJO, string);
print(string);
Ban(pid);
}
else
{
  SendClientMessage(playerid,COLOR_ROJO,"No eres Admin !");
return 1;
}
return 1;
}
Supongo q asi ya deberia funcionar, ojo yo tampoco se mucho
bueno espero te ande suerte
Reply
#7

BAN

Definimos dcmd:

pawn Код:
//Arriba de tu Fs
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
Lo definimos:

pawn Код:
public OnPlayerCommandText
{
  //Todo lo que tengas
  dcmd(ban, 3, cmdtext);
  return 0;
}
Ahora el comando:

pawn Код:
dcmd_ban(playerid,params[])
{
  if(PlayerInfo[playerid][pNivel] >= 5)
  {
    new id;
    new razon;
    if(sscanf(params, "uz", id, razon))
    {
      SendClientMessage(playerid, Color, "Usa: /Ban <IdJugador> <Razуn>"); //Cambia 'Color' por un color
    }
    else if(IsPlayerConnected(id) && id != INVALID_PLAYER_ID && id != playerid) return SendClientMessage(playerid, Color, "**Este jugador no estб conectado."); //Cambia 'color'
    else
    {
      new string[256],Nombre[24],ANombre[24];GetPlayerName(playerid,Nombre,24); GetPlayerName(id,ANombre,24);
           format(string,256,"%s ha sido baneado por el administrador %s por %z.",ANombre,Nombre,razon);
           SendClientMessageToAll(Color,string); //Color
           Ban(playerid);
    }
  } else {
  SendClientMessage(playerid, Color,"**ERROR: Tu nivel no es lo suficientemente alto como para usar este comando."); //Color
  }
  return 1;
}
Es bбsico.
Reply
#8

KIKC

Lo definimos:

pawn Код:
//En OnPublicCommandText
{
  //BlaBla
  dcmd(kick, 4, cmdtext);
  return 0;
}
Ahora el comando:

pawn Код:
dcmd_kick(playerid,params[])
{
  if(PlayerInfo[playerid][pNivel] >= 5)
  {
    new id;
    new razon;
    if(sscanf(params, "uz", id, razon))
    {
      SendClientMessage(playerid, Color, "Usa: /Kick <IdJugador> <Razуn>"); //Cambia 'Color' por un color
    }
    else if(IsPlayerConnected(id) && id != INVALID_PLAYER_ID && id != playerid) return SendClientMessage(playerid, Color, "**Este jugador no estб conectado."); //Cambia 'color'
    else
    {
      new string[256],Nombre[24],ANombre[24];GetPlayerName(playerid,Nombre,24); GetPlayerName(id,ANombre,24);
     format(string,256,"%s ha sido kickeado por el administrador %s | Razуn: %z.",ANombre,Nombre,razon);
     SendClientMessageToAll(Color,string); //Color
     Kick(playerid);
    }
  } else {
  SendClientMessage(playerid, Color,"**ERROR: Tu nivel no es lo suficientemente alto como para usar este comando."); //Color
  }
  return 1;
}
Es exactamente iguбl que ban solo que cambias kick(playerid);
Reply
#9

Hacer Niveles

Lo defines como antes.

Hacemos el comando:

pawn Код:
dcmd_nivel(playerid, params[])
{
  if(PlayerInfo[playerid][pNivel] < 6) return SendClientMessage(playerid, Rojo, "* Solo los propietarios del servidor pueden modificar niveles.");
  new id, nivel;
  if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Rojo, "Usa: /Nivel <Id/ParteDelNombre> <Nivel>");
  else if(!IsPlayerConnected(id)) return SendClientMessage(playerid, Rojo, "** Ese jugador estб desconectado.");
  else if(0 > nivel > 5) return SendClientMessage(playerid, Rojo, "** Solo puedes poner niveles del 0 al 5."); //Del 0 al 5 es como lo tengo yo, cбmbialo a tu gusto.
  else
  {
    new nombre[2][24], string[111];
    PlayerInfo[id][pNivel] = nivel;
    GetPlayerName(playerid, nombre[0], 24);
    GetPlayerName(id, nombre[1], 24);
    format(string, sizeof(string), "El Administrador %s te ha cambiado el nivel a %d.", nombre[0], nivel);
    SendClientMessage(id, color, string); //Color
    format(string, sizeof(string), "Le has cambiado el nivel a %s, ahora es nivel %d.", nombre[1], nivel);
    SendClientMessage(playerid, color, string); //Color
  }
  return 1;
}
Siento no haberlo hecho todo en un mismo post pero se me trababa :S
Reply
#10

Quote:
Originally Posted by CristianTdj
Hacer Niveles

Lo defines como antes.

Hacemos el comando:

pawn Код:
dcmd_nivel(playerid, params[])
{
  if(PlayerInfo[playerid][pNivel] < 6) return SendClientMessage(playerid, Rojo, "* Solo los propietarios del servidor pueden modificar niveles.");
  new id, nivel;
  if(sscanf(params, "ud", id, nivel)) return SendClientMessage(playerid, Rojo, "Usa: /Nivel <Id/ParteDelNombre> <Nivel>");
  else if(!IsPlayerConnected(id)) return SendClientMessage(playerid, Rojo, "** Ese jugador estб desconectado.");
  else if(0 > nivel > 5) return SendClientMessage(playerid, Rojo, "** Solo puedes poner niveles del 0 al 5."); //Del 0 al 5 es como lo tengo yo, cбmbialo a tu gusto.
  else
  {
    new nombre[2][24], string[111];
    PlayerInfo[id][pNivel] = nivel;
    GetPlayerName(playerid, nombre[0], 24);
    GetPlayerName(id, nombre[1], 24);
    format(string, sizeof(string), "El Administrador %s te ha cambiado el nivel a %d.", nombre[0], nivel);
    SendClientMessage(id, color, string); //Color
    format(string, sizeof(string), "Le has cambiado el nivel a %s, ahora es nivel %d.", nombre[1], nivel);
    SendClientMessage(playerid, color, string); //Color
  }
  return 1;
}
Siento no haberlo hecho todo en un mismo post pero se me trababa :S
Gracias si sirvio pero solo sale un error mira

Код:
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(209) : error 017: undefined symbol "sscanf"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(231) : error 017: undefined symbol "sscanf"
C:\Documents and Settings\BlackCrystal™\Mis documentos\server\filterscripts\adminEs.pwn(254) : error 017: undefined symbol "sscanf"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


3 Errors.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)