Страница 1 из 11
Форум » Программирование в Pawno » Стандартные функции » [0.3.7] PlayerToActor (Расстояние между игроком и актёром)
[0.3.7] PlayerToActor
Добавлено 12.05.2016 в 00:57 | Сообщение №1
Сообщений: 263 Репутация: 0
Администраторы
Данная функция определяет, находится ли игрок в определённом радиусе от актёра.

Цитата
Подходит только для версии 0.3.7 SA:MP

Обязателен include a_actor

Использование функции:
PlayerToActor(радиус, ид игрока, ид актёра)

Функция:
Код
stock PlayerToActor(Float:radi, playerid, actorid)
{
        if(IsPlayerConnected(playerid))
        {
                new Float:pos[3],Float:actpos[3],Float:temppos[3];
                GetPlayerPos(playerid, actpos[0], actpos[1], actpos[2]);
                GetActorPos(actorid, pos[0], pos[1], pos[2]);
                temppos[0] = (actpos[0] -pos[0]); temppos[1] = (actpos[1] -pos[1]); temppos[2] = (actpos[2] -pos[2]);
                if (((temppos[0] < radi) && (temppos[0] > -radi)) && ((temppos[1] < radi) && (temppos[1] > -radi)) && ((temppos[2] < radi) && (temppos[2] > -radi))) return true;
        }
        return false;
}

Пример использования:
Код
// Создаём актёра в OnGameModeInit
public OnGameModeInit()
{
        new actorlool = CreateActor(.....);
}
// По команде узнаём расстояние от игрока до актёра.
CMD:itoactor(playerid, params[])
{
        if(!PlayerToActor(10.0, 0, actorlool)) return SendClientMessage(playerid, -1, "Вы далеко от актёра!");
        else SendClientMessage(playerid, -1, "Вы рядом с актёром!");
        return true;
}


Программист любитель :)
Форум » Программирование в Pawno » Стандартные функции » [0.3.7] PlayerToActor (Расстояние между игроком и актёром)
Страница 1 из 11
Поиск: