03.10.2013, 00:44
(
Last edited by Wellington1999; 03/10/2013 at 01:17 AM.
)
●Usando Zcmd/sscanf●
●Нndice●
• Usando ZCMD.
• Usando ZCMD C/ Parвmetros.
• Usando ZCMD C/ sscanf.
• Crйditos.
●Usando ZCMD●
Ele й mais prбtico mais rбpido, eu acho que ele foi feito para os novatos pararem de copiar, й muito mais facil de usar por ser mais compacto;
Exemplos :
Do que
Vamos ao que importa,Vamos fazer um comando simples sem parвmetros e sem o uso do sscanf.
Vamos criar um comando com variбveis.
Bom esta parte й facil, vamos usar ZCMD com parвmetros, eu aprendi sozinho depois estudei e vi que nгo й difнcil,
vamos la
adicione no topo do seu gm/fs
Vamos as explicaзхes
isnull = Nulo
params = Como vocк jб percebeu, no zcmd, params й o que vem depois do comando digitado. Ou seja, seu objetivo й setar um valor.
iddele = o Objetivo, o id do player que estб recebendo
params = o valor.
●Usando ZCMD C/ sscanf●
⇝ Nesta etapa vamos usar o sscanf em comandos, como ir em posiзхes ,dar valores e etc
• Comando /setarlevel
• Explicando
if(!IsPlayerConnected(iddele))// !IsPlayerConnected , nгo esta conectado,(iddele) , o recebedor
"dd" oque significa dd - 1є d = O ID Do player que receberб, o 2є й o o level dado.
SetPlayerScore(iddele, level); // iddele , id do player, "level" level setado
●Crйditos●
• Zeex (ZCMD)
• Y_Less (sscanf)
• Wellington1999
●Нndice●
• Usando ZCMD.
• Usando ZCMD C/ Parвmetros.
• Usando ZCMD C/ sscanf.
• Crйditos.
●Usando ZCMD●
Ele й mais prбtico mais rбpido, eu acho que ele foi feito para os novatos pararem de copiar, й muito mais facil de usar por ser mais compacto;
Exemplos :
pawn Code:
CMD: oi(playerid)
{
return 1;
}
pawn Code:
if(strcmp(cmd,"/oi",true)==0)
Vamos criar um comando com variбveis.
pawn Code:
new Oi;
pawn Code:
CMD:oi(playerid)
{
if(Oi == 1)//Se a variбvel OI for = 1,retorna a mensagem abaixo
{
SendClientMessage(playerid, -1, "Sua Variбvel Oi jб й 1");
return 1;
}
Oi = 1;//Se a variбvel Oi for diferente de 1, ele vai seta-la para 1
return 1;
}
vamos la
adicione no topo do seu gm/fs
pawn Code:
new playername[MAX_PLAYER_NAME];
pawn Code:
CMD:pegargrana(playerid, params[])
{
new String[128], playername[25];
if(isnull(params))
return SendClientMessage(playerid, -1, "Use: /pegargrana quantia");
GivePlayerMoney(playerid, params);
GetPlayerName(playerid, playername, sizeof(playername));
format(String, sizeof(String), "Vocк %s te deu %d de dinheiro", UsadorDoComando, params);
SendClientMessage(playerid, -1, String);
return 1;
}
pawn Code:
if(isnull(params))
return SendClientMessage(playerid, -1, "Use: /dargrana quantia");
params = Como vocк jб percebeu, no zcmd, params й o que vem depois do comando digitado. Ou seja, seu objetivo й setar um valor.
pawn Code:
GivePlayerMoney(iddele, params);// seta para o recebedor o params que й o dinheiro
iddele = o Objetivo, o id do player que estб recebendo
params = o valor.
●Usando ZCMD C/ sscanf●
⇝ Nesta etapa vamos usar o sscanf em comandos, como ir em posiзхes ,dar valores e etc
• Comando /setarlevel
pawn Code:
CMD:setlevel(playerid, params[])
{
new iddele,level;
if(sscanf(params, "dd", iddele, level))
return SendClientMessage(playerid, COR_CINZA1, "Use: /setlevel [id] [level]");
if(!IsPlayerConnected(iddele))
return SendClientMessage(playerid, COR_CINZA2, "Jogador nгo conectado");
SetPlayerScore(iddele, level);
GetPlayerName(iddele, playername1, sizeof(playername1));
GetPlayerName(playerid, playername, sizeof(playername));
format(String, 80, "Vocк setou o level do %s para %d ", playername1, level);
SendClientMessage(playerid, COR_AZULCLARO, String);
format(String, 80, "O Administrador %s setou seu level para %d", playername, level);
SendClientMessage(iddele, COR_AZULCLARO, String);
return 1;
}
if(!IsPlayerConnected(iddele))// !IsPlayerConnected , nгo esta conectado,(iddele) , o recebedor
"dd" oque significa dd - 1є d = O ID Do player que receberб, o 2є й o o level dado.
SetPlayerScore(iddele, level); // iddele , id do player, "level" level setado
pawn Code:
CMD:irpos(playerid, params[])
{
new Float:X,Float:Y,Float:Z;//Posiзхes X Y Z
GetPlayerName(iddele, playername1, sizeof(playername1));
if(sscanf(params, "ddd", X, Y,Z))//Se nгo tiver X Y Z no /irpos retorna a mensagem abaixo
return SendClientMessage(playerid, COR_CINZA1, "USE: /irpos [X] [Y] [Z]");
SetPlayerPos(playerid,X,Y,Z);//seta a posiзгo do player "playerid" quem digitou o cmd
printf("[Posiзгo]: Player %s foi para as posiзхes %f %f %f",playername,X,Y,Z);
return 1;
}
●Crйditos●
• Zeex (ZCMD)
• Y_Less (sscanf)
• Wellington1999