IsPlayerInCube - проверка игрока в кубе

Описание: Функции, которые упрощаю вашу работу в pawno.
Модератор: SJplayer

Дим M
Автор темы, Администратор
Администратор
Аватара
Дим M
Автор темы, Администратор
Администратор
Сообщения: 1608
Зарегистрирован: 5 апреля 2013
С нами: 10 лет 11 месяцев

#1 Дим » 24 апреля 2013, 10:35

IsPlayerInCube

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


Параметры:

Код: Выделить всё

(playerid, MinX, MaxX, MinY, MaxY, MinZ, MaxZ);


playerid - id игрока, для которого проверяется нахождение в кубе;
MinX - минимальная координата по оси X;
MaxX - максимальная координата по оси X;
MinY - минимальная координата по оси Y;
MaxY - максимальная координата по оси Y;
MinZ - минимальная координата по оси Z;
MaxZ - максимальная координата по оси Z.

Код: Выделить всё

stock IsPlayerInCube(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy, Float:minz, Float:maxz)
{
   new Float:x, Float:y, Float:z;
   GetPlayerPos(playerid, x, y, z);
    if(> minx && x < maxx && y > miny && y < maxy && z > minz && z < maxz) return 1;
return 0;
}


Пример:

Код: Выделить всё

if(IsPlayerInCube(playerid, 1358.6932, -48.9437, 1000.9324, 1419.7643, 7.0937, 1008.1563))
{
//если игрок в этом кубе, то выполним
...


Как узнать координаты.

Встаем в левый нижний угол создаваемой вами зоны, получаем координаты командой (/save). Далее встаем в правый верхний угол и снова получаем координаты. Допустим, мы уже получили вот такие координаты:

AddPlayerClass(0,2021.0109,1343.0779,10.8130,256.6816,0,0,0,0,0,0);
AddPlayerClass(0,2038.6593,1343.9640,10.3990,180.1545,0,0,0,0,0,0);


Берем из этих координат минимальную X-координату - 2021.0109 и ставим ее первой в скобках.
Затем, через запятую минимальную Y-координату - 1343.0779
Потом минимальную Z-координату – 10.3990
Дальше то же самое, но уже максимальные координаты. Должно получиться так:

IsPlayerInCube(playerid, 2021.0109,1343.0779, 10.3990, 1419.7643, 7.0937, 1008.1563)
[center]i love you [s]mxIni[/s] Mysql[/center]


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Полезные функции»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 5 гостей