Advanced MapChooser 1.4 для CS 1.6 от neygomon позволяет очень тонко и детально настроить систему карт на сервере: смена карт, голосование за следующую карту (номинирование), rtv и др. способности. Очень легкий код, не несущий сильной нагрузки на сервер, а так же море функций, каждую из которых вы можете настроить сами для себя.
Когда приходит время голосования, в начале раунда обе команды замирают на месте, экран темнеет, а после производится отсчет и далее появляется список карт для голосования. Если карту решили не продлевать, т.е. выбрали новую, играет короткий отрывок из песни «Всем спасибо, далеко не расходимся» и тут же плавно происходит смена карты. Очень классно!
Возможности менеджера карт:
- Вывод карт в зависимости от количества игроков на сервере
- Номинирование карт
- Досрочная смена карты для админов
- RTV
- Блокировка последних сыгранных карт
- Поддержка серверов с бесконечным раундом
- Возможность воспроизвести звук перед сменой карты
- Продление карты
- Гибкая настройка момента голосования за следующую карту
- Цикличное сообщение в чат с временем до конца карты
Установка:
1. В первую очередь, отключаем стандартный mapchoser на вашем сервере и все остальные, если таковые имеются, а так же два плагина: timeleft.amxx и nextmap.amxx.
2. После, качаем архив, и в архиве находим файл advanced_mapchooser.sma (исходник) и настраиваем его по своему вкусу. Описание функций исходника есть ниже.
3. Далее ваш файл maps.ini (в папке configs сервера) приводим в такой порядок:
;; Карта минимум игроков максимум игроков
de_dust 10 32
de dust2 0 32
de_train 0 32
de_inferno 0 32
4. В последнюю очередь, компилируем из исходника .sma сам плагин .amxx и устанавливаем на сервер.
5. Перезагружаем сервер. Радуемся!
Настройки исходника:
#define BLOCK_MAPS 10 // Количество последних сыгранных карт
#define VOTE_TIME 10 // Время голосования
#define MAP_ON_VOTE 5 // Карт в меню голосования
#define ROCK_THE_VOTE // Функция rtv
#define RTV_DELAY 180 // Задержка о начала карты для использования rtv функции (в секундах)
#define RTV_PERCENTS 60 // Процент голосов
// #define NOMINATE // Функция номинаций
#define NOM_MAX 3 // Максимум карт для номинации
#define NOM_PLAYER 1 // Максимум карт для номинации одним игроком
#define SAY_MAPS // Команда /maps
#define NOM_WITH_PREFIXES // Номинация карты без префиксов(de_dust2 можно номинировать как dust2)
#define MAX_EXTENDS 3 // Количество продлений
#define EXTEND_TIME 15 // Время одного продления
#define SHOW_TIMELEFT // Показывать в чате в начале раунда, сколько осталось до конца карты
#define ADMIN_ROCK_THE_VOTE // Досрочное голосование у админов
#define ADMIN_RTV_TIME 5
// Сколько времени нужно играть на карте, чтобы можно было вызвать досрочное для админов
// Команда в консоль сервера и админы с флагом ADMIN_RCON("l") имеют иммунитет к данной настройке
// Закомментируйте, чтобы было доступно всегда
#define SHOW_MENU_WITH_PERCENTS // Показывать результаты с процентами голосов после выбора карты при голосовании
//#define ADMIN_DUAL_VOTE // Голос админа(ADMIN_MAP) и VIP(ADMIN_LEVEL_H) имеют вес двух голосов
//#define ONLY_GAME_PLAYERS // Считать только реальных игроков. Спектров не учитывать.
//#define BLOCK_CHATS // Блокировать VOICE и TEXT чаты на время голосования
#define VSEM_SPS_SOUND "misc/neugomon/vsem_sps.wav"
// Звук в 3 сек перед сменой карты.
// Закомментируйте или удалите строку, если не требуется
//#define NO_ROUND_SUPPORT // Режим работы в realtime. Для серверов CSDM
// #define NIGHTMODE
// Ночной список карт. НЕ работает блокировка карт, сортировка по онлайну и номинации
// Map List addons/amxmodx/configs/nmaps.ini | Просто список карт и все | ФАЙЛ НУЖНО СОЗДАТЬ САМОМУ!!!
#define BLOCK_CMDS // Блокировать команды
#define NIGHT_START 1 // Начало ночного режима
#define NIGHT_END 10 // Окончание ночного режима
#if defined BLOCK_CMDS
new g_szBlockCMDs[][] = { "amx_map", "amx_votemap", "amx_votemapmenu" };
// Команды для блокировки во время ночного режима
// Чтобы работала блокировка команд, нужно прописывать mapchooser в plugins.ini выше плагина который выполняет эту команду!
#endif
#if defined NOM_WITH_PREFIXES
new const g_szMapPrefixes[][] = { "de_", "cs_", "as_" };
// Префиксы карт, используемые для быстрой номинации
#endif
new g_iColors[3] = { 50, 255, 50 }; // R G B цвет для HUD отсчета
new Float:g_fPos[2] = { -1.0, 0.6 }; // X и Y координаты в HUD отсчета
Команды для чата:
say /rtv // голосование за досрочную смены карты
say nextmap // следующая карта
say timeleft // время до смены карты
say thetime // текущее время на сервере
say название_карты // номинирование карты
amx_rtv // консольная команда для админов, досрочная смена карты
Чтобы включить номинацию карт, разблокируйте строчку // #define NOMINATE // Функция номинаций, убрав в начале "//".
ВАЖНО!!! Вывод карт в зависимости от онлайна включен по умолчанию, это значит что для любого количества игроков на сервере карт должно быть больше чем: BLOCK_MAPS 5 + MAP_ON_VOTE 5, в данном случае 10 карт минимум. В противном случае ваш сервер может отключится.
|