PrivateArea.inc
PrivateArea.inc - это библиотека, которая позволяет создавать приватные зоны на сервере в SA:MP.
Как это работает: Когда игрок пытается зайти в приватную зону, его откидывает обратно.
Ограничения:
- Для работы с данной библиотекой необходимо иметь streamer и foreach.
- Создавать можно только зоны с типом Sphere (сфера).
Константы:
- MAX_PRIVATE_AREA - Максимальное количество созданных приватных зон (по умолчанию 50);
- PRIVATE_AREA_NONE - Приватной зоны не существует;
- PRIVATE_AREA_FULL_LIMIT - Превышен лимит создания приватных зон.
Функции:
public OnPlayerTriedEnterPrivateArea(playerid, areaid); CreatePrivateArea(Float:x, Float:y, Float:z, Float:size, worldid = -1, interiorid = -1, playerid = -1, priority = 0); DestroyPrivateArea(areaid); DenyEntryToPrivateArea(areaid, playerid = -1); AllowEntryToPrivateArea(areaid, playerid = -1); IsPlayerAddInPrivateArea(playerid, areaid);
Описание функций:
- OnPlayerTriedEnterPrivateArea - Автовызываемая функция, которая вызывается когда игрок пытается войти в приватную зону.
Параметры:
- playerid - ID игрока;
- areaid - ID динамической зоны.
- CreatePrivateArea - Создает приватную зону на сервере.
Возвращаемые значения:
- ID динамической зоны в случае успеха;
- PRIVATE_AREA_FULL_LIMIT - если превышен лимит создания приватных зон.
Параметры:
- x, y, z - координаты зоны;
- size - размер зоны;
- worldid - виртуальный мир (по умолчанию -1);
- interiorid - интерьер (по умолчанию -1);
- playerid - укажите Id игрока, если необходимо создать зону только для него (по умолчанию -1);
- priority - установить приоритет загрузки зоны (по умолчанию 0).
- DestroyPrivateArea - Уничтожает приватную зону с сервера.
Возвращаемые значения:
- 1 - если приватная зона была успешно удалена;
- PRIVATE_AREA_NONE - если приватной зоны не существует.
Параметры:
- areaid - ID динамической зоны;
- DenyEntryToPrivateArea - Запрещает игроку входить в приватную зону.
Возвращаемые значения:
- 1 - в случае успеха;
- 0 - если ID игрока меньше 0 или больше MAX_PLAYERS-1;
- PRIVATE_AREA_NONE - если приватной зоны не существует.
Параметры:
- areaid - ID динамической зоны;
- playerid - ID игрока которому нужно запретить вход (по умолчанию -1 (запрещает входим всем)).
- AllowEntryToPrivateArea - Разрешает игроку входить в приватную зону.
Возвращаемые значения:
- 1 - в случае успеха;
- 0 - если ID игрока меньше 0 или больше MAX_PLAYERS-1;
- PRIVATE_AREA_NONE - если приватной зоны не существует.
Параметры:
- areaid - ID динамической зоны;
- playerid - ID игрока которому нужно разрешить вход (по умолчанию -1 (разрешает входим всем)).
- IsPlayerAddInPrivateArea - Проверяет добавлен ли игрок в приватную зону.
Возвращаемые значения:
- 1 - если игрок добавлен в приватную зону;
- 0 - если ID игрока меньше 0 или больше MAX_PLAYERS-1, либо игрок не добавлен в приватную зону;
- PRIVATE_AREA_NONE - если приватной зоны не существует.
Параметры:
- playerid - ID игрока;
- areaid - ID динамической зоны.
Пример использования:
new PrivateArea; PrivateArea = CreatePrivateArea(0.0, 0.0, 0.0, 100.0); DenyEntryToPrivateArea(PrivateArea); return 1; } public OnPlayerTriedEnterPrivateArea(playerid, areaid) { if(areaid == PrivateArea) return 1; }
Автор статьи и библиотеки: punkochel
Скачать Include : GitHub
*Примечание: Данная версия инклуда содержит в себе функции, логика работы которых будет пересмотрена в ближайшее время. Вы можете его использовать, но выход новых версий возможно заставит вас изменить некоторые параметры.
*Исключительно для pro-pawn.ru
Копирование данной статьи на других ресурсах без разрешения автора или Daniel_Cortez запрещено!