[DUV]Criar Sistema de Relatorio
#1

Ola galera esse e meu primeiro topico no forum do samp entendo um pouco de pawno e pretendo fazer uns tutoriais mais tarde mais porinquanto tenho uma duvida q ja ta me cercando a 1 mes to querendo criar um sistema de /relatorio mensagem pra os players mandarem mensagens q pode ser vista por todos os admins e tipo um /particular pros admins responderem para os players estilo em servidores RPG, ja tentei fazer de tudo e nao consegui tipo ele manda a mensagem normal mais nao chega a mensagem pros admins c puderem me dar uma dica de como fazer esse comando eu agradeco, o sistema de admin q uso e o V-Admin akele de level10 e uso ele em um GM de drift

Obrigado desde ja
Reply
#2

mesmo..... tb tou prescisando.. tb uso o V-Admin, e da esse erro tb...... AJUDEM PLESE
Reply
#3

Vou lhe mostrar um exemplo usando 'dcmd', (caso vocк nгo use ponha no inicio do seu gm/fs):

pawn Код:
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
No public OnPlayerCommandText vocк poe o seguinte:

pawn Код:
dcmd(relatorio,9,cmdtext);//o '9' significa a quantidade de caracteres no comando
Ai em qualquer parte do mode vocк poe o seguinte:

pawn Код:
dcmd_relatorio(playerid,params[])
{
    new texto=strval(params);
    new string[256];
     if(!strlen(params))return SendClientMessage(playerid, COR, "Use: /relatorio [Texto]");
    else
    {
    format(string,256,"[Relatorio] %s: %s",Nome(playerid),texto);
    MensagemParaAdmin(COR,string);
    }
    return 1;
}
no final do mode:

pawn Код:
forward MensagenParaAdmin(color,const string[]);
public MensagenParaAdmin(color,const string[])
{
    for(new i = 0; i <= MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(identifica se й admin)
            {
                SendClientMessage(i, color, string);
            }
        }
    }
    return 1;
}

stock Nome(playerid)
{
    new nome[24];
    GetPlayerName(playerid, nome, 24);
    return nome;
    }
Obs: Nгo testei, favor teste e me responda se deu certo
Reply
#4

Код:
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(266) : error 017: undefined symbol "dcmd_relatorio"
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(274) : error 017: undefined symbol "dcmd_relatorio"
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(276) : error 017: undefined symbol "params"
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(277) : warning 219: local variable "string" shadows a variable at a preceding level
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(278) : error 017: undefined symbol "params"
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(282) : error 017: undefined symbol "MensagemParaAdmin"
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(287) : warning 225: unreachable code
C:\Documents and Settings\Administrador\Escritorio\CMD 0.3 v2.0\gamemodes\gangster.pwn(5491) : error 076: syntax error in the expression, or invalid function call
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


6 Errors.
Ola, eu fiz desse geito certo mais deu 13 erros, consertei 7 mais ainda ta dando erro tentei colocar o include string mais nao adianto nada ele da erro no dcmd e no params so souber como consertar agradeco
Reply
#5

pawn Код:
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
Vocк adicionou essa linha no topo ?
Reply
#6

Quote:
Originally Posted by pr0bscur3
pawn Код:
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
Vocк adicionou essa linha no topo ?
Coloquei mais na outra vez q compiilei o GM deu akeles erros e agora ele nem compilo
Reply
#7

Baixei o V-Admin aqui e dei uma olhada, fiz ele jб pro V-Admin, sу nгo testei se a mensagem chega, mas compilo certinho e tal, se possivel testa ai se a mensagem chega e me avisa.

http://pr0bscur3.pastebin.com/f47b8bb58
Reply
#8

Ae Compilo certinho deu tudo certo mais >> no jogo quando o cara digita /relatorio mensagem pros admins so ta aparecendo [Relatorio] NomedQuemMando nao aparece a mensagem q o cara digito isso parece simples de se fazer mais nao sei abaixo o link da SS do chat.

/imageshack/img52/1203/naoaparece.th.png
Reply
#9

Код:
if(strcmp(cmd, "/relatorio", true) == 0 || strcmp(cmd,"/admintalk", true) ==0)
  {
    tmp = strrest(cmdtext,idx);
    if(!strlen(tmp)) SendClientMessage(playerid, COR_CINZA, "Use: /relatorio [texto]");
      for(new i=0; i<MAX_PLAYERS; i++){
        if(IsPlayerAdmin(i)){
        format(string, sizeof(string), "%s Relatou: %s", PlayerName(playerid), tmp);
        SendClientMessage(i, COR_AMARELO, string);  
        SendClientMessage(playerid, COR_AMARELO, "Sua mensagem foi enviada para os administradores!");
      }          
    }
    return 1;
  }
Reply
#10

editei reeditei re reditei e a mesma coisa aparece relatorio >> nome d quem mando: nao aparece a mensagem q o cara digito, deve ser alguma coisa com stock alguma treta assim o problema e q nao tenho a minima ideia d como c mexe com essa funcao
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)