Euch ist schon klar, dass das nicht funktionieren wird und zudem ineffizient ist?^^
stock SendClientMessageInRange(playerid,msg[],farbe,range)
{
for(new i=0;i<GetMaxPlayers();i++)//MAX_PLAYERS verwenden oder GetMaxPlayers()-Wert in einer Variable speichern, anstatt dauernd abzufragen...
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);//Nicht effizient, dauernd abzufragen.
if(IsPlayerInRangeOfPoint(i,range,x,y,z))
{
SendClientMessage(i,color,msg);//hier ist "color", oben ist es "farbe" ==> ERROR
}
}
return 1;
}
Besser:
stock SendClientMessageInRange(playerid,color,msg[],Float:range)
{
new Float:x,Float:y,Float:z,maxplayers=GetMaxPlayers();
if(GetPlayerPos(playerid,x,y,z))
{
for(new i=0;i<maxplayers;i++)
if(IsPlayerConnected(i) && (i==playerid || IsPlayerInRangeOfPoint(i,range,x,y,z)))
SendClientMessage(i,color,msg);
return 1;
}
return 0;
}