[Ajuda] Comando /kick
#1

E aн galera, sei que estou trazendo uma dъvida meio tosca, porйm sou novo ainda no pawn. Antes que venham me mandar procurar kk, ja procurei em tudo quanto й tуpico e outros lugares, tem pessoas com duvidas semelhantes a minha porйm nгo consegui resolver, enfim й o seguinte. Tentei criar esse comando com base em meus conhecimentos porem sу estб faltando arrumar para ele parar de me kikar kk. Tipo eu posso escolher qualquer ID que ele me kika, se alguйm souber como me ajudar ficarei agradecido.

Код HTML:
CMD:kick(playerid, params[])
{
 if (IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1)
 {
  new id, rasao, Str[128], kikador[MAX_PLAYER_NAME];
  if(sscanf(params, "us", id, rasao))
  {
    SendClientMessage(playerid, laranja, "Digite : /kick [ID] [Motivo]");
    return 1;
   }
   else
   {
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, vermelho, "Este jogador nгo estб conectado !");
    GetPlayerName(playerid, kikador, sizeof(kikador));
    format(Str, sizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s", kikador,playerid,rasao);
    Kick(giveplayerid);
    SendClientMessageToAll(vermelho, Str);
   }
   }
    else
   {
     SendClientMessage(playerid,vermelho, "Vocк nгo й um administrador !");
   }
  return true;
}
E quando eu tentei colocar o que eu li em um certo tуpico que dizia pra colocar o giveplayerid como mostra na linha abaixo

Код HTML:
Kick(giveplayerid);
Eu recebo o erro :

Код HTML:
C:\Users\Usuario\Desktop\Server\gamemodes\Criando.pwn(473) : error 017: undefined symbol "giveplayerid"
Eu sei que ele nгo foi definido, porйm nгo sei nem onde defini-lo e como. Relembrando que estou comeзando agora por isso essa dъvida de noob kk -_-
Reply
#2

PHP код:
CMD:kick(playeridparams[])
{
 if (
IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1)
 {
  new 
idrasaoStr[128], kikador[MAX_PLAYER_NAME];
  if(
sscanf(params"us"idrasao))
  {
    
SendClientMessage(playeridlaranja"Digite : /kick [ID] [Motivo]");
    return 
1;
   }
   else
   {
    if(!
IsPlayerConnected(id)) return SendClientMessage(playeridvermelho"Este jogador nгo estб conectado !");
    
GetPlayerName(playeridkikadorsizeof(kikador));
    
format(Strsizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s"kikador,playerid,rasao);
    
Kick(id);
    
SendClientMessageToAll(vermelhoStr);
   }
   }
    else
   {
     
SendClientMessage(playerid,vermelho"Vocк nгo й um administrador !");
   }
  return 
true;

Reply
#3

Olha sу como dб pra otimizar o cуdigo..
PHP код:
CMD:kick(playeridparams[])
{
 if (
IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1) return SendClientMessage(playerid,vermelho"Vocк nгo й um administrador !");
  new 
idrasaoStr[128], kikador[MAX_PLAYER_NAME];
  if(
sscanf(params"us"idrasao)) return SendClientMessage(playeridlaranja"Digite : /kick [ID] [Motivo]");
    if(!
IsPlayerConnected(id)) return SendClientMessage(playeridvermelho"Este jogador nгo estб conectado !");
    
GetPlayerName(playeridkikadorsizeof(kikador));
    
format(Strsizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s"kikador,playerid,rasao);
    
Kick(id);
    
SendClientMessageToAll(vermelhoStr);
  return 
1;

Reply
#4

Quote:
Originally Posted by MacMillan_
Посмотреть сообщение
Olha sу como dб pra otimizar o cуdigo..
PHP код:
CMD:kick(playeridparams[])
{
 if (
IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1) return SendClientMessage(playerid,vermelho"Vocк nгo й um administrador !");
  new 
idrasaoStr[128], kikador[MAX_PLAYER_NAME];
  if(
sscanf(params"us"idrasao)) return SendClientMessage(playeridlaranja"Digite : /kick [ID] [Motivo]");
    if(!
IsPlayerConnected(id)) return SendClientMessage(playeridvermelho"Este jogador nгo estб conectado !");
    
GetPlayerName(playeridkikadorsizeof(kikador));
    
format(Strsizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s"kikador,playerid,rasao);
    
Kick(id);
    
SendClientMessageToAll(vermelhoStr);
  return 
1;

Й fica bem melhor mesmo. Mas vocк nгo sabe resolver minha dъvida nгo ? kk
Reply
#5

Vou Fazer um CMD Para Voce Pera ai Eu VO Editar o Topico

@Edit
PHP код:
CMD:kick(playeridparams[])
{
if (
IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1) return SendClientMessage(playerid, -1" Vocк Nao й Um Admistrador " );
new 
idmotivostr[128];
if(
sscanf(params"us"idmotivo)) return SendClientMessage(playerid, -1"Use: /kick [id] [motivo]");
format(Strsizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s"PlayerName(id), idmotivo);
SendClientMessageToAll(vermelhoStr); 
kick(id);
return 
1;
}
// Bota Isso No Final da GM
stock PlayerName(id)
{
    new 
name[MAX_PLAYER_NAME];
    
GetPlayerName(idnamesizeof(name));
    return 
name;

Reply
#6

Quote:
Originally Posted by ZackT
Посмотреть сообщение
Й fica bem melhor mesmo. Mas vocк nгo sabe resolver minha dъvida nгo ? kk
format(Str, sizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s", kikador,playerid,rasao);

Nгo era pra ser ID?

format(Str, sizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s", kikador,id ,rasao);

Reply
#7

Quote:
Originally Posted by Asus994
Посмотреть сообщение
Vou Fazer um CMD Para Voce Pera ai Eu VO Editar o Topico

@Edit
PHP код:
CMD:kick(playeridparams[])
{
if (
IsPlayerAdmin(playerid) || Player[playerid][Padmin] >= 1) return SendClientMessage(playerid, -1" Vocк Nao й Um Admistrador " );
new 
idmotivostr[128];
if(
sscanf(params"us"idmotivo)) return SendClientMessage(playerid, -1"Use: /kick [id] [motivo]");
format(Strsizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s"PlayerName(id), idmotivo);
SendClientMessageToAll(vermelhoStr); 
kick(id);
return 
1;
}
// Bota Isso No Final da GM
stock PlayerName(id)
{
    new 
name[MAX_PLAYER_NAME];
    
GetPlayerName(idnamesizeof(name));
    return 
name;

Era isso que eu queria saber , se ia ter que colocar strtok, mas fiquei com medo de falar merda kk. De qualquer forma, muito obrigado.

Quote:
Originally Posted by MacMillan_
Посмотреть сообщение
format(Str, sizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s", kikador,playerid,rasao);

Nгo era pra ser ID?

format(Str, sizeof(Str), "O jogador %s(%d) foi kikado do servidor. Motivo : %s", kikador,id ,rasao);

Vou ver aqui , mas acho que era pra trocar sim kkk, valeu tambйm !

@RESOLVIDO
Reply
#8

Achei estб vнdeo aula no ******* bem interessante, ensina a criar o comando /kick em zcmd.

https://www.youtube.com/watch?v=1Az2_j8cXfY
Reply
#9

PHP код:
CMD:kick(playeridparams[])
{
    if(!
IsPlayerAdmin(playerid) && PlayerInfo[playerid][iAdmin] < && PlayerInfo[playerid][iHelper] == false) return SendClientMessage(playeridC_ERRO"ERRO: Vocк nгo tem permissгo.");
    new 
giveidmotivo[36];
    if(
sscanf(params"us"giveidmotivo)) return SendClientMessage(playeridC_CINZA"USO: /Kick [Jogador] [Motivo]");
    if(!
IsPlayerConnected(giveid)) return SendClientMessage(playeridC_ERRO"ERRO: Jogador nгo conectado.");
    if(
strlen(motivo) > 36) return SendClientMessage(playerid, -1"ERRO: Mбximo 36 caracteres no motivo.");
    new 
string[140];
    
format(stringsizeof(string), "[X] O administrador %s kickou %s. Motivo: %s"iNome(playerid), iNome(giveid), motivo);
    
SendClientMessageToAll(0xFF0000FFstring);
    
Kick(giveid);
    return 
1;

Pode adaptar esse aqui... eu uso no meu script e й fбcil de entender.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)