30.03.2011, 22:27
(
Последний раз редактировалось Diogo_Bras; 02.04.2011 в 20:30.
)
Andei a pesquisar uns tуpicos no fуrum e vi pessoas a pedir sistemas afk ou mesmo com dъvida, por isso decidi criar um sistema mesmo sendo ele fбcil de fazer.
Criador Geral: [iPs]DiogoBras
Agradecimentos: Fуrum samp - Andei a pesquisar uns tуpicos de galera pedindo, e decidi fazer
Comandos: /ausente ; /online ; /Lista
Funcionalidades:
/ausente - O jogador fica com a tag "[AFK]" antes do nick, ficando [AFK]NOME! Й setado para o mundo virtual nє1, para nгo ter contato com os outros jogadores e tambйm й congelado.
/onlline - O jogador fica com o nome normal, sem a tag "[AFK]"! Й denovo setado para o mundo virtual nє0 (normal), e й descongelado.
/Lista - Mostra o nome de todos os jogadores que estгo ausentes, e quando eles voltam (/online) o nome deles desaparece da lista quando digitado o comando.
Tкm dicas para melhora do projeto? Gostavam que este sistema tivesse mais algo? Entгo postem!
pawn Код:
/* [iPs] AFK Advanced System (:
Criador Geral: [iPs]DiogoBras
Agradecimentos; Fуrum samp - Andei a pesquisar uns tуpicos de galera pedindo, e decidi fazer :D
Comandos: /ausente ; /online ; /Lista
Funcionalidades:
/ausente - O jogador fica com a tag "[AFK]" antes do nick, ficando [AFK]NOME! Й setado para o mundo virtual nє1, para nгo ter contato com os outros jogadores e tambйm й congelado.
/onlline - O jogador fica com o nome normal, sem a tag "[AFK]"! Й denovo setado para o mundo virtual nє0 (normal), e й descongelado.
/Lista - Mostra o nome de todos os jogadores que estгo ausentes, e quando eles voltam (/online) o nome deles desaparece da lista quando digitado o comando. */
#include <a_samp>
// »Defines das Cores«
#define Amarelo 0xEEAD0EFF
#define Laranja 0xFF7F00FF
#define Vermelho 0xEE0000FF
// »Variбveis«
new AFK[MAX_PLAYERS], Jogador[MAX_PLAYER_NAME], string[56], NomeTemporario[MAX_PLAYER_NAME];
public OnPlayerConnect(playerid)
{
AFK[playerid] = 0;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/ausente", true) == 0)
{
if(AFK[playerid] == 0)
{
GetPlayerName(playerid, NomeTemporario, sizeof(NomeTemporario));
SetPVarString(playerid, "NomeOriginal", NomeTemporario);
format(NomeTemporario, sizeof(NomeTemporario), "[AFK]%s", NomeTemporario);
SetPlayerName(playerid, NomeTemporario);
SetPlayerArmour(playerid, 99999);
TogglePlayerControllable(playerid, 0);
GetPlayerName(playerid, Jogador, sizeof(Jogador));
format(string, sizeof(string), "|AFK| Jogador(a) %s estб ausente! (/ausente).", Jogador);
SendClientMessageToAll(Amarelo, string);
AFK[playerid] = 1;
return SetPlayerVirtualWorld(playerid, 1);
}
else return SendClientMessage(playerid, Laranja, "|AFK| Vocк jб estб ausente! Use (/online) para voltar ao servidor.");
}
if(strcmp(cmdtext, "/online", true) == 0)
{
if(AFK[playerid] == 1)
{
GetPVarString(playerid, "NomeOriginal", NomeTemporario, sizeof(NomeTemporario));
SetPlayerName(playerid, NomeTemporario);
DeletePVar(playerid, "NomeOriginal");
SetPlayerArmour(playerid, 0);
TogglePlayerControllable(playerid, 1);
GetPlayerName(playerid, Jogador, sizeof(Jogador));
format(string, sizeof(string), "|AFK| Jogador(a) %s estб voltou ao jogo! (/online).", Jogador);
SendClientMessageToAll(Amarelo, string);
AFK[playerid]=0;
return SetPlayerVirtualWorld(playerid, 0);
}
else return SendClientMessage(playerid, Laranja, "|AFK| Vocк jб estб online!");
}
if(strcmp(cmdtext, "/Lista", true) == 0)
{
SendClientMessage(playerid, Laranja, "|AFK| Jogadores Ausentes:");
for(new j = 0; j < MAX_PLAYERS; j++)
{
if(IsPlayerConnected(j))
{
if(AFK[j] == 1)
{
GetPlayerName(j, Jogador, sizeof(Jogador));
format(string, sizeof(string),"Jogador %s | ID: %i", Jogador, j);
SendClientMessage(playerid, Amarelo, string);
}
}
}
return 1;
}
return SendClientMessage(playerid, Vermelho, "Comando invбlido!");
}
Agradecimentos: Fуrum samp - Andei a pesquisar uns tуpicos de galera pedindo, e decidi fazer
Comandos: /ausente ; /online ; /Lista
Funcionalidades:
/ausente - O jogador fica com a tag "[AFK]" antes do nick, ficando [AFK]NOME! Й setado para o mundo virtual nє1, para nгo ter contato com os outros jogadores e tambйm й congelado.
/onlline - O jogador fica com o nome normal, sem a tag "[AFK]"! Й denovo setado para o mundo virtual nє0 (normal), e й descongelado.
/Lista - Mostra o nome de todos os jogadores que estгo ausentes, e quando eles voltam (/online) o nome deles desaparece da lista quando digitado o comando.
Tкm dicas para melhora do projeto? Gostavam que este sistema tivesse mais algo? Entгo postem!