Portal SAMP
[Ajuda] /PM id Mensagem - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] /PM id Mensagem (/showthread.php?tid=3624)



/PM id Mensagem - Delator_ - 13/05/2023

Olá, sou iniciante na área de programação!

Já dei umas estudadas e consegui algumas coisas só com o wiki samp.

Fiz um código de mensagem privada, e tudo dar certo, menos a mensagem que não aparece kkk

O que falta pra dar certo??

Código PHP:
CMD:pm(playeridparams[])
{
    new str[128], Mensagem[128], idquemmanda[MAX_PLAYER_NAME], quemrecebe[MAX_PLAYER_NAME];
    if(sscanf(params"us"idMensagem)) return SendClientMessage(playerid, -1"Use: /pm [ID/Nick][texto]");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1"O jogador nao esta conectado!");
    
GetPlayerName(playeridquemmandasizeof(quemmanda));
    
GetPlayerName(idquemrecebesizeof(quemrecebe));
    
format(strsizeof(str), "PM para %s[%d]:%s"quemrecebeidMensagem);
    SendClientMessage(playeridINFOstr);
    format(strsizeof(str), "PM de %s[%d]: %s"quemmandaplayeridMensagem);
    SendClientMessage(idINFOstr);
    return 1;




RE: /PM id Mensagem - Sysner - 14/05/2023

na função sscanf(); tem que colocar o tamanho da string que deseja obter 
Código:
  if(sscanf(params, "us[144]", id, Mensagem)) return SendClientMessage(playerid, -1, "Use: /pm [ID/Nick][texto]");



RE: /PM id Mensagem - Delator_ - 14/05/2023

(14/05/2023 06:21)Sysner Escreveu: na função sscanf(); tem que colocar o tamanho da string que deseja obter 
Código:
  if(sscanf(params, "us[144]", id, Mensagem)) return SendClientMessage(playerid, -1, "Use: /pm [ID/Nick][texto]");

Show! Obrigado meu amigo!


RE: /PM id Mensagem - Carlos Victor - 19/05/2023

Eu sei que já foi solucionado, portanto, devo lembrar que só é possível inserir no máximo 128 caracteres em qualquer lugar, dialog/chat, etc... O máximo de saída é 144 e o máximo de entrada é 128, então o correto seria deixar:

Código PHP:
CMD:pm(playeridparams[])
{
    static
        
id,
        
message[128];

    if(
sscanf(params"us[128]"idmessage))
        return 
SendClientMessage(playerid, -1"/pm [ID] [Mensagem]");

    
// Código...
    
return 1;