Texto (Rбpida) -
ThuuGLif3 - 27.01.2017
Estou com problemas em meu texto. Desejo que o presidiбrio ao falar no chat, apareзa a TAG [PRESIDIБRIO] logo antes do nick. Fiz a funзгo, porйm estб repetindo. O que eu faзo para nгo repetir? O que devo usar? O que devo fazer quando isso ocorrer? Gostaria de uma explicaзгo.
Код:
if(IsPlayerInRangeOfPoint(i, 20.0, chatX, chatY, chatZ))
{
if(pInfo[playerid][Preso] > 0)
{
format(cstring, sizeof(cstring), "[PRISIONEIRO] %s diz: %s", GetName(playerid, true), text);
SendClientMessage(i, COLOR_FADE3, cstring);
}
format(cstring, sizeof(cstring), "%s diz: %s", GetName(playerid, true), text);
SendClientMessage(i, COLOR_FADE1, cstring);
}
Re: Texto (Rбpida) -
FallweN - 27.01.2017
PHP код:
if(pInfo[playerid][Preso] > 0)
{
format(cstring, sizeof(cstring), "[PRISIONEIRO] %s diz: %s", GetName(playerid, true), text);
SendClientMessage(i, COLOR_FADE3, cstring);
return false;
}
Basta retornar falso para que nгo dк continuidade na callback.
Re: Texto (Rбpida) -
TheBob - 27.01.2017
Vou mostrar como eu fiz no sistema de Login que eu fiz
PHP код:
public OnPlayerText(playerid, text[])
{
new name[MAX_PLAYER_NAME]; //Procedimentos da callback
GetPlayerName(playerid, name, sizeof(name));
new strmsg[170];
if(strlen(text) > sizeof(strmsg)) return SendClientMessage(playerid, -1, "Mensagem muito grande");
if(DesLog[playerid] == 0){
format(strmsg, sizeof(strmsg), "%s{00FA9A}[Noob/Guest]{ffffff}: %s", name, text); //Formating
SendClientMessageToAll(-1, strmsg); return 0; //Send to all
}
if(DesLog[playerid] == 1){
format(strmsg, sizeof(strmsg), "%s{FF1493}[Deslogado]{ffffff}: %s", name, text);
SendClientMessageToAll(-1, strmsg); return 0;
}
if(DesLog[playerid] == 2){
format(strmsg, sizeof(strmsg), "%s{00FFFF}[Logado]{ffffff}: %s", name, text);
SendClientMessageToAll(-1, strmsg); return 0;
}
return 1;
}
Respuesta: Re: Texto (Rбpida) -
SammyJ - 27.01.2017
Quote:
Originally Posted by FallweN
PHP код:
if(pInfo[playerid][Preso] > 0)
{
format(cstring, sizeof(cstring), "[PRISIONEIRO] %s diz: %s", GetName(playerid, true), text);
SendClientMessage(i, COLOR_FADE3, cstring);
return false;
}
Basta retornar falso para que nгo dк continuidade na callback.
|
Faзa oque o FallweN disse.
Re: Texto (Rбpida) -
ThuuGLif3 - 27.01.2017
Уtimo. Obrigado.
Re: Texto (Rбpida) -
GuiKommander - 27.01.2017
Bom, peguei uma base que tenho na GM. Aqui serve para todos os cargos!
new
Float:chatX, Float:chatY, Float:chatZ
;
GetPlayerPos( playerid, chatX, chatY, chatZ );
//--------------------------------------------//
if( aInfo[ playerid ][ SUA_VARIAVEL ] == 1 )
{
strmid( tmp, text, 0, strlen( text ));
format( gstring, sizeof( gstring ), "%s[%d] {FFFFFF}[{3366FF}PRESIDIARIO{FFFFFF}]{FFFFFF}: %s", GetName( playerid ), playerid, tmp );
if( pInfo[ playerid ][ chat ] == 0 )
{
if( IsPlayerInRangeOfPoint( i, 15.0, chatX, chatY, chatZ ))
{
SendClientMessage( i, GetPlayerColor( playerid ), gstring );
}
}
if( pInfo[ playerid ][ chat ] == 1 )
{
SendClientMessage( i, GetPlayerColor( playerid ), gstring );
}
}