07.07.2010, 00:41
Eae galera do forum samp esse й meu segundo tutorial aqui no forum e hoje vou estar postando como criar o comando /relatorio, comando que envia uma mensagem para os admins.
Observaзгo: Fiz esse tutorial para enviar mensagem do relatorio para os Administradores logado pela Rcon.
Vamos lб galera no topo coloque as seguintes defines:
Explicando:
Abaixo das defines adicione a seguinte funзгo:
Explicando:
Agora no Onplayercommandtext:
Agora entre suas publics adicione estб public:
Caso nгo tenha a funзгo strtok em seu gm adicione no final
Galera eu testei antes de postar aqui deu certo qualquer dъvida sу postar!!!
Caso queira add esse tutorial em seu blog/forum ou coisa do tipo me envie um MP.
Espero que tenham gostado abraзos.
Observaзгo: Fiz esse tutorial para enviar mensagem do relatorio para os Administradores logado pela Rcon.
Vamos lб galera no topo coloque as seguintes defines:
pawn Код:
#define azulagua 0x0080FFAA
#define azulclaro 0x7BE8FBAA
#define verde 0x33AA33AA
pawn Код:
#define azulclaro 0x7BE8FBAA//===> definimos o que o sнmbolo azulclaro representarб no nosso cуdigo que no caso й uma cor.
pawn Код:
forward AvisoAdmin(COLOR,const string[]);
pawn Код:
AvisoAdmin(COLOR,const string[]);//===> declaremos a funзгo que logo mais utilizaremos
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256];
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/relatorio", true) == 0) //comando
{//inicio do codigo do comando
new string[256];//criamos uma string
new mensagem[256];//criamos a string que identificarб o que o player digita
new sendername[MAX_PLAYER_NAME];//criamos a string que pegarб o nome do player
new idx;//criamos uma array
mensagem = strtok(cmdtext, idx);//definimos a funзгo da string mensagem
if(!strlen(mensagem)) //Caso o player nгo digite nada
{
SendClientMessage(playerid,verde,"Erro digite: /relatorio [texto]");//envia a mensagem para o player
return 1;//retorna a 1, ou seja caso o player digite nada nгo acontecerб nada
}
GetPlayerName(playerid,sendername,sizeof(sendername));//identifica o nome do player que digitou o comando
format(string,sizeof(string),"Relatуrio de %s: %s",sendername,mensagem);//formata a string que serб enviada para os administradores
AvisoAdmin(azulagua,string);//envia a string com a cor azulagua
SendClientMessage(playerid,azulclaro,"Mensagem enviada com sucesso para nossos adms");//mensagem de que o comando foi bem executado
return 1;//retorna a 1
}//fim do cуdigo
return 1;
}// fim da public
pawn Код:
public AvisoAdmin(COLOR,const string[])//public que terб a funзгo de enviar a mensagem para os admins
{//inicia o cуdigo da public
for(new i = 0; i < MAX_PLAYERS; i++)//criamos um loop
{
if(IsPlayerConnected(i))//verifica se o player estб conectado
{
if (IsPlayerAdmin(i))//verifica se o player й admin
{
SendClientMessage(i, COLOR, string);//envia a mensagem para os admins
printf("%s", string);//mostra no console a mensagem
}
}
}
return 1;
}//Final da public
pawn Код:
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
Caso queira add esse tutorial em seu blog/forum ou coisa do tipo me envie um MP.
Espero que tenham gostado abraзos.