IsPlayerInRangeOfPoint

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск

Описание:

Проверяет, находится ли игрок в указанном радиусе вокруг точки.

Параметры:

(playerid, Float:range, Float:x, Float:y, Float:z)
playerid ID игрока.
Float:range Радиус вокруг точки.
Float:x, Float:y, Float:z Координаты точки.


Возвращаемое значение:

1, если игрок подключен и находится на расстоянии от 0.0 до dist (не включая верхнюю границу) от точки, иначе 0.

Info rhombus.png
Примечание
Если требуется узнать точное расстояние от игрока до точки, для этой цели лучше подойдёт функция GetPlayerDistanceFromPoint().


Пример использования:

CMD:tpgroup(playerid, params[])
{
    if (0 == IsPlayerAdmin(playerid))
        return SendClientMessage(playerid, -1, "Вы не администратор сервера!");
    extract params -> new Float:dist, Float:x, Float:y, Float:z; else // sscanf2
        return SendClientMessage(playerid, -1, "Использование: /tpgroup [радиус] [x] [y] [z]");
    new Float:px, Float:py, Float:pz;
    new count = 0;
    GetPlayerPos(playerid, px, py, pz);
    for (new i = GetPlayerPoolSize(); i >= 0; --i)
        if (IsPlayerInRangeOfPoint(i, dist, px, py, pz))
            SetPlayerPos(i, x, y, z), count++;
    new string[32];
    format(string, sizeof(string), "Телепортировано игроков: %d", count);
    return SendClientMessage(playerid, -1, string);
}


См. также: