30.06.2011, 19:20
Gostaria de um chat igual ao de RPG, com aquele diz: e sу pode ver o que estб escrito se a pessoa estiver perto dela... Jб procurei no ****** e no fуrum mas nгo deu certo
Valeu.
Valeu.
forward ProxDetector(Float:radi, playerid, string[], col1, col2, col3, col4, col5);
public OnPlayerText(playerid, text[])
{
ProxDetector(10, playerid, text, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF);
return 1;
}
public ProxDetector(Float:radi, playerid, string[], col1, col2, col3, col4, col5)
{
if(IsPlayerConnected(playerid))
{
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
GetPlayerPos(i, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
{
SendClientMessage(i, col1, string);
}
else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
{
SendClientMessage(i, col2, string);
}
else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
{
SendClientMessage(i, col3, string);
}
else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
{
SendClientMessage(i, col4, string);
}
else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
SendClientMessage(i, col5, string);
}
}
}
}
return 1;
}
LimitGlobalChatRadius(200.0)
stock iSendMessageForProxPlayer(pid, &Float:radius,color,messagen[])// By: [iPs] Garfield
{
static
Float:garfield[3] = 0xFFFFFF;
GetPlayerPos(pid, garfield[0], garfield[1], garfield[2]);
for(new i; i < MAX_PLAYERS; ++i)
{
if(IsPlayerInRangeOfPoint(i, radius, garfield[0],garfield[1],garfield[2]);
{
SendClientMessage(i, color, mensagen);
}
}
return true;
}
iSendMessageForProxPlayer(playerid, 2.0,-1,"Todos sгo gays.");
public OnPlayerText(playerid,text[])
{
new s[128],nome[24],p[3];
GetPlayerPos(playerid,p[0],p[1],p[2]);
GetPlayerName(playerid,nome,sizeof(nome));
format(s,sizeof(s),"%s {FFFFFF}(%d) diz: %s",nome,playerid,text);
for(new i = 0, j = GetMaxPlayers(); i != j; ++i) {
if(IsPlayerInRangeOfPoint(i,50.0,p[0],p[1],p[2])) {
SendClientMessage(i,GetPlayerColor(playerid),s)
}
}
return false;
}
warning 213: tag mismatch
public OnPlayerText(playerid,text[])
{
new s[128],nome[24],Float:p[3];
GetPlayerPos(playerid,p[0],p[1],p[2]);
GetPlayerName(playerid,nome,sizeof(nome));
format(s,sizeof(s),"%s {FFFFFF}(%d) diz: %s",nome,playerid,text);
for(new i = 0, j = GetMaxPlayers(); i != j; ++i) {
if(IsPlayerInRangeOfPoint(i,50.0,p[0],p[1],p[2])) {
SendClientMessage(i,GetPlayerColor(playerid),s)
}
}
return false;
}