Usar ZCMD com SSCANF -
ipsBruno - 30.12.2010
Introduзгo:
Olб,hoje vou ensinar como usar ZCMD com SSCANF,que й o melhor sistema de comandos que tem.
PRIMEIRO PASSOS:
Baixando SSCANF:
Clique aqui e baixe
SSCANF PLUGIN
Apуs baixar mova o Plugin para pasta '
Plugins'.
No caso,eu nгo uso Include,simplesmente defino a funзгo nativa no Prуprio Game Mode..
Agora no Topo do GameMode:
pawn Код:
native sscanf(const data[], const format[], {Float,_}:...);
native unformat(const data[], const format[], {Float,_}:...) = sscanf;
Baixando ZCMD:
Apуs Toda isto vamos baixar o sistema de comandos
Clique
Aqui para baixar Zeex Commands Include. (ZCMD)
Apуs baixar coloque a Include a coloque na pasta
'Pawno/Include'
e Coloque no Topo do Game Mode
Apуs isto vamos comeзar a criar o comando
...
SEGUNDO PASSO:
Callback de ZCMD:
Vamos comeзar a usar ZCMD.
Primeiramente vamos modificar a CallBack
Delete a CallBack
OnPlayerCommandText e todos seus Comandos e coloque:
pawn Код:
public
OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
static Name[24];
GetPlayerName(playerid,Name,24);
printf("[COMANDOS]: Player %s Digitou | Comando: %s",Name,cmdtext);
if (!success)
return SendClientMessage(playerid,0xFFFFFF,"[ERRO] Comando nгo Reconhecido");
return true;
}
sucess й a array referente a verificaзгo se o comando existe ou nгo e se foi executado corretamente.
Код:
!sucess = Nгo foi executado
sucess = Foi Executado
Alн vocкs podem mudar a vontade para bloquear comandos e outras coisas.
LEMBRANDO OS COMANDOS NГO FICAM ALI DENTRO DESTA CALLBACK
Comeзando a usar comando:
Para usar comando й como se fosse uma Stock,sempre com RETURN TRUE;
Vamos lб:
pawn Код:
cmd(renderse,playerid,params[])
{
#pragma unused params
SetPlayerSpecialAction(playerid, 10);
SetPlayerSpecialAction(playerid, 10);
return true;
}
Sempre que o comando nгo tiver /oi [id] ou /oi [texto] ou qualquer outro parametros devemos usar:
Neste caso ele rende a pessoa com animaзгo
Comando com Parametros + SSCAN:
Para usar SSCANF devemos usar com uma condicional,pois ele automaticamente jб retorna se foi tudo corretamente certo:
Veja o Comando:
pawn Код:
cmd(dance,iPlayer,params[])
{
if(sscanf(params, "d", id))
return SendClientMessage(iPlayer, AMARELO, "Use: /dance <id>");
if(id < 1 || id > 4)
return SendClientMessage(iPlayer, VERMELHO, "[ERRO] Estilos sгo vбlidos apenas [1~4]");
if(id == 1)
SetPlayerSpecialAction(iPlayer,5);
if(id == 2)
SetPlayerSpecialAction(iPlayer,6);
if(id == 3)
SetPlayerSpecialAction(iPlayer,7);
if(id == 4)
SetPlayerSpecialAction(iPlayer,8);
return true;
}
Notem a Parte:
pawn Код:
if(sscanf(params, "d", id))
return SendClientMessage(iPlayer, AMARELO, "Use: /dance <id>");
Assim devemos usar:
Para IDS / NOMES
pawn Код:
new id;
if(sscanf(params, "u", id))
A Letra "u" pega Nome de Players e converte em ID,tambйm pega a ID e deixa id assim podendo fazer
/comando [id/nome]
Para TEXTOS
pawn Код:
new id[128];
if(sscanf(params, "s[128]", id))
A Letra "s" formata a string,lembrando que deve ter "s[lenght]", LENGHT й equivalente ao nъmero de caracteres,no caso coloquei [128]
/comando [texto]
Para NUMEROS
pawn Код:
new id;
if(sscanf(params, "d",id))
A Letra "d" pega nъmero apenas,tambйm pode ser usada apenas como ID,mas й preferнvel "u"
/comando [numero]
Simples,Rбpido e Fбcil.
Apуs implementar as Includes/Plugins,basta sair fazendo comandos,bem fбcil,mais fбcil que qualquer outro sistema.
Obrigado a Todos.
Agradeзo a Dark por me Indicar/Ensinar a usar ZCMD
Re: Usar ZCMD com SSCANF -
Trinix_PoS [Bizu] - 30.12.2010
legal , parabens drakins
Re: Usar ZCMD com SSCANF -
zSuYaNw - 30.12.2010
eu amo este cara!
Re: Usar ZCMD com SSCANF -
[Banido]HigorOliver - 30.12.2010
Bom tutorial
Re: Usar ZCMD com SSCANF -
DeNeR - 30.12.2010
nice drakon
eu tinha apenas uma pequena dъvida do zcmd agora tirei ela a limpo '-'
gracias muchacho D:
Re: Usar ZCMD com SSCANF -
[Ips]Guh - 30.12.2010
Bom TutorialІ
Re: Usar ZCMD com SSCANF -
[Banido]HigorOliver - 30.12.2010
Drakon me chama la no msn to cramufradu
Respuesta: Usar ZCMD com SSCANF -
ipsBruno - 30.12.2010
eu estou assistindo crepъsculo,jб entro
Valeu por quem gosto do Tutorial
Re: Usar ZCMD com SSCANF - [L3th4l] - 30.12.2010
Vocк realmente nгo precisa usar sscanf com um ъnico params ..
pawn Код:
cmd(dance,iPlayer,params[])
{
//if(sscanf(params, "d", id))
if(isnull(params))
return SendClientMessage(iPlayer, AMARELO, "Use: /dance <id>");
new id = strval(params);
if(id < 1 || id > 4)
return SendClientMessage(iPlayer, VERMELHO, "[ERRO] Estilos sгo vбlidos apenas [1~4]");
if(id == 1)
SetPlayerSpecialAction(iPlayer,5);
if(id == 2)
SetPlayerSpecialAction(iPlayer,6);
if(id == 3)
SetPlayerSpecialAction(iPlayer,7);
if(id == 4)
SetPlayerSpecialAction(iPlayer,8);
return true;
}
Mas boa sorte com tutoriais futuro: p
(Diga-me se o ****** Translator nгo: pp)
Respuesta: Usar ZCMD com SSCANF -
ipsBruno - 30.12.2010
Sim Lethal,й uma boa Dica.
Eu realmente me acostumei tanto com SSCANF
Mas mesmo assim obrigado.
if(!strval(params))
Teria que usar.
Anda vigiando meus posts й?
Valeu Cat.
OFF
E o sistema de ostras,LOL?
OFF2
O portuguкs do ****** ta melhorando irairia