Доступ к готовым решениям

Переход в группу "Пользователь"

300.00
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Функция IsPlayerInRangeOfTarget

Saibot

Мастер
Professional
Пользователь
Регистрация
20 Сен 2013
Сообщения
2,643
Лучшие ответы
84
Репутация
1,405
Награды
4
Данная функция проверяет находиться ли Player A возле Player B в указанном радиусе.

PHP:
stock IsPlayerInRangeOfTarget(Float: radius, playerid, targetid)
{
    if(0 == IsPlayerStreamedIn(playerid, targetid))
        return 0;
    new
        Float: pos_x,
        Float: pos_y,
        Float: pos_z
    ;
    GetPlayerPos(targetid, pos_x, pos_y, pos_z);
    return (IsPlayerInRangeOfPoint(playerid, radius, pos_x, pos_y, pos_z));
}

Данная функция возвращает:

0Если игрок не рядом
1Если игрок рядом


Тест скорости: (100.000 итераций)

ФункцияСкорость
IsPlayerInRangeOfTarget11 (ms)


Использование:
PHP:
if(0 == IsPlayerInRangeOfTarget(5.0/*Радиус*/, playerid/*Player A*/, targetid/*Player B*/))
    return SendClientMessage(playerid, -1, !"Ошибка");



Автор: Saibot
 
Последнее редактирование:
Сверху Снизу