[Tutorial] Comando: /relatorio
#1

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:
pawn Код:
#define azulagua 0x0080FFAA
#define azulclaro 0x7BE8FBAA
#define verde 0x33AA33AA
Explicando:
pawn Код:
#define azulclaro 0x7BE8FBAA//===> definimos o que o sнmbolo azulclaro representarб no nosso cуdigo que no caso й uma cor.
Abaixo das defines adicione a seguinte funзгo:
pawn Код:
forward AvisoAdmin(COLOR,const string[]);
Explicando:
pawn Код:
AvisoAdmin(COLOR,const string[]);//===> declaremos a funзгo que logo mais utilizaremos
Agora no Onplayercommandtext:
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
Agora entre suas publics adicione estб 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
Caso nгo tenha a funзгo strtok em seu gm adicione no final
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;
}
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.
Reply


Messages In This Thread
[Tutorial] Comando: /relatorio - by NathanLive - 07.07.2010, 00:41
Re: [Tutorial] Comando: /relatorio - by andmeida10 - 07.07.2010, 07:19
Re: [Tutorial] Comando: /relatorio - by NathanLive - 07.07.2010, 15:00
Re: [Tutorial] Comando: /relatorio - by Ricardo_Saddler - 07.07.2010, 15:05
Re: [Tutorial] Comando: /relatorio - by [NWD]Tweener_ - 07.07.2010, 15:36
Re: [Tutorial] Comando: /relatorio - by NathanLive - 07.07.2010, 18:56
Re: [Tutorial] Comando: /relatorio - by zSuYaNw - 08.07.2010, 01:29
Re: [Tutorial] Comando: /relatorio - by ipsBruno - 08.07.2010, 01:52
Re: [Tutorial] Comando: /relatorio - by NathanLive - 08.07.2010, 02:40
Re: [Tutorial] Comando: /relatorio - by sergio_xd - 31.07.2010, 11:23

Forum Jump:


Users browsing this thread: 1 Guest(s)