функцию:
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z) { if(IsPlayerConnected(playerid)) { new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } } return 0; }

Также в начале скрипта ее нужно объявить. Так делается с любой новой автовызываемой
функцией. У каждой новой автовызываемой функции обязательно должен быть свой forward.
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);

В отличие от проверки в зоне или кубе тут достаточно получить 1 раз координату и
вручную вписать радиус. Написав автовызываемую функцию PlayerToPoint мы можем ставить
такие условия:
if(PlayerToPoint(3.0,playerid, 72.1256, 1544.2145, 15.7742)) { }

Эту проверку можно поместить, например, внутри команды.
Вот в принципе и все!
Автор Cloud