SA-MP Forums Archive
[Tutorial] How to: bcmd - 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: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+----- Forum: Lançamentos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=56)
+----- Thread: [Tutorial] How to: bcmd (/showthread.php?tid=364489)



How to: bcmd - RebeloX - 30.07.2012

How to: bcmd
Sejam bem vindos a mais um tutorial, desta vez estarei abordando o meu processador de comandos que pouca gente pode nгo saber usar e saber as suas novidades, entгo й isso, vamos comeзar.

bCMD


o bcmd й um novo processador de comandos criado por mim BlueX e com a contribuiзгo de vбrios membros (Paulo,DraKiNs,Funeral,Stewie` e [iPs]TeaM) pois sem eles eu nгo teria um processador de comandos tгo rбpido, voce pode obter o bcmd clicando aqui

Syntax


A syntax do bcmd й simples e inovadora
Код:
bCMD[seucomando]-(playerid,params[],help);
    • Aqui nуs definimos o nome do nosso comando.
    • Isto й o playerid, ou seja, sera o jogador em qual o comando serб executado.
    • Sгo os parвmetros do comando, lembrando que nгo й obrigatуrio colocar, apenas coloque se vocк for necessбrio.
    • Serve para mostrar uma mensagem de ajuda ao jogador, lembrando que tambem nгo й obrigatуrio colocar, apenas coloque se for necessбrio.
Criando o seu primeiro comando com o bcmd


pawn Код:
bCMD[grana]-(playerid)
    return GivePlayerMoney(playerid,10000);
Este й um exemplo e como podem ver nгo usamos o help e o params pois nгo foi necessбrio usar eles.

Usando o params & help


Bem, como todos sabem alguns comandos necessitam de parвmetros, no momento nгo й necessбrio usarmos sscanf, pois sу iremos usar um parвmetro, entгo vejamos aqui um comando kick.

pawn Код:
bCMD[kick]-(playerid,params[]){
    if(isnull(params))
        return SendClientMessage(playerid,-1,"use: /kick [id]");
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid,-1,"Voce nгo й admin!");
    Kick(strval(params));
    return 1;
}
Mas todos jб devem saber como isto funciona, mas temos uma nova vantagem, agora podemos usar o help, ou seja, em vez de criarmos muitos comandos de /ajuda, podemos dizer o que o comando faz, veja o exemplo com o kick.

pawn Код:
bCMD[kick]-(playerid,params[],help){
    if(help)
        return SendClientMessage(playerid,-1,"Ajuda: Este comando serve para kickar algum jogador.");
    if(isnull(params))
        return SendClientMessage(playerid,-1,"use: /kick [id]");
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid,-1,"Voce nгo й admin!");
    Kick(strval(params));
    return 1;
}
Entгo й isto que podemos fazer com a funзгo help.

Comando existe?


Para mandar uma mensagem para o jogadora sabendo se o comando existe ou nгo й muito simples, basta usar a seguinte callback
pawn Код:
public OnPlayerCallCommand(playerid,cmdtext[],sucess)
{
    return 1;
}
Veja um exemplo:

pawn Код:
public OnPlayerCallCommand(playerid,cmdtext[],sucess){
    new result[128];
    if(!sucess){
        format(result,128,"O comando %s nгo existe, use /ajuda",cmdtext);
        SendClientMessage(playerid,-1,result);
    }
    return 1;
}
Usando sscanf com bcmd


Para usar sscanf com bcmd й muito simples, alias nгo tem nada de diferente em relaзгo a zcmd.
Entгo voce pode ler o meu tutorial How to: zcmd & sscanf
Depois й sу converter os comandos claro.

Entгo й isto, espero que tenha gostado do tutorial.



Re: How to: bcmd - steki. - 30.07.2012

Faria melhor.


Re: How to: bcmd - RebeloX - 30.07.2012

Quote:
Originally Posted by Stewie`
Посмотреть сообщение
Faria melhor.
Й eu sei Stewie`


Re: How to: bcmd - .FuneraL. - 30.07.2012

Boa Azul, Funcionando Perfeito


Re: How to: bcmd - RebeloX - 30.07.2012

Quote:
Originally Posted by .FuneraL.
Посмотреть сообщение
Boa Azul, Funcionando Perfeito
Obrigado Funeral


Re: How to: bcmd - ipsBruno - 30.07.2012

Ficou uma boa explicaзгo. Parabйns Bluex - GonзaloRemela


Re: How to: bcmd - paulor - 31.07.2012

Tu chama params e usar space ? LoL...

Код:
bCMD[kick]-(playerid,params[]){
    if(isnull(space))
        return SendClientMessage(playerid,-1,"use: /kick [id]");
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid,-1,"Voce nгo й admin!");
    Kick(strval(space));
    return 1;
}



Respuesta: How to: bcmd - Truck - 31.07.2012

Parabйns BlueX, bem explicativo !


Re: Respuesta: How to: bcmd - RebeloX - 31.07.2012

Quote:
Originally Posted by ipsBruno
Посмотреть сообщение
Ficou uma boa explicaзгo. Parabйns Bluex - GonзaloRemela
Obrigado Rua

Quote:
Originally Posted by paulor
Посмотреть сообщение
Tu chama params e usar space ? LoL...

Код:
bCMD[kick]-(playerid,params[]){
    if(isnull(space))
        return SendClientMessage(playerid,-1,"use: /kick [id]");
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid,-1,"Voce nгo й admin!");
    Kick(strval(space));
    return 1;
}
Ah esse comando й o que eu tinha no meu gm de testes e eu testei para ver se era possivel colocar outro nome em vez de params, nem lembrei na hora que fiz o tutorial, mas tambem pode colocar space, params, ou ate Partido dos Trabalhadores

Quote:
Originally Posted by Truck
Посмотреть сообщение
Parabйns BlueX, bem explicativo !
Obrigado!


Re: How to: bcmd - Dayvison_ - 17.03.2015

Estou revivendo, porem o autor manten-se ativo entao nao a problema
Uma duvida simples no caso de eu mandar o help para o player seria:
return bcmd_Comando(playerid,"",1);
isto?