DS_Markers.inc
- Описание:
Инклюд, расширяющий возможности настройки маркеров игроков, добавляющий такие возможности, как:
- Изменение радиуса отображения маркеров* прямо в игре (не требует рестарта)
- Изменение радиуса для всех игроков (онлайн/оффлайн)
- Изменение радиуса только для игроков, находящихся на сервере
- Изменение радиуса только игрокам, которые ещё не зашли на сервер
- Изменение радиуса для конкретного игрока
*Маркеры игроков - это квадратные метки на карте,
которые указывают местоположение того или иного игрока остальным
- Подключение:
Подключение выглядит следующим образом:
PHP код:
#include <ds_markers>
В инклюде имеется 8 диалоговых окон, которым требуется задать уникальный ID.
Есть несколько вариантов настройки ID:
- Напрямую указать каждому диалогу желаемый ID:
PHP код:
// Сначала ID диалогов
#define dPlMarkMenu_Radius 666// 666 заменить на свободный ID
#define dPlMarkMenu_Radius_All 667// Так же сделать дальше
#define dPlMarkMenu_Radius_Online 668
#define dPlMarkMenu_Radius_Offline 669
#define dPlMarkMenu_Radius_Players 670
#define dPlMarkMenu_Radius_Players_ID 671
#define dPlMarkMenu_Radius_Players_Rad 672
#define dPlMarkMenu_PlayerRadius_ID 673
// После - подключение инклюда
#include <ds_markers>
- Использовать макрос, который автоматически присвоит диалогам самые последние, из возможных, ID (32766, 32765, 32764, 32763, 32762, 32761, 32760, 32759)
Внимание: Данный способ подойдёт только тем, у кого указанные выше ID свободныPHP код:
#define AUTOMATIC_MARKER_DIALOG_ID 1
#include <ds_markers>
Если не произвести ни одно из действий или забыть указать ID для одного из диалогов, компилятор сообщит об этом следующей ошибкой:
PHP код:
For the system to work properly you must specify the ID of the dialogue "имя_макроса_соответствующего_ID_диалога"
Для исправления нужно, собственно, указать ID для пропущенных диалогов
Лимиты для радиуса хранятся в двух макросах:
Не советую их изменять.PHP код:
#define MIN_PLAYER_MARKER_RADIUS 1.0
#define MAX_PLAYER_MARKER_RADIUS 8516.0
- Функционал:
Описание всех функций продублировано в самом инклюде.
Примечание: Здесь просто перечислены функции, которые идут вместе с инклюдом. Основная система (дальность отображения маркеров) не требует дополнительной настройки, кроме того, что написано в пункте "Подключение"
- Примечание:
Для правильной работы системы требуется удостовериться, что в вашем скрипте нет функций:
- ShowPlayerMarkers
- LimitPlayerMarkerRadius
Если они есть, их следует удалить.