30.10.2014, 02:35
(
Последний раз редактировалось PedexM; 30.10.2014 в 14:32.
)
Tutorial Sistema de AFK
Requesito:
Код:
zCMD - Include - Download
Код:
Zeex - zCMD
Passo 1:Primeiramente seta essa vбriavel Global(Link Do Tutorial de Vбriaveis Crйditos - rjj!)
Setamos Embaixos atй das includes usa:
pawn Код:
#include <a_samp>
#include <zcmd>
new AFKJogador[MAX_PLAYERS];//Coloca ISSO AQUI OOOH <<
public OnGameModeInit()
{
return 1;
}
pawn Код:
CMD:
pawn Код:
CMD:afk(playerid, params[])
pawn Код:
CMD:afk(playerid, params[])
{
pawn Код:
new Nome[MAX_PLAYER_NAME], Linha[100];
e a vбriavel Linha й a nossa "String" Que vamos formatar ela, e o "[100]" й o tamanho da cйlula(nгo tenho contador direitinho)
Agora vamo comeзar com os "if"
pawn Код:
if(AFKJogador[playerid] == 1) return SendClientMessage(playerid, -1, "Vocк jб estб AFK!");
agora verifica se ele nгo estб AFK para ficar AFK!
pawn Код:
if(AFKJogador[playerid] == 0)
Passo 8:Agora Vamo Getar o Nome do jogador
pawn Код:
GetPlayerName(playerid, Nome, sizeof(Nome));
Passo 9:Agora vamo formatar a Frase com a Vбriavel que setamos como "Linha",e criar a frase que ele estб AFK.
pawn Код:
format(Linha, sizeof(Linha), "%s Estб Afk", Nome);
(Linha, sizeof(Linha), = Formata especialmente a Vбriavel "Linha"
%s = Vai ser trocada pelo nome depois, e depois vem a frase...
logo depois da vнrgula vem o "Nome" E a vбriavel que fizemos "Nome" e Getamos o Nome,Vai ser mandada para o %s
Agora vamo deixar ele parado para nгo se mover
pawn Код:
TogglePlayerControllable(playerid, 0);
e o playerid e o jogador, e define 0 ou 1(0 Ele fica parado e 1 Ele volta a mover)
Agora nos setamos para ele ficar AFK
pawn Код:
AFKJogador[playerid] = 1;
pawn Код:
SendClientMessageToAll(-1, Linha);
e manda a formataзгo que fizemos "Linha" enviar
e depois para terminar sу fazer o "return 1;"
pawn Код:
return 1;
}
Comando para Voltar
pawn Код:
CMD:voltarafk(playerid, params[])
pawn Код:
new Nome[24], Linhas[100];
pawn Код:
if(AFKJogador[playerid] == 0) return SendClientMessage(playerid, -1, "Vocк Nгo estб AFK!");
pawn Код:
if(AFKJogador[playerid] == 1)
pawn Код:
GetPlayerName(playerid, Nome, sizeof(Nome));
pawn Код:
format(Linha, sizeof(Linha), "%s Voltou ao Servidor", Nome);
pawn Код:
TogglePlayerControllable(playerid, 1);
pawn Код:
AFKJogador[playerid] = 0;
pawn Код:
SendClientMessageToAll(-1, Linha);
pawn Код:
return 1;
}
Agora o Comando Todo Pronto
pawn Код:
#include <a_samp>
#include <zcmd>
new AFKJogador[MAX_PLAYERS];
CMD:afk(playerid, params[])
{
new Nome[24], String[120];
if(AFKJogador[playerid] == 1) return SendClientMessage(playerid, -1, "Vocк Jб estб AFK");
if(AFKJogador[playerid] == 0)
GetPlayerName(playerid, Nome, sizeof(Nome));
format(String, sizeof(String), "%s Estб Afk", Nome);
TogglePlayerControllable(playerid, 0);
AFKJogador[playerid] = 1;
SendClientMessageToAll(-1, String);
return 1;
}
CMD:voltarafk(playerid, params[])
{
new Nome[24], String[120];
if(AFKJogador[playerid] == 0) return SendClientMessage(playerid, -1, "Vocк Nгo estб AFK");
GetPlayerName(playerid, Nome, sizeof(Nome));
if(AFKJogador[playerid] == 1)
format(String, sizeof(String), "%s Voltou ao Servidor", Nome);
TogglePlayerControllable(playerid, 1);
AFKJogador[playerid] = 0;
SendClientMessageToAll(-1, String);
return 1;
}