Здравствуйте ув.пользователи форума!
Лазия по sa-mp.com увидел очень интересный Pluguin.
АВТОР: StrickenKid
Автор перевода: Joker_Lorenzo [JM_Millers]
P.S: Переводил сам, без переводчиков!
Приступим!
Функции:
PHP код:
native Float:PointToPoint2D(Float: x1, Float: y1, Float: x2, Float: y2);
native Float:PointToPoint3D(Float: x1, Float: y1, Float: z1, Float: x2, Float: y2, Float: z2);
Этот плагин предназначен для ускорения наиболее часто используемых(и несколько неэффективных) pawn функции GetPlayerToPoint.
Работа функции:
Вычисляет расстояние от одной точки к другой, и возвращает ее как float координаты.
Это может быть использовано множеством различных функций.
Вот несколько примеров. Обратите внимание, я использовал PointToPoint3D, которая принимает 6 параметров и сравнивает высоту (Z) между двумя точками. 2D версия функция (PointToPoint2D), занимает 4 параметров и сравнивает только X и Y.
GetPlayerToPoint (playerid, Float: X, Float: Y, Float: Z) //Нахождение игрока в указанных координатах
PHP код:
function Float:GetPlayerToPoint(playerid, Float:x, Float:y, Float:z)
{
new Float:px, Float:py, Float:pz;
GetPlayerPos(playerid, px, py, pz);
return PointToPoint3D(px, py, pz, x, y, z);
}
GetPointToPoint(Float: x, Float: y, Float: z, Float: x2, Float: y2, Float: z2) //Дистанция от одной точки к другой
PHP код:
function Float:GetPointToPoint(Float:x, Float:y, Float:z, Float:x2, Float:y2, Float:z2)
{
return PointToPoint3D(x, y, z, x2, y2, z2);
}
GetPlayerDistanceToPlayer(playerid, targetid) //Дистанция от одного игрока, до другого
PHP код:
stock Float:GetPlayerDistanceToPlayer(playerid, targetid)
{
new Float:x, Float:y, Float:z, Float:x2, Float:y2, Float:z2;
GetPlayerPos(playerid, x, y, z);
GetPlayerPos(targetid, x2, y2, z2);
return PointToPoint3D(x, y, z, x2, y2, z2);
}
2D функция GetPlayerDistanceToPlayer:
stock Float:GetPlayerDistanceToPlayer(playerid, targetid)
{
new Float:x, Float:y, Float:z, Float:x2, Float:y2, Float:z2;
GetPlayerPos(playerid, x, y, z);
GetPlayerPos(targetid, x2, y2, z2);
return PointToPoint2D(x, y, x2, y2);
}
Сравнение скорости работы функции плагина и стандартной функции:
Скачать:
• Linux:
○ Debian / Ubuntu / CentOS (кликабельно)
• Windlows
○ 7/Vista/XP (кликабельно)
• Source:
○ Cross Compatible (кликабельно)
Ссылка на тему: Клик