[Ajuda] Comando
#1

Bom galera sou iniciante em pawn, seguinte fiz 3 comandos para meu servidor /kitarmas, dae seta as armas, mais queria saber se tem como por para eles sу podem usar 1 kit, exemplo eu digito /kitarmas, dae vou digitar /kitarmas2 fala ex Vocк nгo pode usar este comando vocк jб usou, e depois que acabar a muniзгo ele puder digitar /kitarmas2 e ir certo dae ele digita /kitarmas3 e da a mesma mensagem e assim sucessivamente

code completo dos comandos

Код:
 
	if(strcmp(cmd, "/kitarmas", true) == 0)
	{
	  GivePlayerWeapon(playerid, 28,999);
	  GivePlayerWeapon(playerid, 25,999);
	  GivePlayerWeapon(playerid, 34,999);
	  GivePlayerWeapon(playerid, 18,5);
	  SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas Parabйns e Divirta-se.");
	  return 1;
    }
    
    if(strcmp(cmd, "/kitarmas2", true) == 0)
    {
	  GivePlayerWeapon(playerid, 27,999);
	  GivePlayerWeapon(playerid, 29,999);
	  GivePlayerWeapon(playerid, 33,999);
	  GivePlayerWeapon(playerid, 16,5);
	  SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas2 Parabйns e Divirta-se.");
	  return 1;
    }

	if(strcmp(cmd, "/kitarmas3", true) == 0)
	{
	  GivePlayerWeapon(playerid, 30,999);
	  GivePlayerWeapon(playerid, 31,999);
	  GivePlayerWeapon(playerid, 32,999);
	  GivePlayerWeapon(playerid, 17,5);
	  SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas3 Parabйns e Divirta-se.");
	  return 1;
    }
Reply
#2

No topo do Gm:
pawn Код:
new UsouComando[MAX_PLAYERS];
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmd, "/kitarmas", true) == 0)
    {
        if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
        {
            SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
        }
        else // caso o jogador nгo usou o comando
        {
            GivePlayerWeapon(playerid, 28,999);
            GivePlayerWeapon(playerid, 25,999);
            GivePlayerWeapon(playerid, 34,999);
            GivePlayerWeapon(playerid, 18,5);
            SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas Parabйns e Divirta-se.");
            UsouComando[playerid] = 1; // Seta que o player ja usou o comando
        }
        return 1;
    }
    if(strcmp(cmd, "/kitarmas2", true) == 0)
    {
      if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
      {
          SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      }
      else // caso o jogador nгo usou o comando
      {
          GivePlayerWeapon(playerid, 27,999);
          GivePlayerWeapon(playerid, 29,999);
          GivePlayerWeapon(playerid, 33,999);
          GivePlayerWeapon(playerid, 16,5);
          SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas2 Parabйns e Divirta-se.");
          UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      }
      return 1;
    }

    if(strcmp(cmd, "/kitarmas3", true) == 0)
    {
      if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
      {
          SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      }
      else // caso o jogador nгo usou o comando
      {
          GivePlayerWeapon(playerid, 30,999);
          GivePlayerWeapon(playerid, 31,999);
          GivePlayerWeapon(playerid, 32,999);
          GivePlayerWeapon(playerid, 17,5);
          SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas3 Parabйns e Divirta-se.");
          UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      }
      return 1;
    }
    return 0;
}
public OnPlayerUpdate(playerid)
{
    if(UsouComando[playerid] == 1)//verifica se o jogador usou o comando caso ele usou vai vereficar se ele tem as armas
    {
        if(!(GetPlayerWeapon(playerid) == 27 || GetPlayerWeapon(playerid) == 29 || GetPlayerWeapon(playerid) == 33 || GetPlayerWeapon(playerid) == 33)) // verefica se o jogador nгo esta com o kit 1
        {
            UsouComando[playerid] = 0;
        }
        if(!(GetPlayerWeapon(playerid) == 28 || GetPlayerWeapon(playerid) == 25 || GetPlayerWeapon(playerid) == 34 || GetPlayerWeapon(playerid) == 18)) // verefica se o jogador nгo esta com o kit 1
        {
            UsouComando[playerid] = 0;
        }
        if(!(GetPlayerWeapon(playerid) == 30 || GetPlayerWeapon(playerid) == 31 || GetPlayerWeapon(playerid) == 32 || GetPlayerWeapon(playerid) == 17)) // verefica se o jogador nгo esta com o kit 3
        {
            UsouComando[playerid] = 0;
        }
    }
    return 1;
}
No OnPlayerUpdate use como uma base para vocк fazer. Pois quando o acabar a muniзгo de uma arma ele deixara o jogador usar o comando novamente.
Reply
#3

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
No topo do Gm:
pawn Код:
new UsouComando[MAX_PLAYERS];
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmd, "/kitarmas", true) == 0)
    {
        if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
        {
            SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
        }
        else // caso o jogador nгo usou o comando
        {
            GivePlayerWeapon(playerid, 28,999);
            GivePlayerWeapon(playerid, 25,999);
            GivePlayerWeapon(playerid, 34,999);
            GivePlayerWeapon(playerid, 18,5);
            SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas Parabйns e Divirta-se.");
            UsouComando[playerid] = 1; // Seta que o player ja usou o comando
        }
        return 1;
    }
    if(strcmp(cmd, "/kitarmas2", true) == 0)
    {
      if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
      {
          SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      }
      else // caso o jogador nгo usou o comando
      {
          GivePlayerWeapon(playerid, 27,999);
          GivePlayerWeapon(playerid, 29,999);
          GivePlayerWeapon(playerid, 33,999);
          GivePlayerWeapon(playerid, 16,5);
          SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas2 Parabйns e Divirta-se.");
          UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      }
      return 1;
    }

    if(strcmp(cmd, "/kitarmas3", true) == 0)
    {
      if(UsouComando[playerid] == 1) //verifica se o jogador usou o comando
      {
          SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      }
      else // caso o jogador nгo usou o comando
      {
          GivePlayerWeapon(playerid, 30,999);
          GivePlayerWeapon(playerid, 31,999);
          GivePlayerWeapon(playerid, 32,999);
          GivePlayerWeapon(playerid, 17,5);
          SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas3 Parabйns e Divirta-se.");
          UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      }
      return 1;
    }
    return 0;
}
public OnPlayerUpdate(playerid)
{
    if(UsouComando[playerid] == 1)//verifica se o jogador usou o comando caso ele usou vai vereficar se ele tem as armas
    {
        if(!(GetPlayerWeapon(playerid) == 27 || GetPlayerWeapon(playerid) == 29 || GetPlayerWeapon(playerid) == 33 || GetPlayerWeapon(playerid) == 33)) // verefica se o jogador nгo esta com o kit 1
        {
            UsouComando[playerid] = 0;
        }
        if(!(GetPlayerWeapon(playerid) == 28 || GetPlayerWeapon(playerid) == 25 || GetPlayerWeapon(playerid) == 34 || GetPlayerWeapon(playerid) == 18)) // verefica se o jogador nгo esta com o kit 1
        {
            UsouComando[playerid] = 0;
        }
        if(!(GetPlayerWeapon(playerid) == 30 || GetPlayerWeapon(playerid) == 31 || GetPlayerWeapon(playerid) == 32 || GetPlayerWeapon(playerid) == 17)) // verefica se o jogador nгo esta com o kit 3
        {
            UsouComando[playerid] = 0;
        }
    }
    return 1;
}
No OnPlayerUpdate use como uma base para vocк fazer. Pois quando o acabar a muniзгo de uma arma ele deixara o jogador usar o comando novamente.
Obrigado
Reply
#4

legal... mais pra que esse else e todas essas linhas?

assim nгo ficaria melhor?

pawn Код:
if(strcmp(cmd, "/kitarmas", true) == 0)
{
      if(UsouComando[playerid] == 1) return SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      GivePlayerWeapon(playerid, 28,999);
      GivePlayerWeapon(playerid, 25,999);
      GivePlayerWeapon(playerid, 34,999);
      GivePlayerWeapon(playerid, 18,5);
      SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas Parabйns e Divirta-se.");
      UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      return 1;
}
Reply
#5

Quote:
Originally Posted by renato989920
Посмотреть сообщение
legal... mais pra que esse else e todas essas linhas?

assim nгo ficaria melhor?

pawn Код:
if(strcmp(cmd, "/kitarmas", true) == 0)
{
      if(UsouComando[playerid] == 1) return SendClientMessage(playerid,-1,"Vocк ja usou o comando espere sua muniзгo acabar totalmente"); // Envia a mensagem que le ja usou o comando
      GivePlayerWeapon(playerid, 28,999);
      GivePlayerWeapon(playerid, 25,999);
      GivePlayerWeapon(playerid, 34,999);
      GivePlayerWeapon(playerid, 18,5);
      SendClientMessage(playerid,COR_AZUL,"Vocк usou /kitarmas Parabйns e Divirta-se.");
      UsouComando[playerid] = 1; // Seta que o player ja usou o comando
      }
        return 1;
}
Esqueci que dava para usar assim.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)