Ich mach mal den Anfang:
Zum ersten: Du willst also wissen, ob 2 Personen eine gewisse Distanz voneinander entfernt sind oder weiter weg? Dann ist GetPlayerPos in Verbindung mit IsPlayerInRangeOfPoint wirklich das einfachste und schnellste, du musst ja nur die Position des Ziels auslesen und die SpielerID des anderen Spielers kennen.
Zum dritten: OnPlayerText ist hier dein Stichwort. Wenn der Spieler in diesem Telefonstatus ist, werden alle Nachrichten von ihm nur an Leute in 10m Entfernung versendet
new Float:fx;
new Float:fy;
new Float:fz;
GetPlayerPos(playerid,fx,fy,fz
for (new i;i!=MAX_PLAYERS;i++)
(
if(IsPlayerInRangeOfPoint(i,10,fx,fy,fz)
//Nachricht versenden...format etc
}
Danach musst du es noch an die Person, mit der er telefoniert versenden. Ich würd das so machen, dass du die telefon[playerid] Variable (erstmal in ne PVar umwandelst) so behandelst, dass die Variable gleich angibt, mit wem der Spieler telefoniert (mit welcher SpielerID). Dann hast du 2 Fliegen mit einer Klappe geschlagen. Wenn er mit niemandem telefoniert schreib ber -1 in die Variable und nicht 0. 