SA-MP Forums Archive
Mandando Mensagem para Todos - 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: Mandando Mensagem para Todos (/showthread.php?tid=198791)



Mandando Mensagem para Todos - mafelis - 13.12.2010

Pessoal,estou tentando criar um COmando que quando o Admin, ou GM disparar ele pode enviar uma Mensagem para Todos Os Jogadores, sei que para iSoo posso usar a funзгo SendClientMessageToAll. entгo desenvolvi sу isso atй agora e empaquei, pois nгo sei quase nada de PAWN. como termino:

Preciso que a Funзгo Mostre estб Mensagem no CHAT para todos os Jogadores

[SERVER NOTICE] {Mensagem do GM}. By: PLAYERNOME
Exemplo:

[SERVER NOTICE] O Servidor serб Reiniciado. By KrySky_ADM

Код:
	if (strcmp("/speak", cmdtext, true, 10) == 0 && PlayerInfo[playerid][pAdmin] >= 1)
		{
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/speak [Speak Message]");
				return 1;
			}
			return 1;
		}



AW: Mandando Mensagem para Todos - Xapita_Halls - 13.12.2010

Vamos ver
pawn Код:
if (strcmp("/speak", cmdtext, true, 10) == 0 && PlayerInfo[playerid][pAdmin] >= 1)
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/speak [Speak Message]");
                return 1;
            }
    SendClientMessageToAll(COLOR_WHITE, "|______________ Speak ______________|");
            format(string, sizeof(string), " [SERVER NOTICE] O Servidor serб Reiniciado. By %s", sendername, result);
            SendClientMessageToAll(COLOR_YELLOW2, string);
        }
        return 1;
    }
ta ai


Re: Mandando Mensagem para Todos - mafelis - 13.12.2010

Na Verdade esse 'O Servidor serб Reiniciado', й so um exemplo, o Player GM ou ADM que vai definir a Mensagem.
Image no CHAT o Player Digita
/speak Servidor Com Problemas

dб enter e ai o server envia a seguinte mensagem para os jogadores

[SERVER NOTICE] Servidor com Problemas. By: ADM

Igual a um Whisper


Re: Mandando Mensagem para Todos - rjjj - 13.12.2010

Isto deve resolver o seu problema:


pawn Код:
if (strcmp("/speak", cmdtext, true, 10) == 0 && PlayerInfo[playerid][pAdmin] >= 1)
        {
            new string[128];
            new NickName[MAX_PLAYER_NAME];
            GetPlayerName(playerid, NickName, sizeof(NickName));
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/speak [Speak Message]");
                return 1;
            }
            format(string, sizeof(string), " [SERVER NOTICE] %s. By %s", tmp, NickName);
            SendClientMessageToAll(COLOR_YELLOW2, string);
        }
        return 1;
    }

Para aprender sobre a formaзгo dos espaзos como /speak [message] sugiro que pegue o tutorial sobre KcmD na minha assinatura pois o mesmo estб bem explicativo.


Espero ter ajudado


Re: Mandando Mensagem para Todos - mafelis - 13.12.2010

Probleminha. quando do no Chat /speak teste, nгo acontece nada


Re: Mandando Mensagem para Todos - Macintosh - 13.12.2010

й pra aparecer em textdraw ou texto?


Re: Mandando Mensagem para Todos - mafelis - 13.12.2010

TEXTO NO CHAT


Re: Mandando Mensagem para Todos - zSuYaNw - 13.12.2010

Sei lб, mais tenta.
pawn Код:
if(!strcmp(cmdtext,"/Speak", true, 6))
{
            if(!strlen(cmdtext[6]))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/speak [Speak Message]");
                return 1;
            }
            format(string, sizeof(string), " [SERVER NOTICE] %s. By %s", cmdtext[6], NickName);
            SendClientMessageToAll(COLOR_YELLOW2, string);
            return 1;
}



Re: Mandando Mensagem para Todos - [FeK]Knife - 13.12.2010

Tenta isso
pawn Код:
if(strcmp(cmd, "/speak", true) == 0)
    {
new idx;
new sendername[MAX_PLAYER_NAME];           
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COR AKI, "Use /speak [texto]");
return 1;
}
format(string, sizeof(string), "[SERVER NOTICE] %s. By: %s:", result,sendername);
SendClientMessageToAll(COR AKI, string);
return 1;
}



Re: Mandando Mensagem para Todos - mafelis - 13.12.2010

So tem um problema na hora que mandei no chat /speak Teste
ele envio para todos a seguinte mensagem

[SERVER NOTICE] /speak Teste. By: ADM

o /speak nгo pode aparecer


Re: Mandando Mensagem para Todos - KevinsL - 13.12.2010

lol '


AW: Mandando Mensagem para Todos - Xapita_Halls - 13.12.2010

isso ja deu cmg rsrsrsrs tente almentar cmdtext


Re: Mandando Mensagem para Todos - SuB_ZeRo0_ - 13.12.2010

Garfield apenas um problema, como a frase serб igual a "/speak" sendo que precisa do texto? Teria de ser:

pawn Код:
if(strfind(cmdtext,"/speak",true)==0)
{
            if(strlen(cmdtext)<8)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/speak [Speak Message]");
                return 1;
            }
            new NickName[MAX_PLAYER_NAME],spk[128];GetPlayerName(playerid,NickName,sizeof(NickName));
            format(stringspk, sizeof(stringspk), "[SERVER NOTICE] %s. By %s", cmdtext[7], NickName);
            SendClientMessageToAll(0xFFFF00AA, stringspk);
            return 1;
}



Re: Mandando Mensagem para Todos - mafelis - 14.12.2010

Resolvido pessoal. obrigado!