SA-MP Forums Archive
[AJUDA] Erro em comando /relatorio - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] Erro em comando /relatorio (/showthread.php?tid=298206)



[AJUDA] Erro em comando /relatorio - Lucas OutLawz - 19.11.2011

Quando digito a menssagem nгo aparece tal menssagem apenas o nome do player, comando abaixo

PHP код:
dcmd_relatorio(playerid,params[])
{
new 
texto=strval(params);
new 
Texto[128];
new 
string[256];
if(!
strlen(params))return SendClientMessage(playerid0xDCDCDCAA"Use: /relatorio [Texto]");
else
{
        
format(string,256,"[Relatorio] %s: %s",Nome(playerid),Texto);
        for(new 
i=0;i<MAX_PLAYERS;i++)
        {
        if(
IsPlayerConnected(i) && Admin[i] >= 1)
        
SendClientMessage(i,0xDCDCDCAA,string);
        }
}
return 
1;




Re: [AJUDA] Erro em comando /relatorio - Hardware - 19.11.2011

pawn Код:
dcmd_relatorio(playerid,params[])
{
       new Texto[128];
       new string[256];
       new Texto=strval(params);
       if(!strlen(params))return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]");  
       format(string,256,"[Relatorio] %s: %s",Nome(playerid),Texto);
       for(new i=0;i<MAX_PLAYERS;i++)
       {
            if(IsPlayerConnected(i) && Admin[i] >= 1)
            SendClientMessage(i,0xDCDCDCAA,string);
       }
}
return 1;
}



Re: [AJUDA] Erro em comando /relatorio - Pharrel - 19.11.2011

Quote:
Originally Posted by Hardware
Посмотреть сообщение
pawn Код:
dcmd_relatorio(playerid,params[])
{
       new Texto[128];
       new string[256];
       new Texto=strval(params);
       if(!strlen(params))return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]");  
       format(string,256,"[Relatorio] %s: %s",Nome(playerid),Texto);
       for(new i=0;i<MAX_PLAYERS;i++)
       {
            if(IsPlayerConnected(i) && Admin[i] >= 1)
            SendClientMessage(i,0xDCDCDCAA,string);
       }
}
return 1;
}
pq strval? ate onde eu vi esse codigo й pra mandar uma string

pawn Код:
dcmd_relatorio(playerid, params[])
{
    if(!strlen(params))return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]");
    format(params,strlen(params)+38,"[Relatorio] %s: %s",Nome(playerid),params);
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i) && Admin[i] >= 1)
        SendClientMessage(i,0xDCDCDCAA,string);
    }
    return 1;
}



Re: [AJUDA] Erro em comando /relatorio - Cristhian - 20.11.2011

pawn Код:
dcmd_relatorio(playerid,params[])
{
    new Texto[128];
    new string[256];
    if(sscanf(params, "s[128]", Texto))return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]");
    format(string,256,"[Relatorio] %s: %s",Nome(playerid),Texto);
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(!IsPlayerConnected(i) && Admin[i] >= 1) return 1;
        SendClientMessage(i,0xDCDCDCAA,string);
    }
}
return 1;
}



Re: [AJUDA] Erro em comando /relatorio - Pharrel - 20.11.2011

Quote:
Originally Posted by Cristhian
Посмотреть сообщение
pawn Код:
dcmd_relatorio(playerid,params[])
{
    new Texto[128];
    new string[256];
    if(sscanf(params, "s[128]", Texto))return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]");
    format(string,256,"[Relatorio] %s: %s",Nome(playerid),Texto);
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i) && Admin[i] >= 1)
        SendClientMessage(i,0xDCDCDCAA,string);
    }
}
return 1;
}
sscanf em comando de 1 parametro = perda de tempo unformatando.


Re: [AJUDA] Erro em comando /relatorio - Cristhian - 20.11.2011

Quote:
Originally Posted by Pharrel
Посмотреть сообщение
sscanf em comando de 1 parametro = perda de tempo unformatando.
quando ta em dcmd, zcmd.. nгo precisa de sscanf, strtok, nem nada pra pegar o que o player digitou с ?


Re: [AJUDA] Erro em comando /relatorio - Pharrel - 20.11.2011

Quando vc usa 1 parametro nгo, oq vc digitar depois do comando fica tudo armazenado na variavel "params" entao й sу usa-la como fiz no codigo que postei antes.

pawn Код:
dcmd_relatorio(playerid, params[])//veja a variavel params aqui serve como qualquer outro parametro em uma public ou stock
{
    if(!strlen(params)) return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]"); // se o tamanho do texto dentro da string for = 0 retorna a msg
    format(params,strlen(params)+38,"[Relatorio] %s: %s",Nome(playerid),params);
    //format(params = pega a variavel params e formata  ja que ela nгo й uma constante
    //strlen(params)+38 isso porque "[Relatorio] %s: " pode ter no maximo 38 caracteres entao pega o tamanho do texto em params + oque jб esta digitado
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i) && Admin[i] >= 1)
        SendClientMessage(i,0xDCDCDCAA,string);
    }
    return 1;
}



Re: [AJUDA] Erro em comando /relatorio - Cristhian - 20.11.2011

Quote:
Originally Posted by Pharrel
Посмотреть сообщение
Quando vc usa 1 parametro nгo, oq vc digitar depois do comando fica tudo armazenado na variavel "params" entao й sу usa-la como fiz no codigo que postei antes.

pawn Код:
dcmd_relatorio(playerid, params[])//veja a variavel params aqui serve como qualquer outro parametro em uma public ou stock
{
    if(!strlen(params)) return SendClientMessage(playerid, 0xDCDCDCAA, "Use: /relatorio [Texto]"); // se o tamanho do texto dentro da string for = 0 retorna a msg
    format(params,strlen(params)+38,"[Relatorio] %s: %s",Nome(playerid),params);
    //format(params = pega a variavel params e formata  ja que ela nгo й uma constante
    //strlen(params)+38 isso porque "[Relatorio] %s: " pode ter no maximo 38 caracteres entao pega o tamanho do texto em params + oque jб esta digitado
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i) && Admin[i] >= 1)
        SendClientMessage(i,0xDCDCDCAA,string);
    }
    return 1;
}
sakei vlw