[Bбsico]Fazendo teleportes com dcmd -
Sampizito - 24.12.2011
De longe, o sistema de processamento mais comum de comando em termos de uso й o mйtodo usado pela primeira vez para strtok SA: MP na LVDM original por jax. Esta exposiзгo, desde o inнcio estabeleceu firmemente o seu uso em scripts, porйm й muito lento em comparaзгo com outros mйtodos, um desses mйtodos, dcmd, й explicado aqui, juntamente com um mйtodo de extraзгo de parвmetros com seguranзa e rapidez a partir do comando digitado.
A vantagem de colocar seus comandos via dcmd й que os comandos nгo precisam ficar dentro da OnPlayerCommandText , somente as definiзхes delas.
Para colocar seus comando via dcmd siga o tutorial abaixo..
Antes de comerзamos a fazer qualquer comando via dcmd , coloque no topo do seu GAME MODE
pawn Код:
#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
Agora ainda no pawn, aperte ctrl + f e digite public OnPlayerCommandText(playerid, cmdtext[])
Acresente lб dentro
Por inquanto nгo mexeremos ainda ai dentro.. Agora vamos criar 1 comando bбsico de teleporte aleatorio sera simples.
pawn Код:
dcmd_iraero(playerid, params[])
{
#pragma unused params
SetPlayerPos(playerid, 1950, 5245, 2547);
SetPlayerFacingAngle(playerid, 0.0);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
return SendClientMessage(playerid, , "[INFO]Vocк foi teleportado com sucesso");
}
Diferente dos outras maneiras de comando o params do dcmd segue abaixo do comando com o # , como vocкs podem ver acima , se essa definiзгo nгo conter em todos seus comandos dcmd, ira da erro, e nгo irб funcionar
Obs : O comando poderб ir em qualquer lugar, nгo й necessбrio estб dentro da OnPlayerCommandText.
Apуs nos realizarmos o comando, agora vocк apertarб ctrl + f em seu pawn e digitarб novamente
Agora й a parte mais interessante, diferente de todos outros modelos abaixo da definiзгo use_comands ficarб todos os comandos dcmd , de acordo com o numero de letras em ordem crescente como segue no exemplo abaixo
EX:
pawn Код:
dcmd(g, 1, cmdtext);
dcmd(a, 1, cmdtext);
dcmd(b, 1, cmdtext);
dcmd(c, 1, cmdtext);
dcmd(d, 1, cmdtext);
dcmd(g, 1, cmdtext);
dcmd(h, 1, cmdtext);
dcmd(i, 1, cmdtext);
dcmd(j, 1, cmdtext);
dcmd(r, 1, cmdtext);
Peguei 1 exemplo do meu Game mode; como vocкs podem ver os comandos sempre seguiram nesse padrгo
dcmd(comando,numero de letras,cmdtext); lembrando que se seu comando for 2 letras vocк deverб por abaixo de todos dcmd de 1 letra, seguido de um espaзo , EX:
pawn Код:
dcmd(g, 1, cmdtext);
dcmd(m, 1, cmdtext);
dcmd(d, 1, cmdtext);
dcmd(a, 1, cmdtext);
dcmd(q, 1, cmdtext);
dcmd(v, 1, cmdtext);
dcmd(i, 1, cmdtext);
dcmd(j, 1, cmdtext);
dcmd(r, 1, cmdtext);
dcmd(ra, 2, cmdtext);
dcmd(te, 2, cmdtext);
meu comando como й /iraero ficaria assim
pawn Код:
dcmd(iraero, 6, cmdtext);
Ficaria abaixo de todos o de cima, por que contйm 6 letras
E assim vai indo..
No final da public , vocк colocarб isso
pawn Код:
#endif // aqui ficarб a mensagem de quando o player colocar um comando que nгo existe ..
new string[128];
format(string,128,"[ERRO] O comando %s nгo й vбlido. Digite /ajuda para mais informaзхes.", cmdtext);
SendClientMessage(playerid, sua cor, string);
return 1;
}
Й Simples , quem tiver alguma dъvida, basta postar abaixo que tiro sua dъvida
OBS: Totalmente proibido Trolls aqui, й um tutorial bбsico . Aceito sugestхes e criticas e elogios tambйm
Clique
aqui e conheзa uma stock feita pelo
Victor Cesaroni
Clique
aqui e saiba como fazer comandos por zcmd & sscanf pelo membro BlueX
Fonte do texto : Tibia Wiki
Mais informaзхes
https://sampwiki.blast.hk/wiki/Dcmd
Re: [Bбsico]Fazendo teleportes com dcmd -
RebeloX - 24.12.2011
Bom tutorial, mas prefiro o uso de zcmd & sscanf.
Atenciosamente BlueX
Re: [Bбsico]Fazendo teleportes com dcmd -
Sampizito - 24.12.2011
Realmente, eu prefiro dcmd , pois na minha opiniгo acho mais fбcil rs..
Valeu pelo apoio >
Re: [Bбsico]Fazendo teleportes com dcmd -
Victor Cesaroni - 24.12.2011
Bom tuto, se vocк quiser pode complementar com
-a stock que eu fiz para facilitar os teles-.
Й sу colocar o link pra lб xD, nem precisa colocar crйdito pra mim nada, basta apenas o link
Re: [Bбsico]Fazendo teleportes com dcmd -
Sampizito - 24.12.2011
Sem problemas, vou editar
Re: [Bбsico]Fazendo teleportes com dcmd -
RebeloX - 24.12.2011
Quote:
Originally Posted by Sampizito
Realmente, eu prefiro dcmd , pois na minha opiniгo acho mais fбcil rs..
Valeu pelo apoio > 
|
Na moral zcmd й o comando mais rapido e nem precisa que tar a defenir no topo nem nada, de uma olhada no meu tutorial e verб que й bem facil rsrs (:
Re: [Bбsico]Fazendo teleportes com dcmd -
Sampizito - 24.12.2011
Eu ja vi, e coloquei aqui *-* o link tbm , para quem quizer
Re: [Bбsico]Fazendo teleportes com dcmd -
!Niiw - 24.12.2011
o tutorial ficou bem explicado, mas assim como o BlueX tambйm prefiro o zcmd por ser mais rapido e ate mais facil.
Re: [Bбsico]Fazendo teleportes com dcmd -
Sampizito - 24.12.2011
Quote:
o tutorial ficou bem explicado, mas assim como o BlueX tambйm prefiro o zcmd por ser mais rapido e ate mais facil.
__________________
|
Obrigado ♥
Re: [Bбsico]Fazendo teleportes com dcmd -
Nake01 - 01.01.2012
Ele postou tutorial, e nгo postou a pergunta: Qual й sua preferкncia?.